;ELC ;;; Compiled by mwolson@grepfind.mwolson.org on Thu Jan 24 00:15:29 2008 ;;; from file /stuff/proj/emacs/dvc/mwolson/lisp/dvc-bookmarks.el ;;; in Emacs version 23.0.50.2 ;;; 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 "`dvc-bookmarks.el' was compiled for Emacs 19.29 or later")) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\210\300\303!\207" [require dvc-core dvc-state ewoc] 2) #@28 The bookmarks used for dvc (defvar dvc-bookmark-alist '(("hg" (local-tree "~/work/hg/hg")) ("work-stuff" (children ("home-dir" (local-tree "~/")) ("another-dir" (local-tree "~/work"))))) (#$ . 694)) #@39 The file that holds the dvc bookmarks (defvar dvc-bookmarks-file-name "dvc-bookmarks.el" (#$ . 899)) #@90 If non-nil, display partners. Must be non-nil for some featurs of dvc-bookmarks to work. (defvar dvc-bookmarks-show-partners t (#$ . 1006)) #@78 Whether `dvc-bookmark-alist' has been loaded from `dvc-bookmarks-file-name'. (defvar dvc-bookmarks-loaded nil (#$ . 1152)) #@49 The ewoc cookie for the *dvc-bookmarks* buffer. (defvar dvc-bookmarks-cookie nil (#$ . 1281)) #@38 Keymap used in `dvc-bookmarks-mode'. (defvar dvc-bookmarks-mode-map (byte-code "\303 \304 \305#\210\304\n\306#\210\304\307\310#\210\304\311\312#\210\304\313\310#\210\304\314\315#\210\304\316\317#\210\304\320\321#\210\304\322\323#\210\304\324\325#\210\304\326\327#\210\304\330\331#\210\304\332\333#\210\304\334\335#\210\304\336\337#\210\304\340\341#\210\304\342\343#\210\304\344\345#\210\304\346\347#\210\304\350\351#\210\304\352\353#\210\304\354\355#\210\304\356\357#\210\304\360\361#\210\304\362\363#\210\304\364\365#\210)\207" [map dvc-keyvec-help dvc-keyvec-quit make-sparse-keymap define-key describe-mode dvc-buffer-quit [return] dvc-bookmarks-goto "" dvc-bookmarks-find-file-in-tree " " "g" dvc-bookmarks "h" dvc-buffer-pop-to-partner-buffer "j" dvc-bookmarks-jump "n" dvc-bookmarks-next "p" dvc-bookmarks-previous "a" dvc-bookmarks-add "" dvc-bookmarks-yank " " dvc-bookmarks-kill "s" dvc-bookmarks-status "c" dvc-bookmarks-log-edit "l" dvc-bookmarks-changelog "L" dvc-bookmarks-log "Mm" dvc-bookmarks-missing "Mf" dvc-bookmarks-pull "Mx" dvc-bookmarks-merge "." dvc-bookmarks-show-info-at-point "" dvc-bookmarks-save "Ap" dvc-bookmarks-add-partner "Rp" dvc-bookmarks-remove-partner "Tp" dvc-bookmarks-toggle-partner-visibility "An" dvc-bookmarks-add-nickname] 4) (#$ . 1381)) #@27 `dvc-bookmarks-mode' menu (defvar dvc-bookmarks-mode-menu nil (#$ . 2704)) (easy-menu-do-define 'dvc-bookmarks-mode-menu dvc-bookmarks-mode-map "`dvc-bookmarks-mode' menu" '("dvc-bookmarks" ["Go to working copy" dvc-bookmarks-goto t] ["DVC status" dvc-bookmarks-status t] ["DVC changelog" dvc-bookmarks-changelog t] ["DVC log" dvc-bookmarks-log t] ["DVC missing" dvc-bookmarks-missing t] ["DVC pull" dvc-bookmarks-pull t] ["DVC merge" dvc-bookmarks-merge t] "--" ["Add new bookmark" dvc-bookmarks-add t] ["Add partner" dvc-bookmarks-add-partner t] ["Remove partner" dvc-bookmarks-remove-partner t] ["Add/edit partner Nickname" dvc-bookmarks-add-nickname t] "--" ("Toggle visibility" ["Partners" dvc-bookmarks-toggle-partner-visibility :style toggle :selected dvc-bookmarks-show-partners]) "--" ["Save bookmarks" dvc-bookmarks-save t])) (defalias 'dvc-bookmarks-printer #[(elem) "@\211A@)\n\205\306\3078!\310\311\312\313 \314\"#c\210\f\205a\f\310\211\203_@\315\3078\"\311\316\313 \307\\\314\" \203R\311\317 \"\202S\320$c\210A\211\2040*\310,\207" [elem x dvc-bookmarks-show-partners nick-name partners indent dvc-bookmarks-get-partners 2 nil format "%s%s" make-string 32 dvc-bookmarks-partner-nickname "\n%sPartner %s%s" " [%s]" "" entry p #1=#:--cl-dolist-temp--] 9]) (defalias 'dvc-bookmarks-add-to-cookie #[(elem indent &optional node) "\206\306 !\n@ \nE\307 \310=\203\311\202\312\313\314\n\"\203k\2033\315\f  E\"\202?\316 \"\310y\210)\317\313\314\n\"A!\320\211\203g@\321 \322\\#\210A\211\204P*\202\201\203|\315\f  E\"\210\202\201\316 \"\210\310y+\207" [node dvc-bookmarks-cookie elem indent enter-function data ewoc-locate dvc-line-number-at-pos 1 ewoc-enter-before ewoc-enter-after assoc children apply ewoc-enter-last reverse nil dvc-bookmarks-add-to-cookie 2 curr n child #1=#:--cl-dolist-temp--] 5]) #@100 Display the *dvc-bookmarks* buffer. With prefix argument ARG, reload the bookmarks file from disk. (defalias 'dvc-bookmarks #[(&optional arg) "\306!\210\307\310\311!!\210`\312\313!\210\314 \210\315\302!\210\316\317\320!!\321\302\322\323#\210 \324\211\203: @\325\f\313\"\210 A\211\204+*\326=\203H b\210\202Keb\210)\326 \207" [arg cur-pos dvc-bookmarks-cookie dvc-bookmark-alist entry #1=#:--cl-dolist-temp-- dvc-bookmarks-load-from-file dvc-switch-to-buffer get-buffer-create "*dvc-bookmarks*" toggle-read-only 0 erase-buffer make-local-variable ewoc-create dvc-ewoc-create-api-select dvc-bookmarks-printer put permanent-local t nil dvc-bookmarks-add-to-cookie dvc-bookmarks-mode major-mode] 4 (#$ . 4603) "P"]) #@59 Mode to display DVC bookmarks. \{dvc-bookmarks-mode-map} (defalias 'dvc-bookmarks-mode #[nil "\303 \210\304!\210\305\306\307\310!\207" [dvc-bookmarks-mode-map major-mode mode-name kill-all-local-variables use-local-map dvc-bookmarks-mode "dvc-bookmarks" toggle-read-only 1] 2 (#$ . 5333) nil]) (defalias 'dvc-bookmarks-show-info-at-point #[nil "\300\301\302 \"\207" [message "%S" dvc-bookmarks-current-data] 3 nil nil]) (defalias 'dvc-bookmarks-current-data #[nil "\301\302\303!!8\207" [dvc-bookmarks-cookie 2 ewoc-data ewoc-locate] 4]) (defalias 'dvc-bookmarks-current-value #[(key) "\302\303 A\"\211A@)\207" [key x assoc dvc-bookmarks-current-data] 4]) #@20 Add a DVC bookmark (defalias 'dvc-bookmarks-add #[(bookmark-name bookmark-local-dir) "\305 DD\211@\306\nE\307 \210\310\311\n\312#\210\313\f \"*\207" [bookmark-name bookmark-local-dir elem data dvc-bookmarks-cookie local-tree 0 dvc-bookmarks add-to-list dvc-bookmark-alist t ewoc-enter-last] 5 (#$ . 6001) (let* ((bmk-name (read-string "DVC bookmark name: ")) (bmk-loc (dvc-read-directory-name (format "Set DVC bookmark %s in directory: " bmk-name)))) (list bmk-name bmk-loc))]) (defalias 'dvc-bookmarks-next #[nil "\300y\207" [1] 1 nil nil]) (defalias 'dvc-bookmarks-previous #[nil "\300y\207" [-1] 1 nil nil]) (defalias 'dvc-bookmarks-goto #[nil "\301\300!\211\203\302!\202\303\304!)\207" [local-tree dvc-bookmarks-current-value find-file message "No local-tree defined for this bookmark entry."] 3 nil nil]) (defalias 'dvc-bookmarks-find-file-in-tree #[nil "\302\300!\211\203\303!\304\305\306!!)\202\307\310!)\207" [local-tree default-directory dvc-bookmarks-current-value file-name-as-directory find-file read-file-name "Find file in bookmarked tree: " message "No local-tree defined for this bookmark entry."] 4 nil nil]) (defalias 'dvc-bookmarks-status #[nil "\301\300!\211\203\302!\202\303\304!)\207" [local-tree dvc-bookmarks-current-value dvc-status message "No local-tree defined for this bookmark entry."] 3 nil nil]) (defalias 'dvc-bookmarks-log-edit #[nil "\302\300!\211\203\303 )\202\304\305!)\207" [local-tree default-directory dvc-bookmarks-current-value dvc-log-edit message "No local-tree defined for this bookmark entry."] 3 nil nil]) (defalias 'dvc-bookmarks-changelog #[nil "\302\300!\211\203\303 )\202\304\305!)\207" [local-tree default-directory dvc-bookmarks-current-value dvc-changelog message "No local-tree defined for this bookmark entry."] 3 nil nil]) (defalias 'dvc-bookmarks-log #[nil "\302\300!\211\203\303 )\202\304\305!)\207" [local-tree default-directory dvc-bookmarks-current-value dvc-log message "No local-tree defined for this bookmark entry."] 3 nil nil]) (defalias 'dvc-bookmarks-missing #[nil "\302\300!\211\203\303\304 !)\202\305\306!)\207" [local-tree default-directory dvc-bookmarks-current-value dvc-missing dvc-bookmarks-partner-at-point message "No local-tree defined for this bookmark entry."] 3 nil nil]) (defalias 'dvc-bookmarks-pull #[nil "\302\300!\211\203\303 )\202\304\305!)\207" [local-tree default-directory dvc-bookmarks-current-value dvc-pull message "No local-tree defined for this bookmark entry."] 3 nil nil]) (byte-code "\301B\302\301!\204\303\301\304\"\210\301\207" [current-load-list dvc-bookmarks-merge-template default-boundp set-default "Merged from %s: "] 3) #@52 Merge from partner at point into current bookmark. (defalias 'dvc-bookmarks-merge #[nil "\306\300!\211\2036\307 \310  \205\311\f \"\312\313 \203)\311\314 \n#\202-\311\315\n\"!\210\316\n!+\2029\313\317!)\207" [local-tree nickname partner default-directory dvc-bookmarks-merge-template dvc-memorized-log-header dvc-bookmarks-current-value dvc-bookmarks-partner-at-point dvc-bookmarks-nickname-at-point format nil message "Merging from %s, using URL %s" "Merging from %s" dvc-merge "No local-tree defined for this bookmark entry." dvc-memorized-log-message] 6 (#$ . 8695) nil]) (defalias 'dvc-bookmarks-yank #[nil "\212\303 \304 =\203 \305\202\306y\210\307\310!!A@)\311\n \")\207" [dvc-bookmarks-cookie indent dvc-bookmarks-tmp-yank-item line-beginning-position line-end-position 0 1 ewoc-data ewoc-locate dvc-bookmarks-add-to-cookie] 3 nil nil]) (byte-code "\301B\302\301!\204\303\301\304\"\210\301\207" [current-load-list dvc-bookmarks-tmp-yank-item default-boundp set-default ("hg" (local-tree "~/work/hg/hg"))] 3) (defalias 'dvc-bookmarks-kill #[nil "\303 \304\305\n\306\n!\")\207" [dvc-bookmarks-tmp-yank-item buffer-read-only dvc-bookmarks-cookie dvc-bookmarks-current-data nil dvc-ewoc-delete ewoc-locate] 4 nil nil]) #@66 Save `dvc-bookmark-alist' to the file `dvc-bookmarks-file-name'. (defalias 'dvc-bookmarks-save #[nil "\301\302\303\304\"\304#\207" [dvc-bookmarks-file-name dvc-save-state (dvc-bookmark-alist) dvc-config-file-full-path t] 5 (#$ . 9948) nil]) #@125 Load bookmarks from the file `dvc-bookmarks-file-name'. If FORCE is non-nil, reload the file even if it was loaded before. (defalias 'dvc-bookmarks-load-from-file #[(&optional force) "\204 ?\205\303\304\n\305\"!\210\305\211\207" [force dvc-bookmarks-loaded dvc-bookmarks-file-name dvc-load-state dvc-config-file-full-path t] 4 (#$ . 10197)]) (defalias 'dvc-bookmark-name-1 #[(entry &optional parent-name) "\305\306\"\203-\307\305\306\"A\307\211\203) @\310\301\311\n@\"@\"\210 A\211\204* )\207\f\2037\f\312P\2028\313@PC\207" [entry names child #1=#:--cl-dolist-temp-- parent-name assoc children nil add-to-list dvc-bookmark-name-1 "/" ""] 6]) #@44 Return a list with all dvc bookmark names. (defalias 'dvc-bookmark-names #[nil "\304 \304\211\203 @\305\306\n!\" A\211\204\n*)\207" [names dvc-bookmark-alist entry #1=#:--cl-dolist-temp-- nil append dvc-bookmark-name-1] 5 (#$ . 10867)]) (defalias 'dvc-bookmark-goto-name #[(name) "`\305\306\"\307eb\210\n\310\211\203*\f@ P\311 P\312!\210\fA\211\204*\313 +\207" [name prefix name-list cur-pos #1=#:--cl-dolist-temp-- split-string "/" "" nil " " search-forward beginning-of-line-text] 4]) (defalias 'dvc-bookmarks-jump #[nil "\300\301\302\303 \"!\207" [dvc-bookmark-goto-name dvc-completing-read "Jump to dvc bookmark: " dvc-bookmark-names] 4 nil nil]) (defalias 'dvc-bookmarks-get-partners #[(&optional entry-data) "\204\301 \302\303\304\305\"\"\207" [entry-data dvc-bookmarks-current-data delete nil mapcar #[(e) "<\205@\302=\205\211A@)\207" [e x partner] 3]] 5]) (defalias 'dvc-bookmarks-add-partner #[nil "\302 \303\304\305@\"!\211\306 \235\204$\307A\310 DC\"\241\210\311\312\"\202*\313\314 @#*\207" [cur-data partner-url dvc-bookmarks-current-data read-string format "Add partner to '%s': " dvc-bookmarks-get-partners append partner dvc-trace "dvc-bookmarks-add-partner %s" message "%s is already a partner for %s"] 6 nil nil]) (defalias 'dvc-bookmarks-remove-partner #[nil "\302 \303\304\305@\"\306 \"\307\310 D\"*\207" [cur-data partner-to-remove dvc-bookmarks-current-data dvc-completing-read format "Remove partner from %s: " dvc-bookmarks-get-partners delete partner] 4 nil nil]) (defalias 'dvc-bookmarks-toggle-partner-visibility #[nil "?\301 \207" [dvc-bookmarks-show-partners dvc-bookmarks] 1 nil nil]) (defalias 'dvc-bookmarks-partner-nickname #[(bookmark-entry partner-url) "\306 \306\211\2036 @\211<\203/\n@\307=\203/\f\n\211A@)\230\203/\nG\310=\203/\311\n8 A\211\204\n*)\207" [nick-name bookmark-entry e #1=#:--cl-dolist-temp-- partner-url x nil partner 3 2] 3]) (defalias 'dvc-bookmarks-partner-at-point #[nil "\212\301\302 b\210\303\304!\203\305\306!*\207" [partner-url nil line-beginning-position looking-at " Partner \\(.+?\\)\\( \\[.+\\)?$" match-string 1] 2]) (defalias 'dvc-bookmarks-nickname-at-point #[nil "\212\301\302 b\210\303\304!\203\305\306!*\207" [nickname nil line-beginning-position looking-at " Partner \\(.+?\\) \\[\\(.+\\)?\\]$" match-string 2] 2]) (defalias 'dvc-bookmarks-add-nickname #[nil "\304 \305 \306\211\203Y\n@\211<\203R @\307=\203R \211A@)\230\203R G\310U\203< A\311\312\313\"!\306B\241\210\202J AA\311\312\313\"\310 8\"\240\210\314\315\310 8#\210\nA\211\204\f+\306\207" [partner-at-point e #1=#:--cl-dolist-temp-- x dvc-bookmarks-partner-at-point dvc-bookmarks-current-data nil partner 2 read-string format "Nickname for %s: " message "Added nickname %s to the partner %s"] 6 nil nil]) (provide 'dvc-bookmarks)