%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/ |
Current File : //usr/local/share/emacs/27.2/lisp/uniquify.elc |
;ELC ;;; Compiled ;;; in Emacs version 27.2 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301\302\303\304\305%\210\306\307\310\311\312DD\313\314\315\316\317\320\301& \210\306\321\310\311\322DD\323\314\324%\210\306\325\310\311\326DD\327\314\330%\210\306\331\310\311\332DD\333\314\334%\210\306\335\310\311\336DD\337\314\340%\210\306\341\310\311\342DD\343\314\324%\210\306\344\310\311\345DD\346\314\324%\207" [custom-declare-group uniquify nil "Unique buffer names dependent on file name." :group files custom-declare-variable uniquify-buffer-name-style funcall function #[0 "\300\207" [post-forward-angle-brackets] 1] "How to construct unique buffer names for files with the same base name.\nThe value can be one of: `forward', `reverse', `post-forward',\n`post-forward-angle-brackets', or nil.\n\nFor example, the files `/foo/bar/mumble/name' and `/baz/quux/mumble/name'\nwould have the following buffer names in the various styles:\n\n forward bar/mumble/name quux/mumble/name\n reverse name\\mumble\\bar name\\mumble\\quux\n post-forward name|bar/mumble name|quux/mumble\n post-forward-angle-brackets name<bar/mumble> name<quux/mumble>\n nil name name<2>\n\nThe \"mumble\" part may be stripped as well, depending on the\nsetting of `uniquify-strip-common-suffix'. For more options that\nyou can set, browse the `uniquify' custom group." :type (radio (const forward) (const reverse) (const post-forward) (const post-forward-angle-brackets) (const :tag "numeric suffixes" nil)) :version "24.4" :require uniquify-after-kill-buffer-p #[0 "\300\207" [t] 1] "If non-nil, rerationalize buffer names after a buffer has been killed." boolean uniquify-ignore-buffers-re #[0 "\300\207" [nil] 1] "Regular expression matching buffer names that should not be uniquified.\nFor instance, set this to \"^draft-[0-9]+$\" to avoid having uniquify rename\ndraft buffers even if `uniquify-after-kill-buffer-p' is non-nil and the\nvisited file name isn't the same as that of the buffer." (choice (const :tag "Uniquify all buffers" nil) regexp) uniquify-min-dir-content #[0 "\300\207" [0] 1] "Minimum number of directory name components included in buffer name." integer uniquify-separator #[0 "\300\207" [nil] 1] "String separator for buffer name components.\nWhen `uniquify-buffer-name-style' is `post-forward', separates\nbase file name from directory part in buffer names (default \"|\").\nWhen `uniquify-buffer-name-style' is `reverse', separates all\nfile name components (default \"\\\")." (choice (const nil) string) uniquify-trailing-separator-p #[0 "\300\207" [nil] 1] "If non-nil, add a file name separator to dired buffer names.\nIf `uniquify-buffer-name-style' is `forward', add the separator at the end;\nif it is `reverse', add the separator at the beginning; otherwise, this\nvariable is ignored." uniquify-strip-common-suffix #[0 "\301=\207" [uniquify-min-dir-content 0] 2] "If non-nil, strip common directory suffixes of conflicting files.\nE.g. if you open /a1/b/c/d and /a2/b/c/d, the buffer names will say\n\"d|a1\" and \"d|a2\" instead of \"d|a1/b/c\" and \"d|a2/b/c\".\nThis can be handy when you have deep parallel hierarchies."] 10) #@217 List of modes for which uniquify should obey `list-buffers-directory'. That means that when `buffer-file-name' is set to nil, `list-buffers-directory' contains the name of the directory which the buffer is visiting. (defvar uniquify-list-buffers-directory-modes '(dired-mode cvs-mode vc-dir-mode) (#$ . 3593)) #@72 compiler-macro for inlining `uniquify-item-p'. (fn CL-WHOLE-ARG CL-X) (defalias 'uniquify-item-p--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block uniquify-item-p (and (memq (type-of cl-x) cl-struct-uniquify-item-tags) t)) nil] 9 (#$ . 3909)]) (put 'uniquify-item-p 'compiler-macro 'uniquify-item-p--cmacro) #@13 (fn CL-X) (defalias 'uniquify-item-p #[257 "\301!>\205 \302\207" [cl-struct-uniquify-item-tags type-of t] 3 (#$ . 4261)]) (byte-code "\300\301\302\303#\304\305\306\301#\207" [function-put uniquify-item-p side-effect-free error-free put uniquify-item cl-deftype-satisfies] 5) #@75 compiler-macro for inlining `uniquify-item-base'. (fn CL-WHOLE-ARG CL-X) (defalias 'uniquify-item-base--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block uniquify-item-base (progn (or (uniquify-item-p cl-x) (signal 'wrong-type-argument (list 'uniquify-item cl-x))) (aref cl-x 1))) nil] 9 (#$ . 4547)]) (put 'uniquify-item-base 'compiler-macro 'uniquify-item-base--cmacro) #@63 Access slot "base" of `uniquify-item' struct CL-X. (fn CL-X) (defalias 'uniquify-item-base #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-uniquify-item-tags type-of signal wrong-type-argument uniquify-item 1] 5 (#$ . 4962)]) (byte-code "\300\301\302\303#\300\207" [function-put uniquify-item-base side-effect-free t] 4) #@78 compiler-macro for inlining `uniquify-item-dirname'. (fn CL-WHOLE-ARG CL-X) (defalias 'uniquify-item-dirname--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block uniquify-item-dirname (progn (or (uniquify-item-p cl-x) (signal 'wrong-type-argument (list 'uniquify-item cl-x))) (aref cl-x 2))) nil] 9 (#$ . 5309)]) (put 'uniquify-item-dirname 'compiler-macro 'uniquify-item-dirname--cmacro) #@66 Access slot "dirname" of `uniquify-item' struct CL-X. (fn CL-X) (defalias 'uniquify-item-dirname #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-uniquify-item-tags type-of signal wrong-type-argument uniquify-item 2] 5 (#$ . 5739)]) (byte-code "\300\301\302\303#\300\207" [function-put uniquify-item-dirname side-effect-free t] 4) #@77 compiler-macro for inlining `uniquify-item-buffer'. (fn CL-WHOLE-ARG CL-X) (defalias 'uniquify-item-buffer--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block uniquify-item-buffer (progn (or (uniquify-item-p cl-x) (signal 'wrong-type-argument (list 'uniquify-item cl-x))) (aref cl-x 3))) nil] 9 (#$ . 6095)]) (put 'uniquify-item-buffer 'compiler-macro 'uniquify-item-buffer--cmacro) #@65 Access slot "buffer" of `uniquify-item' struct CL-X. (fn CL-X) (defalias 'uniquify-item-buffer #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-uniquify-item-tags type-of signal wrong-type-argument uniquify-item 3] 5 (#$ . 6520)]) (byte-code "\300\301\302\303#\300\207" [function-put uniquify-item-buffer side-effect-free t] 4) #@79 compiler-macro for inlining `uniquify-item-proposed'. (fn CL-WHOLE-ARG CL-X) (defalias 'uniquify-item-proposed--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block uniquify-item-proposed (progn (or (uniquify-item-p cl-x) (signal 'wrong-type-argument (list 'uniquify-item cl-x))) (aref cl-x 4))) nil] 9 (#$ . 6873)]) (put 'uniquify-item-proposed 'compiler-macro 'uniquify-item-proposed--cmacro) #@67 Access slot "proposed" of `uniquify-item' struct CL-X. (fn CL-X) (defalias 'uniquify-item-proposed #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-uniquify-item-tags type-of signal wrong-type-argument uniquify-item 4] 5 (#$ . 7308)]) (byte-code "\300\301\302\303#\300\207" [function-put uniquify-item-proposed side-effect-free t] 4) #@109 compiler-macro for inlining `uniquify-make-item'. (fn CL-WHOLE-ARG BASE DIRNAME BUFFER &optional PROPOSED) (defalias 'uniquify-make-item--cmacro #[1284 "\300\301\302\303\211\211 & \207" [cl--defsubst-expand (base dirname buffer proposed) (cl-block uniquify-make-item (record 'uniquify-item base dirname buffer proposed)) nil] 15 (#$ . 7668)]) (put 'uniquify-make-item 'compiler-macro 'uniquify-make-item--cmacro) #@95 Constructor for objects of type `uniquify-item'. (fn BASE DIRNAME BUFFER &optional PROPOSED) (defalias 'uniquify-make-item #[1027 "\300\301%\207" [record uniquify-item] 10 (#$ . 8095)]) (byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303& \207" [function-put uniquify-make-item side-effect-free t cl-struct-define uniquify-item nil cl-structure-object record ((cl-tag-slot) (base) (dirname) (buffer) (proposed)) cl-struct-uniquify-item-tags] 11) (defvar uniquify-possibly-resolvable nil) #@138 Non-nil if the name of this buffer is managed by uniquify. It actually holds the list of `uniquify-item's corresponding to the conflict. (defvar uniquify-managed nil (#$ . 8613)) (byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local uniquify-managed put permanent-local t] 4) #@98 Return the base name of the current buffer. Return nil if the buffer is not managed by uniquify. (defalias 'uniquify-buffer-base-name #[0 "\205 \302@! >\204 \303\304\305@D\"\210@\306H\207" [uniquify-managed cl-struct-uniquify-item-tags type-of signal wrong-type-argument uniquify-item 1] 4 (#$ . 8917)]) #@263 Make file buffer names unique by adding segments from file name. If `uniquify-min-dir-content' > 0, always pulls that many file name elements. Arguments BASE, DIRNAME, and NEWBUF specify the new buffer that causes this rationalization. (fn BASE DIRNAME NEWBUF) (defalias 'uniquify-rationalize-file-buffer-names #[771 "r\211q\210\303)\205\347 \304\305!!\262\306\307\303%C\303\310 \211\203\341 \211@ \2030 \311 \312!\"\204\332 \313\300\"\211\262\203\332 \314@!\n>\204N \315\316\307@D\"\210@\317H\232\203\332 @>\204\332 A\204\312 \314@!\n>\204s \315\316\307@D\"\210@\211\320\321\314@!\n>\204\213 \315\316\307 @D\"\210@\322H!I\266\314@!\n>\204\245 \315\316\307@D\"\210@\320H\204\312 r\314@!\n>\204\276 \315\316\307@D\"\210@\322Hq\210\303)\303\262\323\303\324\325\"\"\262\326\"\262A\266\202\202 \210\327!\266\202\207" [uniquify-managed uniquify-ignore-buffers-re cl-struct-uniquify-item-tags nil expand-file-name directory-file-name record uniquify-item buffer-list string-match buffer-name buffer-local-value type-of signal wrong-type-argument 1 2 uniquify-buffer-file-name 3 delq mapcar #[257 "\301\302!>\204 \303\304\305D\"\210\306H!\205 \211\207" [cl-struct-uniquify-item-tags buffer-live-p type-of signal wrong-type-argument uniquify-item 3] 6 "\n\n(fn ITEM)"] append uniquify-rationalize] 15 (#$ . 9234) (byte-code "\203 \302@! >\204 \303\304\305@D\"\210@\306H\202 \307 \310p!pE\207" [uniquify-managed cl-struct-uniquify-item-tags type-of signal wrong-type-argument uniquify-item 1 buffer-name uniquify-buffer-file-name] 4)]) #@224 Return name of directory, file BUFFER is visiting, or nil if none. Works on ordinary file-visiting buffers and buffers whose mode is mentioned in `uniquify-list-buffers-directory-modes', otherwise returns nil. (fn BUFFER) (defalias 'uniquify-buffer-file-name #[257 "r\211q\210\206 \n>\205 \211\205 \304\305\306\304!!!!\262)\207" [buffer-file-name major-mode uniquify-list-buffers-directory-modes list-buffers-directory directory-file-name file-name-directory expand-file-name] 7 (#$ . 10827)]) #@87 Re-rationalize the buffers in FIX-LIST, but ignoring `current-buffer'. (fn FIX-LIST) (defalias 'uniquify-rerationalize-w/o-cb #[257 "\301\211\2033 \211@\302!>\204 \303\304\305D\"\210\211\306H\211p=\204+ \307!\203+ B\262\210A\266\202\202 \210\211\205; \310!\207" [cl-struct-uniquify-item-tags nil type-of signal wrong-type-argument uniquify-item 3 buffer-live-p uniquify-rationalize] 8 (#$ . 11336)]) #@17 (fn FIX-LIST) (defalias 'uniquify-rationalize #[257 "\211\211\203d \211@r\303!>\204 \304\305\306D\"\210\211\307Hq\210\303!>\204+ \304\305\306D\"\210\211\211\310\311\303!>\204? \304\305\306D\"\210\312H\303!>\204S \304\305\306D\"\210\313H\"I\266)A\266\202\202 \210\211A\203:\n\203:\314\315\303@!>\204\201 \304\305\306@D\"\210@\313H!G\316V\205\276 \203\275 \211\203\275 \315\211A\262\242\303!>\204\255 \304\305\306D\"\210\211\313H\262!\232\204\216 \317\262\202\216 \266\202\2039\317\262\211\2035\211@\303!>\204\334 \304\305\306D\"\210\211\312H\320\303!>\204\357 \304\305\306D\"\210\313H!\211\205\372 \321!\262\303!>\204\304\305\306D\"\210\307H\303!>\204\304\305\306D\"\210\310H\322\306%\266\204B\262A\266\202\202\307 \210\202o \210\323!\207" [cl-struct-uniquify-item-tags uniquify-managed uniquify-strip-common-suffix type-of signal wrong-type-argument uniquify-item 3 4 uniquify-get-proposed-name 1 2 t file-name-nondirectory 0 nil file-name-directory directory-file-name record uniquify-rationalize-a-list] 14 (#$ . 11755)]) #@20 (fn ITEM1 ITEM2) (defalias 'uniquify-item-greaterp #[514 "\301!>\204 \302\303\304D\"\210\211\305H\301!>\204! \302\303\304D\"\210\305H\231\207" [cl-struct-uniquify-item-tags type-of signal wrong-type-argument uniquify-item 4] 7 (#$ . 12862)]) #@33 (fn FIX-LIST &optional DEPTH) (defalias 'uniquify-rationalize-a-list #[513 "\211\204 \262\302\303\302\304\305!\306\"\211\203J \211@\307! >\204&