;ELC   
;;; Compiled
;;; in Emacs version 30.2
;;; with all optimizations.


#@40 The mark character for marked buffers.
(byte-code "\300\301!\210\302\303\304\305\306\307\306\310&\207" [require tabulated-list custom-declare-group Buffer-menu nil "Show a menu of all buffers in a buffer." :group tools convenience] 8)
(defvar Buffer-menu-marker-char 62 (#$ . 83))#@46 Character used to flag buffers for deletion.
(defvar Buffer-menu-del-char 68 (#$ . 370))#@71 If non-nil, use the header line to display Buffer Menu column titles.#@2 #@43 Face for buffer names in the Buffer Menu.
(byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable Buffer-menu-use-header-line funcall function #[0 "\300\207" [t] 1 (#$ . 538)] (#$ . 464) :type boolean :group Buffer-menu] 8)
(custom-declare-face 'buffer-menu-buffer '((t (:weight bold))) '(#$ . 544) :group 'Buffer-menu)#@190 Return a name column width based on the current window width.
The width will never exceed the actual width of the buffer names,
but will never be narrower than 19 characters.

(fn BUFFERS)#@10 

(fn B)
(put 'Buffer-menu-buffer 'face-alias 'buffer-menu-buffer)
(defalias 'Buffer-menu--dynamic-name-width #[257 "\300\301\302 \303\245!\304\305\306\307\310\"#^]\207" [19 truncate window-width 4.2 apply max 0 mapcar #[257 "\300!G\207" [buffer-name] 3 (#$ . 1095)]] 9 (#$ . 901)])#@180 Width of buffer name column in the Buffer Menu.
This can either be a number (used directly) or a function that
will be called with the list of buffers and should return a
number.#@49 Width of buffer size column in the Buffer Menu.#@47 Width of mode name column in the Buffer Menu.#@294 If non-nil, the Buffer Menu uses the selected frame's buffer list.
Buffers that were never selected in that frame are listed at the end.
If the value is nil, the Buffer Menu uses the global buffer list.
This variable matters if the Buffer Menu is sorted by visited order,
as it is by default.#@850 If non-nil, functions to call to divide buffer-menu buffers into groups.
When customized to a function, this function should return names
of all levels for each entry.
When customized to a list of functions, then each function defines
the group name at each nested level of multiple levels.
Each function is called with one argument: a list of entries in the same
format as in `tabulated-list-entries', and should return a list in the
format suitable for `tabulated-list-groups'.  Also, when this variable
is non-nil, `outline-minor-mode' is enabled in the Buffer Menu and you
can use Outline minor mode commands to show/hide groups of buffers,
according to the value of `outline-regexp'.
The default options can group by a mode, and by a root directory of
a project or just `default-directory'.
If this is nil, buffers are not divided into groups.#@288 If non-nil, function to sort buffer-menu groups by name.
Each function is called with two arguments: an alist of groups
where an alist key is a group name and also the level as a number,
and should return the same alist where groups are sorted.
If this is nil, group names are unsorted.#@135 Non-nil if the current Buffer Menu lists only file buffers.
This is set by the prefix argument to `buffer-menu' and related
commands.
(byte-code "\300\301\302\303\304DD\305\306\307\310\311\312\313&	\210\300\314\302\303\315DD\316\306\317\310\311\312\320&	\210\300\321\302\303\322DD\323\306\317\310\311&\210\300\324\302\303\325DD\326\306\327\310\311\312\330&	\210\300\331\302\303\332DD\333\306\334\310\311\312\335&	\210\300\336\302\303\337DD\340\306\341\310\311\312\335&	\207" [custom-declare-variable Buffer-menu-name-width funcall function #[0 "\300\207" [Buffer-menu--dynamic-name-width] 1 (#$ . 538)] (#$ . 1387) :type (choice function number) :group Buffer-menu :version "28.1" Buffer-menu-size-width #[0 "\300\207" [7] 1 (#$ . 538)] (#$ . 1571) natnum "24.3" Buffer-menu-mode-width #[0 "\300\207" [16] 1 (#$ . 538)] (#$ . 1624) Buffer-menu-use-frame-buffer-list #[0 "\300\207" [t] 1 (#$ . 538)] (#$ . 1676) boolean "22.1" Buffer-menu-group-by #[0 "\300\207" [nil] 1 (#$ . 538)] (#$ . 1975) (choice (const :tag "No grouping" nil) (function :tag "Custom function") (repeat :tag "Use levels" (choice (const :tag "Group by project root or directory" Buffer-menu-group-by-root) (const :tag "Group by mode" Buffer-menu-group-by-mode) (function :tag "Custom level function")))) "30.1" Buffer-menu-group-sort-by #[0 "\300\207" [nil] 1 (#$ . 538)] (#$ . 2830) (choice (const :tag "No group sorting" nil) (const :tag "Sort groups alphabetically" Buffer-menu-group-sort-alphabetically) (function :tag "Custom function"))] 10)
(defvar Buffer-menu-files-only nil (#$ . 3123))#@119 Non-nil if the current Buffer Menu lists internal buffers.
Internal buffers are those whose names start with a space.
(make-variable-buffer-local 'Buffer-menu-files-only)
(defvar Buffer-menu-show-internal nil (#$ . 4697))#@282 Function to filter out buffers in the buffer list.
Buffers that don't satisfy the predicate will be skipped.
The value should be a function of one argument; it will be
called with the buffer.  If this function returns non-nil,
then the buffer will be displayed in the buffer list.
(make-variable-buffer-local 'Buffer-menu-show-internal)
(defvar Buffer-menu-filter-predicate nil (#$ . 4925))#@60 The current list of buffers or function to return buffers.
(make-variable-buffer-local 'Buffer-menu-filter-predicate)
(defvar Buffer-menu-buffer-list nil (#$ . 5321))#@46 Local keymap for `Buffer-menu-mode' buffers.
(make-variable-buffer-local 'Buffer-menu-buffer-list)
(defvar Buffer-menu-mode-map (byte-code "\301\302\303\304\305\306\307\310\311\312\313\312\314\312\315\316\317\320\321\322\323\324\325\324\326\324\327\330\331\332\333\334\335\336\337\340\341\342\343\344\345\346\347\350\351\352\353\354\355\356\357\360\361\362\363\364\365\366\367\370\371\372\373\374\375\376\377\201@ &D\207" [tabulated-list-mode-map define-keymap :parent "v" Buffer-menu-select "2" Buffer-menu-2-window "1" Buffer-menu-1-window "f" Buffer-menu-this-window "e" "C-m" "o" Buffer-menu-other-window "C-o" Buffer-menu-switch-other-window "s" Buffer-menu-save "d" Buffer-menu-delete "k" "C-k" "C-d" Buffer-menu-delete-backwards "x" Buffer-menu-execute "SPC" next-line "DEL" Buffer-menu-backup-unmark "~" Buffer-menu-not-modified "u" Buffer-menu-unmark "M-DEL" Buffer-menu-unmark-all-buffers "U" Buffer-menu-unmark-all "m" Buffer-menu-mark "t" Buffer-menu-visit-tags-table "%" Buffer-menu-toggle-read-only "b" Buffer-menu-bury "V" Buffer-menu-view "O" Buffer-menu-view-other-window "T" Buffer-menu-toggle-files-only "I" Buffer-menu-toggle-internal "M-s a C-s" Buffer-menu-isearch-buffers "M-s a C-M-s" Buffer-menu-isearch-buffers-regexp "M-s a C-o" Buffer-menu-multi-occur "<mouse-2>" Buffer-menu-mouse-select "<follow-link>" mouse-face] 69) (#$ . 5493))#@38 Menu for `Buffer-menu-mode' buffers.
(byte-code "\300\301\302\303#\210\300\304\302\305#\207" [put Buffer-menu-delete :advertised-binding "d" Buffer-menu-this-window "f"] 4)
(defvar Buffer-menu-mode-menu nil (#$ . 6861))
(easy-menu-do-define 'Buffer-menu-mode-menu Buffer-menu-mode-map "Menu for `Buffer-menu-mode' buffers." '("Buffer-Menu" ["Mark" Buffer-menu-mark :help "Mark buffer on this line for being displayed by v command"] ["Unmark all" Buffer-menu-unmark-all :help "Cancel all requested operations on buffers"] ["Remove marks..." Buffer-menu-unmark-all-buffers :help "Cancel a requested operation on all buffers"] ["Unmark" Buffer-menu-unmark :help "Cancel all requested operations on buffer on this line and move down"] ["Mark for Save" Buffer-menu-save :help "Mark buffer on this line to be saved by x command"] ["Mark for Delete" Buffer-menu-delete :help "Mark buffer on this line to be deleted by x command"] ["Mark for Delete and Move Backwards" Buffer-menu-delete-backwards :help "Mark buffer on this line to be deleted by x command and move up one line"] "---" ["Execute" Buffer-menu-execute :help "Save and/or delete buffers marked with s or k commands"] ["Set Unmodified" Buffer-menu-not-modified :help "Mark buffer on this line as unmodified (no changes to save)"] ["Bury" Buffer-menu-bury :help "Bury the buffer listed on this line"] "---" ["Multi Occur Marked Buffers..." Buffer-menu-multi-occur :help "Show lines matching a regexp in marked buffers using Occur"] ["Isearch Marked Buffers..." Buffer-menu-isearch-buffers :help "Search for a string through all marked buffers using Isearch"] ["Regexp Isearch Marked Buffers..." Buffer-menu-isearch-buffers-regexp :help "Search for a regexp through all marked buffers using Isearch"] "---" ["Select in Current Window" Buffer-menu-this-window :help "Select this line's buffer in this window"] ["Select in Other Window" Buffer-menu-other-window :help "Select this line's buffer in other window, leaving buffer menu visible"] ["Select Current" Buffer-menu-1-window :help "Select this line's buffer, alone, in full frame"] ["Select Two" Buffer-menu-2-window :help "Select this line's buffer, with previous buffer in second window"] ["Select Marked" Buffer-menu-select :help "Select this line's buffer; also display buffers marked with `>'"] "---" ["Show Only File Buffers" Buffer-menu-toggle-files-only :help "Toggle whether the current buffer-menu displays only file buffers" :style toggle :selected Buffer-menu-files-only] ["Show Internal Buffers" Buffer-menu-toggle-internal :help "Toggle whether the current buffer-menu displays internal buffers" :style toggle :selected Buffer-menu-show-internal] "---" ["Refresh" revert-buffer :help "Refresh the *Buffer List* buffer contents"] ["Quit" quit-window :help "Remove the buffer menu from the display"]))
(defvar Buffer-menu-mode-hook nil)
(byte-code "\300\301N\204\f \302\300\301\303#\210\304\305!\204 \302\305\306\307#\210\300\207" [Buffer-menu-mode-hook variable-documentation put "Hook run after entering `Buffer-menu-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp Buffer-menu-mode-map definition-name Buffer-menu-mode] 4)
(defvar Buffer-menu-mode-map (make-sparse-keymap))#@2595 Major mode for Buffer Menu buffers.
The Buffer Menu is invoked by the commands \[list-buffers],
\[buffer-menu], and \[buffer-menu-other-window].
See `buffer-menu' for a description of its contents.

In Buffer Menu mode, the following commands are defined:
\<Buffer-menu-mode-map>
\[quit-window]    Remove the Buffer Menu from the display.
\[Buffer-menu-this-window]    Select current line's buffer in place of the buffer menu.
\[Buffer-menu-other-window]    Select that buffer in another window,
     so the Buffer Menu remains visible in its window.
\[Buffer-menu-view]    Select current line's buffer, in `view-mode'.
\[Buffer-menu-view-other-window]    Select that buffer in another window, in `view-mode'.
\[Buffer-menu-switch-other-window]  Make another window display that buffer.
\[Buffer-menu-mark]    Mark current line's buffer to be displayed.
\[Buffer-menu-select]    Select current line's buffer.
     Also show buffers marked with "m", in other windows.
\[Buffer-menu-1-window]    Select that buffer in full-frame window.
\[Buffer-menu-2-window]    Select that buffer in one window, together with the
     buffer selected before this one in another window.
\[Buffer-menu-isearch-buffers]    Incremental search in the marked buffers.
\[Buffer-menu-isearch-buffers-regexp]  Isearch for regexp in the marked buffers.
\[Buffer-menu-multi-occur]    Show lines matching regexp in the marked buffers.
\[Buffer-menu-visit-tags-table]    `visit-tags-table' this buffer.
\[Buffer-menu-not-modified]    Clear modified-flag on that buffer.
\[Buffer-menu-save]    Mark that buffer to be saved, and move down.
\[Buffer-menu-delete]    Mark that buffer to be deleted, and move down.
\[Buffer-menu-delete-backwards]  Mark that buffer to be deleted, and move up.
\[Buffer-menu-execute]    Delete or save marked buffers.
\[Buffer-menu-unmark]    Remove all marks from current line.
     With prefix argument, also move up one line.
\[Buffer-menu-unmark-all-buffers]    Remove a particular mark from all lines.
\[Buffer-menu-unmark-all]    Remove all marks from all lines.
\[Buffer-menu-backup-unmark]  Back up a line and remove marks.
\[Buffer-menu-toggle-read-only]    Toggle read-only status of buffer on this line.
\[revert-buffer]    Update the list of buffers.
\[Buffer-menu-toggle-files-only]    Toggle whether the menu displays only file buffers.
\[Buffer-menu-bury]    Bury the buffer listed on this line.

In addition to any hooks its parent mode `tabulated-list-mode' might
have run, this mode runs the hook `Buffer-menu-mode-hook', as the final
or penultimate step during initialization.#@28 

(fn &optional NOCONFIRM)
(byte-code "\301\302N\204 \303\301\302\304\305!#\210\306\307!\204* \303\307\310\311#\210\312\307\306\307!\203& \313\202( \314 \"\210\307\302N\2048 \303\307\302\304\315!#\210\306\300!\204X \303\300\310\311#\210\312\300\306\300!\203P \313\202V \316\300\313\"\210\"\210\300\302N\204f \303\300\302\304\317!#\210\320\321!\203t \321\311\322\"\210\202z \303\311\323\322#\210\313\207" [Buffer-menu-mode-abbrev-table Buffer-menu-mode-map variable-documentation put purecopy "Keymap for `Buffer-menu-mode'." boundp Buffer-menu-mode-syntax-table definition-name Buffer-menu-mode defvar-1 nil make-syntax-table "Syntax table for `Buffer-menu-mode'." define-abbrev-table "Abbrev table for `Buffer-menu-mode'." fboundp derived-mode-set-parent tabulated-list-mode derived-mode-parent] 5)
(defalias 'Buffer-menu-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\325!C#\210\327!\210\330\f!\210!\306\331!\210\332\333\334\335\336\307$)\210\337\340!\207" [delay-mode-hooks major-mode mode-name Buffer-menu-mode-map Buffer-menu-mode-syntax-table Buffer-menu-mode-abbrev-table make-local-variable t tabulated-list-mode Buffer-menu-mode "Buffer Menu" 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 buffer-stale-function #[256 "\300\207" [fast] 2 (#$ . 12757)] add-hook tabulated-list-revert-hook list-buffers--refresh nil run-mode-hooks Buffer-menu-mode-hook local-abbrev-table] 5 (#$ . 10158)])
(defalias 'buffer-menu--display-help #[0 "\300\301\302\303!\"\207" [message "%s" substitute-command-keys "Commands: \\<Buffer-menu-mode-map>\\[Buffer-menu-delete], \\[Buffer-menu-save], \\[Buffer-menu-execute], \\[Buffer-menu-unmark]; \\[Buffer-menu-this-window], \\[Buffer-menu-other-window], \\[Buffer-menu-1-window], \\[Buffer-menu-2-window], \\[Buffer-menu-mark], \\[Buffer-menu-select]; \\[Buffer-menu-not-modified], \\[Buffer-menu-toggle-read-only]; \\[quit-window] to quit; \\[describe-mode] for help"] 4])#@916 Switch to the Buffer Menu.
By default, the Buffer Menu lists all buffers except those whose
names start with a space (which are for internal use).  With
prefix argument ARG, show only buffers that are visiting files.

In the Buffer Menu, the first column (denoted "C") shows "."
for the buffer from which you came, ">" for buffers you mark to
be displayed, and "D" for those you mark for deletion.

The "R" column has a "%" if the buffer is read-only.
The "M" column has a "*" if it is modified, or "S" if you
have marked it for saving.

The remaining columns show the buffer name, the buffer size in
characters, its major mode, and the visited file name (if any).

See `Buffer-menu-mode' for the keybindings available the Buffer
Menu.

The width of the various columns can be customized by changing
the `Buffer-menu-name-width', `Buffer-menu-size-width' and
`Buffer-menu-mode-width' variables.

(fn &optional ARG)
(defalias 'buffer-menu #[256 "\300\301!!\210\302 \207" [switch-to-buffer list-buffers-noselect buffer-menu--display-help] 4 (#$ . 15005) "P"])#@300 Display the Buffer Menu in another window.
See `buffer-menu' for a description of the Buffer Menu.

By default, all buffers are listed except those whose names start
with a space (which are for internal use).  With prefix argument
ARG, show only buffers that are visiting files.

(fn &optional ARG)
(defalias 'buffer-menu-other-window #[256 "\300\301!!\210\302 \207" [switch-to-buffer-other-window list-buffers-noselect buffer-menu--display-help] 4 (#$ . 16070) "P"])#@350 Display a list of existing buffers.
The list is displayed in a buffer named "*Buffer List*".
See `buffer-menu' for a description of the Buffer Menu.

By default, all buffers are listed except those whose names start
with a space (which are for internal use).  With prefix argument
ARG, show only buffers that are visiting files.

(fn &optional ARG)
(defalias 'list-buffers #[256 "\300\301!!\207" [display-buffer list-buffers-noselect] 4 (#$ . 16545) "P"])
(defalias 'Buffer-menu--selection-message #[0 "\302\203	 \303\202 	\203 \304\202 \305!\207" [Buffer-menu-files-only Buffer-menu-show-internal message "Showing only file-visiting buffers." "Showing all buffers." "Showing all buffers except internal ones."] 2])#@187 Toggle whether the current `buffer-menu' displays only file buffers.
With a positive ARG, display only file buffers.  With zero or
negative ARG, display other buffers as well.

(fn ARG)
(defalias 'Buffer-menu-toggle-files-only #[257 "\211\204	 ?\202 \301!\302V\205 \303\304 \210\305 \207" [Buffer-menu-files-only prefix-numeric-value 0 t Buffer-menu--selection-message revert-buffer] 3 (#$ . 17272) ["P" (Buffer-menu-mode)]])#@191 Toggle whether the current `buffer-menu' displays internal buffers.
With a positive ARG, don't show internal buffers.  With zero or
negative ARG, display internal buffers as well.

(fn ARG)
(defalias 'Buffer-menu-toggle-internal #[257 "\211\204	 ?\202 \301!\302V\205 \303\304 \210\305 \207" [Buffer-menu-show-internal prefix-numeric-value 0 t Buffer-menu--selection-message revert-buffer] 3 (#$ . 17709) ["P" (Buffer-menu-mode)]])#@218 Return the buffer described by the current Buffer Menu line.
If there is no buffer here, return nil if ERROR-IF-NON-EXISTENT-P
is nil or omitted, and signal an error otherwise.

(fn &optional ERROR-IF-NON-EXISTENT-P)
(byte-code "\300\301\302\303#\210\304\301\302\305#\207" [defalias Buffer-menu-sort tabulated-list-sort nil make-obsolete "28.1"] 4)
(defalias 'Buffer-menu-buffer #[256 "\300\301\206 `\302\"\262\211\204 \205& \303\304!\207\305!\204% \205& \303\306!\207\211\207" [nil get-text-property tabulated-list-id error "No buffer on this line" buffer-live-p "This buffer has been killed"] 5 (#$ . 18151)])
(defalias 'Buffer-menu-no-header #[0 "\301 \210\204 `\302\303\304\206 e!\"\262\204 \305\207\306 \210\307y\310\207" [Buffer-menu-use-header-line beginning-of-line seq-find #[257 "\300\301\"\207" [overlay-get fake-header] 4 "\n\n(fn O)"] overlays-at t ding 1 nil] 6])
(defalias 'Buffer-menu-beginning #[0 "eb\210?\205\n \301y\207" [Buffer-menu-use-header-line nil] 1])#@268 Mark the Buffer menu entry at point for later display.
It will be displayed by the \<Buffer-menu-mode-map>\[Buffer-menu-select] command.
When `outline-minor-mode' is enabled and point is on the outline
heading line, this command will mark all entries in the outline.
(defalias 'Buffer-menu-mark #[0 "\302\303\206 `\304\"\262\203 \305\306\307!\310#\210\302y\207\311\301!\203A 	\203A \312 \203A \212\313 \210`)\302\211y\210`W\205? \314 \210\2023 )\207\302y\207" [Buffer-menu-marker-char outline-minor-mode nil get-text-property tabulated-list-id tabulated-list-set-col 0 char-to-string t boundp outline-on-heading-p outline-end-of-subtree Buffer-menu-mark] 5 (#$ . 19151) [nil (Buffer-menu-mode)]])#@261 Cancel all requested operations on buffer on this line and move down.
Optional prefix arg means move up.
When `outline-minor-mode' is enabled and point is on the outline
heading line, this command will unmark all entries in the outline.

(fn &optional BACKUP)
(defalias 'Buffer-menu-unmark #[256 "\301\302\206 `\303\"\262\203 \304 \210\211\203 \305\202 \306y\207\307\300!\203N \203N \310 \203N `\212\311 \210`)\301\211y\210`W\203C \312 \210\2027 \205L b\210\313 )\207\211\203V \305\202W \306y\207" [outline-minor-mode nil get-text-property tabulated-list-id Buffer-menu--unmark -1 1 boundp outline-on-heading-p outline-end-of-subtree Buffer-menu-unmark outline-previous-heading] 6 (#$ . 19861) ["P" (Buffer-menu-mode)]])#@183 Cancel a requested operation on all buffers.
MARK is the character to flag the operation on the buffers.
When called interactively prompt for MARK;  RET remove all marks.

(fn MARK)
(defalias 'Buffer-menu-unmark-all-buffers #[257 "\212eb\210m?\2059 \300\301\206 `\302\"\262\211\2032 \211\303H\304HD\305\306\"\204. \307!\235\2031 \310 \210\210\210\300y\210\202 )\207" [nil get-text-property tabulated-list-entry 0 2 char-equal 13 char-to-string Buffer-menu--unmark] 6 (#$ . 20599) ["cRemove marks (RET means all):" (Buffer-menu-mode)]])#@45 Cancel all requested operations on buffers.
(defalias 'Buffer-menu-unmark-all #[0 "\300\301!\207" [Buffer-menu-unmark-all-buffers 13] 2 (#$ . 21148) [nil (Buffer-menu-mode)]])#@70 Move up and cancel all requested operations on buffer on line above.
(defalias 'Buffer-menu-backup-unmark #[0 "\300y\210\301\302\206\n `\303\"\262\204 o\204 \300y\210\202 o?\205\" \304 \207" [-1 nil get-text-property tabulated-list-id Buffer-menu--unmark] 4 (#$ . 21329) [nil (Buffer-menu-mode)]])
(defalias 'Buffer-menu--unmark #[0 "\300\301\302\303#\210\304 \211\205 \305!\203 \300\306\307\303#\207\300\306\302\303#\207" [tabulated-list-set-col 0 " " t Buffer-menu-buffer buffer-modified-p 2 "*"] 5])#@465 Mark the buffer on this Buffer Menu buffer line for deletion.
A subsequent \<Buffer-menu-mode-map>\[Buffer-menu-execute] command will delete it.

If prefix argument ARG is non-nil, it specifies the number of
buffers to delete; a negative ARG means to delete backwards.

When `outline-minor-mode' is enabled and point is on the outline
heading line, this command will mark all entries in the outline.
However, ARG is not supported in this case.

(fn &optional ARG)
(defalias 'Buffer-menu-delete #[256 "\302\300!\203( \203( \303 \203( \212\304 \210`)\305\211y\210`W\205& \306 \210\202 )\207\211\2032 \211\307U\2034 \210\310\211\307V\203N \311 \203G \312\307\313	!\314#\210\310y\210S\2024 \211\307W\205h \311 \203a \312\307\313	!\314#\210\315y\210T\202N \207" [outline-minor-mode Buffer-menu-del-char boundp outline-on-heading-p outline-end-of-subtree nil Buffer-menu-delete 0 1 Buffer-menu-buffer tabulated-list-set-col char-to-string t -1] 6 (#$ . 21846) ["p" (Buffer-menu-mode)]])#@228 Mark the buffer on this Buffer Menu line for deletion, and move up.
A subsequent \<Buffer-menu-mode-map>\[Buffer-menu-execute] command will delete the marked buffer.  Prefix ARG
 means move that many lines.

(fn &optional ARG)
(defalias 'Buffer-menu-delete-backwards #[256 "\300\206 \301[!\207" [Buffer-menu-delete 1] 3 (#$ . 22837) ["p" (Buffer-menu-mode)]])#@265 Mark the buffer on this Buffer Menu line for saving.
A subsequent \<Buffer-menu-mode-map>\[Buffer-menu-execute] command will save it.
When `outline-minor-mode' is enabled and point is on the outline
heading line, this command will mark all entries in the outline.
(defalias 'Buffer-menu-save #[0 "\301\302\206 `\303\"\262\203 \304 \203 \305\306\307\310#\210\301y\207\311\300!\203D \203D \312 \203D \212\313 \210`)\301\211y\210`W\205B \314 \210\2026 )\207\301y\207" [outline-minor-mode nil get-text-property tabulated-list-id Buffer-menu-buffer tabulated-list-set-col 2 "S" t boundp outline-on-heading-p outline-end-of-subtree Buffer-menu-save] 5 (#$ . 23205) [nil (Buffer-menu-mode)]])#@166 Mark the buffer on this line as unmodified (no changes to save).
If ARG is non-nil (interactively, with a prefix argument), mark
it as modified.

(fn &optional ARG)
(defalias 'Buffer-menu-not-modified #[256 "r\300\301!q\210\302!)\210\303\304\203 \305\202 \306\301#\207" [Buffer-menu-buffer t set-buffer-modified-p tabulated-list-set-col 2 "*" " "] 5 (#$ . 23905) ["P" (Buffer-menu-mode)]])#@207 Save and/or delete marked buffers in the Buffer Menu.
Buffers marked with \<Buffer-menu-mode-map>\[Buffer-menu-save] are saved.
Buffers marked with \<Buffer-menu-mode-map>\[Buffer-menu-delete] are deleted.
(defalias 'Buffer-menu-execute #[0 "\212\300 \210m?\205} \301\302\206 `\303\"\262\301\302\206 `\304\"\262\211\204* \305y\266\202 \306!\2047 \307 \266\202 \301f\310=\311H\312\232\203_ \3131Y rq\210\314 )\210\315\311\316\317#0\210\202_ \210\320\321\"\210\211\203v p=\204v \322!\203v \307 \266\202 \305y\266\202 )\207" [Buffer-menu-beginning nil get-text-property tabulated-list-id tabulated-list-entry 1 buffer-live-p tabulated-list-delete-entry 68 2 "S" (error) save-buffer tabulated-list-set-col " " t warn "Error saving %s" kill-buffer] 7 (#$ . 24305) [nil (Buffer-menu-mode)]])#@270 Select this line's buffer; also, display buffers marked with `>'.
You can mark buffers with the \<Buffer-menu-mode-map>\[Buffer-menu-mark] command.

This command deletes and replaces all the previously existing windows
in the selected frame, and will remove any marks.
(defalias 'Buffer-menu-select #[0 "\300\301!p\302\303\301!\"\304 SGT\245\305 \210\306!\210=\204\" \307!\210\211\203; \211@\310\311\"\210\312\313!\210\306!\266A\202# \210\312\313!\207" [Buffer-menu-buffer t delq Buffer-menu-marked-buffers frame-height delete-other-windows switch-to-buffer bury-buffer split-window nil other-window 1] 9 (#$ . 25117) [nil (Buffer-menu-mode)]])#@118 Return the list of buffers marked with `Buffer-menu-mark'.
If UNMARK is non-nil, unmark them.

(fn &optional UNMARK)
(defalias 'Buffer-menu-marked-buffers #[256 "\212\300\301 \210\302\303\300\304#\203, \305 \211\203 \203 \306\307\310\304#\210\311!\203( \211B\262\210\202 \237)\207" [nil Buffer-menu-beginning re-search-forward "^>" t Buffer-menu-buffer tabulated-list-set-col 0 " " buffer-live-p] 7 (#$ . 25778)])#@63 Search for a string through all marked buffers using Isearch.
(defalias 'Buffer-menu-isearch-buffers #[0 "\300\301 !\207" [multi-isearch-buffers Buffer-menu-marked-buffers] 2 (#$ . 26204) [nil (Buffer-menu-mode)]])#@63 Search for a regexp through all marked buffers using Isearch.
(defalias 'Buffer-menu-isearch-buffers-regexp #[0 "\300\301 !\207" [multi-isearch-buffers-regexp Buffer-menu-marked-buffers] 2 (#$ . 26424) [nil (Buffer-menu-mode)]])#@97 Show all lines in marked buffers containing a match for a regexp.

(fn REGEXP &optional NLINES)
(defalias 'Buffer-menu-multi-occur #[513 "\300\301 #\207" [multi-occur Buffer-menu-marked-buffers] 6 (#$ . 26658) [(occur-read-primary-args) (Buffer-menu-mode)]])#@75 Visit the tags table in the buffer on this line.  See `visit-tags-table'.
(autoload 'etags-verify-tags-table "etags")
(defalias 'Buffer-menu-visit-tags-table #[0 "\300\301!\302!\211\204 \303\304!\207\203  rq\210\305 )\203  \306!\207\303\307!\207" [Buffer-menu-buffer t buffer-file-name error "Specified buffer has no file" etags-verify-tags-table visit-tags-table "Specified buffer is not a tags-table"] 4 (#$ . 26924) [nil (Buffer-menu-mode)]])#@50 Select this line's buffer, alone, in full frame.
(defalias 'Buffer-menu-1-window #[0 "\300\301\302!!\210\303\304 !\210\305 \207" [switch-to-buffer Buffer-menu-buffer t bury-buffer other-buffer delete-other-windows] 3 (#$ . 27380) [nil (Buffer-menu-mode)]])#@43 Select this line's buffer in this window.
(defalias 'Buffer-menu-this-window #[0 "\300\301\302!!\207" [switch-to-buffer Buffer-menu-buffer t] 3 (#$ . 27642) [nil (Buffer-menu-mode)]])#@73 Select this line's buffer in other window, leaving buffer menu visible.
(defalias 'Buffer-menu-other-window #[0 "\301\302\303\304!!)\207" [display-buffer-overriding-action (nil (inhibit-same-window . t)) switch-to-buffer-other-window Buffer-menu-buffer t] 3 (#$ . 27831) [nil (Buffer-menu-mode)]])#@87 Make the other window select this line's buffer.
The current window remains selected.
(defalias 'Buffer-menu-switch-other-window #[0 "\301\302\303\304!\304\")\207" [display-buffer-overriding-action (nil (inhibit-same-window . t)) display-buffer Buffer-menu-buffer t] 3 (#$ . 28135) [nil (Buffer-menu-mode)]])#@67 Select this line's buffer, with previous buffer in second window.
(defalias 'Buffer-menu-2-window #[0 "\300\301!p\302 \210\303\304 !\210\305!\210\306!\207" [Buffer-menu-buffer t delete-other-windows switch-to-buffer other-buffer switch-to-buffer-other-window bury-buffer] 4 (#$ . 28450) [nil (Buffer-menu-mode)]])#@110 Toggle read-only status of buffer on this line.
This behaves like invoking \[read-only-mode] in that buffer.
(defalias 'Buffer-menu-toggle-read-only #[0 "r\301\302!q\210\303\304!\210)\305\306\203 \307\202 \310\302#\207" [buffer-read-only Buffer-menu-buffer t read-only-mode toggle tabulated-list-set-col 1 "%" " "] 5 (#$ . 28772) [nil (Buffer-menu-mode)]])#@38 Bury the buffer listed on this line.
(defalias 'Buffer-menu-bury #[0 "\300\301\206 `\302\"\262\211?\2061 \303!\203+ \304!\210\212\305 db\210\306\307\")\266\310\311!\207\305 \210\310\312!\207" [nil get-text-property tabulated-list-id buffer-live-p bury-buffer tabulated-list-delete-entry apply tabulated-list-print-entry message "Buffer buried." "Buffer is dead; removing from list."] 5 (#$ . 29138) [nil (Buffer-menu-mode)]])#@39 View this line's buffer in View mode.
(defalias 'Buffer-menu-view #[0 "\300\301\302!!\207" [view-buffer Buffer-menu-buffer t] 3 (#$ . 29576) [nil (Buffer-menu-mode)]])#@57 View this line's buffer in View mode in another window.
(defalias 'Buffer-menu-view-other-window #[0 "\300\301\302!!\207" [view-buffer-other-window Buffer-menu-buffer t] 3 (#$ . 29749) [nil (Buffer-menu-mode)]])#@561 Create and return a Buffer Menu buffer.
This is called by `buffer-menu' and others as a subroutine.

If FILES-ONLY is non-nil, show only file-visiting buffers.
If BUFFER-LIST is non-nil, it should be either a list of buffers
or a function that returns a list of buffers; it means
list those buffers and no others.
See more at `Buffer-menu-buffer-list'.
If FILTER-PREDICATE is non-nil, it should be a function
that filters out buffers from the list of buffers.
See more at `Buffer-menu-filter-predicate'.

(fn &optional FILES-ONLY BUFFER-LIST FILTER-PREDICATE)
(defalias 'list-buffers-noselect #[768 "p\306\307!r\211q\210\310 \210\205 \311!\312Y\313\"\210\314 \210\2035 \315\304!\210\316\315\305!\210\316\317\320!\210)\207" [Buffer-menu-files-only Buffer-menu-buffer-list Buffer-menu-filter-predicate tabulated-list-groups outline-minor-mode-cycle outline-minor-mode-highlight get-buffer-create "*Buffer List*" Buffer-menu-mode prefix-numeric-value 0 list-buffers--refresh tabulated-list-print make-local-variable t outline-minor-mode 1] 8 (#$ . 29967)])#@56 Select the buffer whose line you click on.

(fn EVENT)
(defalias 'Buffer-menu-mouse-select #[257 "\300\301!@!\210\302\301!!\303\206 `\304\"\262\305!\2050 \306 \203- \307 \310 =\203- \311!\207\312!\207" [select-window event-end posn-point get-text-property tabulated-list-id buffer-live-p window-dedicated-p selected-window frame-root-window switch-to-buffer-other-frame switch-to-buffer] 5 (#$ . 31039) ["e" (Buffer-menu-mode)]])#@41 

(fn &optional BUFFER-LIST OLD-BUFFER)#@14 

(fn ENTRY)#@10 

(fn F)
(defalias 'list-buffers--refresh #[512 "\306 p	?\n\307!\205 \310\211\307\n!\203 	 \2029 	\2069 \307\f!\203- \f \2029 \f\2069 \311\2058 \312 !\211\203\336 \211@r\211q\210\313 ,\314!\203\327 \204\200 \204d \315\316O\317\230\203d \211\203\327 \n=\204\327 \211\204t \203\327 \203\200 !\203\327 \320=\203\215 \321\202\231 \235\203\230 \322\202\231 \317-\203\242 \323\202\243 \317\324 \203\254 \325\202\255 \317\326!\327\330 !\331.\310\211$/\205\312 \331/\310\211$P\332	!&DB\262)\266A\2029 \210\3070!\203\362 0\333\334\"!\262\202\365 \2100\320\335\336\337\340\341BB\342\343BB\3441\345BB\346&234\2375\3475\350\3076!\203'6\202(\351\3527F\"'\266\353 \207" [Buffer-menu-size-width Buffer-menu-files-only Buffer-menu-show-internal Buffer-menu-filter-predicate Buffer-menu-buffer-list Buffer-menu-use-frame-buffer-list Buffer-menu-marked-buffers functionp nil buffer-list selected-frame buffer-name buffer-live-p 0 1 " " vector "." ">" "%" buffer-modified-p "*" Buffer-menu--pretty-name number-to-string buffer-size format-mode-line Buffer-menu--pretty-file-name mapcar car ("C" 1 t :pad-right 0) ("R" 1 t :pad-right 0) ("M" 1 t) "Buffer" (t) "Size" (tabulated-list-entry-size-> :right-align t) "Mode" (t) ("File" 1 t) tabulated-list-groups :path-function #[257 "\301\302\303\"\"C\207" [Buffer-menu-group-by mapcar make-closure #[257 "\211\300!\207" [V0] 3 (#$ . 31545)]] 5 (#$ . 31527)] :sort-function tabulated-list-init-header buffer-file-name buffer-read-only mode-name mode-line-process Buffer-menu-name-width Buffer-menu-mode-width tabulated-list-format Buffer-menu-use-header-line tabulated-list-use-header-line tabulated-list-entries Buffer-menu-group-by Buffer-menu-group-sort-by] 27 (#$ . 31482)])#@22 

(fn ENTRY1 ENTRY2)
(defalias 'tabulated-list-entry-size-> #[514 "\300A@\301H!\300A@\301H!V\207" [string-to-number 4] 6 (#$ . 33328)])#@13 

(fn NAME)
(defalias 'Buffer-menu--pretty-name #[257 "\300\301\302\303\304%\207" [propertize font-lock-face buffer-menu-buffer mouse-face highlight] 7 (#$ . 33471)])#@13 

(fn FILE)
(defalias 'Buffer-menu--pretty-file-name #[257 "\211\203 \301!\207\302\300!\203 \203 \301!\207\303\207" [list-buffers-directory abbreviate-file-name boundp ""] 3 (#$ . 33644)])#@14 

(fn GROUP)
(defalias 'Buffer-menu-group-by-mode #[257 "\211A@\301H\302\303\304\"\"A\206 \211\207" [mouse-buffer-menu-mode-groups 5 seq-find make-closure #[257 "\211@\300\301\302\303$\207" [V0 nil string-match t] 9 (#$ . 33844)]] 6 (#$ . 31527)])
(defalias 'Buffer-menu-group-by-root #[257 "r\211@q\210\301 \211\203 \302!\262\202 \210)\207" [default-directory project-current project-root] 4 (#$ . 31527)])#@21 

(fn GROUPS LEVEL)
(defalias 'Buffer-menu-group-sort-alphabetically #[514 "\300\301\302\303\304%\207" [sort :in-place t :key car] 8 (#$ . 34268)])
