? Fallagassrini

Fallagassrini Bypass Shell

echo"
Fallagassrini
";
Current Path : /usr/share/emacs/24.3/lisp/

Linux gator3171.hostgator.com 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
Upload File :
Current File : //usr/share/emacs/24.3/lisp/filesets.elc

;ELC
;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:06:18 2024
;;; from file /builddir/build/BUILD/emacs-24.3/lisp/filesets.el
;;; in Emacs version 24.3.1
;;; 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" #$))

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


(defvar filesets-version "1.8.4")
(defvar filesets-homepage "http://members.a1.net/t.link/CompEmacsFilesets.html")
#@26 The whole filesets menu.
(defvar filesets-menu-cache nil (#$ . 666))
#@34 Filesets' cached version number.
(defvar filesets-cache-version nil (#$ . 741))
#@31 Filesets' cached system name.
(defvar filesets-cache-hostname nil (#$ . 827))
#@50 A plist containing files and their ingroup data.
(defvar filesets-ingroup-cache nil (#$ . 911))
#@68 List of files already processed when searching for included files.
(defvar filesets-ingroup-files nil (#$ . 1013))
#@52 Non-nil means some fileset definition has changed.
(defvar filesets-has-changed-flag t (#$ . 1134))
#@46 An association list with filesets menu data.
(defvar filesets-submenus nil (#$ . 1240))
#@43 A list of buffers with updated menu bars.
(defvar filesets-updated-buffers nil (#$ . 1334))
#@70 Use cached data.  See `filesets-menu-ensure-use-cached' for details.
(defvar filesets-menu-use-cached-flag nil (#$ . 1432))
#@41 Non-nil means the cache needs updating.
(defvar filesets-update-cache-file-flag nil (#$ . 1562))
#@76 List of custom variables for which the next `set-default' will be ignored.
(defvar filesets-ignore-next-set-default nil (#$ . 1665))
#@101 Non-nil means the current buffer is an output buffer created by filesets.
Is buffer local variable.
(defvar filesets-output-buffer-flag nil (#$ . 1805))
#@73 An integer defining the level of verbosity.
0 means no messages at all.
(defvar filesets-verbosity 1 (#$ . 1964))
#@759 Make sure (X)Emacs uses filesets' cache.

Well, if you use XEmacs (prior to 21.5?) custom.el is loaded after
init.el.  This means that settings saved in the cache file (see
`filesets-menu-cache-file') will be overwritten by custom.el.  In order
to ensure the use of the cache file, set this variable to t -- which is
the default for XEmacs prior to 21.5.  If you want to change this value
put "(setq filesets-menu-ensure-use-cached VALUE)" into your startup
file -- before loading filesets.el.

So, when should you think about setting this value to t? If filesets.el
is loaded before user customizations.  Thus, if (require 'filesets)
precedes the `custom-set-variables' command or, for XEmacs, if init.el
is loaded before custom.el, set this variable to t.
(defvar filesets-menu-ensure-use-cached nil (#$ . 2085))
#@111 Remove all elements not conforming to COND-FN from list LST.
COND-FN takes one argument: the current element.
(defalias 'filesets-filter-list #[(lst cond-fn) "\305	\305\211\203 @\f\n!\203\306\nC\"A\211\204\n\305+\207" [rv lst elt --dolist-tail-- cond-fn nil append] 4 (#$ . 2907)])
#@68 Return the tail of LST for the head of which FSOM-PRED is non-nil.
(defalias 'filesets-ormap #[(fsom-pred lst) "\304\n\203	\204\n@!\203\n\202\nA\211\204	*\207" [lst fsom-rv fsom-lst fsom-pred nil] 3 (#$ . 3210)])
#@132 Return non-nil if FSS-PRED is non-nil for any element of FSS-LST.
Like `some', return the first value of FSS-PRED that is non-nil.
(defalias 'filesets-some #[(fss-pred fss-lst) "\300\301\215\207" [exit (byte-code "\305\211\203 \n@	!\211\203\306\307\f\"\210)\nA\211\204\305*\305\207" [fss-lst fss-this --dolist-tail-- fss-pred fss-rv nil throw exit] 4)] 2 (#$ . 3446)])
#@143 Find the first occurrence of FSM-ITEM in FSM-LST.
It is supposed to work like cl's `member*'.  At the moment only the :test
key is supported.
(defalias 'filesets-member #[(fsm-item fsm-lst &rest fsm-keys) "\303\304\"\206\305\306\307\n\")\207" [fsm-keys fsm-test fsm-lst plist-get :test equal filesets-ormap #[(fsm-this) "	\n\"\207" [fsm-test fsm-item fsm-this] 3]] 3 (#$ . 3835)])
#@45 Get the sublist of LST from BEG to END - 1.
(defalias 'filesets-sublist #[(lst beg &optional end) "\306	\206\nG\fW\203 \307
\f\n8C\"\fT\211\202\f
+\207" [beg end lst top i rv nil append] 5 (#$ . 4227)])
#@74 Select one command from CMD-LIST -- a string with space separated names.
(defalias 'filesets-select-command #[(cmd-list) "\302\303\304\"!\211\305\232?\205\306	\307	GSO!)\207" [cmd-list this shell-command-to-string format "which --skip-alias %s 2> /dev/null | head -n 1" "" file-name-nondirectory 0] 5 (#$ . 4447)])
#@19 Call "which CMD".
(defalias 'filesets-which-command #[(cmd) "\301\302\303\"!\207" [cmd shell-command-to-string format "which %s"] 4 (#$ . 4772)])
#@63 Call "which CMD" and return non-nil if the command was found.
(defalias 'filesets-which-command-p #[(cmd) "\301\302\303\"\304!\"\205
\207" [cmd string-match format "\\(/[^/]+\\)?/%s" filesets-which-command] 4 (#$ . 4925)])
#@77 Show a message only if LEVEL is greater or equal then `filesets-verbosity'.
(defalias 'filesets-message #[(level &rest args) "\303	!X\205\f\304\305\n\"\207" [level filesets-verbosity args abs apply message] 3 (#$ . 5158)])
#@32 Save filesets' customizations.
(defalias 'filesets-save-config #[nil "\300 \207" [customize-save-customized] 1 (#$ . 5389) nil])
#@50 Reset the cached values for one or all filesets.
(defalias 'filesets-reset-fileset #[(&optional fileset no-cache) "\203
\305	\306#\202\306\307\206\f?\211\207" [fileset filesets-submenus filesets-has-changed-flag filesets-update-cache-file-flag no-cache lax-plist-put nil t] 4 (#$ . 5524)])
#@31 Set-default wrapper function.
(defalias 'filesets-set-config #[(fileset var val) "\303!\210\304	\n\"\207" [fileset var val filesets-reset-fileset set-default] 3 (#$ . 5832)])
#@312 Set-default wrapper function used in conjunction with `defcustom'.
If SYM is in the list `filesets-ignore-next-set-default', delete
it from that list, and return nil.  Otherwise, set the value of
SYM to VAL and return t.  If INIT-FLAG is non-nil, set with
`custom-initialize-set', otherwise with `set-default'.
(defalias 'filesets-set-default #[(sym val &optional init-flag) "	\235\211\203\305	\"\202!\203\306\f\"\210\202!\307\f\"\210\n)?\207" [sym filesets-ignore-next-set-default ignore-flag init-flag val delete custom-initialize-set set-default] 4 (#$ . 6015)])
#@72 Call `filesets-set-default' and reset cached data (i.e. rebuild menu).
(defalias 'filesets-set-default! #[(sym val) "\302	\"\205	\303 \207" [sym val filesets-set-default filesets-reset-fileset] 3 (#$ . 6600)])
#@64 Call `filesets-set-default' and reset filesets' standard menu.
(defalias 'filesets-set-default+ #[(sym val) "\303	\"\205\n\304\211\207" [sym val filesets-has-changed-flag filesets-set-default t] 3 (#$ . 6818)])
#@38 Set the default for `filesets-data'.
(defalias 'filesets-data-set-default #[(sym val) "\203	\306\202,\307\310!\203,\311	\312\"\211\306\211\203+\f@\313@!\210\fA\211\204+\314
	\"\207" [filesets-menu-use-cached-flag val modified-filesets x --dolist-tail-- sym nil default-boundp filesets-data filesets-filter-list #[(x) "@A\305\n\"\211?\206	\fA\232?+\207" [x data name filesets-data elt assoc] 4] filesets-reset-fileset filesets-set-default] 4 (#$ . 7038)])
(byte-code "\302\303\304\305\306\307\310\311\312\313&	\210\314\315\316\317\320\321\322\323\310\303&	\210\314\324\325\326\320\321\322\327\312\330\310\303&\210\314\331\332\333\320\321\322\334\312\330\310\303&\210\314\335\304\336\320\321\322\337\310\303&	\210\314\340\341\342\320\343\322\344\310\303&	\210\314\345\346\347\320\343\322\323\310\303&	\210\314\350\351\352\320\321\322\353\310\303&	\210\354\350\355\341#\210\314\356\357\360\320\321\322\361\310\303&	\210\362\363\364\304#\210\365\304\211\203\253	@\363N\203\244\364N\204\244\354\364\363N#\210	A\211\204\215*\366\363\364\367#\210\314\364\304\370\320\321\322\371\310\303&	\210\314\372\304\373\320\321\322\344\310\303&	\210\314\374\304\375\320\321\322\344\310\303&	\210\314\376\377\201@\320\321\322\201A\310\303&	\210\314\201B\201C\201D\320\321\322\201A\310\303&	\210\314\201E\201F\201G\320\321\322\201H\310\303&	\210\314\201I\201J\201K\320\321\322\201L\310\303&	\210\314\201M\201N\201O\320\321\322\201P\310\303&	\210\314\201Q\201R\201S\320\321\322\201T\310\303&	\210\314\201U\304\201V\320\321\322\344\310\303&	\210\314\201W\341\201X\320\321\322\344\310\303&	\210\314\201Y\341\201Z\320\321\322\344\310\303&	\210\314\201[\201\\\201]\320\321\322\201A\310\303&	\210\314\201^\201_\201`\320\201a\322\201b\310\303&	\210\354\201^\355\341#\210\314\201c\201d\201e\320\321\322\201f\310\303&	\210\354\201c\355\341#\210\314\201g\201h\201i\320\321\322\201j\310\303&	\210\354\201g\355\341#\210\314\201k\304\201l\310\303\320\201m\322\201n&	\210\354\201k\355\341#\210\314\201o\201p\201q\320\321\322\201A\310\303&	\210\201r\201s!\210\201t\201u\201v\"\207" [prop --dolist-tail-- custom-declare-group filesets nil "The fileset swapper." :prefix "filesets-" :group convenience :version "22.1" custom-declare-variable filesets-menu-name "Filesets" "Filesets' menu name." :set filesets-set-default :type string filesets-menu-path '("File") "The menu under which the filesets menu should be inserted.\nSee `add-submenu' for documentation." (choice (const :tag "Top Level" nil) (sexp :tag "Menu Path")) "23.1" filesets-menu-before "Open File..." "The name of a menu before which this menu should be added.\nSee `add-submenu' for documentation." (choice (string :tag "Name") (const :tag "Last" nil)) filesets-menu-in-menu "Use that instead of `current-menubar' as the menu to change.\nSee `add-submenu' for documentation." sexp filesets-menu-shortcuts-flag t "Non-nil means to prepend menus with hopefully unique shortcuts." filesets-set-default! boolean filesets-menu-shortcuts-marker "%_" "String for marking menu shortcuts." filesets-menu-cache-file (locate-user-emacs-file "filesets-cache.el") "File to be used for saving the filesets menu between sessions.\nSet this to \"\", to disable caching of menus.\nDon't forget to check out `filesets-menu-ensure-use-cached'." file put risky-local-variable filesets-menu-cache-contents '(filesets-be-docile-flag filesets-submenus filesets-menu-cache filesets-ingroup-cache) "Stuff we want to save in `filesets-menu-cache-file'.\n\nPossible uses: don't save configuration data in the main startup files\nbut in filesets's own cache.  In this case add `filesets-data' to this\nlist.\n\nThere is a second reason for putting `filesets-data' on this list.  If\nyou frequently add and remove buffers on the fly to :files filesets, you\ndon't need to save your customizations if `filesets-data' is being\nmirrored in the cache file.  In this case the version in the cache file\nis the current one, and the version in your startup file will be\nsilently updated later on.\n\nIf you want caching to work properly, at least `filesets-submenus',\n`filesets-menu-cache', and `filesets-ingroup-cache' should be in this\nlist.\n\nDon't forget to check out `filesets-menu-ensure-use-cached'." (repeat (choice :tag "Variable" (const :tag "filesets-submenus" :value filesets-submenus) (const :tag "filesets-menu-cache" :value filesets-menu-cache) (const :tag "filesets-ingroup-cache" :value filesets-ingroup-cache) (const :tag "filesets-data" :value filesets-data) (const :tag "filesets-external-viewers" :value filesets-external-viewers) (const :tag "filesets-ingroup-patterns" :value filesets-ingroup-patterns) (const :tag "filesets-be-docile-flag" :value filesets-be-docile-flag) (sexp :tag "Other" :value nil))) defvaralias filesets-cache-fill-content-hooks filesets-cache-fill-content-hook (saved-value saved-variable-comment) make-obsolete-variable "24.3" "Hook run when writing the contents of filesets' cache file.\n\nThe hook is called with the cache file as current buffer and the cursor\nat the last position.  I.e. each hook has to make sure that the cursor is\nat the last position.\n\nPossible uses: If you don't want to save `filesets-data' in your normal\nconfiguration file, you can add a something like this\n\n	(lambda ()\n	      (insert (format \"(setq-default filesets-data '%S)\"\n			      filesets-data))\n	      (newline 2))\n\nto this hook.\n\nDon't forget to check out `filesets-menu-ensure-use-cached'." hook filesets-cache-hostname-flag "Non-nil means cache the hostname.\nIf the current name differs from the cached one,\nrebuild the menu and create a new cache file." filesets-cache-save-often-flag "Non-nil means save buffer on every change of the filesets menu.\nIf this variable is set to nil and if Emacs crashes, the cache and\nfilesets-data could get out of sync.  Set this to t if this happens from\ntime to time or if the fileset cache causes troubles." filesets-max-submenu-length 25 "Maximum length of submenus.\nSet this value to 0 to turn menu splitting off.  BTW, parts of submenus\nwill not be rewrapped if their length exceeds this value." integer filesets-max-entry-length 50 "Truncate names of split submenus to this length." filesets-browse-dir-function 'dired "A function or command used for browsing directories.\nWhen using an external command, \"%s\" will be replaced with the\ndirectory's name.\n\nNote: You have to manually rebuild the menu if you change this value." (choice :tag "Function:" (const :tag "dired" :value dired) (list :tag "Command" :value (#1="" "%s") (string :tag "Name") (string :tag "Arguments")) (function :tag "Function" :value nil)) filesets-open-file-function 'filesets-find-or-display-file "The function used for opening files.\n\n`filesets-find-or-display-file' ... Filesets' default function for\nvisiting files.  This function checks if an external viewer is defined\nfor a specific file type.  Either this viewer, if defined, or\n`find-file' will be used to visit a file.\n\n`filesets-find-file' ... An alternative function that always uses\n`find-file'.  If `filesets-be-docile-flag' is true, a file, which isn't\nreadable, will not be opened.\n\nCaveat: Changes will take effect only after rebuilding the menu." (choice :tag "Function:" (const :tag "filesets-find-or-display-file" :value filesets-find-or-display-file) (const :tag "filesets-find-file" :value filesets-find-file) (function :tag "Function" :value nil)) filesets-save-buffer-function 'save-buffer "The function used to save a buffer.\nCaveat: Changes will take effect after rebuilding the menu." (choice :tag "Function:" (const :tag "save-buffer" :value save-buffer) (function :tag "Function" :value nil)) filesets-find-file-delay (if (and (featurep 'xemacs) gutter-buffers-tab-visible-p) 0.5 0) "Delay before calling `find-file'.\nThis is for calls via `filesets-find-or-display-file'\nor `filesets-find-file'.\n\nSet this to 0, if you don't use XEmacs's buffer tabs." number filesets-be-docile-flag "Non-nil means don't complain if a file or a directory doesn't exist.\nThis is useful if you want to use the same startup files in different\ncomputer environments." filesets-sort-menu-flag "Non-nil means sort the filesets menu alphabetically." filesets-sort-case-sensitive-flag "Non-nil means sorting of the filesets menu is case sensitive." filesets-tree-max-level 3 "Maximum scan depth for directory trees.\nA :tree fileset is defined by a base directory the contents of which\nwill be recursively added to the menu.  `filesets-tree-max-level' tells up\nto which level the directory structure should be scanned/listed,\ni.e. how deep the menu should be.  Try something like\n\n	(\"HOME -- only one level\"\n	 (:tree \"~\" \"^[^.].*[^~]$\")\n	 (:tree-max-level 1)\n	 (:filter-dirs-flag t))\n	(\"HOME -- up to 3 levels\"\n	 (:tree \"~\" \"^[^.].*[^~]$\")\n	 (:tree-max-level 3)\n	 (:filter-dirs-flag t))\n\nand it should become clear what this option is about.  In any case,\nincluding directory trees to the menu can take a lot of memory." filesets-commands `(("Isearch" multi-isearch-files (filesets-cmd-isearch-getargs)) ("Isearch (regexp)" multi-isearch-files-regexp (filesets-cmd-isearch-getargs)) ("Query Replace" perform-replace (filesets-cmd-query-replace-getargs)) ("Query Replace (regexp)" perform-replace (filesets-cmd-query-replace-regexp-getargs)) ("Grep <<selection>>" "grep" ("-n " filesets-get-quoted-selection " " "<<file-name>>")) ("Run Shell Command" filesets-cmd-shell-command (filesets-cmd-shell-command-getargs))) "Commands to run on filesets.\nAn association list of names, functions, and an argument list (or a\nfunction that returns one) to be run on a filesets' files.\n\nThe argument <file-name> or <<file-name>> (quoted) will be replaced with\nthe filename." filesets-set-default+ (repeat :tag "Commands" (list :tag "Definition" :value (#1#) (string "Name") (choice :tag "Command" (string :tag "String") (function :tag "Function")) (repeat :tag "Argument List" (choice :tag "Arguments" (sexp :tag "Sexp" :value nil) (string :tag "File Name" :value "<file-name>") (string :tag "Quoted File Name" :value "<<file-name>>") (function :tag "Function" :value nil))))) filesets-external-viewers (let ((ps-cmd "ggv") (pdf-cmd "xpdf") (dvi-cmd "xdvi") (doc-cmd "antiword") (pic-cmd "gqview")) `(("^.+\\..?html?$" browse-url ((:ignore-on-open-all t))) ("^.+\\.pdf$" ,pdf-cmd ((:ignore-on-open-all t) (:ignore-on-read-text t) (:constraint-flag ,pdf-cmd))) ("^.+\\.e?ps\\(.gz\\)?$" ,ps-cmd ((:ignore-on-open-all t) (:ignore-on-read-text t) (:constraint-flag ,ps-cmd))) ("^.+\\.dvi$" ,dvi-cmd ((:ignore-on-open-all t) (:ignore-on-read-text t) (:constraint-flag ,dvi-cmd))) ("^.+\\.doc$" ,doc-cmd ((:capture-output t) (:ignore-on-read-text t) (:constraint-flag ,doc-cmd))) ("^.+\\.\\(tiff\\|xpm\\|gif\\|pgn\\)$" ,pic-cmd ((:ignore-on-open-all t) (:ignore-on-read-text t) (:constraint-flag ,pic-cmd))))) "Association list of file patterns and external viewers for use with\n`filesets-find-or-display-file'.\n\nHas the form ((FILE-PATTERN VIEWER PROPERTIES) ...), VIEWER being either a\nfunction or a command name as string.\n\nProperties is an association list determining filesets' behavior in\nseveral conditions.  Choose one from this list:\n\n:ignore-on-open-all ... Don't open files of this type automatically --\ni.e. on open-all-files-events or when running commands\n\n:capture-output ... capture an external viewer output\n\n:constraintp FUNCTION ... use this viewer only if FUNCTION returns non-nil\n\n:constraint-flag SEXP ... use this viewer only if SEXP evaluates to non-nil\n\n:open-hook HOOK ... run hooks after spawning the viewer -- mainly useful\nin conjunction with :capture-output\n\n:args (FORMAT-STRING or SYMBOL or FUNCTION) ... a list of arguments\n(defaults to (list \"%S\")) when using shell commands\n\nAvoid modifying this variable and achieve minor speed-ups by setting the\nvariables my-ps-viewer, my-pdf-viewer, my-dvi-viewer, my-pic-viewer.\n\nIn order to view pdf or rtf files in an Emacs buffer, you could use these:\n\n\n      (\"^.+\\\\.pdf\\\\'\" \"pdftotext\"\n       ((:capture-output t)\n	(:args (\"%S - | fmt -w \" window-width))\n	(:ignore-on-read-text t)\n	(:constraintp (lambda ()\n			(and (filesets-which-command-p \"pdftotext\")\n			     (filesets-which-command-p \"fmt\"))))))\n      (\"^.+\\\\.rtf\\\\'\" \"rtf2htm\"\n       ((:capture-output t)\n	(:args (\"%S 2> /dev/null | w3m -dump -T text/html\"))\n	(:ignore-on-read-text t)\n	(:constraintp (lambda ()\n			(and (filesets-which-command-p \"rtf2htm\")\n			     (filesets-which-command-p \"w3m\"))))))" (repeat :tag "Viewer" (list :tag "Definition" :value ("^.+\\.suffix$" #1#) (regexp :tag "Pattern") (choice :tag "Viewer" (symbol :tag "Function" :value nil) (string :tag "Program" :value #1#)) (repeat :tag "Properties" (choice (list :tag ":constraintp" :value (:constraintp) (const :format #1# :value :constraintp) (function :tag "Function")) (list :tag ":constraint-flag" :value (:constraint-flag) (const :format #1# :value :constraint-flag) (sexp :tag "Symbol")) (list :tag ":ignore-on-open-all" :value (:ignore-on-open-all t) (const :format #1# :value :ignore-on-open-all) (boolean :tag "Boolean")) (list :tag ":ignore-on-read-text" :value (:ignore-on-read-text t) (const :format #1# :value :ignore-on-read-text) (boolean :tag "Boolean")) (list :tag ":args" :value (:args) (const :format #1# :value :args) (repeat :tag "List" (choice :tag "Arguments" (string :tag "String" :value #1#) (symbol :tag "Symbol" :value nil) (function :tag "Function" :value nil)))) (list :tag ":open-hook" :value (:open-hook) (const :format #1# :value :open-hook) (hook :tag "Hook")) (list :tag ":capture-output" :value (:capture-output t) (const :format #1# :value :capture-output) (boolean :tag "Boolean")))))) filesets-ingroup-patterns '(("^.+\\.tex$" t (((:name "Package") (:pattern "\\\\usepackage\\W*\\(\\[[^]]*\\]\\W*\\)?{\\W*\\(.+\\)\\W*}") (:match-number 2) (:stub-flag t) (:get-file-name (lambda (master file) (filesets-which-file master (concat file ".sty") (filesets-convert-path-list (or (getenv "MY_TEXINPUTS") (getenv "TEXINPUTS"))))))) ((:name "Include") (:pattern "\\\\include\\W*{\\W*\\(.+\\)\\W*}") (:get-file-name (lambda (master file) (filesets-which-file master (concat file ".tex") (filesets-convert-path-list (or (getenv "MY_TEXINPUTS") (getenv "TEXINPUTS")))))) (:scan-depth 5)) ((:name "Input") (:pattern "\\\\input\\W*{\\W*\\(.+\\)\\W*}") (:stubp (lambda (a b) (not (filesets-files-in-same-directory-p a b)))) (:get-file-name (lambda (master file) (filesets-which-file master (concat file ".tex") (filesets-convert-path-list (or (getenv "MY_TEXINPUTS") (getenv "TEXINPUTS")))))) (:scan-depth 5)) ((:name "Bibliography") (:pattern "\\\\bibliography\\W*{\\W*\\(.+\\)\\W*}") (:get-file-name (lambda (master file) (filesets-which-file master (concat file ".bib") (filesets-convert-path-list (or (getenv "MY_BIBINPUTS") (getenv "BIBINPUTS"))))))))) ("^.+\\.el$" t (((:name "Require") (:pattern "(require\\W+'\\(.+\\))") (:stubp (lambda (a b) (not (filesets-files-in-same-directory-p a b)))) (:get-file-name (lambda (master file) (filesets-which-file master (concat file ".el") load-path)))) ((:name "Load") (:pattern "(load\\(-library\\)?\\W+\"\\(.+\\)\")") (:match-number 2) (:get-file-name (lambda (master file) (filesets-which-file master file load-path)))))) ("^\\([A-ZÄÖÜ][a-zäöüß]+\\([A-ZÄÖÜ][a-zäöüß]+\\)+\\)$" t (((:pattern "\\<\\([A-ZÄÖÜ][a-zäöüß]+\\([A-ZÄÖÜ][a-zäöüß]+\\)+\\)\\>") (:scan-depth 5) (:stubp (lambda (a b) (not (filesets-files-in-same-directory-p a b)))) (:case-sensitive t) (:get-file-name (lambda (master file) (filesets-which-file master file (if (boundp 'emacs-wiki-directories) emacs-wiki-directories nil)))))))) "Inclusion group definitions.\n\nDefine how to find included file according to a file's mode (being\ndefined by a file pattern).\n\nA valid entry has the form (FILE-PATTERN REMOVE-DUPLICATES-FLAG\nCMD-DEF1 ...), CMD-DEF1 being a plist containing the fields :pattern\n(mandatory), :name, :get-file-name, :match-number, :scan-depth,\n:preprocess, :case-sensitive.\n\nFile Pattern ... A regexp matching the file's name for which the\nfollowing rules should be applied.\n\nRemove Duplicates ... If t, only the first occurrence of an included\nfile is retained.  (See below for a full explanation.)\n\n:name STRING ... This pattern's name.\n\n:pattern REGEXP ... A regexp matching the command.  This regexp has to\ninclude a group that holds the name of the included file.\n\n:get-file-name FUNCTION (default: `filesets-which-file') ... A function\nthat takes two arguments (the path of the master file and the name\nof the included file) and returns a valid path or nil -- if the\nsubfile can't be found.\n\n:match-number INTEGER (default: 1) ... The number of the match/group\nin the pattern holding the subfile's name.  0 refers the whole\nmatch, 1 to the first group.\n\n:stubp FUNCTION ... If (FUNCTION MASTER INCLUDED-FILE) returns non-nil,\nINCLUDED-FILE is a stub -- see below.\n\n:stub-flag ... Files of this type are stubs -- see below.\n\n:scan-depth INTEGER (default: 0) ... Whether included files should be\nrescanned.  Set this to 0 to disable re-scanning of included file.\n\n:preprocess FUNCTION ... A function modifying a buffer holding the\nmaster file so that pattern matching becomes easier.  This is usually\nused to narrow a buffer to the relevant region.  This function could also\nbe destructive and simply delete non-relevant text.\n\n:case-sensitive BOOLEAN (default: nil) ... Whether a pattern is\ncase-sensitive or not.\n\n\nStubs:\n\nFirst, a stub is a file that shows up in the menu but will not be\nincluded in an ingroup's file listing -- i.e. filesets will never\noperate on this file automatically.  Secondly, in opposition to normal\nfiles stubs are not scanned for new inclusion groups.  This is useful if\nyou want to have quick access to library headers.\n\nIn the menu, an asterisk is appended to the stub's name.\n\n\nRemove Duplicates:\n\nE.g. File A and file B refer to file X; X refers to A.  If\nyou choose not to remove duplicates the tree would look like:\n\n    M + A - X - A ...\n        B - X - A ...\n\nAs you can see, there is some chance that you run in circles.\nNevertheless, up to some degree this could still be what you want.\n\nWith duplicates removed, it would be:\n\n    M + A - X\n        B" (repeat :tag "Include" (list :tag "Definition" :value ("^.+\\.suffix$" t) (regexp :tag "File Pattern" :value "^.+\\.suffix$") (boolean :tag "Remove Duplicates" :value t) (repeat :tag "Commands" (repeat :tag "Command" (choice :tag "Definition" (list :tag ":name" :value (:name #1#) (const :format #1# :value :name) (string :tag "String")) (list :tag ":pattern" :value (:pattern "\\<CMD\\W*\\(.+\\)\\>") (const :format #1# :value :pattern) (regexp :tag "RegExp")) (list :tag ":get-file-name" :value (:get-file-name) (const :format #1# :value :get-file-name) (function :tag "Function")) (list :tag ":match-number" :value (:match-number 1) (const :format #1# :value :match-number) (integer :tag "Integer")) (list :tag ":stub-flag" :value (:stub-flag t) (const :format #1# :value :stub-flag) (boolean :tag "Boolean")) (list :tag ":stubp" :value (:stubp) (const :format #1# :value :stubp) (function :tag "Function")) (list :tag ":scan-depth" :value (:scan-depth 0) (const :format #1# :value :scan-depth) (integer :tag "Integer")) (list :tag ":case-sensitive" :value (:case-sensitive) (const :format #1# :value :case-sensitive) (boolean :tag "Boolean")) (list :tag ":preprocess" :value (:preprocess) (const :format #1# :value :preprocess) (function :tag "Function"))))))) filesets-data "Fileset definitions.\n\nA fileset is either a list of files, a file pattern, a base directory\nand a search pattern (for files), or a base file.  Changes to this\nvariable will take effect after rebuilding the menu.\n\nCaveat: Fileset names have to be unique.\n\nExample definition:\n      '((\"My Wiki\"\n	 (:ingroup \"~/Etc/My-Wiki/WikiContents\"))\n	(\"My Homepage\"\n	 (:pattern \"~/public_html/\" \"^.+\\\\.html$\")\n	 (:open filesets-find-file))\n	(\"User Configuration\"\n	 (:files \"~/.xinitrc\"\n		 \"~/.bashrc\"\n		 \"~/.bash_profile\"))\n	(\"HOME\"\n	 (:tree \"~\" \"^[^.].*[^~]$\")\n	 (:filter-dirs-flag t)))\n\n`filesets-data' is a list of (NAME-AS-STRING . DEFINITION), DEFINITION\nbeing an association list with the fields:\n\n:files FILE-1 .. FILE-N ... a list of files belonging to a fileset\n\n:ingroup FILE-NAME ... an inclusion group's base file.\n\n:tree ROOT-DIR PATTERN ... a base directory and a file pattern\n\n:pattern DIR PATTERN ... a base directory and a regexp matching\n                         files in that directory.  Usually,\n                         PATTERN has the form '^REGEXP$'.  Unlike\n                         :tree, this form does not descend\n                         recursively into subdirectories.\n\n:filter-dirs-flag BOOLEAN ... is only used in conjunction with :tree.\n\n:tree-max-level INTEGER ... recurse into directories this many levels\n(see `filesets-tree-max-level' for a full explanation)\n\n:dormant-flag BOOLEAN ... non-nil means don't show this item in the\nmenu; dormant filesets can still be manipulated via commands available\nfrom the minibuffer -- e.g. `filesets-open', `filesets-close', or\n`filesets-run-cmd'\n\n:dormant-p FUNCTION ... a function returning :dormant-flag\n\n:open FUNCTION ... the function used to open file belonging to this\nfileset.  The function takes a file name as argument\n\n:save FUNCTION ... the function used to save file belonging to this\nfileset; it takes no arguments, but works on the current buffer.\n\nEither :files, :pattern, :tree, or :ingroup must be supplied.  :files\noverrules :tree, :tree overrules :pattern, :pattern overrules :ingroup,\ni.e. these tags are mutually exclusive.  The fields :open and :save are\noptional.\n\nIn conjunction with the :tree tag, :save is void.  :open refers to the\nfunction used for opening files in a directory, not for opening the\ndirectory.  For browsing directories, `filesets-browse-dir-function' is used.\n\nBefore using :ingroup, make sure that the file type is already\ndefined in `filesets-ingroup-patterns'." filesets-data-set-default (repeat (cons :tag "Fileset" (string :tag "Name" :value #1#) (repeat :tag "Data" (choice :tag "Type" :value nil (list :tag "Pattern" :value (:pattern "~/" "^.+\\.suffix$") (const :format #1# :value :pattern) (directory :tag "Dir") (regexp :tag "Pattern")) (cons :tag "Files" :value (:files) (const :format #1# :value :files) (repeat :tag "Files" file)) (list :tag "Single File" :value (:file "~/") (const :format #1# :value :file) (file :tag "File")) (list :tag "Inclusion group" :value (:ingroup "~/") (const :format #1# :value :ingroup) (file :tag "File" :value "~/")) (list :tag "Directory Tree" :value (:tree "~/" "^.+\\.suffix$") (const :format #1# :value :tree) (directory :tag "Dir") (regexp :tag "Pattern")) (list :tag "Filter directories" :value (:filter-dirs-flag) (const :format #1# :value :filter-dirs-flag) (boolean :tag "Boolean" :value nil)) (list :tag "Scanning depth" :value (:tree-max-level 3) (const :format #1# :value :tree-max-level) (integer :tag "Integer")) (list :tag "Verbosity" :value (:verbosity 1) (const :format #1# :value :verbosity) (integer :tag "Integer")) (list :tag "Conceal fileset (Flag)" :value (:dormant-flag) (const :format #1# :value :dormant-flag) (boolean :tag "Boolean")) (list :tag "Conceal fileset (Function)" :value (:dormant-p) (const :format #1# :value :dormant-p) (function :tag "Function")) (list :tag "Save function" :value (:save) (const :format #1# :value :save) (function :tag "Function")) (list :tag "Open function" :value (:open) (const :format #1# :value :open) (function :tag "Function")))))) filesets-query-user-limit 15 "Query the user before opening a fileset with that many files." require easymenu defalias filesets-error #[(class &rest args) "\301\302\303\304\305#\"\207" [args error "%s" mapconcat identity " "] 6 "`error' wrapper."]] 13)
#@104 Remove non-directory names from a list of strings.
If NEGATIVE is non-nil, remove all directory names.
(defalias 'filesets-filter-dir-names #[(lst &optional negative) "\301\302\"\207" [lst filesets-filter-list #[(x) "\302\303\"?\205	\203\302\304\"?\207\302\304\"\207" [x negative string-match "^\\.+/$" "[:/\\]$"] 3]] 3 (#$ . 31215)])
#@182 Return a sorted copy of LST, LST being a list of strings.
If `filesets-sort-menu-flag' is nil, return LST itself.

ACCESS-FN ... function to get the string value of LST's elements.
(defalias 'filesets-conditional-sort #[(lst &optional access-fn) "\203	\206	\306\203\307\202\310\311\312
!\f\"*\207
\207" [filesets-sort-menu-flag access-fn fni filesets-sort-case-sensitive-flag fn lst identity #[(a b) "	!\n!\231\207" [fni a b] 3] #[(a b) "	!\226\n!\226\231\207" [fni a b] 3] sort copy-sequence] 3 (#$ . 31565)])
#@222 Get WHAT (:files or :dirs) in DIR.
If PATTERN is provided return only those entries matching this
regular expression.
If MATCH-DIRS-FLAG is non-nil, also match directory entries.
Return full path if FULL-FLAG is non-nil.
(defalias 'filesets-directory-files #[(dir &optional pattern what full-flag match-dirs-flag) "\306\307\310#\210\311!\203\236\312\211\313\314\"\312\211\203y\f@\315\316\"\204r\315\317\"\203L
\203=\203=\315\"\203r\306\320\321$\210	B\202r\203Y\315\"\203r\306\320\322$\210\203n\323!P\202o\nB\fA\211\204* \324\232\203\207\325	!\202\234 \326\232\203\224\325\n!\202\234\327\325\n!\325	!\"*\207!\203\253\306\330\331#\210\312\207\332\333\334\335$\207" [dir dirs files this --dolist-tail-- match-dirs-flag filesets-message 2 "Filesets: scanning %S" file-exists-p nil file-name-all-completions "" string-match "^\\.+/$" "[:/\\]$" 5 "Filesets: matched dir %S with pattern %S" "Filesets: matched file %S with pattern %S" file-name-as-directory :dirs filesets-conditional-sort :files append 1 "Filesets: %S doesn't exist" filesets-error error "Filesets: " " does not exist" pattern full-flag what filesets-be-docile-flag] 6 (#$ . 32098)])
#@23 Return TXT in quotes.
(defalias 'filesets-quote #[(txt) "\301\301Q\207" [txt "\""] 3 (#$ . 33308)])
#@70 Get the text between mark and point -- i.e. the selection or region.
(defalias 'filesets-get-selection #[nil "\302 `\211\203	^	]{\202\303\304\305\"*\207" [p m mark filesets-error error "No selection."] 4 (#$ . 33415)])
#@47 Return the currently selected text in quotes.
(defalias 'filesets-get-quoted-selection #[nil "\300\301 !\207" [filesets-quote filesets-get-selection] 2 (#$ . 33648)])
#@42 Create menu shortcuts based on number N.
(defalias 'filesets-get-shortcut #[(n) "\302S\303\"	\204\304\2027\305X\203\306!\307P\2027\310X\203+\311\312\313\\\"\2027\303X\2057\311\312\314\\\")\207" [n filesets-menu-shortcuts-flag mod 51 "" 9 number-to-string " " 35 format "%c " 87 -3] 4 (#$ . 33821)])
#@48 Compare two filenames A and B after expansion.
(defalias 'filesets-files-equalp #[(a b) "\302!\302	!\232\207" [a b expand-file-name] 3 (#$ . 34143)])
#@48 Compare two filenames A and B after expansion.
(defalias 'filesets-files-in-same-directory-p #[(a b) "\304\305!!\304\305	!!\211\n\232*\207" [a b bd ad file-name-directory expand-file-name] 5 (#$ . 34300)])
#@45 Return a path-list given as STRING as list.
(defalias 'filesets-convert-path-list #[(string) "\205\302\303\304	\"\"\207" [string path-separator mapcar #[(x) "\301!\207" [x file-name-as-directory] 2] split-string] 5 (#$ . 34515)])
#@63 Search for a FILENAME relative to a MASTER file in PATH-LIST.
(defalias 'filesets-which-file #[(master filename &optional path-list) "\304!	P\305\n!\203\n\202\306\307\")\207" [master filename f path-list file-name-directory file-exists-p filesets-some #[(dir) "\302!\303!\205\304\305\306#\307\310	\"*\207" [dir files file-name-as-directory file-exists-p filesets-directory-files nil :files filesets-some #[(file) "\303	!\232\205\n	P\207" [filename file dir file-name-nondirectory] 3]] 5]] 3 (#$ . 34756)])
#@59 Get ENTRY's (representing an external viewer) properties.
(defalias 'filesets-eviewer-get-props #[(entry) "\3018\207" [entry 2] 2 (#$ . 35285)])
(defalias 'filesets-eviewer-constraint-p #[(entry) "\305!\306\307	\"\306\310	\"\n\203\n\211A@) \202,\203+\311\211A@)!\202,\312+\207" [entry props constraint constraint-flag x filesets-eviewer-get-props assoc :constraintp :constraint-flag eval t] 4])
#@35 Find an external viewer for FILE.
(defalias 'filesets-get-external-viewer #[(file) "\303!\304\305\n\")\207" [file filename filesets-external-viewers file-name-nondirectory filesets-some #[(entry) "\302@	\"\205\303!\205\207" [entry filename string-match filesets-eviewer-constraint-p] 3]] 3 (#$ . 35700)])
#@49 Get the external viewer definition called NAME.
(defalias 'filesets-get-external-viewer-by-name #[(name) "\205\302\303	\"\207" [name filesets-external-viewers filesets-some #[(entry) "A@	\230\205\302!\205\207" [entry name filesets-eviewer-constraint-p] 2]] 3 (#$ . 36020)])
#@432 Return non-nil if a file of a specific type has special flags/tags.

Events (corresponding tag):

on-open-all (:ignore-on-open-all) ... Exclude files of this when opening
a fileset

on-grep (:ignore-on-read-text) ... Exclude files of this when running
the "Grep <<selection>>" command

on-capture-output (:capture-output) ... Capture output of an external viewer

on-ls ... Not used

on-cmd ... Not used

on-close-all ... Not used
(defalias 'filesets-filetype-property #[(filename event &optional entry) "\304\206\305	!!\306\n\307=\203\310\2025\311=\203 \312\2025\313=\203*\314\2025\315=\2034\314\2025\314\314\316$)\207" [entry filename def event filesets-eviewer-get-props filesets-get-external-viewer filesets-alist-get on-open-all :ignore-on-open-all on-grep :ignore-on-read-text on-cmd nil on-close-all t] 5 (#$ . 36311)])
#@56 Return PROPERTY for filename -- use ENTRY if provided.
(defalias 'filesets-filetype-get-prop #[(property filename &optional entry) "\304\206\305	!!\211\205\306\n\307\310$)\207" [entry filename def property filesets-eviewer-get-props filesets-get-external-viewer filesets-alist-get nil t] 6 (#$ . 37161)])
#@60 Reset a buffer's filename if the buffer is being modified.
(defalias 'filesets-reset-filename-on-change #[nil "\205\301\302\303\"\207" [filesets-output-buffer-flag set-visited-file-name nil t] 3 (#$ . 37479)])
#@133 Start an external viewer for FILE.
Use the viewer defined in EV-ENTRY (a valid element of
`filesets-external-viewers') if provided.
(defalias 'filesets-spawn-external-viewer #[(file &optional ev-entry) "\306!	\206\307!\211\203\377\n\211A@)\310\311\n#\310\312\n#\310\313\n#\211\"\203\202\314#\"\315$\211%\203y%@$#$;\203R\316$\"\202m$9\203h\317$!\203h\316\320$ \"\202m\316\320$\"P#%A\211%\204=\315$#+\202\206\316\320\")&\321\f!\203\231
\203\231\f!\202\300\321\f!\203\247\f!\210\315\202\300
\203\266\322\316\323\f&#!\202\300\324\316\325\f&#!\210\315'
\203\363\326\316\327\f#!\210'c\210\330\331!\210\332\333\332\"\210\203\347\334\335!\210\336\315!\210\332(eb\202\373\205\373\334\335!-\202\337\340\341\"*\207" [file ev-entry entry x vwr co-flag expand-file-name filesets-get-external-viewer filesets-filetype-get-prop :capture-output :open-hook :args "" nil format fboundp "%S" functionp shell-command-to-string "%s %s" shell-command "%s %s&" switch-to-buffer "Filesets: %s %s" make-local-variable filesets-output-buffer-flag t set-visited-file-name run-hooks oh set-buffer-modified-p filesets-error error "Filesets: general error when spawning external viewer" fmt rv this --dolist-tail-- args output buffer-read-only] 6 (#$ . 37699)])
#@163 Call `find-file' after a possible delay (see `filesets-find-file-delay').
If `filesets-be-docile-flag' is true, a file, which isn't readable, will
not be opened.
(defalias 'filesets-find-file #[(file) "\303!\204	?\205\304\n!\210\305!\207" [file filesets-be-docile-flag filesets-find-file-delay file-readable-p sit-for find-file] 2 (#$ . 39012)])
#@68 Visit FILE using an external VIEWER or open it in an Emacs buffer.
(defalias 'filesets-find-or-display-file #[(&optional file viewer) "\206\n\303\304\305\211	$\306	!\206\307!\310\311\312\n$\210\n\203'\313\n\"\202*\314!*\207" [file viewer external-viewer-def read-file-name "Find file: " nil filesets-get-external-viewer-by-name filesets-get-external-viewer filesets-message 3 "Filesets: view %S using %s" filesets-spawn-external-viewer filesets-find-file] 5 (#$ . 39370) nil])
#@59 Select a viewer and call `filesets-find-or-display-file'.
(defalias 'filesets-find-file-using #[nil "\304\305\"\306\307	\310\311$\211\205\312\310\313\n	\"\211A@)\"*\207" [filesets-external-viewers lst viewer x mapcar #[(this) "\211A@)\303\304\n\"\n)D\207" [this x a format "%s"] 4] completing-read "Using viewer: " nil t filesets-find-or-display-file assoc] 6 (#$ . 39865) nil])
#@80 Get the directory browser's name as defined in `filesets-browse-dir-function'.
(defalias 'filesets-browser-name #[nil "<\203@\207\207" [filesets-browse-dir-function] 1 (#$ . 40259)])
#@50 Browse DIR using `filesets-browse-dir-function'.
(defalias 'filesets-browse-dir #[(dir) "\306!\203\n	!\207@\307\211A@)\310	!\"\311\312!r
q\210\313\216\314\315\fP\316\f$-\207" [filesets-browse-dir-function dir x args name #1=#:temp-buffer functionp format expand-file-name generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) start-process "Filesets:" "*Filesets external directory browser*"] 6 (#$ . 40453)])
#@35 Get SOMETHING's name (Don't ask).
(defalias 'filesets-get-fileset-name #[(something) "<\203@\207\207" [something] 1 (#$ . 40935)])
#@51 Access to `filesets-data'.  Get the ENTRY's name.
(defalias 'filesets-data-get-name #[(entry) "@\207" [entry] 1 (#$ . 41077)])
#@59 Access to `filesets-data'.  Get the ENTRY's data section.
(defalias 'filesets-data-get-data #[(entry) "A\207" [entry] 1 (#$ . 41211)])
#@117 Get KEY's value in the association list ALIST.
Return DEFAULT if not found.  Return (car VALUE) if CARP is non-nil.
(defalias 'filesets-alist-get #[(alist key &optional default carp) "\306	\"\211\203\203\n\211A@)\202$\nA\202$
\203#
\202$\307)\207" [key alist elt carp x default assoc nil] 4 (#$ . 41354)])
#@131 Extract the value for KEY in the data part of fileset ENTRY.
Return DEFAULT if not found.  Return (car VALUE) if CARP is non-nil.
(defalias 'filesets-data-get #[(entry key &optional default carp) "\304\305!	\n$\207" [entry key default carp filesets-alist-get filesets-data-get-data] 5 (#$ . 41679)])
#@58 Set the VALUE for KEY in the data part of fileset ENTRY.
(defalias 'filesets-data-set #[(entry key value) "\305!\306\n	\"\211\203\f\241\202\n\fB	B\241*\207" [entry alist key elt value filesets-data-get-data assoc] 4 (#$ . 41987)])
#@96 Return fileset ENTRY's mode: :files, :file, :tree, :pattern, or :ingroup.
See `filesets-data'.
(defalias 'filesets-entry-mode #[(entry) "\302!\303\304\305\")\207" [entry data filesets-data-get-data filesets-some #[(x) "\302	\"\205\207" [x data assoc] 3] (:files :tree :pattern :ingroup :file)] 3 (#$ . 42233)])
#@103 Get the open-function for FILESET-NAME.
Use FILESET-ENTRY for finding the open function, if provided.
(defalias 'filesets-entry-get-open-fn #[(fileset-name &optional fileset-entry) "\303\206\304	!\305\n\306$\207" [fileset-entry fileset-name filesets-open-file-function filesets-data-get filesets-get-fileset-from-name :open t] 5 (#$ . 42557)])
#@103 Get the save-function for FILESET-NAME.
Use FILESET-ENTRY for finding the save function, if provided.
(defalias 'filesets-entry-get-save-fn #[(fileset-name &optional fileset-entry) "\303\206\304	!\305\n\306$\207" [fileset-entry fileset-name filesets-save-buffer-function filesets-data-get filesets-get-fileset-from-name :save t] 5 (#$ . 42911)])
#@38 Get the file list for fileset ENTRY.
(defalias 'filesets-entry-get-files #[(entry) "\301\302\"\207" [entry filesets-data-get :files] 3 (#$ . 43266)])
#@38 Set the file list for fileset ENTRY.
(defalias 'filesets-entry-set-files #[(entry data &optional anyways) "\304!\n\204\f	\205\305\306#)\207" [entry files anyways data filesets-entry-get-files filesets-data-set :files] 4 (#$ . 43423)])
#@40 Get verbosity level for fileset ENTRY.
(defalias 'filesets-entry-get-verbosity #[(entry) "\301\302\303\304$\207" [entry filesets-data-get :verbosity 1 t] 5 (#$ . 43671)])
#@40 Get the single file for fileset ENTRY.
(defalias 'filesets-entry-get-file #[(entry) "\301\302\303\304$\207" [entry filesets-data-get :file nil t] 5 (#$ . 43849)])
#@58 Get the base directory + file pattern for fileset ENTRY.
(defalias 'filesets-entry-get-pattern #[(entry) "\301\302\"\207" [entry filesets-data-get :pattern] 3 (#$ . 44019)])
#@32 Get the file pattern for LIST.
(defalias 'filesets-entry-get-pattern--pattern #[(list) "G\302U\203\f\303@!\207\211A@)\207" [list x 1 file-name-nondirectory] 3 (#$ . 44200)])
#@47 Get a file pattern's base directory for LIST.
(defalias 'filesets-entry-get-pattern--dir #[(list) "G\301U\203\f\302@!\207@\207" [list 1 file-name-directory] 2 (#$ . 44385)])
#@41 Get the tree pattern for fileset ENTRY.
(defalias 'filesets-entry-get-tree #[(entry) "\301\302\"\207" [entry filesets-data-get :tree] 3 (#$ . 44569)])
#@37 Get dormant flag for fileset ENTRY.
(defalias 'filesets-entry-get-dormant-flag #[(entry) "\302\303\304\305$\211\203	 \202\302\306\304\305$)\207" [entry fn filesets-data-get :dormant-p nil t :dormant-flag] 6 (#$ . 44727)])
#@41 Get filter-dirs-flag for fileset ENTRY.
(defalias 'filesets-entry-get-filter-dirs-flag #[(entry) "\301\302\303\304$\207" [entry filesets-data-get :filter-dirs-flag nil t] 5 (#$ . 44962)])
#@52 Get maximal tree scanning depth for fileset ENTRY.
(defalias 'filesets-entry-get-tree-max-level #[(entry) "\301\302\303\304$\207" [entry filesets-data-get :tree-max-level nil t] 5 (#$ . 45157)])
#@38 Get the base file for fileset ENTRY.
(defalias 'filesets-entry-get-master #[(entry) "\301\302\303\304$\207" [entry filesets-data-get :ingroup nil t] 5 (#$ . 45359)])
#@107 Open FILE-NAME using OPEN-FUNCTION.
If OPEN-FUNCTION is nil, its value will be deduced from FILESET-NAME.
(defalias 'filesets-file-open #[(open-function file-name &optional fileset-name) "\206\303	!\304\n!\203\n!\202\305\306\n\")\207" [open-function fileset-name file-name filesets-entry-get-open-fn file-readable-p message "Filesets: Couldn't open `%s'"] 3 (#$ . 45533)])
#@192 Close BUFFER.
First, save the buffer's contents using SAVE-FUNCTION.  Then, kill buffer
if `buffer-modified-p' returns nil.

SAVE-FUNCTION takes no argument, but works on the current buffer.
(defalias 'filesets-file-close #[(save-function buffer) "rq\210\302 \203\f	 \210\302 ?\205\303!)\207" [buffer save-function buffer-modified-p kill-buffer] 2 (#$ . 45922)])
#@34 Get fileset definition for NAME.
(defalias 'filesets-get-fileset-from-name #[(name &optional mode) "\303>\203	\207\304	\n\"\207" [mode name filesets-data (:ingroup :tree) assoc] 3 (#$ . 46296)])
#@45 Get `filesets-commands' entry for CMD-NAME.
(defalias 'filesets-cmd-get-def #[(cmd-name) "\302	\"\207" [cmd-name filesets-commands assoc] 3 (#$ . 46500)])
(defalias 'filesets-cmd-get-args #[(cmd-name) "\306!\307	8)\310\211\310\211\203H
@\2119\203;\311\f!\203;\f \312\n<\2032\2025C\")\202A\312\n\fC\"
A\211\204\310\n,\207" [cmd-name def rv args this --dolist-tail-- filesets-cmd-get-def 2 nil fboundp append x] 4])
(defalias 'filesets-cmd-get-fn #[(cmd-name) "\302!\211A@)\207" [cmd-name def filesets-cmd-get-def] 3])
#@39 Show OUTPUT of CMD (a shell command).
(defalias 'filesets-cmd-show-result #[(cmd output) "\302\303!\210\304 \210\305c\210c\210\306 \210	c\210\306 \207" [cmd output pop-to-buffer "*Filesets: Shell Command Output*" end-of-buffer "*** " newline] 2 (#$ . 47053)])
#@118 Helper function for `filesets-run-cmd'.  Apply FORMAT-FN to arg.
Replace <file-name> or <<file-name>> with filename.
(defalias 'filesets-run-cmd--repl-fn #[(arg &optional format-fn) "	\302\232\203\f\303 \202	\304\232\203\305\303 !\202	!\207" [format-fn arg "<file-name>" buffer-file-name "<<file-name>>" shell-quote-argument] 3 (#$ . 47321)])
#@52 Run CMD-NAME (see `filesets-commands') on FILESET.
(defalias 'filesets-run-cmd #[(&optional cmd-name fileset mode) "\206\n\306\307	\310\311$\n\206\306\312\310\311$\205\"\f\205\"\313\232\203(\314\202)\315\n\203E\316\232\204<\317\232\203E\320\n
#\202M\320\321\f!
#\211 \205!\322!\323!!\211\"\324>\203l\325\"!\"\202  \310#\211$\203$@#\212\214\326#!\211%\203eb\210\";\203\324\327&!\310#\211$\203\267$@#&\330#\331\"P&$A\211$\204\237\310#&+!\"\332!Q'\333'\334'!\"\210*\202\"9\203\310(!\310#\211$\203$@#\335(\330#\336\"\"($A\211$\204\350\310#(+!\325\"!\"\210)+$A\211$\204w\310#*\310***\207" [cmd-name filesets-commands fileset filesets-data name event completing-read "Select command: " nil t "Select fileset: " "Grep <<selection>>" on-grep on-cmd :ingroup :tree filesets-get-filelist filesets-get-fileset-from-name filesets-cmd-get-fn filesets-cmd-get-args (multi-isearch-files multi-isearch-files-regexp) apply filesets-find-file "" filesets-run-cmd--repl-fn #[(this) "\210\302\303	\"\207" [txt this format "%s"] 3] " " filesets-cmd-show-result shell-command-to-string append list mode files args fn this --dolist-tail-- buffer txt cmd argl] 6 (#$ . 47678) nil])
#@31 Create filesets command menu.
(defalias 'filesets-get-cmd-menu #[nil "\301\302\303\"B\207" [filesets-commands "+ Commands" mapcar #[(this) "@\302	\303	D\")\207" [this name vector filesets-run-cmd] 4]] 4 (#$ . 48941)])
#@63 Get arguments for `query-replace' and `query-replace-regexp'.
(defalias 'filesets-cmd-query-replace-getargs #[nil "\302\303\304\305#\211@A@\305\304\3068\304	\257)\207" [common multi-query-replace-map query-replace-read-args "Filesets query replace" nil t 2] 8 (#$ . 49168)])
#@63 Get arguments for `query-replace' and `query-replace-regexp'.
(defalias 'filesets-cmd-query-replace-regexp-getargs #[nil "\302\303\304\211#\211@A@\304\211\3058\306	\257)\207" [common multi-query-replace-map query-replace-read-args "Filesets query replace" t 2 nil] 8 (#$ . 49453)])
#@75 Get arguments for `multi-isearch-files' and `multi-isearch-files-regexp'.
(defalias 'filesets-cmd-isearch-getargs #[nil "\301\300!\205C\207" [files boundp] 2 (#$ . 49745)])
#@49 Get arguments for `filesets-cmd-shell-command'.
(defalias 'filesets-cmd-shell-command-getargs #[nil "\300\301\302\303#\207" [read-string "Shell command (%s = file): " "%s" shell-command-history] 5 (#$ . 49927)])
#@39 Wrapper function for `shell-command'.
(defalias 'filesets-cmd-shell-command #[(txt) "\303 \203\304\305!\211\203\306 \210)\202\307\211\205/\310	\311\312 !\"\313\314\n\"\210\315\n\316\n!\"))\207" [ok txt cmd buffer-modified-p y-or-n-p "Save buffer? " save-buffer t format shell-quote-argument buffer-file-name message "Filesets: %s" filesets-cmd-show-result shell-command-to-string] 5 (#$ . 50145)])
#@88 Get all files for fileset ENTRY.
Assume MODE (see `filesets-entry-mode'), if provided.
(defalias 'filesets-get-filelist #[(entry &optional mode event) "\206\306	!\211\307=\203\310	!\202\200\311=\203!\312	!C\202\200\313=\203?\314	;\2031	\2024\315	!!\211\316	!)B\202\200\317=\203V	@	A@\320\n\307\321$*\202\200\322=\203\323	!\211\203v\324\f!\325\f!\320\n\307\321$*\202{\326\327\330	#)\202\200\331\332
\333\"*\207" [mode entry patt dir dirpatt fl filesets-entry-mode :files filesets-entry-get-files :file filesets-entry-get-file :ingroup expand-file-name filesets-entry-get-master filesets-ingroup-cache-get :tree filesets-directory-files t :pattern filesets-entry-get-pattern filesets-entry-get-pattern--dir filesets-entry-get-pattern--pattern filesets-error error "Filesets: malformed entry: " nil filesets-filter-list #[(file) "\302	\"?\207" [file event filesets-filetype-property] 3]] 6 (#$ . 50560)])
#@90 Open the fileset called NAME.
Use LOOKUP-NAME for searching additional data if provided.
(defalias 'filesets-open #[(&optional mode name lookup-name) "\206\n\306\307	\310\311$\312\n\"\f\203\312\f!\202\n\206#\313
!\203{\314\n\315#\211G\316\310
\"X\204L\317\320\321#!\203t\310\211\203l@\322\"\210A\211\204W\310*\310\202w\323\324!+\202\200\325\326\327#,\207" [name filesets-data mode fileset lookup-name lookup-fs completing-read "Open fileset: " nil t filesets-get-fileset-from-name filesets-entry-mode filesets-get-filelist on-open-all filesets-entry-get-open-fn y-or-n-p format "Filesets: Open all %d files in %s? " filesets-file-open message "Filesets: cancelled" filesets-error error "Filesets: Unknown fileset: " files n open-function filesets-query-user-limit this --dolist-tail--] 6 (#$ . 51502) nil])
#@118 Close all buffers belonging to the fileset called NAME.
Use LOOKUP-NAME for deducing the save-function, if provided.
(defalias 'filesets-close #[(&optional mode name lookup-name) "\206\n\306\307	\310\311$\312\n\"\f\203\312\f!\202\n\206#\313
!\203g\314\n\315#\316\310
\"\211\310\211\203_@\317!\211\203U\320\"\210)A\211\204?\310,\310\202l\321\322\323#,\207" [name filesets-data mode fileset lookup-name lookup-fs completing-read "Close fileset: " nil t filesets-get-fileset-from-name filesets-entry-mode filesets-get-filelist on-close-all filesets-entry-get-save-fn get-file-buffer filesets-file-close filesets-error error "Filesets: Unknown fileset: " save-function files file-name --dolist-tail-- buffer] 6 (#$ . 52372) nil])
#@114 Add BUFFER (or current buffer) to the fileset called NAME.
User will be queried, if no fileset name is provided.
(defalias 'filesets-add-buffer #[(&optional name buffer) "\206p	\206\306\307\310\"\n\311#\312	\n\"\2061\313\307\314	\"!\2051\315\302	\316D\"\210\317\320	\"\210\n@\211\205t\321!\322!\323
\f\324\325$\211\203R\317\326
	#\202s\327!\330\232\203n
\203n\331
\fB\332#\210\333	\302\n#\202s\317\334
	#++\207" [buffer name filesets-data entry files this completing-read format "Add '%s' to fileset: " nil assoc y-or-n-p "Fileset %s does not exist. Create it? " add-to-list (:files) message "Fileset %s created.  Call `M-x filesets-save-config' to save." filesets-entry-get-files buffer-file-name filesets-member :test filesets-files-equalp "Filesets: '%s' is already in '%s'" filesets-entry-mode :files filesets-entry-set-files t filesets-set-config "Filesets: Can't add '%s' to fileset '%s'" inlist] 6 (#$ . 53152) nil])
#@106 Remove BUFFER (or current buffer) to fileset NAME.
User will be queried, if no fileset name is provided.
(defalias 'filesets-remove-buffer #[(&optional name buffer) "\206p	\206\306\307\310\"\n\311\312$\313	\n\"\211\205Y\314!\315!\316
\f\317\320$\f\203S
\203S\203S\321\322@\f\"BC\241\210\323	\302\n#)\202X\324\325
	#++\207" [buffer name filesets-data entry files this completing-read format "Remove '%s' from fileset: " nil t assoc filesets-entry-get-files buffer-file-name filesets-member :test filesets-files-equalp :files delete filesets-set-config message "Filesets: Can't remove '%s' from fileset '%s'" inlist new] 6 (#$ . 54108) nil])
#@53 Change fileset NAME's mode from :pattern to :files.
(defalias 'filesets-convert-patterns #[(name) "\305	\"\211\205\"\306\n!\307\n\310\"\211\205!\311\n\312#\210\313\301	#*)\207" [name filesets-data entry patfiles pattern assoc filesets-entry-get-pattern filesets-get-filelist :pattern filesets-entry-set-files t filesets-set-config] 5 (#$ . 54783) nil])
#@28 Customize `filesets-data'.
(defalias 'filesets-edit #[nil "\300\301!\207" [customize-variable filesets-data] 2 (#$ . 55150) nil])
#@31 Customize the filesets group.
(defalias 'filesets-customize #[nil "\300\301!\207" [customize-group filesets] 2 (#$ . 55286) nil])
#@41 Display filesets's version information.
(defalias 'filesets-info #[nil "\301\302\303\"!\205\304 \207" [filesets-version y-or-n-p format "Filesets v%s: visit homepage? " filesets-goto-homepage] 4 (#$ . 55422) nil])
#@27 Show filesets's homepage.
(defalias 'filesets-goto-homepage #[nil "\301!\207" [filesets-homepage browse-url] 2 (#$ . 55645) nil])
#@55 Remake a submenu's shortcut when wrapping long menus.
(defalias 'filesets-remake-shortcut #[(count submenu) "\303!	\304\234\305\306OP	<\203\n	AB\202!\307\310\n\311	\306\"AD\")\207" [count submenu name filesets-get-shortcut 0 2 nil apply vector append] 6 (#$ . 55782)])
#@22 Split long submenus.
(defalias 'filesets-wrap-submenu #[(submenu-body) "G\n\306U\204	\nX\203\202\335\307\310\311	!\n\245!\312\306
	V\204\332\203\332\313
\211\f\\	Y\205A)#\211\203\307\314G\312U\203h\203c\315@\"C\202\305\202\305\316!\317\211\203\250@\306\234A\204\206\317\202\207\320P\203\231\321\307O\202\233P)A\211\204w)GV\203\275\306O\322P\202\277)PBC\")AT
\f\\\211\202&+*)\207" [submenu-body bl filesets-max-submenu-length result factor count 0 nil ceiling float 1 filesets-sublist append filesets-remake-shortcut filesets-get-shortcut "" ", " 2 " ..." n data x sl filesets-menu-shortcuts-flag rv y filesets-max-entry-length] 8 (#$ . 56062)])
#@200 Get submenu epilog for SOMETHING (usually a fileset).
If mode is :tree or :ingroup, SOMETHING is some weird construct and
LOOKUP-NAME is used as lookup name for retrieving fileset specific settings.
(defalias 'filesets-get-menu-epilog #[(something &optional mode lookup-name rebuild-flag) "\304=\203@\305\306\307\310\311D\311	D\311\nDF\"\306\312\313\314\311	D\311DF\"\306\315\316\317 \"\320\311	@DD\"\205;\306\321\322\311\nDD\"CBBBB\207\323=\203r\305\306\307\310\311D\311	D\311\nDF\"\306\312\313\314\311	D\311DF\"\205n\306\321\322\311\nDD\"CBBB\207\324=\203\263\305\306\307\310\311D\311	DE\"\306\312\313\314\311	D\311DF\"\306\315\316\317 \"\320\325\326\327	\324\"!!D\"\205\256\306\321\322\311\nDD\"CBBBB\207\330=\203\370\305\306\307\310\311D\311	DE\"\306\312\313\314\311	D\311DF\"\306\331\332\311	D\333BB\"\306\334\335\311	D\336BB\"\205\362\306\321\322\311\nDD\"CBBBBB\207\337\340\341	#\207" [mode something lookup-name rebuild-flag :tree "---" vector "Close all files" filesets-close quote "Run Command" filesets-run-cmd nil format "Browse with `%s'" filesets-browser-name filesets-browse-dir "Rebuild this submenu" filesets-rebuild-this-submenu :ingroup :pattern filesets-entry-get-pattern--dir filesets-entry-get-pattern filesets-get-fileset-from-name :files "Add current buffer" filesets-add-buffer ((current-buffer)) "Remove current buffer" filesets-remove-buffer ((current-buffer)) filesets-error error "Filesets: malformed definition of "] 11 (#$ . 56820)])
#@63 Access to `filesets-ingroup-patterns'.  Extract data section.
(defalias 'filesets-ingroup-get-data #[(master pos &optional fun) "\305!	\206\306\307\310\f\"*\207" [master fun fn masterfile filesets-ingroup-patterns file-name-nondirectory #[(a b) ";\205	;\205\302	\"\207" [a b string-match] 3] filesets-some #[(x) "	@\n\"\205	8\207" [fn x masterfile pos] 3]] 3 (#$ . 58315)])
#@59 Access to `filesets-ingroup-patterns'.  Extract patterns.
(defalias 'filesets-ingroup-get-pattern #[(master) "\301\302\"\207" [master filesets-ingroup-get-data 2] 3 (#$ . 58710)])
#@73 Access to `filesets-ingroup-patterns'.  Extract remove-duplicates-flag.
(defalias 'filesets-ingroup-get-remdupl-p #[(master) "\301\302\"\207" [master filesets-ingroup-get-data 1] 3 (#$ . 58897)])
#@69 Helper function for `filesets-ingroup-collect'.  Find pattern PATT.
(defalias 'filesets-ingroup-collect-finder #[(patt case-sensitivep) "	?\305\n\306\307#\211*\207" [case-fold-search case-sensitivep patt rv cfs re-search-forward nil t] 6 (#$ . 59100)])
#@37 Access to `filesets-ingroup-cache'.
(defalias 'filesets-ingroup-cache-get #[(master) "\302	\"\207" [filesets-ingroup-cache master lax-plist-get] 3 (#$ . 59365)])
#@37 Access to `filesets-ingroup-cache'.
(defalias 'filesets-ingroup-cache-put #[(master file) "\305!\n\205
\n\306	!B\307\f	#\211*\207" [master emaster file this filesets-ingroup-cache expand-file-name filesets-ingroup-cache-get lax-plist-put] 4 (#$ . 59534)])
#@70 Helper function for `filesets-ingroup-collect'.  Collect file names.
(defalias 'filesets-ingroup-collect-files #[(fs &optional remdupl-flag master depth) "\206\306	!\n\206\307!\310\311\"\210\312\313\314#\210\315!\316\311\211\203Y
\311-\211.\203Q.@-\317-\320\311\321$/\317-\322\323\321$0\317-\324\311\321$1\317-\325\326\321$23\206f\317-\327\316\321$4\317-\330\311\321$5\317-\331\332\321$6\317-\333\311\321$7\317-\334\311\321$8\311\2119:/\204\241\335\336\337-#\210\202F4\316W\204F\340\341!;r;q\210\342\216\343!\210eb\2101\203\3041 \210\344/5\"\2038\3452!<6<\"\211=\2034=9\235\2044\n\203\366\346=>\347\350$\20448?\205\f7\2037=\"?\202\f\321?\fT=9B9=>B>?\203*\310=\"\210\351:=C\":)*\202\304+:\203F\352\353:\"\244..A\211.\2041\311-*\202^\312\313\354#-\207" [master fs remdupl-flag rv count cmdpatts filesets-entry-get-master filesets-ingroup-get-remdupl-p filesets-ingroup-cache-put nil filesets-message 2 "Filesets: parsing %S" filesets-ingroup-get-pattern 0 filesets-alist-get :pattern t :name "" :preprocess :match-number 1 :scan-depth :case-sensitive :get-file-name filesets-which-file :stubp :stub-flag filesets-error error "Filesets: malformed :ingroup definition " generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1=#:temp-buffer buffer-name kill-buffer] 2)) insert-file-contents filesets-ingroup-collect-finder match-string filesets-member :test filesets-files-equalp append mapcar #[(this) "	D\305\n\fS$B\207" [this this-name fs remdupl-flag this-sd filesets-ingroup-collect-files] 6] "Filesets: no patterns defined for %S" this-def --dolist-tail-- this-patt this-name this-pp this-mn depth this-sd this-csp this-fn this-stubp this-stub-flag flist lst #1# txt f filesets-ingroup-files no-stub-flag] 6 (#$ . 59802)])
#@153 Helper function for `filesets-ingroup-collect'.  Build the menu.
FS is a fileset's name.  FLIST is a list returned by
`filesets-ingroup-collect-files'.
(defalias 'filesets-ingroup-collect-build-menu #[(fs flist &optional other-count) "\205\316\306	\307\307\211\203\312@\fT
<\203$
@\202'
\310D
<\2050
A@A@\311\203H\203L\f\202N!\203[\310\232\203_\310\202d\312\313\"\314!Q\315\n\203\257\316\317\314!P\320\321\322D\322DF\"\323\316\324\307\322D\322DF\"\323\315\306\325\326\")\327\330#\"BBBBBC\202\276\316\324\307\322D\322DF\"C\"-A\211\204\307\n-\207" [flist fs rv fsn count this 0 nil "" filesets-get-shortcut format "%s: " file-name-nondirectory append vector "Inclusion Group: " filesets-open ':ingroup quote "---" filesets-file-open mapcar #[(this) "T\304	\nC#\211G\305U\203@\202)\207" [count fs this ff filesets-ingroup-collect-build-menu 1] 5] filesets-get-menu-epilog :ingroup --dolist-tail-- def files master name other-count nm] 14 (#$ . 61669)])
#@52 Collect names of included files and build submenu.
(defalias 'filesets-ingroup-collect #[(fs remdupl-flag master) "\303\304\"\210\305\306\307#\210\310	\311	\n#\"\207" [master fs remdupl-flag filesets-ingroup-cache-put nil filesets-message 2 "Filesets: parsing %S" filesets-ingroup-collect-build-menu filesets-ingroup-collect-files] 6 (#$ . 62721)])
#@43 Build a :ingroup submenu for file MASTER.
(defalias 'filesets-build-ingroup-submenu #[(lookup-name master) "\305!\203\306!C\307	#)\207\f\203\310\311\"\210\312\207\313\314\315#\207" [master remdupl-flag filesets-ingroup-files lookup-name filesets-be-docile-flag file-readable-p filesets-ingroup-get-remdupl-p filesets-ingroup-collect message "Filesets: can't parse %s" nil filesets-error error "Filesets: can't parse "] 4 (#$ . 63079)])
#@51 Helper function for `filesets-build-dir-submenu'.
(defalias 'filesets-build-dir-submenu-now #[(level depth entry lookup-name dir patt fd &optional rebuild-flag) "\306U\204\f	W\205q\307\n!\310\311	\306U\203\n\202%\312\307\313\314\n!!!PP\315\316\317\nDD\fF\"\320B\321\n\322\211%\323!\306\324\325\"\323\326\" \324\327 \"!\330
\331\330!\"!\332\nD\316\f\"$#.\207" [depth level dir patt lookup-name header 0 file-name-as-directory vector "Tree: " ".../" file-name-nondirectory directory-file-name filesets-open :tree quote ("---") filesets-directory-files nil filesets-filter-dir-names mapcar #[(x) "T\306	!\n	P\307\fT
\f
&\310!	P\2030B\2027\311\312D\",\207" [count x dir xx level depth file-name-as-directory filesets-build-dir-submenu-now filesets-get-shortcut vector filesets-browse-dir entry lookup-name patt fd dd nm] 8] t #[(x) "T\304\305!	P\306\307\310\n	PD\310DF\"\207" [count x dir lookup-name vector filesets-get-shortcut filesets-file-open nil quote] 7] append filesets-wrap-submenu filesets-get-menu-epilog fd dirlist subdirs count dirsmenu files filesmenu rebuild-flag] 8 (#$ . 63534)])
#@119 Build a :tree submenu named LOOKUP-NAME with base directory DIR including
all files matching PATT for filesets ENTRY.
(defalias 'filesets-build-dir-submenu #[(entry lookup-name dir patt) "\306!\307!\206\n	\310\311\n\f
\312&*\207" [entry filesets-tree-max-level depth fd lookup-name dir filesets-entry-get-filter-dirs-flag filesets-entry-get-tree-max-level filesets-build-dir-submenu-now 0 t patt] 9 (#$ . 64703)])
#@89 Build submenu for the fileset ENTRY named LOOKUP-NAME.
Construct a shortcut from COUNT.
(defalias 'filesets-build-submenu #[(count lookup-name entry) "\206\306	!\307\310\"\210\311	!\312	!\313\n!P\211\314=\2037\315	!/\316\317\320\321/D\321DF\")\202
\322=\203s\323	
\324#0\325	!1\326\327\3301B\"2\331\3162\332
E\"\333\334\335\336\3370\"!\340
\341$\",BB\202
\342=\203\272\343	!3\316\344\3453!P\332\321
D\3213D\321DF\"\333\3163\317\320\3213D\321DF\"\333\334\335\3463\"!\3403
\341$\")BBBB\202
\347=\203\337\350	!\2111@41\2115A@)6\351	46$+\202
\352=\203\323	
\353#\3310\316\354P\332\321
D\321DE\"\333\334\335\336\355\3560\345\"\"!\340
\341$\"*BB\202\320B,\207" [lookup-name entry count this-lookup-name filesets-verbosity mode filesets-data-get-name message "Filesets: %s" filesets-entry-mode filesets-entry-get-verbosity filesets-get-shortcut :file filesets-entry-get-file vector filesets-file-open nil quote :pattern filesets-get-filelist on-ls filesets-entry-get-pattern apply concat "Pattern: " 0 filesets-open "---" append filesets-wrap-submenu mapcar #[(x) "T\303\304!\305	!P\306\307\310	D\310\nDF\"\207" [count x lookup-name vector filesets-get-shortcut file-name-nondirectory filesets-file-open nil quote] 7] filesets-get-menu-epilog t :ingroup filesets-entry-get-master "Inclusion Group: " file-name-nondirectory filesets-build-ingroup-submenu :tree filesets-entry-get-tree filesets-build-dir-submenu :files on-open-all "Files: " #[(x) "T\303\304!\305	!P\306\307\310	D\310\nDF\"\207" [count x lookup-name vector filesets-get-shortcut file-name-nondirectory filesets-file-open nil quote] 7] filesets-conditional-sort file files dirpatt pattname master dir x patt] 13 (#$ . 65133)])
#@63 BUFFER or current buffer require update of the filesets menu.
(defalias 'filesets-remove-from-ubl #[(&optional buffer) "\206p\211\n\235\205\303	\n\"\211)\207" [buffer b filesets-updated-buffers delete] 4 (#$ . 66895)])
#@152 Update the filesets menu.
Build all new if FROM-SCRATCH-FLAG is non-nil.  (To really build from the
bottom up, set `filesets-submenus' to nil, first.)
(defalias 'filesets-build-menu-now #[(from-scratch-flag) "\204\f	\204\f\n\204w\306\211\306\307\310
\311\"\312\203n@\313!\314\"\211\206A\315#\204R\316#\317!\204`\320\nC\",AT\202*\203w\321 \210p\211\235?\205\233\322 \323\324 \325\nBBBB!\"$\210B\211)\207" [from-scratch-flag filesets-has-changed-flag filesets-menu-cache filesets-updated-buffers filesets-update-cache-file-flag filesets-data nil t filesets-conditional-sort car 1 filesets-data-get-name lax-plist-get filesets-build-submenu lax-plist-put filesets-entry-get-dormant-flag append filesets-menu-cache-file-save-maybe add-submenu ("# Filesets" ["Edit Filesets" filesets-edit] ["Save Filesets" filesets-save-config] ["Save Menu Cache" filesets-menu-cache-file-save] ["Rebuild Menu" filesets-build-menu] ["Customize" filesets-customize] ["About" filesets-info]) filesets-get-cmd-menu "---" count data this name filesets-submenus cached submenu filesets-cache-save-often-flag cb filesets-menu-path filesets-menu-name filesets-menu-before filesets-menu-in-menu] 8 (#$ . 67128)])
#@27 Update the filesets menu.
(defalias 'filesets-build-menu-maybe #[nil "\300\301!\207" [filesets-build-menu-now nil] 2 (#$ . 68399) nil])
#@37 Force rebuild of the filesets menu.
(defalias 'filesets-build-menu #[nil "\300 \210\301\302!\210\303 \207" [filesets-reset-fileset filesets-build-menu-now t filesets-menu-cache-file-save-maybe] 2 (#$ . 68541) nil])
#@35 Force rebuild of FILESET submenu.
(defalias 'filesets-rebuild-this-submenu #[(fileset) "\301!\210\302\303!\207" [fileset filesets-reset-fileset filesets-build-menu-now t] 2 (#$ . 68762)])
#@142 Write filesets' cache file.
If SIMPLY-DO-IT is non-nil, the cache file will be written no matter if
fileset thinks this is necessary or not.
(defalias 'filesets-menu-cache-file-save-maybe #[(&optional simply-do-it) "\306\232?\205\223	\204\n\205\223\307!\203\310!\210\311\312!rq\210\313\216\f\314\211\203h@\211\315N\203R\316\317
\320
!#c\210\203[\321 \210\316\322\323
\323$c\210\202[\316\324
\320
!#c\210\321\325!\210A\211\204,*\316\326\"c\210\321\325!\210\203\204\316\327\330 \"c\210\321\325!\210\331\332!\210\333!\210+\314\211 \211\207" [filesets-menu-cache-file simply-do-it filesets-update-cache-file-flag #1=#:temp-buffer filesets-menu-cache-contents this "" file-exists-p delete-file generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) nil custom-type format "(setq-default %s '%S)" eval newline "(setq %s (cons '%s %s))" filesets-ignore-next-set-default "(setq %s '%S)" 2 "(setq filesets-cache-version %S)" "(setq filesets-cache-hostname %S)" system-name run-hooks filesets-cache-fill-content-hook write-file --dolist-tail-- filesets-menu-ensure-use-cached filesets-version filesets-cache-hostname-flag filesets-has-changed-flag] 6 (#$ . 68958)])
#@33 Save filesets' menu cache file.
(defalias 'filesets-menu-cache-file-save #[nil "\300\301!\207" [filesets-menu-cache-file-save-maybe t] 2 (#$ . 70211) nil])
#@68 Rebuild the menu and save the cache file after updating user data.
(defalias 'filesets-update-cleanup #[nil "\302\303	\206\304#\210\305 \210\306 \210\307 \207" [filesets-version filesets-cache-version message "Filesets v%s: updating menu & cache from version %s" "???" filesets-build-menu filesets-menu-cache-file-save-maybe filesets-menu-cache-file-load] 4 (#$ . 70373) nil])
(defalias 'filesets-update-pre010505 #[nil "\304	\206\n\305\306!\210c\210\307\310\311\"!\203\312!\210\313\314\"*\207" [msg custom-file user-init-file cf "Filesets: manual editing of user data required!\n\nFilesets has detected that you were using an older version before,\nwhich requires some manual updating. Type 'y' for editing the startup\nfile now.\n\nThe layout of `filesets-data' has changed. Please delete your cache file\nand edit your startup file as shown below:\n\n1. `filesets-data': Edit all :pattern filesets in your startup file and\ntransform all entries as shown in this example:\n\n   	(\"Test\" (:pattern \"~/dir/^pattern$\"))\n	--> (\"Test\" (:pattern \"~/dir/\" \"^pattern$\"))\n\n2. `filesets-data': Change all occurrences of \":document\" to \":ingroup\":\n\n      ((\"Test\" (:document \"~/dir/file\"))\n      --> ((\"Test\" (:ingroup \"~/dir/file\"))\n\n3. `filesets-subdocument-patterns': If you already modified the variable\npreviously called `filesets-subdocument-patterns', change its name to\n`filesets-ingroup-patterns'.\n\n4. `filesets-menu-cache-contents': If you already modified this\nvariable, change the entry `filesets-subdocument--cache' to\n`filesets-ingroup-cache'.\n\n5. Type M-x filesets-update-cleanup and restart Emacs.\n\nWe apologize for the inconvenience." switch-to-buffer-other-frame "*Filesets update*" y-or-n-p format "Edit startup (%s) file now? " find-file-other-window filesets-error error] 4])
#@45 Do some cleanup after updating filesets.el.
(defalias 'filesets-update #[(cached-version) "\203\301\231\204\302\303!\203\304 \210\305 \207" [cached-version "1.5.5" boundp filesets-subdocument-patterns filesets-update-pre010505 filesets-update-cleanup] 2 (#$ . 72221)])
#@33 Load filesets' menu cache file.
(defalias 'filesets-menu-cache-file-load #[nil "\306\232\204-\307!\203-\310!\210	\n\232\203)\203!\f\311 \232\202\"\312\203)\313\312\207\314	!\207\312\313\207" [filesets-menu-cache-file filesets-cache-version filesets-version filesets-cache-hostname-flag filesets-cache-hostname filesets-update-cache-file-flag "" file-readable-p load-file system-name t nil filesets-update] 2 (#$ . 72504)])
(defalias 'filesets-exit #[nil "\300 \207" [filesets-menu-cache-file-save-maybe] 1])
#@98 Filesets initialization.
Set up hooks, load the cache file -- if existing -- and build the menu.
(defalias 'filesets-init #[nil "\302\303\304\"\210\302\305\306\"\210\302\307\310\"\210\302\311\312\"\210\313 \203$\304 \210\205&\314\211\207\315 \207" [filesets-menu-ensure-use-cached filesets-menu-use-cached-flag add-hook menu-bar-update-hook filesets-build-menu-maybe kill-buffer-hook filesets-remove-from-ubl first-change-hook filesets-reset-filename-on-change kill-emacs-hook filesets-exit filesets-menu-cache-file-load t filesets-build-menu] 3 (#$ . 73030)])
(provide 'filesets)

bypass 1.0, Devloped By El Moujahidin (the source has been moved and devloped)
Email: contact@elmoujehidin.net