MMCT TEAM
Server IP : 111.118.215.189  /  Your IP : 13.59.31.221
Web Server : Apache
System : Linux md-in-83.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
User : a1673wkz ( 2475)
PHP Version : 8.2.25
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /usr/share/emacs/24.3/lisp/emacs-lisp/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //usr/share/emacs/24.3/lisp/emacs-lisp/tabulated-list.elc
;ELC
;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:12:51 2024
;;; from file /builddir/build/BUILD/emacs-24.3/lisp/emacs-lisp/tabulated-list.el
;;; in Emacs version 24.3
;;; with all optimizations.

;;; This file contains utf-8 non-ASCII characters,
;;; and so cannot be loaded into Emacs 22 or earlier.
(and (boundp 'emacs-version)
     (< (aref emacs-version (1- (length emacs-version))) ?A)
     (string-lessp emacs-version "23")
     (error "`%s' was compiled for Emacs 23 or later" #$))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


#@988 The format of the current Tabulated List mode buffer.
This should be a vector of elements (NAME WIDTH SORT . PROPS),
where:
 - NAME is a string describing the column.
   This is the label for the column in the header line.
   Different columns must have non-`equal' names.
 - WIDTH is the width to reserve for the column.
   For the final element, its numerical value is ignored.
 - SORT specifies how to sort entries by this column.
   If nil, this column cannot be used for sorting.
   If t, sort by comparing the string value printed in the column.
   Otherwise, it should be a predicate function suitable for
   `sort', accepting arguments with the same form as the elements
   of `tabulated-list-entries'.
 - PROPS is a plist of additional column properties.
   Currently supported properties are:
   - `:right-align': if non-nil, the column should be right-aligned.
   - `:pad-right': Number of additional padding spaces to the
     right of the column (defaults to 1 if omitted).
(defvar tabulated-list-format nil (#$ . 567))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local tabulated-list-format put permanent-local t] 4)
#@61 Whether the Tabulated List buffer should use a header line.
(defvar tabulated-list-use-header-line t (#$ . 1730))
(make-variable-buffer-local 'tabulated-list-use-header-line)
#@836 Entries displayed in the current Tabulated List buffer.
This should be either a function, or a list.
If a list, each element has the form (ID [DESC1 ... DESCN]),
where:
 - ID is nil, or a Lisp object uniquely identifying this entry,
   which is used to keep the cursor on the "same" entry when
   rearranging the list.  Comparison is done with `equal'.

 - Each DESC is a column descriptor, one for each column
   specified in `tabulated-list-format'.  A descriptor is either
   a string, which is printed as-is, or a list (LABEL . PROPS),
   which means to use `insert-text-button' to insert a text
   button with label LABEL and button properties PROPS.
   The string, or button label, must not contain any newline.

If `tabulated-list-entries' is a function, it is called with no
arguments and must return a list of the above form.
(defvar tabulated-list-entries nil (#$ . 1912))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local tabulated-list-entries put permanent-local t] 4)
#@176 Number of characters preceding each Tabulated List mode entry.
By default, lines are padded with spaces, but you can use the
function `tabulated-list-put-tag' to change this.
(defvar tabulated-list-padding 0 (#$ . 2927))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local tabulated-list-padding put permanent-local t] 4)
#@113 Hook run before reverting a Tabulated List buffer.
This is commonly used to recompute `tabulated-list-entries'.
(defvar tabulated-list-revert-hook nil (#$ . 3280))
#@234 Function for inserting a Tabulated List entry at point.
It is called with two arguments, ID and COLS.  ID is a Lisp
object identifying the entry, and COLS is a vector of column
descriptors, as documented in `tabulated-list-entries'.
(defvar tabulated-list-printer 'tabulated-list-print-entry (#$ . 3451))
(make-variable-buffer-local 'tabulated-list-printer)
#@369 Sort key for the current Tabulated List mode buffer.
If nil, no additional sorting is performed.
Otherwise, this should be a cons cell (NAME . FLIP).
NAME is a string matching one of the column names in
`tabulated-list-format' (the corresponding SORT entry in
`tabulated-list-format' then specifies how to sort).  FLIP, if
non-nil, means to invert the resulting sort.
(defvar tabulated-list-sort-key nil (#$ . 3816))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local tabulated-list-sort-key put permanent-local t] 4)
#@185 Return the entry ID of the Tabulated List entry at POS.
The value is an ID object from `tabulated-list-entries', or nil.
POS, if omitted or nil, defaults to point.

(fn &optional POS)
(defalias 'tabulated-list-get-id #[256 "\300\206`\301\"\207" [get-text-property tabulated-list-id] 4 (#$ . 4366)])
(put 'tabulated-list-get-id 'byte-optimizer 'byte-compile-inline-expand)
#@186 Return the Tabulated List entry at POS.
The value is a vector of column descriptors, or nil if there is
no entry at POS.  POS, if omitted or nil, defaults to point.

(fn &optional POS)
(defalias 'tabulated-list-get-entry #[256 "\300\206`\301\"\207" [get-text-property tabulated-list-entry] 4 (#$ . 4748)])
(put 'tabulated-list-get-entry 'byte-optimizer 'byte-compile-inline-expand)
#@203 Put TAG in the padding area of the current line.
TAG should be a string, with length <= `tabulated-list-padding'.
If ADVANCE is non-nil, move forward by one line afterwards.

(fn TAG &optional ADVANCE)
(defalias 'tabulated-list-put-tag #[513 ";\204	\302\303!\210\304V\204\302\305!\210\212\306 \210\307\310\206`\311\"\262\203P`\312u\210\313\314!\211X\203@\315Z\316\"P\202D\317\"\262!\210\211\\|\210)\210)\211\205W\307y\207" [tabulated-list-padding inhibit-read-only error "Invalid argument to `tabulated-list-put-tag'" 0 "Unable to tag the current line" beginning-of-line nil get-text-property tabulated-list-entry t insert-and-inherit string-width make-string 32 truncate-string-to-width] 9 (#$ . 5140)])
#@49 Local keymap for `tabulated-list-mode' buffers.
(defvar tabulated-list-mode-map (byte-code "\302!\303	\"\210\304\305\306#\210\304\307\310#\210\304\311\312#\210\304\313\314#\210\304\315\316#\210\211\207" [special-mode-map button-buffer-map copy-keymap set-keymap-parent define-key "n" next-line "p" previous-line "S" tabulated-list-sort [follow-link] mouse-face [mouse-2] mouse-select-window] 5) (#$ . 5876))
#@54 Local keymap for `tabulated-list-mode' sort buttons.
(defvar tabulated-list-sort-button-map (byte-code "\300 \301\302\303#\210\301\304\303#\210\301\305\303#\210\301\306\303#\210\301\307\310#\210\301\311\312#\210\211\207" [make-sparse-keymap define-key [header-line mouse-1] tabulated-list-col-sort [header-line mouse-2] [mouse-1] [mouse-2] "
" tabulated-list-sort [follow-link] mouse-face] 5) (#$ . 6297))
#@63 The `glyphless-char-display' table in Tabulated List buffers.
(defvar tabulated-list-glyphless-char-display (byte-code "\301\300\302\"\303\"\210\211\304\302\305BI\210\211\306\302\307BI\210\211\207" [glyphless-char-display make-char-table nil set-char-table-parent 9650 "^" 9660 "v"] 5) (#$ . 6715))
(defvar tabulated-list--header-string nil)
(defvar tabulated-list--header-overlay nil)
#@57 Set up header line for the Tabulated List buffer.

(fn)
(defalias 'tabulated-list-init-header #[0 "\306]\307\310\311\312\313	\257\314\315\316\317\320\321E#B\262\nG\306\211W\203\345\211\nH\211@A@\322\233\323\324\"\2066\325\323\326\"\327\f#\3308\204R\315\331#\202\217@@\232\203\205\332\315\330	G\\V\203n\333\202xA\203w\334\202x\335P\336\337\331&\202\217\332\315\331	%B\262\203\305\340\f@!Z\211\306V\203\304@\315\341\342\"\317\320\321\\E#
ABB\262\f
\\\262\210\306V\203\332\315\316\317\320\321E\336\343%B\262\262\f\266\211T\262\202\266\332\344\237\"\262\f\203\370\211\211\202\314\345\346!\210\211\211&\207" [tabulated-list-padding tabulated-list-sort-button-map tabulated-list-format tabulated-list-sort-key tabulated-list-use-header-line header-line-format 0 help-echo "Click to sort by column" mouse-face highlight keymap nil propertize " " display space :align-to 3 plist-get :pad-right 1 :right-align + 2 tabulated-list-column-name apply "" " ▲" " ▼" face bold string-width make-string 32 fixed-pitch concat make-local-variable tabulated-list--header-string] 22 (#$ . 7109)])
#@78 Insert a fake Tabulated List "header line" at the start of the buffer.

(fn)
(defalias 'tabulated-list-print-fake-header #[0 "eb\210\303	\304\261\210\n\203\305\ne`#\210\202 \306\302!\210\307e`\"\310\n\311\312#)\207" [inhibit-read-only tabulated-list--header-string tabulated-list--header-overlay t "\n" move-overlay make-local-variable make-overlay overlay-put face underline] 4 (#$ . 8284)])
#@150 The `revert-buffer-function' for `tabulated-list-mode'.
It runs `tabulated-list-revert-hook', then calls `tabulated-list-print'.

(fn &rest IGNORED)
(defalias 'tabulated-list-revert #[128 "\300\301!\204\n\302\303!\210\304\305!\210\306\307!\207" [derived-mode-p tabulated-list-mode error "The current buffer is not in Tabulated List mode" run-hooks tabulated-list-revert-hook tabulated-list-print t] 3 (#$ . 8690) nil])
(defalias 'tabulated-list--column-number #[257 "G\301\302W\203!\211\204!H@\232\203\262T\262\202\211\206)\303\304\"\207" [tabulated-list-format 0 nil error "No column named %s"] 7 "\n\n(fn NAME)"])
#@384 Populate the current Tabulated List mode buffer.
This sorts the `tabulated-list-entries' list if sorting is
specified by `tabulated-list-sort-key'.  It then erases the
buffer and inserts the entries with `tabulated-list-printer'.

Optional argument REMEMBER-POS, if non-nil, means to move point
to the entry with the same ID element as the current line.

(fn &optional REMEMBER-POS)
(defalias 'tabulated-list-print #[256 "\306\307!\203\f \202
\310\211\211\310\262\203-\310\311\206 `\312\"\262\211\262\203-i\262\313 \210\n\2047\314 \210\203@\203@\315!\316\fH8\211\203}\211\306=\203c\317\320\321\322\323!\324\"\325\326%\262\327\"\262A\203t\237\262\307!\204}\266\211\203\240\211@\203\224@\232\203\224`\262\330
\"\210A\266\202\202\200\210\331\310!\210\203\265b\210\332!\210\333 \202\267eb)\207" [tabulated-list-entries inhibit-read-only tabulated-list-use-header-line tabulated-list-sort-key tabulated-list-format tabulated-list-printer t functionp nil get-text-property tabulated-list-id erase-buffer tabulated-list-print-fake-header tabulated-list--column-number 2 make-byte-code 514 "\211A@)\300H\262\211\211A@)\300H\262;\203\202@;\203(\202*@\231\207" vconcat vector [x] 5 "\n\n(fn A B)" sort apply set-buffer-modified-p move-to-column recenter] 15 (#$ . 9332)])
#@207 Insert a Tabulated List entry at point.
This is the default `tabulated-list-printer' function.  ID is a
Lisp object identifying the entry to print, and COLS is a vector
of column descriptors.

(fn ID COLS)
(defalias 'tabulated-list-print-entry #[514 "`\303]	G\304\303V\203\305\306\"c\210\211\303\211W\2030\211\307H#\262\210\211T\262\202\266\310c\210\311`\312$\210\311`\313$)\207" [tabulated-list-padding tabulated-list-format inhibit-read-only 0 t make-string 32 tabulated-list-print-col 10 put-text-property tabulated-list-id tabulated-list-entry] 12 (#$ . 10680)])
#@237 Insert a specified Tabulated List entry at point.
N is the column number, COL-DESC is a column descriptor (see
`tabulated-list-entries'), and X is the column number at point.
Return the column number after insertion.

(fn N COL-DESC X)
(defalias 'tabulated-list-print-col #[771 "H\211@A@\301\233\302\303\"\206\304\302\305\";\203\"\202%@\306!@\307Q`\fTGW\211\203N	V\203N\310\n\311\211\312%\262\262\313!\262\203\200V\203\200Z\314\315\316\"\317\320\321\\E#c\210	Z\262\n\f\\\262
\210\f;\203\220\314\322#c\210\202\231\323\324A#\210\325\f#\203\310\326V\203\263\315\316\"c\210\314\315\327	
$\316\"\317\320\321E#c\210\330`\331$\210\211\262\207" [tabulated-list-format 3 plist-get :pad-right 1 :right-align string-width ": " truncate-string-to-width nil t bidi-string-mark-left-to-right propertize make-string 32 display space :align-to help-echo apply insert-text-button + 0 - put-text-property tabulated-list-column-name] 22 (#$ . 11279)])
#@349 Delete the Tabulated List entry at point.
Return a list (ID COLS), where ID is the ID of the deleted entry
and COLS is a vector of its column descriptors.  Move point to
the beginning of the deleted entry.  Return nil if there is no
entry at point.

This function only changes the buffer contents; it does not alter
`tabulated-list-entries'.

(fn)
(defalias 'tabulated-list-delete-entry #[0 "\301\302\206`\303\"\262\301\302\206`\304\"\262\305\211\205&\306 \307 T|\210D)\207" [inhibit-read-only nil get-text-property tabulated-list-id tabulated-list-entry t line-beginning-position line-end-position] 5 (#$ . 12302)])
#@499 Change the Tabulated List entry at point, setting COL to DESC.
COL is the column number to change, or the name of the column to change.
DESC is the new column descriptor, which is inserted via
`tabulated-list-print-col'.

If CHANGE-ENTRY-DATA is non-nil, modify the underlying entry data
by setting the appropriate slot of the vector originally used to
print this entry.  If `tabulated-list-entries' has a list value,
this is the vector stored within it.

(fn COL DESC &optional CHANGE-ENTRY-DATA)
(defalias 'tabulated-list-set-col #[770 "`\302 \303 \211\304\206\f`\305\"\262\304\206`\306\"\262\307\310\311	\247\203/	\nH@\262\202H	;\203B	\262\312\n!\262\n\202H\313\314\"\210\204R\313\315\"\210\304\"\232\204x\316\311	$\211\262\203xW\203x\304\"\232\203[W\205\264\316\311\n$|\210b\210\317\n\ni#\210\203\241\n\nI\210\320`\305$\210\320`\306$\210b)\207" [inhibit-read-only tabulated-list-format line-end-position line-beginning-position get-text-property tabulated-list-id tabulated-list-entry tabulated-list-column-name t nil tabulated-list--column-number error "Invalid column %s" "No Tabulated List entry at position %s" next-single-property-change tabulated-list-print-col put-text-property] 16 (#$ . 12938)])
#@83 Sort Tabulated List entries by the column of the mouse click E.

(fn &optional E)
(defalias 'tabulated-list-col-sort #[256 "\301!\211\211\3028)\206\3038))r\304\211@)!q\210\305\306\203*A\202D\3078\206CA@:\203@A@@\202CA@)\310@#!)\207" [position event-start 7 4 window-buffer tabulated-list--sort-by-column-name get-text-property 5 tabulated-list-column-name] 9 (#$ . 14222) "e"])
#@126 Sort Tabulated List entries by the column at point.
With a numeric prefix argument N, sort the Nth column.

(fn &optional N)
(defalias 'tabulated-list-sort #[256 "\211\203H@\202\301`\302\"\303!\207" [tabulated-list-format get-text-property tabulated-list-column-name tabulated-list--sort-by-column-name] 4 (#$ . 14632) "P"])
(defalias 'tabulated-list--sort-by-column-name #[257 "\211\205$\301\302!\205$\211@\232\203\211A?\241\210\202\211\303B\304 \210\305\306!\207" [tabulated-list-sort-key derived-mode-p tabulated-list-mode nil tabulated-list-init-header tabulated-list-print t] 3 "\n\n(fn NAME)"])
(byte-code "\300\301N\204\302\300\301\303\304!#\210\305\306!\204\302\306\307\310#\210\300\207" [tabulated-list-mode-hook variable-documentation put purecopy "Hook run when entering Tabulated mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp tabulated-list-mode-map definition-name tabulated-list-mode] 5)
(defvar tabulated-list-mode-map (make-sparse-keymap))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\305\306!\204\302\306\307\310#\210\300\207" [tabulated-list-mode-map variable-documentation put purecopy "Keymap for `tabulated-list-mode'." boundp tabulated-list-mode-syntax-table definition-name tabulated-list-mode] 5)
(defvar tabulated-list-mode-syntax-table (make-syntax-table))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\302\305\306\307#\207" [tabulated-list-mode-syntax-table variable-documentation put purecopy "Syntax table for `tabulated-list-mode'." tabulated-list-mode-abbrev-table definition-name tabulated-list-mode] 5)
(defvar tabulated-list-mode-abbrev-table (progn (define-abbrev-table 'tabulated-list-mode-abbrev-table nil) tabulated-list-mode-abbrev-table))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\302\305\306\307#\207" [tabulated-list-mode-abbrev-table variable-documentation put purecopy "Abbrev table for `tabulated-list-mode'." tabulated-list-mode derived-mode-parent special-mode] 5)
#@1809 Generic major mode for browsing a list of items.
This mode is usually not used directly; instead, other major
modes are derived from it, using `define-derived-mode'.

In this major mode, the buffer is divided into multiple columns,
which are labeled using the header line.  Each non-empty line
belongs to one "entry", and the entries can be sorted according
to their column values.

An inheriting mode should usually do the following in their body:

 - Set `tabulated-list-format', specifying the column format.
 - Set `tabulated-list-revert-hook', if the buffer contents need
   to be specially recomputed prior to `revert-buffer'.
 - Maybe set a `tabulated-list-entries' function (see below).
 - Maybe set `tabulated-list-printer' (see below).
 - Maybe set `tabulated-list-padding'.
 - Call `tabulated-list-init-header' to initialize `header-line-format'
   according to `tabulated-list-format'.

An inheriting mode is usually accompanied by a "list-FOO"
command (e.g. `list-packages', `list-processes').  This command
creates or switches to a buffer and enables the major mode in
that buffer.  If `tabulated-list-entries' is not a function, the
command should initialize it to a list of entries for displaying.
Finally, it should call `tabulated-list-print'.

`tabulated-list-print' calls the printer function specified by
`tabulated-list-printer', once for each entry.  The default
printer is `tabulated-list-print-entry', but a mode that keeps
data in an ewoc may instead specify a printer function (e.g., one
that calls `ewoc-enter-last'), with `tabulated-list-print-entry'
as the ewoc pretty-printer.

In addition to any hooks its parent mode `special-mode' might have run,
this mode runs the hook `tabulated-list-mode-hook', as the final step
during initialization.

\{tabulated-list-mode-map}

(fn)
(defalias 'tabulated-list-mode #[0 "\306\300!\210\307\310 \210\311\312\310\313N\203\314\311\313\310\313N#\210\315!\204'\316\317 \"\210\320\f!\211\2035\211\321 =\203;\322\f\323 \"\210\210\324
\325\"\204R
=\204R\326
\325C#\210\327!\210\330\f!\210
\307\211 \306\331!\210\332\306\333!\210!)\334\335!\207" [delay-mode-hooks major-mode mode-name tabulated-list-mode-map tabulated-list-mode-syntax-table tabulated-list-mode-abbrev-table make-local-variable t special-mode tabulated-list-mode "Tabulated" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table revert-buffer-function tabulated-list-revert glyphless-char-display run-mode-hooks tabulated-list-mode-hook local-abbrev-table truncate-lines buffer-read-only tabulated-list-glyphless-char-display] 6 (#$ . 16698) nil])
(byte-code "\300\301\302\303#\210\304\305!\207" [put tabulated-list-mode mode-class special provide tabulated-list] 4)

MMCT - 2023