;ELC ;;; Compiled by proclus@darwintel on Wed Jan 2 15:45:51 2008 ;;; from file /mnt/gmirror/ports/deskutils/howm/work/howm-1.3.4/howm-backend.el ;;; in Emacs version 21.2.1 ;;; with bytecomp version 1.1.1.4 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. (if (and (boundp 'emacs-version) (< (aref emacs-version (1- (length emacs-version))) ?A) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19.29"))) (error "`howm-backend.el' was compiled for Emacs 19.29 or later")) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\207" [require howm-common gfunc] 2) (defalias 'howm-folder #[nil "\300\301 !\207" [howm-make-folder:files howm-search-path] 2]) (defalias 'howm-folder-type #[(folder &rest r) ";\203\301\207\302=\203\303\207<\205@\207" [folder :dir buf :buf] 2]) (byte-code "\301B\303\301!\204 \304C\301\301\207" [current-load-list howm-folder-dispatchers *gfunc-dispatchers-var* boundp howm-folder-type] 2) #@370 All pages in FOLDER is returned as list of items. When RECURSIVE-P is non-nil, pages in subfolders are also listed. ARGS = (folder &optional recursive-p) Internally, howm-folder-items___ is called according to the type of ARGS. The type part ___ is determined by functions in the list `howm-folder-dispatchers'. This function is generated by `gfunc-define-function'. (defalias 'howm-folder-items #[(&rest args) "\302\303 #\207" [howm-folder-dispatchers args gfunc-call howm-folder-items] 4 (#$ . 1078)]) #@399 In FOLDER, PATTERN is searched. Result is returned as list of items. When FIXED-P is nil, PATTERN is regarded as regular expression. ARGS = (folder pattern &optional fixed-p) Internally, howm-folder-grep-internal___ is called according to the type of ARGS. The type part ___ is determined by functions in the list `howm-folder-dispatchers'. This function is generated by `gfunc-define-function'. (defalias 'howm-folder-grep-internal #[(&rest args) "\302\303 #\207" [howm-folder-dispatchers args gfunc-call howm-folder-grep-internal] 4 (#$ . 1592)]) #@442 In FOLDER, get page whose name is PAGE-NAME. If corresponding page does not exist, new page is created. Return value is a cons pair of page and flag. Flag is non-nil if new page is created. ARGS = (folder page-name) Internally, howm-folder-get-page-create___ is called according to the type of ARGS. The type part ___ is determined by functions in the list `howm-folder-dispatchers'. This function is generated by `gfunc-define-function'. (defalias 'howm-folder-get-page-create #[(&rest args) "\302\303 #\207" [howm-folder-dispatchers args gfunc-call howm-folder-get-page-create] 4 (#$ . 2151)]) #@278 Non nil if FOLDER should own NAME. ARGS = (folder name) Internally, howm-folder-territory-p___ is called according to the type of ARGS. The type part ___ is determined by functions in the list `howm-folder-dispatchers'. This function is generated by `gfunc-define-function'. (defalias 'howm-folder-territory-p #[(&rest args) "\302\303 #\207" [howm-folder-dispatchers args gfunc-call howm-folder-territory-p] 4 (#$ . 2757)]) (defalias 'howm-folder-match-under-p #[(dir regexp filename) "\303!\304=\205\305 \306\n\"\"\207" [dir regexp filename howm-folder-type :dir string-match file-relative-name] 5]) (defalias 'howm-make-folder-from-items #[(items) "\301\302\303\304\"\305\306#!\207" [items howm-make-folder:pages howm-cl-remove-duplicates mapcar howm-item-page :test howm-page=] 5]) (defalias 'howm-make-folder:dir #[(dir) "\207" [dir] 1]) (defalias 'howm-folder-items:dir #[(dir &optional recursive-p) "\203\n\303 !\202\304 \305\"\306\307\n!!)\207" [recursive-p dir files howm-files-in-directory directory-files t howm-folder-items:files howm-make-folder:files] 3]) (defalias 'howm-folder-grep-internal:dir #[(folder pattern &optional fixed-p) "\303 \n\304$\207" [pattern folder fixed-p howm-grep-items howm-exclude-p] 5]) #@240 List files in PATH recursively, when PATH is a directory. When PATH is a file, list of it is returned. Some files and directories are ignored according to `howm-exclude-p'. DUMMY-EXCLUSION-CHECKER has no effect; it should be removed soon. (defalias 'howm-files-in-directory #[(path &optional dummy-exclusion-checker) "\301\302!!\207" [path howm-files-in-directory-sub expand-file-name] 3 (#$ . 4005)]) (defalias 'howm-files-in-directory-sub #[(full-path &optional under) "?\211?\205\304\n!\206\305\n\306#?\211\203\307\2029\310\n!\203-\311\312\313\n\314\"\"\2029\315\n!\2038\nC\2029\307*\207" [under top-call-p full-path excluded-p howm-exclude-p howm-subdirectory-p strict nil file-directory-p howm-cl-mapcan #[(s) "\302 \"\207" [s full-path howm-files-in-directory-sub] 3] directory-files t file-exists-p] 6]) (defalias 'howm-folder-get-page-create:dir #[(folder page-name) "\305 \"\306\n!\307\n!?\310 \311\"\210\312\n!\f+B\207" [page-name folder file dir createp expand-file-name file-name-directory file-exists-p make-directory t howm-make-page:file] 3]) (defalias 'howm-folder-territory-p:dir #[(folder name) "\302 \"\207" [folder name howm-subdirectory-p] 3]) (defalias 'howm-make-folder:pages #[(pages) "\301B\207" [pages :pages] 2]) (defalias 'howm-folder-pages:pages #[(folder) "A\207" [folder] 1]) (defalias 'howm-folder-items:pages #[(folder &optional recursive-p) "\302\303\304\305 !\")\207" [summary folder "" mapcar #[(p) "\302 \"\207" [p summary howm-make-item] 3] howm-folder-pages:pages] 4]) (defalias 'howm-folder-files:pages #[(folder &optional exclusion-checker) "\301\302\303\304\305!\"\"\207" [folder remove nil mapcar howm-page-name howm-folder-pages:pages] 6]) (defalias 'howm-folder-grep-internal:pages #[(folder pattern &optional fixed-p) "\303\304\305!\306#\307\310\311\312\n\"\")\207" [folder h howm-folder-grep-internal:pages-searcher howm-classify howm-page-type howm-folder-pages:pages t apply append mapcar #[(p) "@A\306\307\n \"A! \f #+\207" [p searcher type h pages pattern reverse assoc fixed-p] 4]] 5]) (byte-code "\301B\302\301!\204\f\303\301\207" [current-load-list howm-folder-grep-internal:pages-searcher boundp ((:file . howm-folder-grep-internal:pages-files) (:buf . howm-folder-grep-internal:pages-buffers))] 2) (defalias 'howm-folder-grep-internal:pages-files #[(pages pattern fixed-p) "\304\305\"\306\307 !\n #)\207" [pages files pattern fixed-p mapcar howm-page-name howm-folder-grep-internal:files howm-make-folder:files] 4]) (defalias 'howm-folder-grep-internal:pages-buffers #[(pages pattern fixed-p) "\306 \n\"  \307\310 \"\f\311\312\f\",\207" [pages pattern fixed-p *howm-view-force-case-fold-search* c r howm-fake-grep-regexp howm-cl-mapcan #[(b) "\303!?\205rq\210\304 \n#)\207" [b r c howm-buffer-killed-p howm-fake-grep-current-buffer] 4] mapcar #[(g) "@\211A@)\211AA)@\305\306\f!\n #+\207" [g x content place buf howm-make-item howm-make-page:buf] 5] bufs grep-result] 4]) (byte-code "\301B\302\301!\204\f\303\301\207" [current-load-list howm-list-buffers-exclude boundp ("*Messages*" ".howm-keys" ".howm-history")] 2) (defalias 'howm-list-buffers #[(&optional all) "\203 \304 \202\305\306\304 \"\307\310 \"\311\n!\312 !+\207" [all bufs pages folder buffer-list howm-cl-remove-if #[(b) "\304!\211?\206\305\306 \"\206 \n\235\206rq\210 \307\235))\207" [b name howm-list-buffers-exclude major-mode buffer-name string-match "^ " (howm-view-summary-mode howm-view-contents-mode)] 4] mapcar #[(b) "\301!\207" [b howm-make-page:buf] 2] howm-make-folder:pages howm-view-directory] 3 nil "P"]) (defalias 'howm-occur #[(regexp) "\301\302\303p!C!\"\207" [regexp howm-view-search-folder howm-make-folder:pages howm-make-page:buf] 5 nil "sSearch (regexp): "]) (defalias 'howm-list-mark-ring #[nil "\303p!\304\305\306\307 B\310\311#\"\312\313\n\"*\207" [page mark-ring items howm-make-page:buf mapcar #[(m) "\306!\212b\210\307 \310 \211 {+\311 \f#*\207" [m e b summary place page riffle-get-place line-beginning-position line-end-position howm-make-item] 5] howm-cl-remove-duplicates mark-marker :test howm-mark-same-line-p howm-view-summary ""] 6 nil nil]) (defalias 'howm-mark-same-line-p #[(m1 m2) "\302\303\304\305 D\"\"\207" [m1 m2 apply = mapcar #[(m) "\212b\210\301 )\207" [m line-beginning-position] 1]] 6]) (defalias 'howm-make-folder:files #[(files) "\301B\207" [files :files] 2]) (defalias 'howm-folder-items:files #[(folder &optional recursive-p) "\302\303\304\305 !\")\207" [summary folder "" mapcar #[(f) "\302\303! \"\207" [f summary howm-make-item howm-make-page:file] 3] howm-folder-files:files] 4]) (defalias 'howm-folder-grep-internal:files #[(folder pattern &optional fixed-p) "\303\304 !\n#\207" [pattern folder fixed-p howm-grep-items howm-folder-files:files] 4]) (defalias 'howm-folder-files:files #[(folder &optional exclusion-checker) "A\207" [folder] 1]) (defalias 'howm-make-folder:nest #[(list-of-folders) "\301B\207" [list-of-folders :nest] 2]) (defalias 'howm-folder-subfolders #[(self) "A\207" [self] 1]) (defalias 'howm-folder-items:nest #[(folder &optional recursive-p) "\301\302\303!\"\207" [folder howm-cl-mapcan #[(f) "\302 \"\207" [f recursive-p howm-folder-items] 3] howm-folder-subfolders] 4]) (defalias 'howm-folder-grep-internal:nest #[(folder pattern &optional fixed-p) "\301\302\303!\"\207" [folder howm-cl-mapcan #[(f) "\303 \n#\207" [f pattern fixed-p howm-folder-grep-internal] 4] howm-folder-subfolders] 4]) #@34 Command to search rast database. (custom-declare-variable 'howm-rast-search-command '(expand-file-name "~/elisp/howm/ext/howm-rast-search.rb") '(#$ . 9520) :type 'file :group 'howm-experimental) #@34 Command to update rast database. (custom-declare-variable 'howm-rast-register-command '(expand-file-name "~/elisp/howm/ext/howm-rast-register.rb") '(#$ . 9721) :type 'file :group 'howm-experimental) #@221 Hints to accelerate regexp search in rast folder. Value must be list of cons pairs; car is regular expression and cdr is list of hint strings. When that regexp is searched, hint strings are searched first for filtering. (custom-declare-variable 'howm-rast-regexp-assoc '(let ((hints (mapcar (lambda (c) (concat "]" c)) (split-string "@!+-~." ""))) (regs '("\\[[1-2][0-9][0-9][0-9]-[0-1][0-9]-[0-3][0-9][ :0-9]*\\][!@._]" "\\[[1-2][0-9][0-9][0-9]-[0-1][0-9]-[0-3][0-9][ :0-9]*\\][-+~!._]" "\\[[1-2][0-9][0-9][0-9]-[0-1][0-9]-[0-3][0-9][ :0-9]*\\][!@_]" "\\[[1-2][0-9][0-9][0-9]-[0-1][0-9]-[0-3][0-9][ :0-9]*\\][-+~!._]"))) (mapcar (lambda (r) (cons r hints)) regs)) '(#$ . 9927) :type '(alist :key-type regexp :value-type sexp) :group 'howm-experimental) (defalias 'howm-make-folder:rast #[(index-dir &optional doc-dir) "\302\303! \205 \303 !BB\207" [index-dir doc-dir :rast expand-file-name] 4]) (defalias 'howm-folder-items:rast #[(folder &optional recursive-p) "\302!\303\304 !!)\207" [folder files howm-folder-files:rast howm-folder-items:files howm-make-folder:files] 3]) (defalias 'howm-folder-files:rast #[(folder &optional exclusion-checker) "\303 \211A@)C\"\207" [howm-rast-search-command folder x howm-call-process] 4]) (defalias 'howm-folder-grep-internal:rast #[(folder pattern-list &optional fixed-p) "\203\306 \211A@) \"\307\310\311\f! #*\207 A?\205&\312 @\"A\211\2039\306 \211A@)\"\202<\313 !\314\f\315\316#\310\311\f! #*\207" [fixed-p folder x pattern-list files howm-view-use-grep howm-rast-search nil howm-folder-grep-internal howm-make-folder:files assoc howm-folder-files:rast howm-cl-remove-duplicates :test string= howm-rast-regexp-assoc hints] 5]) (defalias 'howm-folder-get-page-create:rast #[(folder page-name) "\211AA)\211\203\304\305\n! \"\202\306\307\")\207" [folder x dir page-name howm-folder-get-page-create howm-make-folder:dir error "No document directory is specified: %s"] 4]) (defalias 'howm-folder-territory-p:rast #[(folder name) "\211AA)\211\203\304\305\n! \"\202\306\307\")\207" [folder x dir name howm-folder-territory-p howm-make-folder:dir error "No document directory is specified: %s"] 4]) (defalias 'howm-rast-search #[(db pattern-list) "\303\304\305 \306\307\n\310#D\"\"\207" [howm-rast-search-command db pattern-list howm-cl-remove-if #[(f) "\301!?\207" [f file-exists-p] 2] howm-call-process mapconcat #[(str) "\301\302\"\207" [str format "\"%s\""] 3] " | "] 9]) (defalias 'howm-rast-register #[(db file) "\303\304\305 \n%\207" [howm-rast-register-command db file start-process "howm-rast-register" nil] 6]) (defalias 'howm-rast-register-current-buffer #[(db) "\301 \205\n\302\301 \"\207" [db buffer-file-name howm-rast-register] 3]) (defalias 'howm-search-namazu #[(dir pattern) "\303\304!!\305\306\307\n \"\")\207" [dir folder pattern howm-make-folder:namazu expand-file-name howm-view-summary "" howm-view-search-folder-items] 5 nil "Dindex directory: \nssearch: "]) (defalias 'howm-make-folder:namazu #[(index-dir) "\301\302!B\207" [index-dir :namazu expand-file-name] 3]) (defalias 'howm-folder-items:namazu #[(folder &optional recursive-p) "\302!\303\304 !!)\207" [folder files howm-folder-files:namazu howm-folder-items:files howm-make-folder:files] 3]) (defalias 'howm-folder-files:namazu #[(folder &optional exclusion-checker) "\302\303\304!!\305\216rq\210\306\307\310 A\"!\210\311\312ed\"\313\"+\207" [#1=#:temp-buffer folder get-buffer-create generate-new-buffer-name " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) insert-file-contents expand-file-name "NMZ.r" split-string buffer-substring-no-properties "[\n ]+"] 4]) (defalias 'howm-folder-grep-internal:namazu #[(folder pattern-list &optional fixed-p) "A\306\307\n\310#\311\312\313!!\314\216r\fq\210\315\316\317\320\317\321\322 &\210\323\324ed\"\325\"+\326\327 \"\317\330\331!\n#-\207" [folder index-dir pattern-list namazu-pattern #1=#:temp-buffer hits mapconcat identity " or " get-buffer-create generate-new-buffer-name " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) call-process "namazu" nil t "-l" "-a" split-string buffer-substring-no-properties "[\n ]+" howm-cl-remove-if #[(f) "\301!?\207" [f file-exists-p] 2] howm-folder-grep-internal howm-make-folder:files files howm-view-use-grep fixed-p] 9]) (defalias 'howm-make-folder:rot13dir #[(dir) "\301B\207" [dir :rot13dir] 2]) (defalias 'howm-folder-items:rot13dir #[(folder &optional recursive-p) "\203 \303 A!\202\304 A\305\"\306\307\n\")\207" [recursive-p folder files howm-files-in-directory directory-files t mapcar #[(f) "\301\302!!\207" [f howm-make-item howm-make-page:rot13file] 3]] 3]) (defalias 'howm-folder-grep-internal:rot13dir #[(folder pattern-list &optional fixed-p) "A\306\307\n\"\310 \f#\311\312 \"\210 +\207" [folder dir pattern-list ps fixed-p is mapcar #[(p) "\301!\207" [p yarot13-rotate-string] 2] howm-folder-grep-internal:dir mapc #[(i) "\303\304!!\305!\306\307\n!\"\210\310\311 !\"*\207" [i summary file howm-page-name howm-item-page howm-item-summary howm-item-set-page howm-make-page:rot13file howm-item-set-summary yarot13-rotate-string] 4]] 4]) (defalias 'howm-view-directory-items 'howm-folder-items) (defalias 'howm-folder-grep #[(folder pattern &optional fixed-p) ";\203C\303 \n#\207" [pattern folder fixed-p howm-folder-grep-internal] 4]) (byte-code "\301B\304\301!\204\f\305\302B\304\302!\204\305\303B\304\303!\204$\306\305\207" [current-load-list *howm-view-force-case-fold-search* howm-view-grep-log-file howm-view-grep-log-format boundp nil "> %s | %s"] 2) (defalias 'howm-grep-items #[(str file-list &optional fixed-p exclusion-checker) "\306 \n#\307\310 \" \203\311\312\f\"\202\f*\207" [str file-list fixed-p found items exclusion-checker howm-grep mapcar #[(z) "@\211A@)\211AA)@ \205 \f!?\205\"\306\f\n #+\207" [z x content place file exclusion-checker howm-make-item] 5] remove nil] 4]) (defalias 'howm-grep #[(str file-list &optional fixed-p) "\203\n\306 \n#\210 ;\203 C\f\307=\203\310\2022\f\204$\311\2022\312\f!\203.\f\2022\313\314\f\"\211  $)\207" [howm-view-grep-log-file str howm-view-grep-log-format file-list howm-view-use-grep grep-func howm-write-log t howm-real-grep howm-fake-grep functionp error "No function %s." fixed-p *howm-view-force-case-fold-search*] 6]) #@89 Call grep and parse its result. '((file line-number line) (file line-number line) ...)  (defalias 'howm-real-grep #[(str file-list &optional fixed-p force-case-fold) "\304 \203\f\305 \n $\207\306 \n $\207" [str file-list fixed-p force-case-fold howm-grep-multi-p howm-real-grep-multi howm-real-grep-single] 5 (#$ . 16360)]) (defalias 'howm-grep-multi-p #[nil "\207" [howm-view-grep-file-stdin-option] 1]) #@89 Call grep and parse its result. '((file line-number line) (file line-number line) ...)  (defalias 'howm-real-grep-single #[(str file-list &optional fixed-p force-case-fold) "<\203A\204@\202\306\307\"\210 \203\n\206 \fC \205& C\2064\310\311\312\")?\313\314!\211\205G\314K \315\216\314\316M\210\314!\"\210\314 \"\"\210\314 ?#\"\210+\317\320\321!!$\322\216r$q\210\323\324%\"&\325\326C&$\"'\323\327'\"(\330\310(\".\n\207" [str fixed-p howm-view-fgrep-command howm-view-grep-command howm-view-grep-option howm-view-grep-expr-option error "Multiple patterns are not supported: %s" nil string-match "[A-Z]" fboundp add-opt ((byte-code "\203 \302 M\210\202\303\302!\210\302\207" [#1=#:--letf-bound--13330 #2=#:--letf-save--13329 add-opt fmakunbound] 2)) #[(pred x) "\205 \205 \nB\211\207" [pred x opt] 2] get-buffer-create generate-new-buffer-name " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#3=#:temp-buffer buffer-name kill-buffer] 2)) mapcar expand-file-name howm-call-process append howm-grep-parse-line remove force-case-fold case-fold-search case-fold eopt opt grep-command #1# #2# howm-view-grep-ignore-case-option howm-view-grep-fixed-option howm-view-grep-extended-option #3# file-list fs lines parsed] 8 (#$ . 16775)]) (defalias 'howm-real-grep-multi #[(str file-list &optional fixed-p force-case-fold) "\203 \206 \n C\306\f!;\203C\202/<\203*\202/\307\310\" \311\312 \"!\"\206@!?#\313\314!\211$\205M\314K%\315\216\314\316M\210\314#&\"\210\314'\"\210\314?(\"\210+\317\320\321!!)\322\216r)q\210\323\324*\"+\325\326\323\327 \"\",\330\331 +#\332,$-\323\333-\".\334\332.\". \207" [fixed-p howm-view-fgrep-command howm-view-grep-command howm-view-grep-option howm-view-grep-file-stdin-option eopt split-string error "Wrong type: %s" howm-cl-member-if #[(s) "\301!\207" [s howm-capital-p] 2] fboundp add-opt ((byte-code "\203 \302 M\210\202\303\302!\210\302\207" [#1=#:--letf-bound--13334 #2=#:--letf-save--13333 add-opt fmakunbound] 2)) #[(pred x) "\205 \205 \nB\211\207" [pred x opt] 2] get-buffer-create generate-new-buffer-name " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#3=#:temp-buffer buffer-name kill-buffer] 2)) mapcar expand-file-name apply concat #[(s) "\301P\207" [s "\n"] 2] howm-call-process append nil howm-grep-parse-line remove opt grep-command str str-list caps-p force-case-fold case-fold #1# #2# howm-view-grep-ignore-case-option howm-view-grep-fixed-option howm-view-grep-extended-option #3# file-list fs pat lines parsed] 7]) #@511 Search STR in files. Return a list ((name number str) (name number str) ...), where name is file name, number is line number, and str is line content. FILE-LIST is list of file names. If FIXED-P is non-nil, regexp search is performed. If FIXED-P is nil, fixed string search is performed. When STR has no capital letters or FORCE-CASE-FOLD is non-nil, difference of capital letters and small letters are ignored. Extended feature: STR can be list of strings. They are regarded as 'or' pattern of all elements. (defalias 'howm-fake-grep #[(str file-list &optional fixed-p force-case-fold) "\301\302\301\303\"\"\207" [file-list howm-cl-mapcan #[(file) "\304\305 \"\n #\207" [str fixed-p file force-case-fold howm-fake-grep-file howm-fake-grep-regexp] 4] howm-files-in-directory] 5 (#$ . 19385)]) (defalias 'howm-fake-grep-regexp #[(str &optional fixed-p) ";\203\nC\202 \n\203\303 !\202\304\305 \306#)\207" [str str-list fixed-p regexp-opt mapconcat #[(s) "\301\302\"\207" [s format "\\(%s\\)"] 3] "\\|"] 4]) (defalias 'howm-fake-grep-file #[(reg file force-case-fold) "\306!\211\203\n\203r q\210\307 \f#)\202/\310\311\312!!\313\216r q\210\314!\210\307 \f#+)\207" [file b howm-view-watch-modified-buffer reg force-case-fold #1=#:temp-buffer get-file-buffer howm-fake-grep-current-buffer get-buffer-create generate-new-buffer-name " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) insert-file-contents] 5]) (defalias 'howm-fake-grep-current-buffer #[(reg file force-case-fold) "\212\214~\210db\210\305 \206\306\n!?\307\n\305\310#\203,\311 \210\f\312 \313`\314 \"EB\202,\207" [found force-case-fold reg case-fold-search file nil howm-capital-p re-search-backward t beginning-of-line riffle-get-place buffer-substring-no-properties line-end-position] 5]) (defalias 'howm-grep-parse-line #[(line) "\303\304\"\205\305\306\"\307\305\310\"!\305\311\"\211 E+\207" [line content file string-match "^\\(\\([a-zA-Z]:/\\)?[^:]*\\):\\([0-9]*\\):\\(.*\\)$" match-string 1 string-to-number 3 4] 6]) (byte-code "\300\301\302\"\210\300\303\304\"\207" [defalias howm-view-grep howm-grep howm-view-call-process howm-call-process] 3) (defalias 'howm-page-type #[(page &rest r) ";\203\301\207\302!\203\303\207<\205@\207" [page :file bufferp :buf] 2]) (byte-code "\301B\303\301!\204 \304C\301\301\207" [current-load-list howm-page-dispatchers *gfunc-dispatchers-var* boundp howm-page-type] 2) #@243 Generic function. ARGS = (page) Internally, howm-page-name___ is called according to the type of ARGS. The type part ___ is determined by functions in the list `howm-page-dispatchers'. This function is generated by `gfunc-define-function'. (defalias 'howm-page-name #[(&rest args) "\302\303 #\207" [howm-page-dispatchers args gfunc-call howm-page-name] 4 (#$ . 21859)]) #@244 Generic function. ARGS = (page) Internally, howm-page-mtime___ is called according to the type of ARGS. The type part ___ is determined by functions in the list `howm-page-dispatchers'. This function is generated by `gfunc-define-function'. (defalias 'howm-page-mtime #[(&rest args) "\302\303 #\207" [howm-page-dispatchers args gfunc-call howm-page-mtime] 4 (#$ . 22239)]) #@243 Generic function. ARGS = (page) Internally, howm-page-open___ is called according to the type of ARGS. The type part ___ is determined by functions in the list `howm-page-dispatchers'. This function is generated by `gfunc-define-function'. (defalias 'howm-page-open #[(&rest args) "\302\303 #\207" [howm-page-dispatchers args gfunc-call howm-page-open] 4 (#$ . 22622)]) #@245 Generic function. ARGS = (page) Internally, howm-page-insert___ is called according to the type of ARGS. The type part ___ is determined by functions in the list `howm-page-dispatchers'. This function is generated by `gfunc-define-function'. (defalias 'howm-page-insert #[(&rest args) "\302\303 #\207" [howm-page-dispatchers args gfunc-call howm-page-insert] 4 (#$ . 23002)]) #@245 Generic function. ARGS = (page) Internally, howm-page-viewer___ is called according to the type of ARGS. The type part ___ is determined by functions in the list `howm-page-dispatchers'. This function is generated by `gfunc-define-function'. (defalias 'howm-page-viewer #[(&rest args) "\302\303 #\207" [howm-page-dispatchers args gfunc-call howm-page-viewer] 4 (#$ . 23388)]) #@256 Generic function. ARGS = (page) Internally, howm-page-set-configuration___ is called according to the type of ARGS. The type part ___ is determined by functions in the list `howm-page-dispatchers'. This function is generated by `gfunc-define-function'. (defalias 'howm-page-set-configuration #[(&rest args) "\302\303 #\207" [howm-page-dispatchers args gfunc-call howm-page-set-configuration] 4 (#$ . 23774)]) (defalias 'howm-page= #[(x y) " \232\207" [x y] 2]) (defalias 'howm-page-abbreviate-name #[(page) "\301\302\303\304!\"!\207" [page howm-abbreviate-file-name format "%s" howm-page-name] 5]) (defalias 'howm-save-buffer 'save-buffer) (defalias 'howm-make-page:file #[(filename) "\207" [filename] 1]) (defalias 'howm-page-name:file #[(page) "\207" [page] 1]) (defalias 'howm-page-mtime:file #[(page) "\301\302\303!!8\207" [page 5 file-attributes howm-page-name] 4]) (defalias 'howm-page-open:file #[(page) "\301\302!!\207" [page find-file howm-page-name] 3]) (defalias 'howm-page-insert:file #[(page) "\304!\211\203 \n\203 \204 r q\210\214~\210\305ed\"*c\202#\306!)\207" [page b howm-view-watch-modified-buffer howm-view-use-grep get-file-buffer buffer-substring-no-properties insert-file-contents] 4]) (defalias 'howm-page-viewer:file #[(page) "\306\307 !\205\f\310\311\"\312\313 \"A\n\206h\f\206h \205h\314\315 \"\203-\316\317 \"\202.\320\321\322!\205>\322\322!)\323\204L\324\202g\325\"\203Y\324\202g\321\326!\205g\326\326!)++\207" [ls page dir-viewer howm-view-external-viewer-assoc viewer howm-view-use-mailcap #[(dir) "\302\303\304!!\305\216rq\210\306 \307\"\210\310ed\"+\207" [#1=#:temp-buffer dir get-buffer-create generate-new-buffer-name " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) insert-directory "-l" buffer-substring-no-properties] 3] file-directory-p howm-make-viewer:func find-file howm-cl-assoc-if #[(reg) "\302 \"\207" [reg page string-match] 3] string-match "\\.[^\\.]+$" match-string 0 "" fboundp mailcap-extension-to-mime #[(r) "\302 \"\207" [r type string-match] 3] nil howm-cl-member-if mailcap-mime-info ext howm-funcall-if-defined-f type type-match howm-view-open-by-myself] 3]) (defalias 'howm-page-set-configuration:file #[(page) "\301!\207" [page howm-set-configuration-for-file-name] 2]) (defalias 'howm-make-page:buf #[(buf) "\207" [buf] 1]) (defalias 'howm-page-name:buf #[(page) "\301!\207" [page buffer-name] 2]) (defalias 'howm-page-mtime:buf #[(page) "\300\301\211\302\303\211\304&\207" [encode-time 0 9 1 1970] 7]) (defalias 'howm-page-open:buf #[(page) "\301!\207" [page switch-to-buffer] 2]) (defalias 'howm-page-insert:buf #[(page) "\301!?\205\n\302!\207" [page howm-buffer-killed-p insert-buffer-substring] 2]) (defalias 'howm-page-viewer:buf #[(page) "\300\207" [nil] 1]) (defalias 'howm-page-set-configuration:buf #[(page) "\301!\205 \302\301!!\207" [page buffer-file-name howm-set-configuration-for-file-name] 3]) (defalias 'howm-make-page:rot13file #[(filename) "\301B\207" [filename :rot13file] 2]) (defalias 'howm-page-name:rot13file #[(page) "\301A!\207" [page howm-page-name] 2]) (defalias 'howm-page-mtime:rot13file #[(page) "\301A!\207" [page howm-page-mtime:file] 2]) (defalias 'howm-page-open:rot13file #[(page) "\301\302!!\207" [page yarot13-find-file howm-page-name] 3]) (defalias 'howm-page-insert:rot13file #[(page) "\301\302!!\207" [page yarot13-insert-file-contents howm-page-name] 3]) (defalias 'howm-page-viewer:rot13file #[(page) "\300\207" [nil] 1]) (defalias 'howm-page-set-configuration:rot13file #[(page) "\301\302!!\207" [page howm-set-configuration-for-file-name howm-page-name] 3]) (defalias 'howm-create-file #[(&optional keep-cursor-p) "\305\306 \"\211@ A\307\n!\210\f\204~\210db\210 \203!\310\311!\210 +\207" [howm-directory pc page createp keep-cursor-p howm-folder-get-page-create howm-file-name howm-page-open run-hooks howm-create-file-hook] 4]) (defalias 'howm-viewer-type #[(viewer &rest r) ";\203\301\207\302!\203\303\207<\205\304\207" [viewer :str functionp :func0 :func] 2]) (byte-code "\301B\303\301!\204 \304C\301\301\207" [current-load-list howm-viewer-dispatchers *gfunc-dispatchers-var* boundp howm-viewer-type] 2) #@254 Generic function. ARGS = (viewer page) Internally, howm-viewer-call___ is called according to the type of ARGS. The type part ___ is determined by functions in the list `howm-viewer-dispatchers'. This function is generated by `gfunc-define-function'. (defalias 'howm-viewer-call #[(&rest args) "\302\303 #\207" [howm-viewer-dispatchers args gfunc-call howm-viewer-call] 4 (#$ . 28026)]) #@259 Generic function. ARGS = (viewer page) Internally, howm-viewer-indicator___ is called according to the type of ARGS. The type part ___ is determined by functions in the list `howm-viewer-dispatchers'. This function is generated by `gfunc-define-function'. (defalias 'howm-viewer-indicator #[(&rest args) "\302\303 #\207" [howm-viewer-dispatchers args gfunc-call howm-viewer-indicator] 4 (#$ . 28423)]) (defalias 'howm-make-viewer:func #[(f &optional previewer) " B\207" [f previewer] 2]) (byte-code "\203 \302\303!\210\304\305!\203\305\305 \210)\304\306!\203 \306\306 \210)\302\207" [howm-view-use-mailcap howm-funcall-if-defined-f require mailcap fboundp mailcap-parse-mailcaps mailcap-parse-mimetypes] 2) (defalias 'howm-viewer-call:str #[(viewer page) "\304\305\306 \307\n\310 !\"%\207" [shell-file-name shell-command-switch viewer page start-process "howm-view-external-viewer" nil format howm-page-name] 9]) (defalias 'howm-viewer-call:func0 #[(viewer page) "\302!\210 \207" [page viewer howm-page-open] 2]) (defalias 'howm-viewer-call:func #[(viewer page) "@ !\207" [viewer page] 2]) (byte-code "\301B\302\301!\204\f\303\301\207" [current-load-list howm-viewer-indicator-format boundp "%%%%%% %s %%%%%%"] 2) (defalias 'howm-viewer-indicator-gen #[(fmt &rest args) "\303\304\303 \nB\"\"\207" [howm-viewer-indicator-format fmt args format apply] 6]) (defalias 'howm-viewer-indicator:str #[(viewer page) "\302\303 !\"\207" [viewer page howm-viewer-indicator-gen howm-page-name] 4]) (defalias 'howm-viewer-indicator:func0 #[(viewer page) "\302\303 #\207" [viewer page howm-viewer-indicator-gen "%S %S"] 4]) (defalias 'howm-viewer-indicator:func #[(viewer page) "@A \203 !\202\304\305\n #*\207" [viewer previewer func page howm-viewer-indicator-gen "(%S %S)"] 4]) (byte-code "\300\301\302\303\304$\210\305\301\304\"\210\306\307\310\"\210\306\311\312\"\207" [ad-add-advice action-lock-find-file (external-viewer nil t (advice lambda (f u) (let ((viewer (howm-page-viewer f))) (if viewer (howm-viewer-call viewer (expand-file-name f)) ad-do-it)))) around nil ad-activate defalias howm-view-external-viewer howm-page-viewer howm-view-call-external-viewer howm-viewer-call] 5) (defalias 'howm-make-item #[(page &optional summary place offset home privilege) " \n \f \257\207" [page summary place offset home privilege] 6]) (defalias 'howm-item-page #[(item) "\301\302\303#\207" [item howm-item-nth 0 ""] 4]) (defalias 'howm-item-summary #[(item) "\301\302\303#\207" [item howm-item-nth 1 ""] 4]) (defalias 'howm-item-place #[(item) "\301\302\303#\207" [item howm-item-nth 2 nil] 4]) (defalias 'howm-item-offset #[(item) "\301\302\303#\207" [item howm-item-nth 3 nil] 4]) (defalias 'howm-item-home #[(item) "\301\302\303#\207" [item howm-item-nth 4 nil] 4]) (defalias 'howm-item-privilege #[(item) "\301\302\303#\207" [item howm-item-nth 5 nil] 4]) (defalias 'howm-item-nth #[(n item default) " 8\206\n\207" [n item default] 2]) (defalias 'howm-item-set-page #[(item val) " \240\207" [item val] 2]) (defalias 'howm-item-set-summary #[(item val) "A \240\207" [item val] 2]) (defalias 'howm-item-set-offset #[(item val) "\302\233 \240\207" [item val 3] 2]) (defalias 'howm-item-set-home #[(item val) "\302\233 \240\207" [item val 4] 2]) (defalias 'howm-item-set-privilege #[(item val) "\302\233 \240\207" [item val 5] 2]) (defalias 'howm-item-name #[(item) "\301\302\303\304!!\"\207" [item format "%s" howm-page-name howm-item-page] 5]) (defalias 'howm-view-make-item #[(filename &rest r) "\302\303\304! B\"\207" [filename r apply howm-make-item howm-make-page:file] 4]) (byte-code "\304\305\306\"\210\304\307\310\"\210\304\311\312\"\210\304\313\314\"\210\304\315\316\"\210\304\317\320\"\210\304\321\322\"\210\304\323\324\"\210\304\325\326\"\210\304\327\330\"\210\301B\331\301!\204>\332\302B\331\302!\204J\332\303B\331\303!\204V\332\332\207" [current-load-list howm-search-path howm-search-other-dir *howm-independent-directories* defalias howm-view-item-filename howm-item-name howm-view-item-summary howm-item-summary howm-view-item-place howm-item-place howm-view-item-offset howm-item-offset howm-view-item-home howm-item-home howm-view-item-privilege howm-item-privilege howm-view-item-set-summary howm-item-set-summary howm-view-item-set-offset howm-item-set-offset howm-view-item-set-home howm-item-set-home howm-view-item-set-privilege howm-item-set-privilege boundp nil] 3) (defalias 'howm-independent-search-path #[nil "\211\205 \303\304\n\"@)\207" [default-directory c *howm-independent-directories* howm-cl-member-if #[(dir) "\302 \"\207" [dir c howm-subdirectory-p] 3]] 4]) (defalias 'howm-search-path #[(&optional ignore-independent-search-path) "\303 \211\203 \204C\202\n\203\304 \202\305 )\207" [d ignore-independent-search-path howm-search-other-dir howm-independent-search-path howm-search-path-multi howm-search-path-single] 2]) (defalias 'howm-search-path-single #[nil "C\207" [howm-directory] 1]) (defalias 'howm-search-path-multi #[nil " B\207" [howm-directory howm-search-path] 2]) (defalias 'howm-search-path-folder #[(&optional ignore-independent-search-path) "\301\302!!\207" [ignore-independent-search-path howm-make-folder:nest howm-search-path] 3]) #@112 Change whether `howm-search-path' is searched or not. With arg, search `howm-search-path' iff arg is positive. (defalias 'howm-toggle-search-other-dir #[(&optional arg) "\203\f\302!\303V\202 ?\304\305\306 \"\207" [arg howm-search-other-dir prefix-numeric-value 0 message "howm search-path = %s" howm-search-path] 3 (#$ . 33682) "P"]) (byte-code "\301B\302\301!\204\f\303\301\207" [current-load-list howm-keyword-buffer-name-format boundp " *howm-keys:%s*"] 2) (defalias 'howm-get-keyword-buffer #[(&optional dir) "\302!\303\304 \"!\207" [dir howm-keyword-buffer-name-format expand-file-name get-buffer-create format] 4]) (defalias 'howm-open-directory-independently #[(dir) "\304\305\306!\"\210\307\310\"\210)\311 \210\312\313\314 \"\315\316\317!!\320\216r q\210\321\322\n\",\207" [dir default-directory files #1=#:temp-buffer add-to-list *howm-independent-directories* expand-file-name howm-view-directory t howm-list-normalize mapcar howm-view-item-filename howm-view-item-list get-buffer-create generate-new-buffer-name " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) mapc #[(f) "\301 \210\302!\210\303!\210\304 \207" [f erase-buffer insert-file-contents howm-set-configuration-for-file-name howm-keyword-add-current-buffer] 2]] 4 nil "DDirectory: "]) (defalias 'howm-keyword-buffer #[nil "\301 \211\203 \302!\202\303\304 !)\207" [d howm-independent-search-path howm-get-keyword-buffer find-file-noselect howm-keyword-file] 3]) (provide 'howm-backend)