;ELC
;;; Compiled
;;; in Emacs version 26.1
;;; with all optimizations.
;;; This file uses dynamic docstrings, first added in Emacs 19.29.
;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(byte-code "\300\301!\210\302\303\304\"\210\302\305\304\"\210\306\307\310\311\312\313\314\315&\207" [require pcvs-util autoload vc-find-revision "vc" vc-diff-internal custom-declare-group log-view nil "Major mode for browsing log output of revision log histories." :group pcl-cvs :prefix "log-view-"] 8)
#@20 Log-View's keymap.
(defconst log-view-mode-map (byte-code "\302\303\304\305\300!\205\n \306 \307\310F$\207" [log-view-mode-map special-mode-map easy-mmode-define-keymap (("-" . negative-argument) ("0" . digit-argument) ("1" . digit-argument) ("2" . digit-argument) ("3" . digit-argument) ("4" . digit-argument) ("5" . digit-argument) ("6" . digit-argument) ("7" . digit-argument) ("8" . digit-argument) ("9" . digit-argument) ("
" . log-view-toggle-entry-display) ("m" . log-view-toggle-mark-entry) ("e" . log-view-modify-change-comment) ("d" . log-view-diff) ("=" . log-view-diff) ("D" . log-view-diff-changeset) ("a" . log-view-annotate-version) ("f" . log-view-find-revision) ("n" . log-view-msg-next) ("p" . log-view-msg-prev) (" " . log-view-msg-next) ([backtab] . log-view-msg-prev) ("N" . log-view-file-next) ("P" . log-view-file-prev) ("\356" . log-view-file-next) ("\360" . log-view-file-prev)) nil boundp :inherit :group log-view] 8) (#$ . 713))
#@23 Log-View Display Menu
(defvar log-view-mode-menu nil (#$ . 1676))
(easy-menu-do-define 'log-view-mode-menu log-view-mode-map "Log-View Display Menu" '("Log-View" ["Mark Log Entry for Diff" set-mark-command :help ""] ["Diff Revisions" log-view-diff :help "Get the diff between two revisions"] ["Changeset Diff" log-view-diff-changeset :help "Get the changeset diff between two revisions"] ["Visit Version" log-view-find-revision :help "Visit the version at point"] ["Annotate Version" log-view-annotate-version :help "Annotate the version at point"] ["Modify Log Comment" log-view-modify-change-comment :help "Edit the change comment displayed at point"] ["Toggle Details at Point" log-view-toggle-entry-display :active log-view-expanded-log-entry-function] "-----" ["Next Log Entry" log-view-msg-next :help "Go to the next count'th log message"] ["Previous Log Entry" log-view-msg-prev :help "Go to the previous count'th log message"] ["Next File" log-view-file-next :help "Go to the next count'th file"] ["Previous File" log-view-file-prev :help "Go to the previous count'th file"]))
#@41 Hook run at the end of `log-view-mode'.
(defvar log-view-mode-hook nil (#$ . 2767))
#@257 Function returning the detailed description of a Log View entry.
It is called by the command `log-view-toggle-entry-display' with
one arg, the revision tag (a string), and should return a string.
If it is nil, `log-view-toggle-entry-display' does nothing.
(defvar log-view-expanded-log-entry-function nil (#$ . 2858))
(byte-code "\300\301\302\303\304\305%\210\300\306\307\310\304\305%\207" [custom-declare-face log-view-file ((((class color) (background light)) (:background "grey70" :weight bold)) (t (:weight bold))) "Face for the file header line in `log-view-mode'." :group log-view log-view-message ((((class color) (background light)) (:background "grey85")) (t (:weight bold))) "Face for the message header line in `log-view-mode'."] 6)
#@108 Regexp matching the text identifying the file.
The match group number 1 should match the file name itself.
(defvar log-view-file-re "^\\(?:Working file: \\(?1:.+\\)\\|\\(?:SCCS/s\\.\\|Changes to \\)\\(?1:.+\\):\\)\n" (#$ . 3609))
#@55 Set if to t if the logs are shown one file at a time.
(defvar log-view-per-file-logs t (#$ . 3845))
#@116 Regexp matching the text identifying a revision.
The match group number 1 should match the revision number itself.
(defvar log-view-message-re "^\\(?:revision \\(?1:[.0-9]+\\)\\(?: .*\\)?\\|r\\(?1:[0-9]+\\) | .* | .*\\|D \\(?1:[.0-9]+\\) .*\\|[^ \n].*[^0-9\n][0-9][0-9]:[0-9][0-9][^0-9\n].*[^ \n] .*@.*\n\\(?: \\* \\(?1:.*\\)\\)?\\)$" (#$ . 3952))
(defvar log-view-font-lock-keywords '((eval \` ((\, log-view-file-re) (1 (if (boundp 'cvs-filename-face) cvs-filename-face)) (0 'log-view-file append))) (eval \` ((\, log-view-message-re) quote log-view-message))))
(defconst log-view-font-lock-defaults '(log-view-font-lock-keywords t nil nil nil))
#@50 The VC fileset corresponding to the current log.
(defvar log-view-vc-fileset nil (#$ . 4607))
#@46 The VC backend that created the current log.
(defvar log-view-vc-backend nil (#$ . 4707))
(defvar log-view-mode-hook nil)
(byte-code "\300\301N\204\f \302\300\301\303#\210\304\305!\204 \302\305\306\307#\210\300\207" [log-view-mode-hook variable-documentation put "Hook run after entering Log-View mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" boundp log-view-mode-map definition-name log-view-mode] 4)
(defvar log-view-mode-map (make-sparse-keymap))
(byte-code "\301\302N\204 \303\301\302\304\305!#\210\306\307!\204 \303\307\310\311#\210\312\313 !\210\307\302N\204- \303\307\302\304\314!#\210\306\300!\204B \303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P \303\300\302\304\320!#\210\303\311\321\322#\207" [log-view-mode-abbrev-table log-view-mode-map variable-documentation put purecopy "Keymap for `log-view-mode'." boundp log-view-mode-syntax-table definition-name log-view-mode (lambda (#1=#:def-tmp-var) (defvar log-view-mode-syntax-table #1#)) make-syntax-table "Syntax table for `log-view-mode'." (lambda (#1#) (defvar log-view-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `log-view-mode'." derived-mode-parent special-mode] 5)
#@238 Major mode for browsing CVS log output.
In addition to any hooks its parent mode `special-mode' might have run,
this mode runs the hook `log-view-mode-hook', as the final or penultimate step
during initialization.
\{log-view-mode-map}
(defalias 'log-view-mode #[0 "\306\300!\210\307\310 \210\311\312\310\313N\203 \314\311\313\310\313N#\210\315!\204' \316\317 \"\210\320\f!\211\2035 \211\321 =\203; \322\f\323 \"\210\210\324
\325\"\204R
#=\204R \326
\325#C#\210\327!\210\330\f!\210
#\307$\306\331!\210%\306\332!\210\333\306\334!\210\335\306\336!\210\337\340 \210)\341\342!\207" [delay-mode-hooks major-mode mode-name log-view-mode-map log-view-mode-syntax-table log-view-mode-abbrev-table make-local-variable t special-mode log-view-mode "Log-View" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table font-lock-defaults beginning-of-defun-function log-view-beginning-of-defun end-of-defun-function log-view-end-of-defun cvs-minor-wrap-function log-view-minor-wrap hack-dir-local-variables-non-file-buffer run-mode-hooks log-view-mode-hook local-abbrev-table buffer-read-only log-view-font-lock-defaults] 5 (#$ . 5975) nil])
#@60 Go to the next COUNT'th log message.
(fn &optional COUNT)
(defalias 'log-view-msg-next #[256 "\211\204 \301\262\211\302W\203 \303[!\207\304!\203 \211T\262\305\306\307$\2043 \304!\203. db\207\310\311\312\"\207\302\224b\210p\313 =\205^ \314\315!\205^ \212\305\306\307\316$)\206P d\317\306\307#?\205\\ \320\321!\262\207" [log-view-message-re 1 0 log-view-msg-prev looking-at re-search-forward nil t user-error "No next %s" "log message" window-buffer called-interactively-p interactive 2 pos-visible-in-window-p recenter (0)] 6 (#$ . 7289) "p"])
(put 'log-view-msg-next 'definition-name 'log-view-msg)
#@63 Go to the previous COUNT'th log message
(fn &optional COUNT)
(defalias 'log-view-msg-prev #[256 "\211\204 \301\262\211\302W\203 \303[!\207\304\305\306$?\205 \307\310\311\"\207" [log-view-message-re 1 0 log-view-msg-next re-search-backward nil t user-error "No previous %s" "log message"] 6 (#$ . 7908) "p"])
(put 'log-view-msg-prev 'definition-name 'log-view-msg)
#@53 Go to the next COUNT'th file.
(fn &optional COUNT)
(defalias 'log-view-file-next #[256 "\211\204 \301\262\211\302W\203 \303[!\207\304!\203 \211T\262\305\306\307$\2043 \304!\203. db\207\310\311\312\"\207\302\224b\210p\313 =\205^ \314\315!\205^ \212\305\306\307\316$)\206P d\317\306\307#?\205\\ \320\321!\262\207" [log-view-file-re 1 0 log-view-file-prev looking-at re-search-forward nil t user-error "No next %s" "file" window-buffer called-interactively-p interactive 2 pos-visible-in-window-p recenter (0)] 6 (#$ . 8286) "p"])
(put 'log-view-file-next 'definition-name 'log-view-file)
#@56 Go to the previous COUNT'th file
(fn &optional COUNT)
(defalias 'log-view-file-prev #[256 "\211\204 \301\262\211\302W\203 \303[!\207\304\305\306$?\205 \307\310\311\"\207" [log-view-file-re 1 0 log-view-file-next re-search-backward nil t user-error "No previous %s" "file"] 6 (#$ . 8892) "p"])
(put 'log-view-file-prev 'definition-name 'log-view-file)
#@31 Go to revision REV.
(fn REV)
(defalias 'log-view-goto-rev #[257 "eb\210\3001 \211\301 \232\204 \302 \210\202 \3030\207\210\304\207" [(error) log-view-current-tag log-view-msg-next t nil] 3 (#$ . 9257)])
(defconst log-view-dir-re "^cvs[.ex]* [a-z]+: Logging \\(.+\\)$")
#@26 Return the current file.
(defalias 'log-view-current-file #[0 "\212\304y\210\305\306\307#\204 \310\306\307#\204 \311\312!\210\313\304!\305 \306\307#\205& |