commit | author | age
|
5cb5f7
|
1 |
;ELC |
C |
2 |
;;; Compiled |
|
3 |
;;; in Emacs version 26.1 |
|
4 |
;;; with all optimizations. |
|
5 |
|
|
6 |
;;; This file uses dynamic docstrings, first added in Emacs 19.29. |
|
7 |
|
|
8 |
;;; This file does not contain utf-8 non-ASCII characters, |
|
9 |
;;; and so can be loaded in Emacs versions earlier than 23. |
|
10 |
|
|
11 |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
|
12 |
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
|
13 |
|
|
14 |
|
|
15 |
(byte-code "\300\301!\210\302\303!\204 \304\303\305\"\210\302\306!\204 \304\306\307\"\210\302\310!\204' \304\310\311\312B\"\210\302\313!\2044 \304\313\311\314B\"\210\302\315!\204? \304\315\316\"\210\302\317!\204J \304\317\320\"\210\302\321!\204d \304\321\322\"\210\323\324\325\"\210\323\324\326\"\210\323\324\327\"\210\300\207" [require diff fboundp characterp defalias char-valid-p region-active-p #[0 "\205 \207" [transient-mark-mode mark-active] 1] registerv-make macro #[385 "\207" #1=[] 3 "\n\n(fn DATA &rest DUMMY)"] registerv-data #[257 "\207" #1# 2 "\n\n(fn DATA)"] diff-no-select #[1282 "CCC\306\242!\204 \307\242!\240\210\306\242!\204# \211\307\242!\240\210\242\204, \240\210\242<\2048 \211\242C\240\210\204A \310\311!\262\312\242!\312\242!\313\314 \315\242\316\317\204\\ \205\203 \320\n\242;\203j \n\242\202o \321\242!\320
\242;\203}
\242\202\202 \321\242!F \206\213 \n\242 \206\223 \f\242D\244\"\"B\322#\nrq\210\323\324p!\210\323\325 \210)\326p!\210\327 \210\330\305!\210\331\332\333\334\335
$\336\"\337\340%\211\323\341\261\210)\204\342\343!\203\343\344 01%\345\346\"\210\347\331\332\350\334\335\"\351\"\352\353%\"\266\202*\323\354\3550\356\3561&!\210\203!\357!\210\203)\357!\210))\266\204\207" [diff-switches diff-command default-directory buffer-read-only inhibit-read-only revert-buffer-function bufferp expand-file-name get-buffer-create "*Diff*" diff-file-local-copy mapconcat identity append mapcar shell-quote-argument "-L" prin1-to-string " " t buffer-disable-undo erase-buffer buffer-enable-undo diff-mode make-local-variable make-byte-code 514 "\304\300\242\301\242\302\242\303p%\207" vconcat vector [diff-no-select] 8 "\n\n(fn IGNORE-AUTO NOCONFIRM)" "\n" fboundp start-process "Diff" set-process-filter diff-process-filter set-process-sentinel "r\302!q\210\303\304!!\210\300\203 \305\300!\210\301\205 \305\301!)\207" [process-buffer diff-sentinel process-exit-status delete-file] 5 "\n\n(fn PROC MSG)" diff-sentinel call-process nil delete-file shell-file-name shell-command-switch] 22 "\n\n(fn OLD NEW &optional SWITCHES NO-ASYNC BUF)"] diff-file-local-copy #[257 "\300!\203 r\211q\210\301\302!\303\304\211\304\305%\210\211\262)\207\306!\207" [bufferp make-temp-file "buffer-content-" write-region nil nomessage file-local-copy] 8 "\n\n(fn FILE-OR-BUF)"] user-error error add-to-list debug-ignored-errors "^No further undo information" "^No further redo information" "^No further redo information for region"] 4) |
|
16 |
#@41 Tree of undo entries in current buffer. |
|
17 |
(defvar buffer-undo-tree nil (#$ . 2951)) |
|
18 |
(byte-code "\301\302\303\304#\210\305\302!\210\306\307\310\311\312\313%\210\314\315\316\317\320DD\321\312\307\322\323&\210\314\324\316\317\325DD\326\312\307\322\327&\210\314\330\316\317\331DD\332\312\307\322\333&\210\314\334\316\317\335DD\336\312\307\322\337\340!\341\"\203W \342\202X \333&\210\314\343\316\317\344DD\345\312\307\322\346&\210\314\347\316\317\350DD\351\312\307\322\333&\210\314\352\316\317\353DD\354\312\307\322\333&\210\314\355\316\317\356DD\357\312\307\322\333&\210\314\360\316\317\361DD\362\312\307\322\363&\210\364\365\366\367\312\307%\210\364\370\371\372\312\307%\210\364\373\374\375\312\307%\210\364\376\377\201@ \312\307%\210\364\201A \201B \201C \312\307%\207" [emacs-version put buffer-undo-tree permanent-local t make-variable-buffer-local custom-declare-group undo-tree nil "Tree undo/redo." :group undo custom-declare-variable undo-tree-mode-lighter funcall function #[0 "\300\207" [#1=" Undo-Tree"] 1 #1#] "Lighter displayed in mode line\nwhen `undo-tree-mode' is enabled." :type string undo-tree-incompatible-major-modes #[0 "\300\207" [(term-mode)] 1] "List of major-modes in which `undo-tree-mode' should not be enabled.\n(See `turn-on-undo-tree-mode'.)" (repeat symbol) undo-tree-enable-undo-in-region #[0 "\300\207" [t] 1] "When non-nil, enable undo-in-region.\n\nWhen undo-in-region is enabled, undoing or redoing when the\nregion is active (in `transient-mark-mode') or with a prefix\nargument (not in `transient-mark-mode') only undoes changes\nwithin the current region." boolean undo-tree-auto-save-history #[0 "\300\207" [nil] 1] "When non-nil, `undo-tree-mode' will save undo history to file\nwhen a buffer is saved to file.\n\nIt will automatically load undo history when a buffer is loaded\nfrom file, if an undo save file exists.\n\nBy default, undo-tree history is saved to a file called\n\".<buffer-file-name>.~undo-tree~\" in the same directory as the\nfile itself. To save under a different directory, customize\n`undo-tree-history-directory-alist' (see the documentation for\nthat variable for details).\n\nWARNING! `undo-tree-auto-save-history' will not work properly in\nEmacs versions prior to 24.3, so it cannot be enabled via\nthe customization interface in versions earlier than that one. To\nignore this warning and enable it regardless, set\n`undo-tree-auto-save-history' to a non-nil value outside of\ncustomize." version-list-< version-to-list (24 3) (choice (const :tag "<disabled>" nil)) undo-tree-history-directory-alist #[0 "\300\207" [nil] 1] "Alist of filename patterns and undo history directory names.\nEach element looks like (REGEXP . DIRECTORY). Undo history for\nfiles with names matching REGEXP will be saved in DIRECTORY.\nDIRECTORY may be relative or absolute. If it is absolute, so\nthat all matching files are backed up into the same directory,\nthe file names in this directory will be the full name of the\nfile backed up with all directory separators changed to `!' to\nprevent clashes. This will not work correctly if your filesystem\ntruncates the resulting name.\n\nFor the common case of all backups going into one directory, the\nalist should contain a single element pairing \".\" with the\nappropriate directory name.\n\nIf this variable is nil, or it fails to match a filename, the\nbackup is made in the original file's directory.\n\nOn MS-DOS filesystems without long names this variable is always\nignored." (repeat (cons (regexp :tag "Regexp matching filename") (directory :tag "Undo history directory name"))) undo-tree-visualizer-relative-timestamps #[0 "\300\207" [t] 1] "When non-nil, display times relative to current time\nwhen displaying time stamps in visualizer.\n\nOtherwise, display absolute times." undo-tree-visualizer-timestamps #[0 "\300\207" [nil] 1] "When non-nil, display time-stamps by default\nin undo-tree visualizer.\n\n\\<undo-tree-visualizer-mode-map>You can always toggle time-stamps on and off using \\[undo-tree-visualizer-toggle-timestamps], regardless of the\nsetting of this variable." undo-tree-visualizer-diff #[0 "\300\207" [nil] 1] "When non-nil, display diff by default in undo-tree visualizer.\n\n\\<undo-tree-visualizer-mode-map>You can always toggle the diff display using \\[undo-tree-visualizer-toggle-diff], regardless of the\nsetting of this variable." undo-tree-visualizer-lazy-drawing #[0 "\300\207" [100] 1] "When non-nil, use lazy undo-tree drawing in visualizer.\n\nSetting this to a number causes the visualizer to switch to lazy\ndrawing when the number of nodes in the tree is larger than this\nvalue.\n\nLazy drawing means that only the visible portion of the tree will\nbe drawn initially, and the tree will be extended later as\nneeded. For the most part, the only visible effect of this is to\nsignificantly speed up displaying the visualizer for very large\ntrees.\n\nThere is one potential negative effect of lazy drawing. Other\nbranches of the tree will only be drawn once the node from which\nthey branch off becomes visible. So it can happen that certain\nportions of the tree that would be shown with lazy drawing\ndisabled, will not be drawn immediately when it is\nenabled. However, this effect is quite rare in practice." (choice (const :tag "never" nil) (const :tag "always" t) (integer :tag "> size")) custom-declare-face undo-tree-visualizer-default-face ((((class color)) :foreground "gray")) "Face used to draw undo-tree in visualizer." undo-tree-visualizer-current-face ((((class color)) :foreground "red")) "Face used to highlight current undo-tree node in visualizer." undo-tree-visualizer-active-branch-face ((((class color) (background dark)) (:foreground "white" :weight bold)) (((class color) (background light)) (:foreground "black" :weight bold))) "Face used to highlight active undo-tree branch in visualizer." undo-tree-visualizer-register-face ((((class color)) :foreground "yellow")) "Face used to highlight undo-tree nodes saved to a register\nin visualizer." undo-tree-visualizer-unmodified-face ((((class color)) :foreground "cyan")) "Face used to highlight nodes corresponding to unmodified buffers\nin visualizer."] 10) |
|
19 |
#@30 Parent buffer in visualizer. |
|
20 |
(defvar undo-tree-visualizer-parent-buffer nil (#$ . 9149)) |
|
21 |
(byte-code "\300\301\302\303#\210\304\301!\207" [put undo-tree-visualizer-parent-buffer permanent-local t make-variable-buffer-local] 4) |
|
22 |
(defvar undo-tree-visualizer-parent-mtime nil) |
|
23 |
(byte-code "\300\301\302\303#\210\304\301!\207" [put undo-tree-visualizer-parent-mtime permanent-local t make-variable-buffer-local] 4) |
|
24 |
(defvar undo-tree-visualizer-spacing nil) |
|
25 |
(byte-code "\300\301\302\303#\210\304\301!\207" [put undo-tree-visualizer-spacing permanent-local t make-variable-buffer-local] 4) |
|
26 |
(defalias 'undo-tree-visualizer-calculate-spacing #[0 "\203\f \203\n \302\207\303\207\304\207" [undo-tree-visualizer-timestamps undo-tree-visualizer-relative-timestamps 9 13 3] 1]) |
|
27 |
(put 'undo-tree-visualizer-calculate-spacing 'byte-optimizer 'byte-compile-inline-expand) |
|
28 |
(defvar undo-tree-visualizer-initial-node nil) |
|
29 |
(byte-code "\300\301\302\303#\210\304\301!\207" [put undo-tree-visualizer-initial-node permanent-local t make-variable-buffer-local] 4) |
|
30 |
(defvar undo-tree-visualizer-selected-node nil) |
|
31 |
(byte-code "\300\301\302\303#\210\304\305!\207" [put undo-tree-visualizer-selected-node permanent-local t make-variable-buffer-local undo-tree-visualizer-selected] 4) |
|
32 |
(defvar undo-tree-visualizer-needs-extending-down nil) |
|
33 |
(byte-code "\300\301\302\303#\210\304\301!\207" [put undo-tree-visualizer-needs-extending-down permanent-local t make-variable-buffer-local] 4) |
|
34 |
(defvar undo-tree-visualizer-needs-extending-up nil) |
|
35 |
(byte-code "\300\301\302\303#\210\304\301!\207" [put undo-tree-visualizer-needs-extending-up permanent-local t make-variable-buffer-local] 4) |
|
36 |
(defvar undo-tree-inhibit-kill-visualizer nil) |
|
37 |
(defvar undo-tree-insert-face nil) |
|
38 |
(defconst undo-tree-visualizer-buffer-name " *undo-tree*") |
|
39 |
(defconst undo-tree-diff-buffer-name "*undo-tree Diff*") |
|
40 |
(byte-code "\300\301\302\"\210\300\303\304\"\207" [add-hook write-file-functions undo-tree-save-history-hook find-file-hook undo-tree-load-history-hook] 3) |
|
41 |
#@32 Keymap used in undo-tree-mode. |
|
42 |
(defvar undo-tree-map nil (#$ . 11156)) |
|
43 |
(byte-code "\204C \301 \302\303\304#\210\302\305\304#\210\302\306\304#\210\302\307\304#\210\302\310\311#\210\302\312\311#\210\302\313\311#\210\302\314\315#\210\302\316\317#\210\302\320\321#\210\301\207" [undo-tree-map make-sparse-keymap define-key [remap undo] undo-tree-undo [remap undo-only] [67108911] "" [67108927] undo-tree-redo [134217823] [remap redo] "u" undo-tree-visualize "ru" undo-tree-save-state-to-register "rU" undo-tree-restore-state-from-register] 5) |
|
44 |
#@38 Keymap used in undo-tree visualizer. |
|
45 |
(defvar undo-tree-visualizer-mode-map nil (#$ . 11717)) |
|
46 |
(byte-code "\204\323 \301 \302\303\304#\210\302\305\306#\210\302\307\304#\210\302\310\304#\210\302\311\304#\210\302\312\306#\210\302\313\306#\210\302\314\306#\210\302\315\316#\210\302\317\320#\210\302\321\316#\210\302\322\316#\210\302\323\316#\210\302\324\320#\210\302\325\320#\210\302\326\320#\210\302\327\330#\210\302\331\332#\210\302\333\330#\210\302\334\332#\210\302\335\330#\210\302\336\332#\210\302\337\340#\210\302\341\342#\210\302\343\344#\210\302\345\346#\210\302\347\350#\210\302\351\352#\210\302\353\350#\210\302\354\352#\210\302\355\356#\210\302\357\360#\210\302\361\362#\210\302\363\364#\210\301\207" [undo-tree-visualizer-mode-map make-sparse-keymap define-key [remap previous-line] undo-tree-visualize-undo [remap next-line] undo-tree-visualize-redo [up] "p" "" [down] "n" "" [remap forward-char] undo-tree-visualize-switch-branch-right [remap backward-char] undo-tree-visualize-switch-branch-left [right] "f" "" [left] "b" "" [remap backward-paragraph] undo-tree-visualize-undo-to-x [remap forward-paragraph] undo-tree-visualize-redo-to-x "\373" "\375" [C-up] [C-down] [mouse-1] undo-tree-visualizer-mouse-set "t" undo-tree-visualizer-toggle-timestamps "d" undo-tree-visualizer-toggle-diff "s" undo-tree-visualizer-selection-mode "," undo-tree-visualizer-scroll-left "." undo-tree-visualizer-scroll-right "<" ">" [next] undo-tree-visualizer-scroll-up [prior] undo-tree-visualizer-scroll-down "q" undo-tree-visualizer-quit "" undo-tree-visualizer-abort] 5) |
|
47 |
#@53 Keymap used in undo-tree visualizer selection mode. |
|
48 |
(defvar undo-tree-visualizer-selection-mode-map nil (#$ . 13329)) |
|
49 |
(byte-code "\204\235 \301 \302\303\304#\210\302\305\306#\210\302\307\304#\210\302\310\304#\210\302\311\304#\210\302\312\306#\210\302\313\306#\210\302\314\306#\210\302\315\316#\210\302\317\320#\210\302\321\322#\210\302\323\324#\210\302\325\322#\210\302\326\322#\210\302\327\322#\210\302\330\324#\210\302\331\324#\210\302\332\324#\210\302\333\334#\210\302\335\336#\210\302\337\340#\210\302\341\342#\210\302\343\344#\210\302\345\346#\210\302\347\350#\210\301\207" [undo-tree-visualizer-selection-mode-map make-sparse-keymap define-key [remap previous-line] undo-tree-visualizer-select-previous [remap next-line] undo-tree-visualizer-select-next [up] "p" "" [down] "n" "" [next] #[0 "\300\301!\207" [undo-tree-visualizer-select-next 10] 2 nil nil] [prior] #[0 "\300\301!\207" [undo-tree-visualizer-select-previous 10] 2 nil nil] [remap forward-char] undo-tree-visualizer-select-right [remap backward-char] undo-tree-visualizer-select-left [right] "f" "" [left] "b" "" "," #[0 "\300\301!\207" [undo-tree-visualizer-select-left 10] 2 nil nil] "." #[0 "\300\301!\207" [undo-tree-visualizer-select-right 10] 2 nil nil] "<" #[0 "\300\301!\207" [undo-tree-visualizer-select-left 10] 2 nil nil] ">" #[0 "\300\301!\207" [undo-tree-visualizer-select-right 10] 2 nil nil] "
" undo-tree-visualizer-set [mouse-1] undo-tree-visualizer-mouse-select "d" undo-tree-visualizer-selection-toggle-diff] 5) |
|
50 |
(defvar undo-tree-old-undo-menu-item nil) |
|
51 |
#@42 Update `undo-tree-mode' Edit menu items. |
|
52 |
(defalias 'undo-tree-update-menu-bar #[0 "\203 \303\304 \305\"\236A\306\304 \307\"\310\311#\210\312\304 \313\"\314\315\303$\207\306\304 \316\"\317\n#\210\306\304 \320\"\321\322#\207" [undo-tree-mode global-map undo-tree-old-undo-menu-item undo lookup-key [menu-bar edit] define-key [menu-bar edit] [undo] (menu-item "Undo" undo-tree-undo :enable (and undo-tree-mode (not buffer-read-only) (not (eq t buffer-undo-list)) (undo-tree-node-previous (undo-tree-current buffer-undo-tree))) :help "Undo last operation") define-key-after [menu-bar edit] [redo] (menu-item "Redo" undo-tree-redo :enable (and undo-tree-mode (not buffer-read-only) (not (eq t buffer-undo-list)) (undo-tree-node-next (undo-tree-current buffer-undo-tree))) :help "Redo last operation") [menu-bar edit] [undo] [menu-bar edit] [redo] nil] 5 (#$ . 14908)]) |
|
53 |
(add-hook 'menu-bar-update-hook 'undo-tree-update-menu-bar) |
|
54 |
#@68 compiler-macro for inlining `undo-tree-p'. |
|
55 |
|
|
56 |
(fn CL-WHOLE-ARG CL-X) |
|
57 |
(defalias 'undo-tree-p--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block undo-tree-p (and (memq (type-of cl-x) cl-struct-undo-tree-tags) t)) nil] 9 (#$ . 15841)]) |
|
58 |
(put 'undo-tree-p 'compiler-macro 'undo-tree-p--cmacro) |
|
59 |
#@13 |
|
60 |
|
|
61 |
(fn CL-X) |
|
62 |
(defalias 'undo-tree-p #[257 "\301!>\205 |