%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/vc/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/vc/add-log.elc

;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

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


(byte-code "\300\301\302\303\304\305\306\307\310\311\310\312&\210\313\314\302\315\316\317\304\301&\210\320\314\321\322#\210\313\323\302\324\316\325\304\301&\210\313\326\302\327\316\330\304\301&\210\313\331\302\332\316\333\304\301&\210\313\334\302\335\316\336\304\301&\210\313\337\340\341\316\342\304\301&\210\313\343\302\344\345\346\316\347\304\301&	\210\313\350\302\351\345\352\316\347\304\301&	\207" [custom-declare-group change-log nil "Change log maintenance." :group tools :link (custom-manual "(emacs)Change Log") :prefix "change-log-" "add-log-" custom-declare-variable change-log-default-name "Name of a change log file for \\[add-change-log-entry]." :type (choice (const :tag "default" nil) string) put safe-local-variable string-or-null-p change-log-mode-hook "Normal hook run by `change-log-mode'." hook add-log-current-defun-function "If non-nil, function to guess name of surrounding function.\nIt is called by `add-log-current-defun' with no argument, and\nshould return the function's name as a string, or nil if point is\noutside a function." (choice (const nil) function) add-log-full-name "Full name of user, for inclusion in ChangeLog daily headers.\nThis defaults to the value returned by the function `user-full-name'." (choice (const :tag "Default" nil) string) add-log-mailing-address "Email addresses of user, for inclusion in ChangeLog headers.\nThis defaults to the value of `user-mail-address'.  In addition to\nbeing a simple string, this value can also be a list.  All elements\nwill be recognized as referring to the same user; when creating a new\nChangeLog entry, one element will be chosen at random." (choice (const :tag "Default" nil) (string :tag "String") (repeat :tag "List of Strings" string)) add-log-time-format 'add-log-iso8601-time-string "Function that defines the time format.\nFor example, `add-log-iso8601-time-string', which gives the\ndate in international ISO 8601 format,\nand `current-time-string' are two valid values." (radio (const :tag "International ISO 8601 format" add-log-iso8601-time-string) (const :tag "Old format, as returned by `current-time-string'" current-time-string) (function :tag "Other")) add-log-keep-changes-together "If non-nil, normally keep day's log entries for one file together.\n\nLog entries for a given file made with \\[add-change-log-entry] or\n\\[add-change-log-entry-other-window] will only be added to others for that file made\ntoday if this variable is non-nil or that file comes first in today's\nentries.  Otherwise another entry for that file will be started.  An\noriginal log:\n\n	* foo (...): ...\n	* bar (...): change 1\n\nin the latter case, \\[add-change-log-entry-other-window] in a buffer visiting `bar', yields:\n\n	* bar (...): -!-\n	* foo (...): ...\n	* bar (...): change 1\n\nand in the former:\n\n	* foo (...): ...\n	* bar (...): change 1\n	(...): -!-\n\nThe NEW-ENTRY arg to `add-change-log-entry' can override the effect of\nthis variable." :version "20.3" boolean add-log-always-start-new-record "If non-nil, `add-change-log-entry' will always start a new record." "22.1"] 12)
#@158 If non-nil, function to call to identify the full filename of a buffer.
This function is called with no argument.  The default is to
use `buffer-file-name'.
(defvar add-log-buffer-file-name-function 'buffer-file-name (#$ . 3503))
(byte-code "\300\301\302\303\304\305\306\307&\210\300\310\302\311\312\313\304\314\306\307&	\210\300\315\316\317\312\313\304\320\306\307&	\210\300\321\322\323\312\324\304\325\306\307&	\210\326\327\330\331\312\313\306\307&\210\326\332\333\334\312\313\306\307&\210\326\335\336\337\312\313\306\307&\210\326\340\341\342\312\313\306\307&\210\326\343\344\345\312\313\306\307&\210\326\346\347\350\312\313\306\307&\210\326\351\352\353\312\313\306\307&\210\326\354\355\356\312\313\306\307&\210\357\360\361\354#\210\357\360\362\363\364!\206\232\365#\207" [custom-declare-variable add-log-file-name-function nil "If non-nil, function to call to identify the filename for a ChangeLog entry.\nThis function is called with one argument, the value of variable\n`buffer-file-name' in that buffer.  If this is nil, the default is to\nuse the file's name relative to the directory of the change log file." :type (choice (const nil) function) :group change-log change-log-version-info-enabled "If non-nil, enable recording version numbers with the changes." :version "21.1" boolean change-log-version-number-regexp-list (let ((re "\\([0-9]+\\.[0-9.]+\\)")) (list (concat "^(def[^ 	\n]+[ 	]+[^ 	\n][ 	]\"" re) (concat "^;+ *Revision: +[^ 	\n]+[ 	]+" re))) "List of regexps to search for version number.\nThe version number must be in group 1.\nNote: The search is conducted only within 10%, at the beginning of the file." (repeat regexp) change-log-directory-files '(".bzr" ".git" ".hg" ".svn") "List of files that cause `find-change-log' to stop in containing directory.\nThis applies if no pre-existing ChangeLog is found.  If nil, then in such\na case simply use the directory containing the changed file." "26.1" (repeat file) custom-declare-face change-log-date ((t (:inherit font-lock-string-face))) "Face used to highlight dates in date lines." change-log-name ((t (:inherit font-lock-constant-face))) "Face for highlighting author names." change-log-email ((t (:inherit font-lock-variable-name-face))) "Face for highlighting author email addresses." change-log-file ((t (:inherit font-lock-function-name-face))) "Face for highlighting file names." change-log-list ((t (:inherit font-lock-keyword-face))) "Face for highlighting parenthesized lists of functions or variables." change-log-conditionals ((t (:inherit font-lock-variable-name-face))) "Face for highlighting conditionals of the form `[...]'." change-log-function ((t (:inherit font-lock-variable-name-face))) "Face for highlighting items of the form `<....>'." change-log-acknowledgment ((t (:inherit font-lock-comment-face))) "Face for highlighting acknowledgments." put change-log-acknowledgement face-alias obsolete-face purecopy "24.3" t] 10)
(defconst change-log-file-names-re "^\\( +\\|	\\)\\* \\([^ ,:([\n]+\\)")
(defconst change-log-start-entry-re "^\\sw.........[0-9:+ ]*")
#@57 Additional expressions to highlight in Change Log mode.
(defvar change-log-font-lock-keywords (byte-code "\301\302B\303BB\207" [change-log-file-names-re ("^[0-9-]+ +\\|^ \\{11,\\}\\|^	 \\{3,\\}\\|^\\(Sun\\|Mon\\|Tue\\|Wed\\|Thu\\|Fri\\|Sat\\) [A-Z][a-z][a-z] [0-9:+ ]+" (0 'change-log-date) ("\\([^<(]+?\\)[ 	]*[(<]\\([A-Za-z0-9_.+-]+@[A-Za-z0-9_.-]+\\)[>)]" nil nil (1 'change-log-name) (2 'change-log-email))) ((2 'change-log-file) ("\\=, \\([^ ,:([\n]+\\)" nil nil (1 'change-log-file)) ("\\= (\\([^(),\n]+\\|(\\(setf\\|SETF\\) [^() ,\n]+)\\)" nil nil (1 'change-log-list)) ("\\=, *\\([^(),\n]+\\|(\\(setf\\|SETF\\) [^() ,\n]+)\\)" nil nil (1 'change-log-list))) (("^\\( +\\|	\\)(\\([^(),\n]+\\|(\\(setf\\|SETF\\) [^() ,\n]+)\\)" (2 'change-log-list) ("\\=, *\\([^(),\n]+\\|(\\(setf\\|SETF\\) [^() ,\n]+)\\)" nil nil (1 'change-log-list))) ("\\[!?\\([^]\n]+\\)\\]\\(:\\| (\\)" (1 'change-log-conditionals)) ("<\\([^>\n]+\\)>\\(:\\| (\\)" (1 'change-log-function)) ("\\(^\\( +\\|	\\)\\|  \\)\\(Thanks to\\|Patch\\(es\\)? by\\|Report\\(ed by\\| from\\)\\|Suggest\\(ed by\\|ion from\\)\\)" 3 'change-log-acknowledgment))] 3) (#$ . 6579))
#@50 Return the file-name for the change under point.
(defalias 'change-log-search-file-name #[(where) "\212b\210\303\304!\210\305	!\203\306\n\307\310#\210\311\312!\202T\305\n!\203&\311\312!\202T\313\314	\315\n\316\260\307\310#\203K\304\224\203E\306\n\307\310#\210\311\312!\202T\311\317!\202T\306\n\307\310#\210\311\312!)\207" [where change-log-start-entry-re change-log-file-names-re beginning-of-line 1 looking-at re-search-forward nil t match-string-no-properties 2 re-search-backward "\\(" "\\)\\|\\(" "\\)" 4] 6 (#$ . 7724)])
(defconst change-log-unindented-file-names-re "^[*] \\([^ ,:([\n]+\\)")
#@159 Read ChangeLog entries at point until END.
Move point to the end of entries that were read.  Return a list
in the same form as `diff-add-log-current-defuns'.
(defalias 'change-log-read-entries #[(&optional end) "\303	\203\f`	W\203#\304\n!\203#\305\225b\210\306\307!\310	!BB\202\237)\207" [#1=#:--cl-var-- end change-log-unindented-file-names-re nil looking-at 0 match-string-no-properties 1 change-log-read-defuns] 3 (#$ . 8340)])
#@149 Read ChangeLog formatted function names at point until END.
Move point to the end of names read and return the function names
as a list of strings.
(defalias 'change-log-read-defuns #[(&optional end) "\303\304	w\203*	\203`	W\203*\305\n!\203*\306\225b\210\307\310\311!\312\313#\237\244\202\314\303x\210\237)\207" [#1=#:--cl-var-- end change-log-tag-re nil ":\n[:blank:]" looking-at 0 split-string match-string-no-properties 1 ",[[:blank:]]*" t "\n[:blank:]"] 4 (#$ . 8787)])
#@127 Format and insert CHANGELOGS into current buffer.
CHANGELOGS is a list in the form returned by
`diff-add-log-current-defuns'.
(defalias 'change-log-insert-entries #[(changelogs) "\306\211	:\203G	@\211\211A\242\307\261\210\n\204#\310c\210\202@\311c\210\n\306\f:\203?\f@\312
\313\261\210\fA\211\202+*	A\211\202+\306\207" [changelogs #1=#:--cl-var-- defuns file #2=#:--cl-var-- def nil "* " ":\n" " " "(" "):\n"] 4 (#$ . 9279)])
#@44 Visit the file for the change under point.
(defalias 'change-log-find-file #[nil "\301`!\211\203\302!\203\303!\202\304\305\")\207" [file change-log-search-file-name file-exists-p find-file message "No such file or directory: %s"] 4 (#$ . 9733) nil])
#@274 Search for a tag name within subexpression 1 of last match.
Optional argument FROM specifies a buffer position where the tag
name should be located.  Return value is a cons whose car is the
string representing the tag and whose cdr is the position where
the tag was found.
(defalias 'change-log-search-tag-name-1 #[(&optional from) "\214\301\224\301\225}\210\203b\210\302\303!\203\301\224b\210\304 `)B\207" [from 1 looking-at "[(]?\\(?:\\(?:\\sw\\|\\s_\\)+\\(?:[ 	]+\\(\\sw\\|\\s_\\)+\\)\\)" find-tag-default] 2 (#$ . 10000)])
#@51 Regexp matching a tag name in change log entries.
(defconst change-log-tag-re "(\\(\\(?:\\sw\\|\\s_\\)+\\(?:[, 	]+\\(?:\\sw\\|\\s_\\)+\\)*\\))" (#$ . 10539))
#@227 Search for a tag name near `point'.
Optional argument AT non-nil means search near buffer position AT.
Return value is a cons whose car is the string representing
the tag and whose cdr is the position where the tag was found.
(defalias 'change-log-search-tag-name #[(&optional at) "\212\206`\211b\210\214~\210\3061#\212\307 \210\310	!\205\311!)0\202'\210\202*\206\357\3121B\212\313\314w\205=\310	!\205=\311 )0\202F\210\202I\206\357\3151p\212\316 \210\310\n!\205k\317\225b\205k\320\321!\205k\310	!\205k\311 )0\202t\210\202w\206\357\3221\355\212\314\210\323\314\324#\203\214\317\224\202\215e)\212\314\210\325\314\324#\203\237\317\224\202\240d)\211\fW\205\350
X\205\350\fX\205\350\214
\f}\210\323	\314\324#\203\322\326\224\326\225}\210db\210\327 dB\202\347\325	\314\324#\205\347\326\224\326\225}\210eb\210\327 eB)*0\202\357\210\314*\207" [at change-log-tag-re change-log-file-names-re change-log-start-entry-re to from (error) backward-up-list looking-at change-log-search-tag-name-1 (error) " 	" nil (error) beginning-of-line 0 skip-syntax-forward " " (error) re-search-backward t re-search-forward 1 find-tag-default] 6 (#$ . 10704)])
(defvar change-log-find-head nil)
(defvar change-log-find-tail nil)
(defvar change-log-find-window nil)
#@372 Search for tag TAG in buffer BUFFER visiting file FILE.
REGEXP is a regular expression for TAG.  The remaining arguments
are optional: WINDOW denotes the window to display the results of
the search.  FIRST is a position in BUFFER denoting the first
match from previous searches for TAG.  LAST is the position in
BUFFER denoting the last match for TAG in the last search.
(defalias 'change-log-goto-source-1 #[(tag regexp file buffer &optional window first last) "rq\210\212\214~\210	\203(	b\210\306\210\3071\310 0\202\"\210	b\210\306\210\306\202+eb\210\306	\204R\311\306\312#\203R\313 \211\203-\n\f\230\203-\314 
\204-	\202-+	\204[
\203\244\315\206d\316!\211!r\317\216\320@\321\"\210	\203\217	eW\204\204	dV\203\206~\210\322 \210	b\210\202\233\323\324\f#\210

b\210\325 
	E+\202\254\323\326\f#\210\306)\207" [buffer last current-defun regexp tag first nil (error) end-of-defun re-search-forward t add-log-current-defun line-beginning-position internal--before-with-selected-window display-buffer #[nil "\301!\207" [save-selected-window--state internal--after-with-selected-window] 2] select-window norecord push-mark message "No more matches for tag `%s' in file `%s'" selected-window "Source location of tag `%s' not found in file `%s'" window change-log-find-window save-selected-window--state file] 5 (#$ . 11994)])
#@233 Go to source location of "change log tag" near `point'.
A change log tag is a symbol within a parenthesized,
comma-separated list.  If no suitable tag can be found nearby,
try to visit the file for the change under `point' instead.
(defalias 'change-log-goto-source #[nil "p\301 \210\302p\")\207" [buffer change-log-goto-source-internal next-error-found] 3 (#$ . 13362) nil])
(defalias 'change-log-goto-source-internal #[nil "\306=\203%	\203%\3071\310\311\312\n	\"\"0\202\"\210\313\314\n@\315\n8#\211\207\212`\316 \211@\f\2056\317\fA!\211\205>\315\224\317!\211\205K\315\224
\203]\203]\320!\204o\203i\320!\204o\321\322!\202\331\203\265\320!\203\265
\203\251\203\251\320!\203\251W\203\232X\204\251X\203\265W\203\265\323\324!!\211\202\331
\325\326
!\327Q\324!F\3301\322\310\311\n\"\2110\202\331\210\313\331
#.\207" [last-command change-log-find-tail change-log-find-head at tag-at tag change-log-goto-source (error) apply change-log-goto-source-1 append format-message "Cannot find more matches for tag `%s' in file `%s'" 2 change-log-search-tag-name change-log-search-file-name file-exists-p error "Cannot find tag or file near `point'" display-buffer find-file-noselect "\\_<" regexp-quote "\\_>" (error) "Cannot find matches for tag `%s' in file `%s'" file file-at file-2 file-2-at change-log-find-window] 6])
#@117 Move to the Nth (default 1) next match in a ChangeLog buffer.
Compatibility function for \[next-error] invocations.
(defalias 'change-log-next-error #[(&optional argp reset) "\206\306\307!\306W\211?\211\203\310\202\311
\203#e\2026\n\203,\312 \2026\2035\313 \2026`b\210\f\314\315	$\210-\316 \210\317!\205[\314\320 \210\205Z\321!)\207" [argp count down up search-function reset 0 abs re-search-forward re-search-backward line-beginning-position line-end-position nil t beginning-of-line looking-at change-log-goto-source-internal select-window change-log-file-names-re change-log-find-window] 6 (#$ . 14764) "p"])
#@35 Keymap for Change Log major mode.
(defvar change-log-mode-map (byte-code "\302 \302 \303	\304\305#\210\303	\306\307#\210\303	\310\311#\210\303	\312\313#\210\303	\314\315B#\210\303\316\317#\210\303\320\321#\210\303\322\323#\210\303\324\325#\210\303\326\327#\210	*\207" [menu-map map make-sparse-keymap define-key [3 16] add-log-edit-prev-comment [3 14] add-log-edit-next-comment [3 6] change-log-find-file [3 3] change-log-goto-source [menu-bar changelog] "ChangeLog" [gs] (menu-item "Go To Source" change-log-goto-source :help "Go to source location of ChangeLog tag near point") [ff] (menu-item "Find File" change-log-find-file :help "Visit the file for the change under point") [sep] ("--") [nx] (menu-item "Next Log-Edit Comment" add-log-edit-next-comment :help "Cycle forward through Log-Edit mode comment history") [pr] (menu-item "Previous Log-Edit Comment" add-log-edit-prev-comment :help "Cycle backward through Log-Edit mode comment history")] 5) (#$ . 15415))
(defvaralias 'change-log-time-zone-rule 'add-log-time-zone-rule)
#@181 Time zone rule used for calculating change log time stamps.
If nil, use local time.  If t, use Universal Time.
If a string, interpret as the ZONE argument of `format-time-string'.
(defvar add-log-time-zone-rule nil (#$ . 16465))
(put 'add-log-time-zone-rule 'safe-local-variable #[(x) "\301!\206;\207" [x booleanp] 2])
(defalias 'add-log-iso8601-time-zone #[(&optional time zone) "\302\303	#\207" [time zone format-time-string "%:::z"] 4])
(make-obsolete 'add-log-iso8601-time-zone nil "26.1")
(defvar add-log-iso8601-with-time-zone nil)
(defalias 'add-log-iso8601-time-string #[(&optional time zone) "\303\203	\304\202\n\305	\n#\207" [add-log-iso8601-with-time-zone time zone format-time-string "%Y-%m-%d %:::z" "%Y-%m-%d"] 4])
#@63 Return (system-dependent) default name for a change log file.
(defalias 'change-log-name #[nil "\206\301\207" [change-log-default-name "ChangeLog"] 1 (#$ . 17208)])
#@104 Cycle backward through Log-Edit mode comment history.
With a numeric prefix ARG, go back ARG comments.
(defalias 'add-log-edit-prev-comment #[(arg) "\214`\302>\203
\303 \202`}\210\304\305!\205@\305	!\210\306ed\"\210eb\210\214~\210n)\2042`\307\310w\210`|\210\311e!\210db\210`\307\310x\210`|)\207" [last-command arg (add-log-edit-prev-comment add-log-edit-next-comment) mark fboundp log-edit-previous-comment indent-region " 	\n" nil set-mark] 3 (#$ . 17383) "*p"])
#@103 Cycle forward through Log-Edit mode comment history.
With a numeric prefix ARG, go back ARG comments.
(defalias 'add-log-edit-next-comment #[(arg) "\301[!\207" [arg add-log-edit-prev-comment] 2 (#$ . 17860) "*p"])
#@31 Prompt for a change log name.
(defalias 'prompt-for-change-log-name #[nil "\302 \303\304\305\306\"\307#!\310	!\311\230\203\303\310!	\"\2021\312	!\2030\303\310!\313	!\"\2021	*\207" [default name change-log-name expand-file-name read-file-name format "Log file (default %s): " nil file-name-nondirectory "" file-directory-p file-name-as-directory] 5 (#$ . 18081)])
#@174 Return version number of current buffer's file.
This is the value returned by `vc-working-revision' or, if that is
nil, by matching `change-log-version-number-regexp-list'.
(defalias 'change-log-version-number-search #[nil "\306 \211\307V\205`\310\245\\\n\203\311\n!\206@\214~\210\312
\203>\212eb\210\313
\211A\242	\314#\203:\315\316!\312)\202 \f+*\207" [size limit buffer-file-name change-log-version-number-regexp-list version regexps buffer-size 8000 10 vc-working-revision nil re-search-forward t match-string 1] 5 (#$ . 18462)])
#@998 Find a change log file for \[add-change-log-entry] and return the name.

Optional arg FILE-NAME specifies the file to use.
If FILE-NAME is nil, use the value of `change-log-default-name'.
If `change-log-default-name' is nil, behave as though it were "ChangeLog"
(or whatever we use on this operating system).

If `change-log-default-name' contains a leading directory component, then
simply find it in the current directory.  Otherwise, search in the current
directory and its successive parents for a file so named.  Stop at the first
such file that exists (or has a buffer visiting it), or the first directory
that contains any of `change-log-directory-files'.  If no match is found,
use the current directory.  To override the choice of this function,
simply create an empty ChangeLog file first by hand in the desired place.

Once a file is found, `change-log-default-name' is set locally in the
current buffer to the complete file name.
Optional arg BUFFER-FILE overrides `buffer-file-name'.
(defalias 'find-change-log #[(&optional file-name buffer-file) "r\306\307!\205\3101\311 0\202\210\312@\313!\203\202 p)q\210	\204y\n\2052\314\n!\2052\n\211\204y\204?\f\203K\314\315\206F\f!!\206L
\316	!\203Y\317\320 	\"\315	!\317	!\321\320 !\322	\323\"\211\203x\317\"*\324\302!\210	)	\207" [buff file-name change-log-default-name buffer-file buffer-file-name default-directory derived-mode-p diff-mode (error) diff-find-source-location nil buffer-live-p file-name-directory file-chase-links file-directory-p expand-file-name change-log-name file-name-nondirectory locate-dominating-file #[(dir) "\306	\"\307\n!\206\310\n!)\206/\205/\311\310\306
@	\"!\211\204-
A\211\204\f*\207" [cbase dir clog change-log-directory-files found files expand-file-name get-file-buffer file-exists-p nil] 4] make-local-variable cbase root] 4 (#$ . 19020)])
#@69 Compute file-name of BUFFER-FILE to be used in entries in LOG-FILE.
(defalias 'add-log-file-name #[(buffer-file log-file) "?\206	\230?\205L\n\203\n!\207\306	!\307\"\310\311\f\"\204(\f\202?\307\312!\312!\"\211G\fGW\203=
\202>\f)*\313!\203K\314!\207\207" [buffer-file log-file add-log-file-name-function dir rel new file-name-directory file-relative-name string-match "\\`\\.\\./" file-truename backup-file-name-p file-name-sans-versions] 5 (#$ . 20912)])
(byte-code "\300\301\302\303\304\305\306\307&\210\310\301\311\312#\207" [custom-declare-variable add-log-dont-create-changelog-file t "If non-nil, don't create ChangeLog files for log entries.\nIf a ChangeLog file does not already exist, a non-nil value\nmeans to put log entries in a suitably named buffer." :type boolean :version "27.1" put safe-local-variable booleanp] 8)
#@154 Compute a suitable name for a non-file visiting ChangeLog buffer.
CHANGELOG-FILE-NAME is the file name of the actual ChangeLog file
if it were to exist.
(defalias 'add-log--pseudo-changelog-buffer-name #[(changelog-file-name) "\301\302\303\304!!\"\207" [changelog-file-name format "*changes to %s*" abbreviate-file-name file-name-directory] 5 (#$ . 21774)])
#@70 Return non-nil if BUFFER holds a change log for CHANGELOG-FILE-NAME.
(defalias 'add-log--changelog-buffer-p #[(changelog-file-name buffer) "rq\210	\203	\n\232\202\303\n!\304 \232)\207" [buffer buffer-file-name changelog-file-name add-log--pseudo-changelog-buffer-name buffer-name] 2 (#$ . 22139)])
#@101 Find a ChangeLog buffer for CHANGELOG-FILE-NAME.
Respect `add-log-use-pseudo-changelog', which see.
(defalias 'add-log-find-changelog-buffer #[(changelog-file-name) "\302!\204\n	\204\303!\207\304\305!!\207" [changelog-file-name add-log-dont-create-changelog-file file-exists-p find-file-noselect get-buffer-create add-log--pseudo-changelog-buffer-name] 3 (#$ . 22449)])
#@1468 Find ChangeLog buffer, add an entry for today and an item for this file.
Optional arg WHOAMI (interactive prefix) non-nil means prompt for
user name and email (stored in `add-log-full-name'
and `add-log-mailing-address').

Second arg CHANGELOG-FILE-NAME is the file name of the change log.
If nil, use the value of `change-log-default-name'.  If the file
thus named exists, it is used for the new entry.  If it doesn't
exist, it is created, unless `add-log-dont-create-changelog-file' is t,
in which case a suitably named buffer that doesn't visit any file
is used for keeping entries pertaining to CHANGELOG-FILE-NAME's
directory.

Third arg OTHER-WINDOW non-nil means visit in other window.

Fourth arg NEW-ENTRY non-nil means always create a new entry at the front;
never append to an existing entry.  Option `add-log-keep-changes-together'
otherwise affects whether a new entry is created.

Fifth arg PUT-NEW-ENTRY-ON-NEW-LINE non-nil means that if a new
entry is created, put it on a new line by itself, do not put it
after a comma on an existing line.

Option `add-log-always-start-new-record' non-nil means always create a
new record, even when the last record was made on the same date and by
the same person.

The change log file can start with a copyright notice and a copying
permission notice.  The first blank line indicates the end of these
notices.

Today's date is calculated according to `add-log-time-zone-rule' if
non-nil, otherwise in local time.
(defalias 'add-change-log-entry #[(&optional whoami changelog-file-name other-window new-entry put-new-entry-on-new-line) "\306 	\205	\307  \211\205\310\f!\310\311@
\"!@\312
@\"A@B\232\204X\313@\314 \"\203=\314 q\210\202XC\204G\315 \203Q\316\317@!!\210\202X\320\317@!!\210\321\322!\204a\322 \210\323 \210eb\210D\206n\324 E\206uFGHI\203\214\325\326H\"H\325\327G\"G\330\331!\203\232\332\333!\210\334\335w\210\336\337G:\203\247G\202\252GC\"JK\204\364\335LJ\335M\211N\203\345N@M\330\340M!!\203\334\212\341y\210\330\342!)\204\334\343LNA\211N\204\300\335ML+\203\364\341y\210\202\344JG!J8O\203P\202\334O\203P\202\334\261\210\345y\210+\212\330\346!\203'\334\335w\210\2025Q\2032\347 \210\2025\350 \210`)R\351\352R\343#\203NA\203Ac\210\202S\204\261\335T\351\340\353AP!\354PR\343#)\203\261\351\355\335\343#\203v\356\224b\210\202|db\210\334c\210m\204\217\330\357!\203\217`\360\361!|\210\202|O\203\231P\202\232\334O\203\244P\202\245\334\261\210\362y\210\363 \210\202\330\364!\203\275\341y\210\202\261m\204\320\330\357!\203\320`\360\361!|\210\202\275O\203\332P\202\333\334O\203\345P\202\346\334O\203\360P\202\361\334\261\210\362y\210Uj\210\353c\210A\203Ac\210)\204'\212\365\341!\210\330\366!)?\205\304\367c\210\n\205\304\n\370\261\202\304\323 \210\212\365\341!\210\330\371!)\2049\370c\210\372 V\373\374!\210\375\335x\210W\204\222\330\375!\203\222\212\376\341!\210`)\211V`{\232\203fV`|\210X\377iG\201Y#V)\203\222\201Z\335x\210`V|\210`Sf\201[=\204\256\201Zc\210\202\256W\204\245\330\375!\203\245`T\201\\ |\210Vb\210\201]c\210V\335\211\223\210)\201^\261\210\n\205\304\n\370\261.\207" [defun change-log-version-info-enabled version add-log-buffer-file-name-function buf-file-name buffer-file add-log-current-defun change-log-version-number-search expand-file-name find-change-log add-log-file-name add-log--changelog-buffer-p window-buffer window-dedicated-p switch-to-buffer-other-window add-log-find-changelog-buffer switch-to-buffer derived-mode-p change-log-mode undo-boundary user-full-name read-string "Full name: " "Mailing address: " looking-at "Copyright" search-forward "\n\n" "\n" nil mapcar #[(addr) "\304	\"\305\n\306\307\260\207" [add-log-time-format add-log-time-zone-rule full-name addr nil "  " "  <" ">"] 6] regexp-quote 1 "[ 	]+.*<.*>$" t random -1 "\n*[^\n* 	]" forward-page forward-paragraph re-search-forward "^\\s *\\* *$" "* " "\\(\\s \\|[(),:]\\)" "^\\s *$\\|^\\s \\*" 0 "^\\s *$" line-beginning-position 2 -2 indent-relative-first-indent-point "\\sW" beginning-of-line "\\s *\\(\\* *\\)?$" ": " 32 "\\s *$" point-marker skip-syntax-backward " " "):" backward-sexp + changelog-file-name item buffer-file-name other-window add-log-full-name add-log-mailing-address user-mail-address mailing-address full-name whoami new-entries add-log-always-start-new-record hit entry --dolist-tail-- use-hard-newlines hard-newline add-log-keep-changes-together bound new-entry case-fold-search left-margin pos put-new-entry-on-new-line fill-column 4 ", " 40 line-end-position "(" "): "] 6 (#$ . 22833) (list current-prefix-arg (prompt-for-change-log-name))])
#@166 Find change log file in other window and add entry and item.
This is just like `add-change-log-entry' except that it displays
the change log file in another window.
(defalias 'add-change-log-entry-other-window #[(&optional whoami file-name) "\302	\303#\207" [whoami file-name add-change-log-entry t] 4 (#$ . 27539) (byte-code "\205\301 D\207" [current-prefix-arg prompt-for-change-log-name] 2)])
(defvar change-log-indent-text 0)
(defalias 'change-log-fill-parenthesized-list #[nil "\212\300\210\301\302x\210`Sf\303\232\205e`eTV\205e\3041c\212\305\306!\210\302f\307\232\301\302x\210\205Mn\206M\310\302x\300U?\205M\301\302x\205M\311\302x\306U\205M\301\302x\205Mn)\205_\312\306!\210\313c\210\314\302w\210\315\316!0\202e\210\302)\207" [0 " 	" nil 44 (error) up-list -1 40 "^ 	\n*" "*" delete-char ")" " 	\n" insert-before-markers "("] 3])
(defalias 'change-log-indent #[nil "\303 \210\212\304 \210\305\306w\210\307\310!\203\311\312\313\314!\"\203\315\202-\307\316!\203+\317 \\\202-\317 )\212\320	!\210`)\211`V\205?\nb*\207" [change-log-indent-text indent pos change-log-fill-parenthesized-list beginning-of-line " 	" nil looking-at "\\(.*\\)  [^ \n].*[^ \n]  <.*>\\(?: +(.*)\\)? *$" string-match "[[:digit:]][[:digit:]]" match-string 1 0 "[^*(]" current-left-margin indent-line-to] 5])
#@47 Syntax table used while in `change-log-mode'.
(defvar change-log-mode-syntax-table (byte-code "\301 \302\303\304#\210\302\305\304#\210)\207" [table make-syntax-table modify-syntax-entry 96 "'   " 39] 4) (#$ . 28856))
(defvar change-log-mode-hook nil)
(byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [change-log-mode-hook variable-documentation put "Hook run after entering Change Log mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp change-log-mode-map definition-name change-log-mode] 4)
(defvar change-log-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" [change-log-mode-abbrev-table change-log-mode-map variable-documentation put purecopy "Keymap for `change-log-mode'." boundp change-log-mode-syntax-table definition-name change-log-mode (lambda (#1=#:def-tmp-var) (defvar change-log-mode-syntax-table #1#)) make-syntax-table "Syntax table for `change-log-mode'." (lambda (#1#) (defvar change-log-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `change-log-mode'." derived-mode-parent text-mode] 5)
#@370 Major mode for editing change logs; like Indented Text mode.
Prevents numeric backups and sets `left-margin' to 8 and `fill-column' to 74.
New log entries are usually made with \[add-change-log-entry] or \[add-change-log-entry-other-window].
Each entry behaves as a paragraph, and the entries for one day as a page.
Runs `change-log-mode-hook'.

\{change-log-mode-map}
(defalias 'change-log-mode #[nil "\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\2036
\321 =\203<\322\f\323 \"\210)\324=\325\"\204V=>=\204V\326=\325>C#\210\327!\210\330\f!\210=>\331?\332@\307A\331B\307C\306\333!\210\334\306\335!\210\336\306\337!\210\307\340\341\342\336\307$\210\306\343!\210\344#\306\345!\210\336%\306\346!\210\307&\306\347!\210\350'\306\351!\210')\306\352!\210\353*\306\354!\210\355,\306\356!\210\357.\306\360!\210\3610\306\362!\210\3632\306\364!\210\3654\306\366!\210\3676\306\370!\210\3718\372D)\373\374!\207" [delay-mode-hooks major-mode mode-name change-log-mode-map change-log-mode-syntax-table parent make-local-variable t text-mode change-log-mode "Change Log" 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 8 74 fill-forward-paragraph-function change-log-fill-forward-paragraph comment-start nil fill-indent-according-to-mode add-hook fill-nobreak-predicate #[nil "\300\301\302 \"\207" [looking-back "^\\s *\\*\\s *" line-beginning-position] 3] indent-line-function change-log-indent tab-always-indent copyright-at-end-flag paragraph-start "\\s *$\\|\f\\|^\\<" paragraph-separate page-delimiter "^\\<\\|^\f" version-control never smerge-resolve-function change-log-resolve-conflict adaptive-fill-regexp "\\s *" font-lock-defaults (change-log-font-lock-keywords t nil nil backward-paragraph) multi-isearch-next-buffer-function change-log-next-buffer beginning-of-defun-function change-log-beginning-of-defun end-of-defun-function change-log-end-of-defun change-log-next-error run-mode-hooks change-log-mode-hook change-log-mode-abbrev-table local-abbrev-table left-margin fill-column indent-tabs-mode tab-width show-trailing-whitespace next-error-function] 6 (#$ . 30282) nil])
#@284 Return the next buffer in the series of ChangeLog file buffers.
This function is used for multiple buffers isearch.
A sequence of buffers is formed by ChangeLog files with decreasing
numeric file name suffixes in the directory of the initial ChangeLog
file were isearch was started.
(defalias 'change-log-next-buffer #[(&optional buffer wrap) "\306 \307\310!\205\fC\311\312\313P!\314\"\"\n\203	\202!\315	!\203+	@\2024\316\317\f!!	\235A@\203A
\204Ap\202N\310
!\203M\320
!\202Np,\207" [name files isearch-forward wrap buffer file change-log-name append file-exists-p sort file-expand-wildcards "[-.][0-9]*" #[(a b) "\3031\304\305	G\"\305\n	G\"\"0\207\210\306\207" [b name a (error) version< substring nil] 5] reverse file-name-nondirectory buffer-file-name find-file-noselect] 6 (#$ . 32638)])
#@77 Cut paragraphs so filling preserves open parentheses at beginning of lines.
(defalias 'change-log-fill-forward-paragraph #[(n) "\302P\303	!)\207" [paragraph-start n "\\|\\s *\\(?:\\s(\\|\\*\\)" forward-paragraph] 2 (#$ . 33459)])
#@153 Heuristic regexp used by `add-log-current-defun' for unknown major modes.
The regexp's first submatch is placed in the ChangeLog entry, in
parentheses.
(custom-declare-variable 'add-log-current-defun-header-regexp "^\\([[:upper:]][[:upper:]_ ]*[[:upper:]_]\\|[-_[:alpha:]]+\\)[ 	]*[:=]" '(#$ . 33698) :type 'regexp :group 'change-log)
#@458 Return name of function definition point is in, or nil.

Understands C, Lisp, LaTeX ("functions" are chapters, sections, ...),
Texinfo (@node titles) and Perl.

Other modes are handled by a heuristic that looks in the 10K before
point for uppercase headings starting in the first column or
identifiers followed by `:' or `='.  See variables
`add-log-current-defun-header-regexp' and
`add-log-current-defun-function'.

Has a preference of looking backwards.
(defalias 'add-log-current-defun #[nil "\3041:\212\203 \2027\305\211\305\210\306`\307Z\310#\2056\311\312!\206(\311\313!\314\315	\"\2035\311\312	\"	*)0\207\210\305\207" [add-log-current-defun-function result case-fold-search add-log-current-defun-header-regexp (error) nil re-search-backward 10000 t match-string-no-properties 1 0 string-match "\\([^ 	\n
\f].*[^ 	\n
\f]\\)"] 4 (#$ . 34040)])
(defalias 'change-log-get-method-definition-1 #[(end) "\302\303!	Q\304\225b\207" [change-log-get-method-definition-md end match-string 1 0] 3])
#@64 For Objective C, return the method name if we are in a method.
(defalias 'change-log-get-method-definition #[nil "\301\212\302\303\304\305#\203\306\307!\210)\212\310\311\304\305#\2051\306\312!\210\313\314!\204.\313\315!\210\306\312!\210\202\316P*\207" [change-log-get-method-definition-md "[" re-search-backward "^@implementation\\s-*\\([A-Za-z_]*\\)" nil t change-log-get-method-definition-1 " " re-search-forward "^\\([-+]\\)[ 	\n\f
]*\\(([^)]*)\\)?\\s-*" "" looking-at "[{;]" "\\([A-Za-z_]*:?\\)\\s-*\\(([^)]*)\\)?[A-Za-z_]*[ 	\n\f
]*" "]"] 4 (#$ . 35056)])
(autoload 'timezone-make-date-sortable "timezone")
#@110 Return date of log entry in a consistent form for sorting.
Point is assumed to be at the start of the entry.
(defalias 'change-log-sortable-date-at #[nil "\302!\2034\303\304!\211\2052\305\306	\"\203%\307\310	\"\307\311	\"\307\312	\"Q\2022\31310\314	!0\2022\210\315)\207\316\317!\207" [change-log-start-entry-re date looking-at match-string-no-properties 0 string-match "\\(....\\)-\\(..\\)-\\(..\\)\\s-+" match-string 1 2 3 (error) timezone-make-date-sortable nil error "Bad date"] 6 (#$ . 35683)])
#@51 Function to be used in `smerge-resolve-function'.
(defalias 'change-log-resolve-conflict #[nil "\212\214\306\224\306\225}\210\307\224\307\225\310\224\310\225\311\312!\311\313!\314\216pr	q\210\315 \210\316
\f#\210)rq\210\315 \210\316\n#\210\317	!\210)db\210e`\316!\210|.\n\207" [tmp2 tmp1 me3 mb3 me1 mb1 0 1 3 generate-new-buffer " *changelog-resolve-1*" " *changelog-resolve-2*" #[nil "\302!\210\302	!\207" [tmp1 tmp2 kill-buffer] 2] change-log-mode insert-buffer-substring change-log-merge buf] 7 (#$ . 36196)])
#@337 Merge the contents of change log file OTHER-LOG with this buffer.
Both must be found in Change Log mode (since the merging depends on
the appropriate motion commands).  OTHER-LOG can be either a file name
or a buffer.

Entries are inserted in chronological order.  Both the current and
old-style time formats for entries are supported.
(defalias 'change-log-merge #[(other-log) "\306\307!\204\n\310\311!\210\312!\203\202\313!p\314\211\211\212eb\210
q\210eb\210\306\307!\2045\310\315\"\210m?\205\244\316 `\317 \210`r\fq\210m\204Y\316 \231\203Y\317 \210\202Hm\204f\320
\n	#\210\202\240o\204\223`Sf\321U\203\206`SeX\204\223`S\206`Sf\321U\204\223\203\220\202\221\322c\210r
q\210db\210)\320
\n\"\210)\2025.\207" [other-log end start date1 buf other-buf derived-mode-p change-log-mode error "Not in Change Log mode" bufferp find-file-noselect nil "%s not found in Change Log mode" change-log-sortable-date-at forward-page insert-buffer-substring 10 "\n" use-hard-newlines hard-newline] 5 (#$ . 36733) "*fLog file name to merge: "])
(defalias 'change-log-beginning-of-defun #[nil "\301\302\303#\207" [change-log-start-entry-re re-search-backward nil move] 4])
(defalias 'change-log-end-of-defun #[nil "\212\301\302\303#)\204\304\302\303#\210\305y\210\306!\203 \307\225b\210\305y\210\304\302\310#\205.\307\224b\210\311y\207" [change-log-start-entry-re re-search-backward nil t re-search-forward 1 looking-at 0 move -1] 4])
(provide 'add-log)

Zerion Mini Shell 1.0