%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/emerge.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.

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


#@312 Define SYMBOL as an advertised buffer-local variable.
Performs a defvar, then executes `make-variable-buffer-local' on
the variable.  Also sets the `permanent-local' property, so that
`kill-all-local-variables' (called by major-mode setting commands)
won't destroy Emerge control variables.

(fn VAR VALUE DOC)
(defalias 'emerge-defvar-local '(macro . #[771 "\300\301F\302\303D\304BBE\207" [progn defvar-local put quote ('permanent-local t)] 8 (#$ . 409)]))
#@91 Non-nil if Emerge mode is enabled.
Use the command `emerge-mode' to change this variable.
(defvar emerge-mode nil (#$ . 878))
(make-variable-buffer-local 'emerge-mode)
#@750 Emerge mode is used by the Emerge file-merging package.
It is entered only through one of the functions:
	`emerge-files'
	`emerge-files-with-ancestor'
	`emerge-buffers'
	`emerge-buffers-with-ancestor'
	`emerge-files-command'
	`emerge-files-with-ancestor-command'
	`emerge-files-remote'
	`emerge-files-with-ancestor-remote'

If called interactively, enable Emerge mode if ARG is positive, and
disable it if ARG is zero or negative.  If called from Lisp, also
enable the mode if ARG is omitted or nil, and toggle it if ARG is
`toggle'; disable the mode otherwise.

Commands:
\{emerge-basic-keymap}
Commands must be prefixed by \<emerge-fast-keymap>\[emerge-basic-keymap] in `edit' mode,
but can be invoked directly in `fast' mode.

(fn &optional ARG)
(defalias 'emerge-mode #[256 "\301 \302=\203
?\202\303!\304V\305\306\203\307\202\310\"\210\311\312!\203B\301 \2032\211\301 \232\203B\313\314\315\203=\316\202>\317#\266\210\320 \210\207" [emerge-mode current-message toggle prefix-numeric-value 0 run-hooks emerge-mode-hook emerge-mode-on-hook emerge-mode-off-hook called-interactively-p any " in current buffer" message "Emerge mode %sabled%s" "en" "dis" force-mode-line-update] 7 (#$ . 1053) (byte-code "\206\301C\207" [current-prefix-arg toggle] 1)])
(defvar emerge-mode-hook nil)
(byte-code "\301\302N\204\f\303\301\302\304#\210\305\306\307\310\300!\205\311\211%\210\303\306\312\313#\210\314\315\311\316\317\320%\210\321\322\323\324\325DD\326\327\330\317\315&\210\321\331\323\324\332DD\333\327\330\317\315&\210\321\334\323\324\335DD\336\327\330\317\315&\210\321\337\323\324\340DD\341\327\342\317\315&\210\321\343\323\324\344DD\345\327\342\317\315&\210\321\346\323\324\347DD\350\327\342\317\315&\210\321\351\323\324\352DD\353\327\330\317\315&\210\321\354\323\324\355DD\356\327\330\317\315&\210\321\357\323\324\360DD\361\327\362\317\315&\210\321\363\323\324\364DD\365\327\362\317\315&\210\321\366\323\324\367DD\370\327\330\317\315&\210\321\371\323\324\372DD\373\327\330\317\315&\210\321\374\323\324\375DD\376\327\377\317\315&\210\321\201@\323\324\201ADD\201B\327\377\317\315&\210\321\201C\323\324\201DDD\201E\327\377\317\315&\210\321\201F\323\324\201GDD\201H\327\362\317\315&\207" [emerge-mode-map emerge-mode-hook variable-documentation put "Hook run after entering or leaving `emerge-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" add-minor-mode emerge-mode (" Emerge" (emerge-fast-mode " F") (emerge-edit-mode " E") (emerge-auto-advance " A") (emerge-skip-prefers " S")) boundp nil permanent-local t custom-declare-group emerge "Merge diffs under Emacs control." :group tools custom-declare-variable emerge-diff-program funcall function #[0 "\300\207" [#1="diff"] 1 #1#] "Name of the program which compares two files." :type string emerge-diff3-program #[0 "\300\207" [#2="diff3"] 1 #2#] "Name of the program which compares three files.\nIts arguments are the ancestor file and the two variant files." emerge-diff-options #[0 "\300\207" [#3=""] 1 #3#] "Options to pass to `emerge-diff-program' and `emerge-diff3-program'." emerge-match-diff-line #[0 "\300\301\302\303\260\207" ["\\([0-9]+\\)\\(\\|,\\([0-9]+\\)\\)" "^" "\\([acd]\\)" "$"] 6] "Pattern to match lines produced by diff that describe differences.\nThis is as opposed to lines from the source files." regexp emerge-diff-ok-lines-regexp #[0 "\300\207" [#4="^\\([0-9,]+[acd][0-9,]+$\\|[<>] \\|---\\)"] 1 #4#] "Regexp that matches normal output lines from `emerge-diff-program'.\nLines that do not match are assumed to be error messages." emerge-diff3-ok-lines-regexp #[0 "\300\207" [#5="^\\([1-3]:\\|====\\|  \\)"] 1 #5#] "Regexp that matches normal output lines from `emerge-diff3-program'.\nLines that do not match are assumed to be error messages." emerge-rcs-ci-program #[0 "\300\207" [#6="ci"] 1 #6#] "Name of the program that checks in RCS revisions." emerge-rcs-co-program #[0 "\300\207" [#7="co"] 1 #7#] "Name of the program that checks out RCS revisions." emerge-process-local-variables #[0 "\300\207" [nil] 1] "Non-nil if Emerge should process local-variables lists in merge buffers.\n(You can explicitly request processing the local-variables\nby executing `(hack-local-variables)'.)" boolean emerge-execute-line-deletions #[0 "\300\207" [nil] 1] "If non-nil: `emerge-execute-line' makes no output if an input was deleted.\nIt concludes that an input version has been deleted when an ancestor entry\nis present, only one A or B entry is present, and an output entry is present.\nIf nil: In such circumstances, the A or B file that is present will be\ncopied to the designated output file." emerge-before-flag #[0 "\300\207" [#8="vvvvvvvvvvvvvvvvvvvv\n"] 1 #8#] "Flag placed above the highlighted block of code.  Must end with newline.\nMust be set before Emerge is loaded, or  emerge-new-flags  must be run\nafter setting." emerge-after-flag #[0 "\300\207" [#9="^^^^^^^^^^^^^^^^^^^^\n"] 1 #9#] "Flag placed below the highlighted block of code.  Must end with newline.\nMust be set before Emerge is loaded, or  emerge-new-flags  must be run\nafter setting." emerge-startup-hook #[0 "\300\207" [nil] 1] "Hook to run in the merge buffer after the merge has been set up." hook emerge-select-hook #[0 "\300\207" [nil] 1] "Hook to run after a difference has been selected.\nThe variable `n' holds the (internal) number of the difference." emerge-unselect-hook #[0 "\300\207" [nil] 1] "Hook to run after a difference has been unselected.\nThe variable `n' holds the (internal) number of the difference." emerge-default-last-directories #[0 "\300\207" [nil] 1] "If nil, default dir for filenames in emerge is `default-directory'.\nIf non-nil, filenames complete in the directory of the last argument of the\nsame type to an `emerge-files...' command."] 8)
#@68 Last directory for the first file of an `emerge-files...' command.
(defvar emerge-last-dir-A nil (#$ . 6923))
#@69 Last directory for the second file of an `emerge-files...' command.
(defvar emerge-last-dir-B nil (#$ . 7039))
#@71 Last directory for the ancestor file of an `emerge-files...' command.
(defvar emerge-last-dir-ancestor nil (#$ . 7156))
#@69 Last directory for the output file of an `emerge-files...' command.
(defvar emerge-last-dir-output nil (#$ . 7282))
#@76 Last RCS revision used for first file of an `emerge-revisions...' command.
(defvar emerge-last-revision-A nil (#$ . 7404))
#@77 Last RCS revision used for second file of an `emerge-revisions...' command.
(defvar emerge-last-revision-B nil (#$ . 7533))
#@79 Last RCS revision used for ancestor file of an `emerge-revisions...' command.
(defvar emerge-last-revision-ancestor nil (#$ . 7663))
#@152 Function to be called after `emerge-{before,after}-flag'.
This is called after these functions are changed to compute values that
depend on the flags.
(defalias 'emerge-new-flags #[0 "G\306\307\"\310!\fG\306\f\307\"	\310\f!\211\n\207" [emerge-before-flag emerge-before-flag-length emerge-before-flag-lines emerge-before-flag-match emerge-after-flag emerge-after-flag-length emerge-count-matches-string "\n" regexp-quote emerge-after-flag-lines emerge-after-flag-match] 3 (#$ . 7803)])
#@72 Return the number of matches in STRING for REGEXP.

(fn STRING REGEXP)
(defalias 'emerge-count-matches-string #[514 "\300\211\301#\203\211T\262\300\225\262\202\207" [0 string-match] 8 (#$ . 8303)])
(byte-code "\300 \210\301\302\303\304\305DD\306\307\310\311\312&\210\301\313\303\304\314DD\315\307\316\311\312&\210\317\313\320\321\322$\210\301\323\303\304\324DD\325\307\310\311\312&\210\317\323\326\321\322$\210\301\327\303\304\330DD\331\307\316\311\312&\207" [emerge-new-flags custom-declare-variable emerge-min-visible-lines funcall function #[0 "\300\207" [3] 1] "Number of lines that we want to show above and below the flags when we are\ndisplaying a difference." :type integer :group emerge emerge-temp-file-prefix #[0 "\301\302\"\207" [temporary-file-directory expand-file-name "emerge"] 3] "Prefix to put on Emerge temporary file names.\nDo not start with `~/' or `~USERNAME/'." string make-obsolete-variable "customize `temporary-file-directory' instead." "24.4" set emerge-temp-file-mode #[0 "\300\207" [384] 1] "Mode for Emerge temporary files." "it has no effect, temporary files are always private." emerge-combine-versions-template #[0 "\300\207" [#1="#ifdef NEW\n%b#else /* not NEW */\n%a#endif /* not NEW */\n"] 1 #1#] "Template for `emerge-combine-versions' to combine the two versions.\nThe template is inserted as a string, with the following interpolations:\n	%a	the A version of the difference\n	%b	the B version of the difference\n	%%	the character `%'\nDon't forget to end the template with a newline.\nNote that this variable can be made local to a particular merge buffer by\ngiving a prefix argument to `emerge-set-combine-versions-template'."] 8)
#@143 Keymap of Emerge commands.
Directly available in `fast' mode;
must be prefixed by \<emerge-fast-keymap>\[emerge-basic-keymap] in `edit' mode.
(defvar emerge-basic-keymap nil (#$ . 9997))
#@84 Local keymap used in Emerge `fast' mode.
Makes Emerge commands directly available.
(defvar emerge-fast-keymap nil (#$ . 10190))
(defvar emerge-options-menu (make-sparse-keymap "Options"))
(defvar emerge-merge-menu (make-sparse-keymap "Merge"))
(defvar emerge-move-menu (make-sparse-keymap "Move"))
(byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable emerge-command-prefix funcall function #[0 "\300\207" [#1=""] 1 #1#] "Command prefix for Emerge commands in `edit' mode.\nMust be set before Emerge is loaded." :type string :group emerge] 8)
(defalias 'emerge-setup-fixed-keymaps #[0 "\306 \307!\210\310\311\312#\210\310\313\314#\210\310\315\316#\210\310\317\320#\210\310\321\322#\210\310\323\324#\210\310\325\326#\210\310\327\330#\210\310\331\332#\210\310\333\334#\210\310\335\336#\210\310\337\340#\210\310\341\342#\210\310\343\344#\210\310\345\336#\210\310\346\347#\210\310\350\351#\210\310\352\336#\210\310\353\354#\210\310\355\356#\210\310\357\336#\210\310\360\361#\210\310\362\363#\210\310\364\365#\210\310\366\367#\210\310\370\371#\210\310\372\373#\210\310\374\375#\210\310\376\377#\210\310\201@\336#\210\310\201A\201B#\210\310\201C\201D#\210\310\201E\201F#\210\310\201G\201H#\210\310\201I\201J#\210\310\201K\201L#\210\310\201M\201N#\210\310\201O\201P#\210\310\201Q\201R#\210\310\201S\201T#\210\300M\210\201U!\310	\n\300#\210\301	M\210\310	\201V\201W#\210\310	\201X\201Y#\210\310\201Z\201[ #\210\310	\201\\\201]B#\210\310	\201^\201_\fB#\210\310	\201`\201a
B#\210\310
\201b\201c#\210\310
\201d\201e#\210\310
\201f\201g#\210\310
\201h\201i#\210\310
\201j\201k#\210\310
\201l\201m#\210\310
\201n\201o#\210\310
\201p\201q#\210\310
\201r\201s#\210\310
\201t\201u#\210\310
\201v\201w#\210\310\201x\201y#\210\310\201z\201{#\210\310\201|\201}#\210\310\201~\201#\210\310\201\200\201\201#\210\310\201\202\201\203#\210\310\201\204\201\205#\210\310\201\206\201\207#\210\310\201\210\201\211#\210\310\f\201\212\201\213#\210\310\f\201\214\201\215#\210\310\f\201\216\201\217#\210\310\f\201\220\201\221#\210\310\f\201\222\201\223#\210\310\f\201\224\201\225#\210\310\f\201\226\201\227#\210\310\f\201\230\201\231#\210\310\f\201\232\201\233#\210\310\f\201\234\201\235#\210\310\f\201\236\201\237#\210\310\f\201\240\201\241#\207" [emerge-basic-keymap emerge-fast-keymap emerge-command-prefix emerge-options-menu emerge-merge-menu emerge-move-menu make-keymap suppress-keymap define-key "p" emerge-previous-difference "n" emerge-next-difference "a" emerge-select-A "b" emerge-select-B "j" emerge-jump-to-difference "." emerge-find-difference "q" emerge-quit "" emerge-abort "f" emerge-fast-mode "e" emerge-edit-mode "s" nil "sa" emerge-auto-advance "ss" emerge-skip-prefers "l" emerge-recenter "d" "da" emerge-default-A "db" emerge-default-B "c" "ca" emerge-copy-as-kill-A "cb" emerge-copy-as-kill-B "i" "ia" emerge-insert-A "ib" emerge-insert-B "m" emerge-mark-difference "v" emerge-scroll-up "^" emerge-scroll-down "<" emerge-scroll-left ">" emerge-scroll-right "|" emerge-scroll-reset "x" "x1" emerge-one-line-window "xc" emerge-combine-versions "xC" emerge-combine-versions-register "xf" emerge-file-names "xj" emerge-join-differences "xl" emerge-line-numbers "xm" emerge-set-merge-mode "xs" emerge-split-difference "xt" emerge-trim-difference "xx" emerge-set-combine-versions-template copy-keymap [remap write-file] emerge-query-write-file [remap save-buffer] emerge-query-save-buffer [menu-bar] make-sparse-keymap [menu-bar emerge-options] "Merge-Options" [menu-bar merge] "Merge" [menu-bar move] "Move" [emerge-scroll-reset] ("Scroll Reset" . emerge-scroll-reset) [emerge-scroll-right] ("Scroll Right" . emerge-scroll-right) [emerge-scroll-left] ("Scroll Left" . emerge-scroll-left) [emerge-scroll-down] ("Scroll Down" . emerge-scroll-down) [emerge-scroll-up] ("Scroll Up" . emerge-scroll-up) [emerge-recenter] ("Recenter" . emerge-recenter) [emerge-mark-difference] ("Mark Difference" . emerge-mark-difference) [emerge-jump-to-difference] ("Jump To Difference" . emerge-jump-to-difference) [emerge-find-difference] ("Find Difference" . emerge-find-difference) [emerge-previous-difference] ("Previous Difference" . emerge-previous-difference) [emerge-next-difference] ("Next Difference" . emerge-next-difference) [emerge-one-line-window] ("One Line Window" . emerge-one-line-window) [emerge-set-merge-mode] ("Set Merge Mode..." . emerge-set-merge-mode) [emerge-set-combine-template] ("Set Combine Template..." . emerge-set-combine-template) [emerge-default-B] ("Default B" . emerge-default-B) [emerge-default-A] ("Default A" . emerge-default-A) [emerge-skip-prefers] (menu-item "Skip Prefers" emerge-skip-prefers :button (:toggle . emerge-skip-prefers)) [emerge-auto-advance] (menu-item "Auto Advance" emerge-auto-advance :button (:toggle . emerge-auto-advance)) [emerge-edit-mode] (menu-item "Edit Mode" emerge-edit-mode :enable (not emerge-edit-mode)) [emerge-fast-mode] (menu-item "Fast Mode" emerge-fast-mode :enable (not emerge-fast-mode)) [emerge-abort] ("Abort" . emerge-abort) [emerge-quit] ("Quit" . emerge-quit) [emerge-split-difference] ("Split Difference" . emerge-split-difference) [emerge-join-differences] ("Join Differences" . emerge-join-differences) [emerge-trim-difference] ("Trim Difference" . emerge-trim-difference) [emerge-combine-versions] ("Combine Versions" . emerge-combine-versions) [emerge-copy-as-kill-B] ("Copy B as Kill" . emerge-copy-as-kill-B) [emerge-copy-as-kill-A] ("Copy A as Kill" . emerge-copy-as-kill-A) [emerge-insert-B] ("Insert B" . emerge-insert-B) [emerge-insert-A] ("Insert A" . emerge-insert-A) [emerge-select-B] ("Select B" . emerge-select-B) [emerge-select-A] ("Select A" . emerge-select-A)] 5])
#@41 Indicator for emerge-mode fast submode.
(defvar emerge-fast-mode nil (#$ . 16024))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-fast-mode put permanent-local t] 4)
#@41 Indicator for emerge-mode edit submode.
(defvar emerge-edit-mode nil (#$ . 16232))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-edit-mode put permanent-local t] 4)
#@46 The buffer in which the A variant is stored.
(defvar emerge-A-buffer nil (#$ . 16440))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-A-buffer put permanent-local t] 4)
#@46 The buffer in which the B variant is stored.
(defvar emerge-B-buffer nil (#$ . 16651))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-B-buffer put permanent-local t] 4)
#@53 The buffer in which the merged file is manipulated.
(defvar emerge-merge-buffer nil (#$ . 16862))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-merge-buffer put permanent-local t] 4)
#@78 The buffer in which the ancestor variant is stored,
or nil if there is none.
(defvar emerge-ancestor-buffer nil (#$ . 17088))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-ancestor-buffer put permanent-local t] 4)
#@93 Variables and properties of a buffer which are saved, modified and restored
during a merge.
(defconst emerge-saved-variables '((buffer-modified-p set-buffer-modified-p) buffer-read-only buffer-auto-save-file-name) (#$ . 17345))
#@65 Values to be assigned to emerge-saved-variables during a merge.
(defconst emerge-merging-values '(nil t nil) (#$ . 17579))
#@55 Remembers emerge-saved-variables for emerge-A-buffer.
(defvar emerge-A-buffer-values nil (#$ . 17708))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-A-buffer-values put permanent-local t] 4)
#@55 Remembers emerge-saved-variables for emerge-B-buffer.
(defvar emerge-B-buffer-values nil (#$ . 17942))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-B-buffer-values put permanent-local t] 4)
#@1405 Vector of differences between the variants, and markers in the buffers to
show where they are.  Each difference is represented by a vector of seven
elements.  The first two are markers to the beginning and end of the difference
section in the A buffer, the second two are markers for the B buffer, the third
two are markers for the merge buffer, and the last element is the "state" of
that difference in the merge buffer.
  A section of a buffer is described by two markers, one to the beginning of
the first line of the section, and one to the beginning of the first line
after the section.  (If the section is empty, both markers point to the same
point.)  If the section is part of the selected difference, then the markers
are moved into the flags, so the user can edit the section without disturbing
the markers.
  The "states" are:
	A		the merge buffer currently contains the A variant
	B		the merge buffer currently contains the B variant
	default-A	the merge buffer contains the A variant by default,
			but this difference hasn't been selected yet, so
			change-default commands can alter it
	default-B	the merge buffer contains the B variant by default,
			but this difference hasn't been selected yet, so
			change-default commands can alter it
	prefer-A	in a three-file merge, the A variant is the preferred
			choice
	prefer-B	in a three-file merge, the B variant is the preferred
			choice
(defvar emerge-difference-list nil (#$ . 18178))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-difference-list put permanent-local t] 4)
#@44 The difference that is currently selected.
(defvar emerge-current-difference -1 (#$ . 19762))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-current-difference put permanent-local t] 4)
#@30 Number of differences found.
(defvar emerge-number-of-differences nil (#$ . 19990))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-number-of-differences put permanent-local t] 4)
#@186 The local keymap for the merge buffer, with the emerge commands defined in
it.  Used to save the local keymap during fast mode, when the local keymap is
replaced by emerge-fast-keymap.
(defvar emerge-edit-keymap nil (#$ . 20212))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-edit-keymap put permanent-local t] 4)
#@49 The original local keymap for the merge buffer.
(defvar emerge-old-keymap nil (#$ . 20569))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-old-keymap put permanent-local t] 4)
#@95 If non-nil, emerge-select-A and emerge-select-B automatically advance to
the next difference.
(defvar emerge-auto-advance nil (#$ . 20787))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-auto-advance put permanent-local t] 4)
#@84 If non-nil, differences for which there is a preference are automatically
skipped.
(defvar emerge-skip-prefers nil (#$ . 21055))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-skip-prefers put permanent-local t] 4)
#@228 Hooks to run in the merge buffer after the merge has been finished.
`emerge-prefix-argument' will hold the prefix argument of the `emerge-quit'
command.
This is *not* a user option, since Emerge uses it for its own processing.
(defvar emerge-quit-hook nil (#$ . 21313))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-quit-hook put permanent-local t] 4)
#@66 Describes output destination of emerge, for `emerge-file-names'.
(defvar emerge-output-description nil (#$ . 21708))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local emerge-output-description put permanent-local t] 4)
#@69 

(fn FILE-A FILE-B &optional STARTUP-HOOKS QUIT-HOOKS OUTPUT-FILE)
(defalias 'emerge-files-internal #[1282 "CC\303\242!\204\304\305\242\"\210\303\242!\204\304\305\242\"\210\306\242!\306\242!\307\242!\307\242!\2038\307!rq\210~\210\310\242!\211\203^\240\210\311\312\313\314\315!\316\"\317$B\262\202a\320 \210\210)r\211q\210~\210\310\242!\211\203\211\240\210\311\312\313\314\315	!\321\"\317$B\262\202\214\320 \210\210)\322\242\242&\266\202\207" [emerge-last-dir-A emerge-last-dir-B emerge-last-dir-output file-readable-p error "File `%s' does not exist or is not readable" find-file-noselect file-name-directory file-local-copy make-byte-code 0 "\301\300\242!\207" vconcat vector [delete-file] 2 emerge-verify-file-buffer [delete-file] emerge-setup] 17 (#$ . 21959)])
#@77 

(fn BUFFER-A FILE-A BUFFER-B FILE-B STARTUP-HOOKS QUIT-HOOKS OUTPUT-FILE)
(defalias 'emerge-setup #[1799 "\306!\262\306!\262\211\205\306!\262\307\310\311\"rq\210\312!)r\211q\210\313	!\210\314\315\316!\210\317\314\211\203F\320P\202K\321\322!P\212\323\n!\210)\324 \210\325\"\211G \326!\"\327 \210\330 \210)\331	\317$\210r\211q\210\332\333\"\210\334\335!\210\317\211)\207" [buffer-read-only emerge-mode emerge-A-buffer emerge-B-buffer emerge-ancestor-buffer emerge-merge-buffer expand-file-name emerge-unique-buffer-name "*merge" "*" get-buffer-create emerge-copy-modes nil auto-save-mode 1 t "Output to file: " "Output to buffer: " buffer-name insert-buffer-substring emerge-set-keys emerge-make-diff-list -1 emerge-remember-buffer-characteristics emerge-handle-local-variables emerge-setup-windows mapc funcall run-hooks emerge-startup-hook emerge-output-description emerge-difference-list emerge-number-of-differences emerge-current-difference emerge-quit-hook] 15 (#$ . 22783)])
#@22 

(fn FILE-A FILE-B)
(defalias 'emerge-make-diff-list #[514 "\306\307!rq\210\310 \210\311\312\313\314	!\n\314!\314!%\315\"\210)\316!\210\317\f
\320!$\207" [emerge-diff-buffer emerge-diff-program emerge-diff-options emerge-diff-ok-lines-regexp emerge-A-buffer emerge-B-buffer get-buffer-create "*emerge-diff*" erase-buffer shell-command format "%s %s %s %s" shell-quote-argument t emerge-prepare-error-list emerge-convert-diffs-to-markers emerge-extract-diffs emerge-merge-buffer] 10 (#$ . 23818)])
#@20 

(fn DIFF-BUFFER)
(defalias 'emerge-extract-diffs #[257 "\301rq\210eb\210\302\301\303#\203\210\304\305\224\305\225{!\306\224\306\225\203'\304{!\202(\266\202\307\224\307\225{\304\310\224\310\225{!\311\224\311\225\203F\304{!\202G\266\202\312\230\203]\211T\262T\262\262\202y\313\230\203qT\262T\262\262\202yT\262\211T\262\314\315%B\266\206\202)\211\237\207" [emerge-match-diff-line nil re-search-forward t string-to-number 1 3 4 5 7 "a" "d" vector default-A] 13 (#$ . 24332)])
#@18 

(fn OK-REGEXP)
(defalias 'emerge-prepare-error-list #[257 "\302\303!rq\210\304 \210\212\305	!\210)\306!)\207" [emerge-diff-error-buffer emerge-diff-buffer get-buffer-create "*emerge-diff-errors*" erase-buffer insert-buffer-substring delete-matching-lines] 3 (#$ . 24855)])
#@83 

(fn FILE-A FILE-B FILE-ANCESTOR &optional STARTUP-HOOKS QUIT-HOOKS OUTPUT-FILE)
(defalias 'emerge-files-with-ancestor-internal #[1539 "CCC\304\242!\204\305\306\242\"\210\304\242!\204!\305\306\242\"\210\304\242!\204.\305\306\242\"\210\307\242!\307\242!\307\242!\310\242!\310\242!\310\242!\203T\310!rq\210~\210\311\242!\211\203z\240\210\312\313\314\315\316	!\317\"\320$\nB\262\n\202}\321 \210\210)rq\210~\210\311\242!\211\203\245\240\210\312\313\314\315\316\n!\322\"\320$\nB\262\n\202\250\321 \210\210)r\211q\210~\210\311\242!\211\203\322\240\210\312\313\314\315\316!\323\"\320$\nB\262\n\202\325\321 \210\210)\324\242\242\242&	\266\203\207" [emerge-last-dir-A emerge-last-dir-B emerge-last-dir-ancestor emerge-last-dir-output file-readable-p error "File `%s' does not exist or is not readable" find-file-noselect file-name-directory file-local-copy make-byte-code 0 "\301\300\242!\207" vconcat vector [delete-file] 2 emerge-verify-file-buffer [delete-file] [delete-file] emerge-setup-with-ancestor] 22 (#$ . 25139)])
#@117 

(fn BUFFER-A FILE-A BUFFER-B FILE-B BUFFER-ANCESTOR FILE-ANCESTOR &optional STARTUP-HOOKS QUIT-HOOKS OUTPUT-FILE)
(defalias 'emerge-setup-with-ancestor #[2310 "\306!\262\306!\262\306!\262\211\205\306!\262\307\310\311\"r	q\210\312!)r\211q\210\313!\210\314\315\316!\210\317\n\211\203M\320P\202R\321\322!P\212\323\n!\210)\324 \210\325\n	#\211 G!\326\"#\327 \210\330 \210\331 \210)\332\n\317$\210r\211q\210\333\334\"\210\335\336!\210\317\211)\207" [buffer-read-only emerge-mode emerge-A-buffer emerge-B-buffer emerge-ancestor-buffer emerge-merge-buffer expand-file-name emerge-unique-buffer-name "*merge" "*" get-buffer-create emerge-copy-modes nil auto-save-mode 1 t "Output to file: " "Output to buffer: " buffer-name insert-buffer-substring emerge-set-keys emerge-make-diff3-list -1 emerge-remember-buffer-characteristics emerge-select-prefer-Bs emerge-handle-local-variables emerge-setup-windows mapc funcall run-hooks emerge-startup-hook emerge-output-description emerge-difference-list emerge-number-of-differences emerge-current-difference emerge-quit-hook] 17 (#$ . 26233)])
#@36 

(fn FILE-A FILE-B FILE-ANCESTOR)
(defalias 'emerge-make-diff3-list #[771 "\306\307!rq\210\310 \210\311\312\313\314	!\n\314!\314!\314	!&\315\"\210)\316!\210\317\f
\320!$\207" [emerge-diff-buffer emerge-diff3-program emerge-diff-options emerge-diff3-ok-lines-regexp emerge-A-buffer emerge-B-buffer get-buffer-create "*emerge-diff*" erase-buffer shell-command format "%s %s %s %s %s" shell-quote-argument t emerge-prepare-error-list emerge-convert-diffs-to-markers emerge-extract-diffs3 emerge-merge-buffer] 12 (#$ . 27370)])
#@20 

(fn DIFF-BUFFER)
(defalias 'emerge-extract-diffs3 #[257 "\300rq\210\301\302\300\303#\203\\\304\305!\210\306\224\306\225{\211\307\230\204X\300\211\211`\262\310\311!\262\211b\210\310\312!\262\313@A@@A@\311\230\203E\314\202Q\312\230\203P\315\202Q\316%\266\203B\262\210\202)\211\237\207" [nil re-search-forward "^====\\(.?\\)$" t beginning-of-line 2 1 "2" emerge-get-diff3-group "1" "3" vector prefer-A prefer-B default-A] 13 (#$ . 27913)])
#@13 

(fn FILE)
(defalias 'emerge-get-diff3-group #[257 "\212\300\301\302Q!\210\303\304!\210\305\224\305\225{\306\230\203>\304\224\203.\307\310\224\310\225{!\307\311\224\311\225{!TD\202K\307\310\224\310\225{!\211TD\262\202K\307\310\224\310\225{!T\211D\262)\207" [re-search-forward "^" ":\\([0-9]+\\)\\(,\\([0-9]+\\)\\)?\\([ac]\\)$" beginning-of-line 2 4 "c" string-to-number 1 3] 5 (#$ . 28380)])
#@94 Run Emerge on two files.

(fn ARG FILE-A FILE-B FILE-OUT &optional STARTUP-HOOKS QUIT-HOOKS)
(defalias 'emerge-files #[1540 "\203\300\301\302\303\304!\305\"\306$B\262\307%\207" [make-byte-code 0 "\301\300!\207" vconcat vector [emerge-files-exit] 2 emerge-files-internal] 12 (#$ . 28788) (byte-code "\304\305\306	\304\211\307%\211\262\305\310\n\304\307%\205 \305\311\211\304%F\207" [current-prefix-arg emerge-last-dir-A emerge-last-dir-B emerge-last-dir-output nil emerge-read-file-name "File A to merge" t "File B to merge" "Output file"] 10)])
#@145 Run Emerge on two files, giving another file as the ancestor.

(fn ARG FILE-A FILE-B FILE-ANCESTOR FILE-OUT &optional STARTUP-HOOKS QUIT-HOOKS)
(defalias 'emerge-files-with-ancestor #[1797 "\203\300\301\302\303\304!\305\"\306$B\262\307&\207" [make-byte-code 0 "\301\300!\207" vconcat vector [emerge-files-exit] 2 emerge-files-with-ancestor-internal] 14 (#$ . 29362) (byte-code "\305\306\307	\305\211\310%\211\262\306\311\n\305\310%\306\312\305\310%\205(\306\313\f\211\305%\257\207" [current-prefix-arg emerge-last-dir-A emerge-last-dir-B emerge-last-dir-ancestor emerge-last-dir-output nil emerge-read-file-name "File A to merge" t "File B to merge" "Ancestor file" "Output file"] 11)])
#@17 

(fn FILE-OUT)
(defalias 'emerge-files-exit #[257 "?\205\301!\207" [emerge-prefix-argument emerge-write-and-delete] 3 (#$ . 30085)])
#@87 Run Emerge on two buffers.

(fn BUFFER-A BUFFER-B &optional STARTUP-HOOKS QUIT-HOOKS)
(defalias 'emerge-buffers #[1026 "\300\301!\300\302!rq\210\303ed\304\305%\210)rq\210\303ed\304\305%\210)\306\307!\307!\310\311\312\313\314\"\315\"\316$	B\304&\207" [emerge-make-temp-file "A" "B" write-region nil no-message emerge-setup get-buffer make-byte-code 0 "\302\300!\210\302\301!\207" vconcat vector [delete-file] 2] 18 (#$ . 30229) "bBuffer A to merge: \nbBuffer B to merge: "])
#@142 Run Emerge on two buffers, giving another buffer as the ancestor.

(fn BUFFER-A BUFFER-B BUFFER-ANCESTOR &optional STARTUP-HOOKS QUIT-HOOKS)
(defalias 'emerge-buffers-with-ancestor #[1283 "\300\301!\300\302!\300\303!rq\210\304ed\305\306%\210)rq\210\304ed\305\306%\210)rq\210\304ed\305\306%\210)\307\310	!\310\n!\310!\311\312\313\314\315#\316\"\317$\fB\305&	\207" [emerge-make-temp-file "A" "B" "anc" write-region nil no-message emerge-setup-with-ancestor get-buffer make-byte-code 0 "\303\300!\210\303\301!\210\303\302!\207" vconcat vector [delete-file] 2] 23 (#$ . 30728) "bBuffer A to merge: \nbBuffer B to merge: \nbAncestor buffer: "])
(defalias 'emerge-files-command #[0 "@A@\3018\302\233\303\304\305\306\307\310\311	!\312\"\301$C$\207" [command-line-args-left 2 3 emerge-files-internal nil make-byte-code 0 "\301\300!\207" vconcat vector [emerge-command-exit]] 13])
(defalias 'emerge-files-with-ancestor-command #[0 "\301\211\211\211C@\302\230\203(\3038\262\3048\262A@\262\211\3058\240\210\306\233\202@@\262A@\262\3038\262\211\3048\240\210\305\233\307\301\310\311\312\313\314\n!\315\"\303$C%\207" [command-line-args-left nil "-a" 2 3 4 5 emerge-files-with-ancestor-internal make-byte-code 0 "\301\300\242!\207" vconcat vector [emerge-command-exit]] 15])
#@17 

(fn FILE-OUT)
(defalias 'emerge-command-exit #[257 "\301!\210\302\203
\303\202\304!\207" [emerge-prefix-argument emerge-write-and-delete kill-emacs 1 0] 3 (#$ . 32052)])
#@31 

(fn FILE-A FILE-B FILE-OUT)
(defalias 'emerge-files-remote #[771 "\211\302\303	\304\305\306\307\310\n\"\311\"\312$C\262%\210\313\314\303\"\207" [emerge-file-out emerge-exit-func emerge-files-internal nil make-byte-code 0 "\302\300\301\"\207" vconcat vector [emerge-remote-exit] 3 throw client-wait] 15 (#$ . 32235)])
#@40 

(fn FILE-A FILE-B FILE-ANC FILE-OUT)
(defalias 'emerge-files-with-ancestor-remote #[1028 "\211\302\303	\304\305\306\307\310\"\311\"\312$C\262&\210\313\314\303\"\207" [emerge-file-out emerge-exit-func emerge-files-with-ancestor-internal nil make-byte-code 0 "\302\300\301\"\207" vconcat vector [emerge-remote-exit] 3 throw client-wait] 17 (#$ . 32568)])
#@27 

(fn FILE-OUT EXIT-FUNC)
(defalias 'emerge-remote-exit #[514 "\302!\210\303!\210\211	\203\304\202\305!\207" [emerge-merge-buffer emerge-prefix-argument emerge-write-and-delete kill-buffer 1 0] 4 (#$ . 32941)])
#@109 Emerge two RCS revisions of a file.

(fn ARG FILE REVISION-A REVISION-B &optional STARTUP-HOOKS QUIT-HOOKS)
(defalias 'emerge-revisions #[1540 "\303\n\203'\304\305\n\f#\306\307\310\311\312!\313\"\314$B\262\202(%\207" [emerge-last-revision-A emerge-last-revision-B emerge-rcs-ci-program emerge-revisions-internal format "%s %s" make-byte-code 0 "\301\300!\207" vconcat vector [shell-command] 2] 18 (#$ . 33165) (byte-code "\303\304\305\211\306$\307\310	\"\307\311\n\"F\207" [current-prefix-arg emerge-last-revision-A emerge-last-revision-B read-file-name "File to merge: " nil confirm read-string "Revision A to merge: " "Revision B to merge: "] 6)])
#@153 Emerge two RCS revisions of a file, with another revision as ancestor.

(fn ARG FILE REVISION-A REVISION-B ANCESTOR &optional STARTUP-HOOKS QUIT-HOOKS)
(defalias 'emerge-revisions-with-ancestor #[1797 "\304\f\203/\305\306#\307\310\311\312\313!\314\"\315$B\262\2021&\207" [emerge-last-revision-A emerge-last-revision-B emerge-last-revision-ancestor emerge-rcs-ci-program emerge-revision-with-ancestor-internal format "%s %s" make-byte-code 0 "\301\300!\207" vconcat vector [shell-command] 2] 20 (#$ . 33840) (byte-code "\304\305\306\211\307$\310\311	\"\310\312\n\"\310\313\"\257\207" [current-prefix-arg emerge-last-revision-A emerge-last-revision-B emerge-last-revision-ancestor read-file-name "File to merge: " nil confirm read-string "Revision A to merge: " "Revision B to merge: " "Ancestor: "] 7)])
#@82 

(fn FILE REVISION-A REVISION-B &optional STARTUP-HOOKS QUIT-HOOKS OUTPUT-FILE)
(defalias 'emerge-revisions-internal #[1539 "\301\302\303#!\301\302\303	#!\304\305!\304\306!rq\210\307 \210\310\302\311\f$\312\"\210\313ed\314\315%\210\316\314!\210)rq\210\307 \210\310\302\311$\312\"\210\313ed\314\315%\210\316\314!\210)\317\320\321\322\323\324\"\325\"\326$\fB\320\321\327\323\324!\330\"\326$\fB\314&\207" [emerge-rcs-co-program get-buffer-create format "%s,%s" emerge-make-temp-file "A" "B" erase-buffer shell-command "%s -q -p%s %s" t write-region nil no-message set-buffer-modified-p emerge-setup make-byte-code 0 "\302\300!\210\302\301!\207" vconcat vector [delete-file] 2 "\301\300!\207" [emerge-files-exit]] 22 (#$ . 34681)])
#@91 

(fn FILE REVISION-A REVISION-B ANCESTOR &optional STARTUP-HOOKS QUIT-HOOKS OUTPUT-FILE)
(defalias 'emerge-revision-with-ancestor-internal #[1796 "\301\302\303		#!\301\302\303\n	#!\301\302\303	#!\304\305!\304\306!\304\307!rq\210\310 \210\311\302\312$\313\"\210\314ed\315\316%\210\317\315!\210)rq\210\310 \210\311\302\312$\313\"\210\314ed\315\316%\210\317\315!\210)rq\210\310 \210\311\302\312
$\313\"\210\314ed\315\316%\210\317\315!\210)\320\321\322\323\324\325#\326\"\327$B\321\322\330\324\325!\331\"\327$B&	\207" [emerge-rcs-co-program get-buffer-create format "%s,%s" emerge-make-temp-file "A" "B" "ancestor" erase-buffer shell-command "%s -q -p%s %s" t write-region nil no-message set-buffer-modified-p emerge-setup-with-ancestor make-byte-code 0 "\303\300!\210\303\301!\210\303\302!\207" vconcat vector [delete-file] 2 "\301\300!\207" [emerge-files-exit]] 28 (#$ . 35449)])
#@541 Run Emerge using files named in current text line.
Looks in that line for whitespace-separated entries of these forms:
	a=file1
	b=file2
	ancestor=file3
	output=file4
to specify the files to use in Emerge.

In addition, if only one of `a=file' or `b=file' is present, and `output=file'
is present:
If `emerge-execute-line-deletions' is non-nil and `ancestor=file' is present,
it is assumed that the file in question has been deleted, and it is
not copied to the output file.
Otherwise, the A or B file present is copied to the output file.
(defalias 'emerge-execute-line #[0 "\302\211\211\211\303m\203\304\305!\210\306 \210\307\310!\203\311\225b\210l\204\240\307\312!\203\231\313\224\313\225{\227\314\224\314\225{\311\225b\210\315\230\203H\203B\304\316!\210\211\262\202\224\317\230\203\\\203V\304\320!\210\211\262\202\224\321\230\204h\322\230\203v\203p\304\323!\210\211\262\202\224\324\230\204\202\325\230\203\220\203\212\304\326!\210\211\262\202\224\304\327!\210\266\202\304\330!\210\202\203\250\204\260\211\204\260\304\331!\210\204\274\204\274\304\332!\210\306\314!\210\203\357\203\357\203\357\333\334#\210\335??\302p\336\311\337\340\341!\342\"\314$C\262&\202<\203\203\333\334#\210\343??\302p\336\311\337\340\341!\344\"\314$C\262&\202<\203'	\203'\333\345!\202<\206,\333\346!\210\347\"\210\333\350#\262)\207" [case-fold-search emerge-execute-line-deletions nil t error "At end of buffer" beginning-of-line looking-at "[ 	]*" 0 "\\([a-z]+\\)=\\([^ 	\n]+\\)[ 	]*" 1 2 "a" "This line has two `A' entries" "b" "This line has two `B' entries" "anc" "ancestor" "This line has two `ancestor' entries" "out" "output" "This line has two `output' entries" "Unrecognized entry" "Unparsable entry" "Must have both `A' and `B' entries" "Must have `A' or `B' entry" message "Merging %s and %s..." emerge-files-with-ancestor make-byte-code "\301\300!\210\302\303!\207" vconcat vector [switch-to-buffer message "Merge done"] emerge-files [switch-to-buffer message "Merge done"] "No action." "Copying..." copy-file "%s copied to %s."] 18 (#$ . 36386) nil])
(byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable emerge-merge-directories-filename-regexp funcall function #[0 "\300\207" [#1="[^.]"] 1 #1#] "Regexp describing files to be processed by `emerge-merge-directories'." :type regexp :group emerge] 8)
#@44 

(fn A-DIR B-DIR ANCESTOR-DIR OUTPUT-DIR)
(defalias 'emerge-merge-directories #[1028 "n\203l\204\f\301\302!\210\203\303\230\203\304\262\211\203&\211\303\230\203&\304\262\305!\262\306\307\"\310\230\2049\310P\262\305!\262\306\307\"\310\230\204L\310P\262\203c\305!\262\306\307\"\310\230\204c\310P\262\211\203z\305!\262\306\307\"\310\230\204z\211\310P\262\311 \210\312\304#\312\304#\205\220\312\304#\313\314!\314!\244\314!\244\315\"\211\211\203\301\211A\203\272\211@A@\230\203\272\211AA\241\210\202\237\211A\262\202\237\210\211\205(\211@A\262\203\343@\230\203\343\316	\317\261\210A\262\203\372@\230\203\372\320\317\261\210A\262\203@\230\203\321\317\261\210A\262\203\322\317\261\210\323\324!\210\325c\266\202\302\207" [emerge-merge-directories-filename-regexp error "There is text on this line" "" nil expand-file-name substring -1 "/" push-mark directory-files sort copy-sequence string-lessp "A=" "	" "B=" "ancestor=" "output=" backward-delete-char 1 "\n"] 13 (#$ . 38810) (byte-code "\300\301\302\211\303$\300\304\302\211\303$\300\305\302\211\303$\300\306\302\211\303$F\207" [read-directory-name "A directory: " nil confirm "B directory: " "Ancestor directory (null for none): " "Output directory (null for none): "] 8)])
#@53 

(fn BUFFER-A BUFFER-B MERGE-BUFFER &optional POS)
(defalias 'emerge-setup-windows #[1027 "\302 \303 =\203\f\304\305!\210\306 \210\307!\210\310 \210\311 \210\312 \210\307!\210\211\203'eb\210\304\305!\210\307!\210\211\2036eb\210\304\305!\210\211\203Aeb\210rq\210\313 )\314U?\205[\315 \210\316\317\320	!\"\210\307!\207" [emerge-diff-error-buffer emerge-merge-buffer selected-window minibuffer-window other-window 1 delete-other-windows switch-to-buffer emerge-refresh-mode-line split-window-below split-window-right buffer-size 0 ding message "Errors found in diff/diff3 output.  Merge buffer is %s." buffer-name] 8 (#$ . 40141)])
(defalias 'emerge-set-keys #[0 "\204\306 \210\307 \211\203\310	!\202\311 \312\n\300#\210\313\n\314\311 #\210\313\n\315\316\fB#\210\313\n\317\320
B#\210\313\n\321\322B#\210\323\324\325\n#\210\323\326\327\n#\210\313\n\330\325#\210\313\n\331\327#\210\332!\210\333\334\211 \207" [emerge-basic-keymap emerge-old-keymap emerge-edit-keymap emerge-command-prefix emerge-options-menu emerge-merge-menu emerge-setup-fixed-keymaps current-local-map copy-keymap make-sparse-keymap emerge-force-define-key define-key [menu-bar] [menu-bar emerge-options] "Merge-Options" [menu-bar merge] "Merge" [menu-bar move] "Move" substitute-key-definition write-file emerge-query-write-file save-buffer emerge-query-save-buffer [remap write-file] [remap save-buffer] use-local-map nil t emerge-move-menu emerge-fast-keymap emerge-edit-mode emerge-fast-mode] 6])
#@316 Record certain properties of the buffers being merged.
Must be called in the merge buffer.  Remembers read-only, modified,
auto-save, and saves them in buffer local variables.  Sets the buffers
read-only and turns off `auto-save-mode'.
These characteristics are restored by `emerge-restore-buffer-characteristics'.
(defalias 'emerge-remember-buffer-characteristics #[0 "\306 \210rq\210\307	!\310	\n\"\210)r\fq\210\307	!\310	\n\"\210)\211\207" [emerge-A-buffer emerge-saved-variables emerge-merging-values emerge-A-buffer-values emerge-B-buffer emerge-B-buffer-values do-auto-save emerge-save-variables emerge-restore-variables] 4 (#$ . 41642)])
#@76 Restore characteristics saved by `emerge-remember-buffer-characteristics'.
(defalias 'emerge-restore-buffer-characteristics #[0 "	r\nq\210\305\"\210)r\fq\210\305\")\207" [emerge-A-buffer-values emerge-B-buffer-values emerge-A-buffer emerge-saved-variables emerge-B-buffer emerge-restore-variables] 5 (#$ . 42296)])
#@34 

(fn DESIRED-LINE CURRENT-LINE)
(defalias 'emerge-goto-line #[514 "Zy\210\207" [] 4 (#$ . 42622)])
#@51 

(fn A-BUFFER B-BUFFER MERGE-BUFFER LINENO-LIST)
(defalias 'emerge-convert-diffs-to-markers #[1028 "\301rq\210e\214~\210e)Z)\302\211rq\210eb\210)rq\210eb\210)\203\264@\301\211\211\211\211\211\303H\302H\304H	\305H\n\306Hrq\210\307\"\262\310 \262\307\"\262\310 \262\n)rq\210\307\"\262
\310 \262	\307\"\262
\310 \262)\311 \312\f!Z\223\262\311 \312!Z\223\262\313&B\262\266\fA\262\202!\314\313\237\"\211\207" [emerge-difference-list nil 1 0 2 3 4 emerge-goto-line point-marker make-marker marker-position vector apply] 28 (#$ . 42731)])
(defalias 'emerge-select-prefer-Bs #[0 "\302\211W\203'	H\303H\304=\203 \305\306\"\210\307 \210	H\303\304I\210\211T\262\202\210\305\310!\207" [emerge-number-of-differences emerge-difference-list 0 6 prefer-B emerge-unselect-and-select-difference t emerge-select-B -1] 4])
(defalias 'emerge-handle-local-variables #[0 "\205\3011\f\302 0\207\303\304\305!\"\262\207" [emerge-process-local-variables (error) hack-local-variables message "Local-variables error in merge buffer: %s" prin1-to-string] 5])
#@17 

(fn FILE-OUT)
(defalias 'emerge-write-and-delete #[257 "\303 \210\304!\204
\305!\210\304	!\204\305	!\210\n\203%\304\n!\204%\305\n!\210\211\205,\306!\207" [emerge-A-buffer emerge-B-buffer emerge-ancestor-buffer delete-other-windows buffer-modified-p kill-buffer write-file] 3 (#$ . 43854)])
#@210 Bring the highlighted region of all three merge buffers into view.
This brings the buffers into view if they are in windows.
With an argument, reestablish the default three-window display.

(fn &optional ARG)
(defalias 'emerge-recenter #[256 "\211\203\n\306	\n#\210\307Y\205\fW\205\n	\310\311\"\310\311\"\310!
H\203D\312!\210\313\307HSZ\314HS\\\307HT#\210\203a\312!\210\313\315HSZ\316HS\\\315HT#\210\205}\312!\210\313\317HSZ\320HS\\\317HT#\266\207\207" [emerge-A-buffer emerge-B-buffer emerge-merge-buffer emerge-current-difference emerge-number-of-differences emerge-difference-list emerge-setup-windows 0 get-buffer-window visible select-window emerge-position-region 1 2 3 4 5 emerge-before-flag-length emerge-after-flag-length] 13 (#$ . 44162) "P"])
#@22 

(fn OPERATION ARG)
(defalias 'emerge-operate-on-windows #[514 "	\n\303\304\"\303\304\"\303!\203(\305!\210\3061#!0\202'\210\202(\210\203B\305!\210\3071=!0\202A\210\202B\210\211\205O\305!\210!\207" [emerge-merge-buffer emerge-A-buffer emerge-B-buffer get-buffer-window visible select-window (error) (error)] 10 (#$ . 44965)])
#@243 Scroll up all three merge buffers, if they are in windows.
With argument N, scroll N lines; otherwise scroll by nearly
the height of the merge window.
`C-u -' alone as argument scrolls half the height of the merge window.

(fn &optional ARG)
(defalias 'emerge-scroll-up #[256 "\302\303\203\304=\204\305!\202/\306!\211\205-\304\307!\310	#\203*\211\311\245\202+\211\262\262\"\207" [emerge-merge-buffer next-screen-context-lines emerge-operate-on-windows scroll-up - prefix-numeric-value get-buffer-window window-height 1 2] 8 (#$ . 45328) "P"])
#@245 Scroll down all three merge buffers, if they are in windows.
With argument N, scroll N lines; otherwise scroll by nearly
the height of the merge window.
`C-u -' alone as argument scrolls half the height of the merge window.

(fn &optional ARG)
(defalias 'emerge-scroll-down #[256 "\302\303\203\304=\204\305!\202/\306!\211\205-\304\307!\310	#\203*\211\311\245\202+\211\262\262\"\207" [emerge-merge-buffer next-screen-context-lines emerge-operate-on-windows scroll-down - prefix-numeric-value get-buffer-window window-height 1 2] 8 (#$ . 45894) "P"])
#@266 Scroll left all three merge buffers, if they are in windows.
If an argument is given, that is how many columns are scrolled, else nearly
the width of the A and B windows.  `C-u -' alone as argument scrolls half the
width of the A and B windows.

(fn &optional ARG)
(defalias 'emerge-scroll-left #[256 "\301\302\203\303=\204\304!\202/\305!\211\205-\306!\307\245\310Z\203*\211\307\245\202+\211\262\262\"\207" [emerge-merge-buffer emerge-operate-on-windows scroll-left - prefix-numeric-value get-buffer-window window-width 2 3] 7 (#$ . 46466) "P"])
#@267 Scroll right all three merge buffers, if they are in windows.
If an argument is given, that is how many columns are scrolled, else nearly
the width of the A and B windows.  `C-u -' alone as argument scrolls half the
width of the A and B windows.

(fn &optional ARG)
(defalias 'emerge-scroll-right #[256 "\301\302\203\303=\204\304!\202/\305!\211\205-\306!\307\245\310Z\203*\211\307\245\202+\211\262\262\"\207" [emerge-merge-buffer emerge-operate-on-windows scroll-right - prefix-numeric-value get-buffer-window window-width 2 3] 7 (#$ . 47035) "P"])
#@147 Reset horizontal scrolling in Emerge.
This resets the horizontal scrolling of all three merge buffers
to the left margin, if they are in windows.
(defalias 'emerge-scroll-reset #[0 "\300\301\302\"\207" [emerge-operate-on-windows #[257 "\300\301 \302\"\207" [set-window-hscroll selected-window 0] 4 "\n\n(fn _)"] nil] 3 (#$ . 47607) nil])
#@370 Attempt to show the region nicely.
If there are min-lines lines above and below the region, then don't do
anything.
If not, recenter the region to make it so.
If that isn't possible, remove context lines evenly from top and bottom
so the entire region shows.
If that isn't possible, show the top of the region.
BEG must be at the beginning of a line.

(fn BEG END POS)
(defalias 'emerge-position-region #[771 "\301!\210`X\203\301T[!\210`X\204C\302\303 \"\210\304!\203C\305\301!\210`V\2034\211T\262\202#b\210\306\307 SZT\310\245!\266\211b\207" [emerge-min-visible-lines move-to-window-line set-window-start selected-window pos-visible-in-window-p 0 recenter window-height 2] 7 (#$ . 47952)])
#@33 Advance to the next difference.
(defalias 'emerge-next-difference #[0 "	W\203*T\n\203#\211	W\203#H\305H\306>\203#\211T\262\202\307\310!)\207\311\312!\207" [emerge-current-difference emerge-number-of-differences emerge-skip-prefers emerge-difference-list inhibit-read-only 6 (prefer-A prefer-B) t emerge-unselect-and-select-difference error "At end"] 3 (#$ . 48667) nil])
#@32 Go to the previous difference.
(defalias 'emerge-previous-difference #[0 "\304V\203*S	\203#\211\304V\203#\nH\305H\306>\203#\211S\262\202\307\310!)\207\311\312!\207" [emerge-current-difference emerge-skip-prefers emerge-difference-list inhibit-read-only -1 6 (prefer-A prefer-B) t emerge-unselect-and-select-difference error "At beginning"] 3 (#$ . 49057) nil])
#@52 Go to the N-th difference.

(fn DIFFERENCE-NUMBER)
(defalias 'emerge-jump-to-difference #[257 "\302\211S\262\211\303Y\203\211	TW\203\304!\202\305\306!)\207" [inhibit-read-only emerge-number-of-differences t -1 emerge-unselect-and-select-difference error "Bad difference number"] 3 (#$ . 49436) "p"])
#@27 Abort the Emerge session.
(defalias 'emerge-abort #[0 "\300\301!\207" [emerge-quit t] 2 (#$ . 49751) nil])
#@574 Finish the Emerge session and exit Emerge.
Prefix argument means to abort rather than successfully finish.
The difference depends on how the merge was started,
but usually means to not write over one of the original files, or to signal
to some process which invoked Emerge a failure code.

Unselects the selected difference, if any, restores the read-only and modified
flags of the merged file buffers, restores the local keymap of the merge
buffer, and sets off various emerge flags.  Using Emerge commands in this
buffer after this will cause serious problems.

(fn ARG)
(defalias 'emerge-quit #[257 "\300\204	\301\202\n\302!\303\304!\210\205\305!\207" [y-or-n-p "Do you really want to successfully finish this merge? " "Do you really want to abort this merge? " message "" emerge-really-quit] 4 (#$ . 49865) "P"])
#@12 

(fn ARG)
(defalias 'emerge-really-quit #[257 "\306\307\310!\210\311 \210\312\313	\"\210\306\314\n!\210\306\211\306\211\306\315\316!\210\211\317\320!)\207" [buffer-read-only emerge-difference-list emerge-old-keymap emerge-mode emerge-fast-mode emerge-edit-mode nil emerge-unselect-and-select-difference -1 emerge-restore-buffer-characteristics mapc #[257 "\211\300H\301\211\223\210\211\302H\301\211\223\210\211\303H\301\211\223\210\211\304H\301\211\223\210\211\305H\301\211\223\210\211\306H\301\211\223\207" [0 nil 1 2 3 4 5] 4 "\n\n(fn D)"] use-local-map kill-local-variable mode-line-buffer-identification run-hooks emerge-quit-hook emerge-auto-advance emerge-skip-prefers emerge-prefix-argument] 5 (#$ . 50694)])
#@25 

(fn DIFF-VECTOR SIDE)
(defalias 'emerge--current-beg '(macro . #[514 "\300\301\302\267\202\303\202\304\202\305\202\306\307\"\262ED\207" [1+ aref #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (A 9 B 13 merge 17)) 0 2 4 error "No clause matching `%S'"] 9 (#$ . 51428)]))
#@25 

(fn DIFF-VECTOR SIDE)
(defalias 'emerge--current-end '(macro . #[514 "\300\301\302\267\202\303\202\304\202\305\202\306\307\"\262ED\207" [1- aref #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (A 9 B 13 merge 17)) 1 3 5 error "No clause matching `%S'"] 9 (#$ . 51757)]))
#@260 Select the A variant of this difference.
Refuses to function if this difference has been edited, i.e., if it
is neither the A nor the B variant.
A prefix argument forces the variant to be selected
even if the difference has been edited.

(fn &optional FORCE)
(defalias 'emerge-select-A #[256 "\300\301\302\211$\207" [emerge-select-A-edit #[257 "\205\301 \207" [emerge-auto-advance emerge-next-difference] 2 "\n\n(fn DIFF-VECTOR)"] emerge-select-version] 8 (#$ . 52087) "P"])
#@20 

(fn DIFF-VECTOR)
(defalias 'emerge-select-A-edit #[257 "rq\210\211\303HTb\210`\304HS|\210\212\305	\306HT\307HS#\210)\211\310\311I\210\312 \210\n\205-\313 )\207" [emerge-merge-buffer emerge-A-buffer emerge-auto-advance 4 5 insert-buffer-substring 0 1 6 A emerge-refresh-mode-line emerge-next-difference] 6 (#$ . 52574)])
#@260 Select the B variant of this difference.
Refuses to function if this difference has been edited, i.e., if it
is neither the A nor the B variant.
A prefix argument forces the variant to be selected
even if the difference has been edited.

(fn &optional FORCE)
(defalias 'emerge-select-B #[256 "\300\301\302$\207" [emerge-select-B-edit #[257 "\205\301 \207" [emerge-auto-advance emerge-next-difference] 2 "\n\n(fn DIFF-VECTOR)"] emerge-select-version] 8 (#$ . 52908) "P"])
#@20 

(fn DIFF-VECTOR)
(defalias 'emerge-select-B-edit #[257 "rq\210\211\303HTb\210`\304HS|\210\212\305	\306HT\307HS#\210)\211\310\311I\210\312 \210\n\205-\313 )\207" [emerge-merge-buffer emerge-B-buffer emerge-auto-advance 4 5 insert-buffer-substring 2 3 6 B emerge-refresh-mode-line emerge-next-difference] 6 (#$ . 53392)])
#@227 Make the A variant the default from here down.
This selects the A variant for all differences from here down in the buffer
which are still defaulted, i.e., which the user has not selected and for
which there is no preference.
(defalias 'emerge-default-A #[0 "\304	\211\305]\211\nW\2039H\211\306H\307=\203$\310\304\"\210\311 \210\211\306\312I\210\210\211T\262\211\313\246\305U\203\314\315\"\210\202\310!\266)\314\316!\207" [inhibit-read-only emerge-current-difference emerge-number-of-differences emerge-difference-list t 0 6 default-B emerge-unselect-and-select-difference emerge-select-A default-A 10 message "Setting default to A...%d" "Default choice is now A"] 6 (#$ . 53726) nil])
#@227 Make the B variant the default from here down.
This selects the B variant for all differences from here down in the buffer
which are still defaulted, i.e., which the user has not selected and for
which there is no preference.
(defalias 'emerge-default-B #[0 "\304	\211\305]\211\nW\2039H\211\306H\307=\203$\310\304\"\210\311 \210\211\306\312I\210\210\211T\262\211\313\246\305U\203\314\315\"\210\202\310!\266)\314\316!\207" [inhibit-read-only emerge-current-difference emerge-number-of-differences emerge-difference-list t 0 6 default-A emerge-unselect-and-select-difference emerge-select-B default-B 10 message "Setting default to B...%d" "Default choice is now B"] 6 (#$ . 54433) nil])
#@170 Set fast mode, for Emerge.
In this mode ordinary Emacs commands are disabled, and Emerge commands
need not be prefixed with \<emerge-fast-keymap>\[emerge-basic-keymap].
(defalias 'emerge-fast-mode #[0 "\305\306	!\210\305\211\307\310\311!\210\312 \207" [buffer-read-only emerge-fast-keymap emerge-mode emerge-fast-mode emerge-edit-mode t use-local-map nil message "Fast mode set" force-mode-line-update] 3 (#$ . 55140) nil])
#@167 Set edit mode, for Emerge.
In this mode ordinary Emacs commands are available, and Emerge commands
must be prefixed with \<emerge-fast-keymap>\[emerge-basic-keymap].
(defalias 'emerge-edit-mode #[0 "\305\306	!\210\307\305\307\310\311!\210\312 \207" [buffer-read-only emerge-edit-keymap emerge-mode emerge-fast-mode emerge-edit-mode nil use-local-map t message "Edit mode set" force-mode-line-update] 2 (#$ . 55575) nil])
#@262 Toggle Auto-Advance mode, for Emerge.
This mode causes `emerge-select-A' and `emerge-select-B' to automatically
advance to the next difference.
With a positive argument, turn on Auto-Advance mode.
With a negative argument, turn off Auto-Advance mode.

(fn ARG)
(defalias 'emerge-auto-advance #[257 "\211\204	?\202\301!\302V\303\203\304\202\305!\210\306 \207" [emerge-auto-advance prefix-numeric-value 0 message "Auto-advance set" "Auto-advance cleared" force-mode-line-update] 3 (#$ . 56007) "P"])
#@303 Toggle Skip-Prefers mode, for Emerge.
This mode causes `emerge-next-difference' and `emerge-previous-difference'
to automatically skip over differences for which there is a preference.
With a positive argument, turn on Skip-Prefers mode.
With a negative argument, turn off Skip-Prefers mode.

(fn ARG)
(defalias 'emerge-skip-prefers #[257 "\211\204	?\202\301!\302V\303\203\304\202\305!\210\306 \207" [emerge-skip-prefers prefix-numeric-value 0 message "Skip-prefers set" "Skip-prefers cleared" force-mode-line-update] 3 (#$ . 56523) "P"])
#@56 Put the A variant of this difference in the kill ring.
(defalias 'emerge-copy-as-kill-A #[0 "\304 \210	H\211\305HT\306HS\307rq\210\310\"*\207" [emerge-difference-list emerge-current-difference this-command emerge-A-buffer emerge-validate-difference 0 1 nil copy-region-as-kill] 6 (#$ . 57079) nil])
#@56 Put the B variant of this difference in the kill ring.
(defalias 'emerge-copy-as-kill-B #[0 "\304 \210	H\211\305HT\306HS\307rq\210\310\"*\207" [emerge-difference-list emerge-current-difference this-command emerge-B-buffer emerge-validate-difference 2 3 nil copy-region-as-kill] 6 (#$ . 57390) nil])
#@156 Insert the A variant of this difference at the point.
Leaves point after text, mark before.
With prefix argument, puts point before, mark after.

(fn ARG)
(defalias 'emerge-insert-A #[257 "\304 \210	H\211\305HT\306HS`\307\310#\210\204!\311!\202'\311`!\210\211b)\207" [emerge-difference-list emerge-current-difference inhibit-read-only emerge-A-buffer emerge-validate-difference 0 1 t insert-buffer-substring set-mark] 9 (#$ . 57702) "P"])
#@156 Insert the B variant of this difference at the point.
Leaves point after text, mark before.
With prefix argument, puts point before, mark after.

(fn ARG)
(defalias 'emerge-insert-B #[257 "\304 \210	H\211\305HT\306HS`\307\310#\210\204!\311!\202'\311`!\210\211b)\207" [emerge-difference-list emerge-current-difference inhibit-read-only emerge-B-buffer emerge-validate-difference 2 3 t insert-buffer-substring set-mark] 9 (#$ . 58158) "P"])
#@127 Leaves the point before this difference and the mark after it.
With prefix argument, puts mark before, point after.

(fn ARG)
(defalias 'emerge-mark-difference #[257 "\302 \210	H\211\303HT\304HS\204b\210\305!\202!\211b\210\305!\207" [emerge-difference-list emerge-current-difference emerge-validate-difference 4 5 set-mark] 6 (#$ . 58614) "P"])
#@111 Show the names of the buffers or files being operated on by Emerge.
Use C-u l to reset the windows afterward.
(defalias 'emerge-file-names #[0 "\306 \210\307	r\310\311!q\210p\312 \210\313\211\314\211\314\315 \210\316\317!\210+\211rq\210\203<\320\321!\210\320!\210\202E\320\322!\210\320\323 !\210\320\324!\210)rq\210\203^\320\325!\210\320!\210\202g\320\326!\210\320\323 !\210\320\324!\210)\203\223rq\210\203\205\320\327!\210\320!\210\202\216\320\330!\210\320\323 !\210\320\324!\210)\320 !\210rq\210\331 )\332!\210)\266\202)\207" [temp-buffer-show-function default-directory buffer-read-only buffer-file-name buffer-undo-list inhibit-modification-hooks delete-other-windows #[257 "\300 \210\301!\210\302\303!\207" [split-window-below switch-to-buffer other-window 1] 3 "\n\n(fn BUF)"] get-buffer-create "*Help*" kill-all-local-variables nil t erase-buffer run-hooks temp-buffer-setup-hook princ "File A is: " "Buffer A is: " buffer-name "\n" "File B is: " "Buffer B is: " "Ancestor file is: " "Ancestor buffer is: " help-mode internal-temp-output-buffer-show inhibit-read-only standard-output emerge-A-buffer emerge-B-buffer emerge-ancestor-buffer emerge-output-description] 6 (#$ . 58975) nil])
#@117 Join the selected difference with the following one.
With a prefix argument, join with the preceding one.

(fn ARG)
(defalias 'emerge-join-differences #[257 "\203	\211S\262\211\303W\204\211	SY\203\304\305!\210\306!\210	S\303\307	\310\"	W\203\241\211\211W\203:\nH\202\230V\203G\nTH\202\230\nH\nTH\311\303H\312H\313H\314H\315H\316H\317H\317H=\203u\202\222\320=\204\201\321=\203\221\211\320=\204\215\211\321=\203\221\320\202\222\322\266\202&\266\202I\210T\262\202&\210\211\323 \210\324!\210\325 \207" [emerge-current-difference emerge-number-of-differences emerge-difference-list 0 error "Incorrect differences to join" emerge-unselect-difference make-vector nil vector 1 2 3 4 5 6 B prefer-B A emerge-refresh-mode-line emerge-select-difference emerge-recenter] 19 (#$ . 60213) "P"])
#@73 Split the current difference where the points are in the three windows.
(defalias 'emerge-split-difference #[0 "\305 \210r	q\210\306 )r\nq\210\306 )\306 H\307HW\204'\310HV\203+\311\312!\210\313HW\204;\314HV\203?\311\315!\210\316HW\204O\317HV\203S\311\320!\210\321!\210\fT\307\322\f\323\"\fW\203\315\211\211	W\203tH\202\304	TV\203\203SH\202\304	U\203\245\324\307H	\313H\n	\316H\325H&\202\304\324\326	!\310H\326\n!\314H\326!\n\317H\325H&I\210T\262\202_\210\327 \210\330!\210\331 \266\204\207" [emerge-current-difference emerge-A-buffer emerge-B-buffer emerge-difference-list emerge-number-of-differences emerge-validate-difference point-marker 0 1 error "Point outside of difference in A buffer" 2 3 "Point outside of difference in B buffer" 4 5 "Point outside of difference in merge buffer" emerge-unselect-difference make-vector nil vector 6 copy-marker emerge-refresh-mode-line emerge-select-difference emerge-recenter] 18 (#$ . 61055) nil])
#@240 Trim lines off top and bottom of difference that are the same.
If lines are the same in both the A and the B versions, strip them off.
(This can happen when the A and B versions have common lines that the
ancestor version does not share.)
(defalias 'emerge-trim-difference #[0 "\304 \210\305!\210	H\306\307H!\306\310H!\306\311H!\306\312H!\306\313H!\306\314H!\315\211\211\211\211\316\262\307V\203\252\317\262\203\242\n\fZ^\nZ^Z^\262r\nq\210\n\f\\{)\262rq\210\n\\{)\262\\{\262\307V\205\207\232\205\207\232\262\203:\n\\\262\\\262	\\\262\202:\311\245\262\2021\316\262\307V\203$\317\262\203\n\fZ^\nZ^Z^\262r\nq\210	Z\n{)\262rq\210Z{)\262Z{\262\307V\205\232\205\232\262\203\266	Z\262\nZ\262Z\262\202\266\311\245\262\202\255r\nq\210\nb\210\320 \210\307\321 I\210	b\210\320\311!\210\310\321 I\210)rq\210b\210\320 \210\311\321 I\210b\210\320\311!\210\312\321 I\210)b\210\320 \210\313\321 I\210b\210\320\311!\210\314\321 I\210\322!\210\323 \207" [emerge-current-difference emerge-difference-list emerge-A-buffer emerge-B-buffer emerge-validate-difference emerge-unselect-difference marker-position 0 1 2 3 4 5 nil 1000 t beginning-of-line point-marker emerge-select-difference emerge-recenter] 15 (#$ . 62076) nil])
#@261 Find the difference containing the current position of the point.
If there is no containing difference and the prefix argument is positive,
it finds the nearest following difference.  A negative prefix argument finds
the nearest previous difference.

(fn ARG)
(defalias 'emerge-find-difference #[257 "p=\203\n\302!\207p	=\203\303!\207\304!\207" [emerge-A-buffer emerge-B-buffer emerge-find-difference-A emerge-find-difference-B emerge-find-difference-merge] 3 (#$ . 63437) "P"])
#@254 Find the difference containing point, in the merge buffer.
If there is no containing difference and the prefix argument is positive,
it finds the nearest following difference.  A negative prefix argument finds
the nearest previous difference.

(fn ARG)
(defalias 'emerge-find-difference-merge #[257 "\300`\301\302$\207" [emerge-find-difference1 4 5] 6 (#$ . 63930) "P"])
#@301 Find the difference containing point, in the A buffer.
This command must be executed in the merge buffer.
If there is no containing difference and the prefix argument is positive,
it finds the nearest following difference.  A negative prefix argument finds
the nearest previous difference.

(fn ARG)
(defalias 'emerge-find-difference-A #[257 "\301rq\210`)\302\303$\207" [emerge-A-buffer emerge-find-difference1 0 1] 6 (#$ . 64309) "P"])
#@301 Find the difference containing point, in the B buffer.
This command must be executed in the merge buffer.
If there is no containing difference and the prefix argument is positive,
it finds the nearest following difference.  A negative prefix argument finds
the nearest previous difference.

(fn ARG)
(defalias 'emerge-find-difference-B #[257 "\301rq\210`)\302\303$\207" [emerge-B-buffer emerge-find-difference1 2 3] 6 (#$ . 64755) "P"])
#@31 

(fn ARG LOCATION BEGIN END)
(defalias 'emerge-find-difference1 #[1028 "\3022(\303\211W\203%	H\304H!X\203\305\302\"\210\210\211T\262\202\2100\211W\2057\304	HH!X\306!\307\203D\202s\204O\310\311!\202s\303V\203eW\203_\202s\310\312!\202s\303V\203pS\202s\310\313!!\207" [emerge-number-of-differences emerge-difference-list search 0 marker-position throw prefix-numeric-value emerge-unselect-and-select-difference error "No difference contains point" "No difference contains or follows point" "No difference contains or precedes point"] 10 (#$ . 65200)])
#@121 Display the current line numbers.
This function displays the line numbers of the points in the A, B, and
merge buffers.
(defalias 'emerge-line-numbers #[0 "\306Y\205		W\211\205\nH\307\310\311#r\fq\210\307\306\312#)r
q\210\307\313\314#)\315\316$)\207" [emerge-current-difference emerge-number-of-differences emerge-difference-list emerge-line-diff emerge-A-buffer emerge-B-buffer 0 emerge-line-number-in-buf 4 5 1 2 3 message "At lines: merge = %d, A = %d, B = %d"] 9 (#$ . 65798) nil])
#@43 

(fn VALID-DIFF BEGIN-MARKER END-MARKER)
(defalias 'emerge-line-number-in-buf #[771 "\303\304\305 \"T\203$`HV\203\211	Z\262`HV\203$\211\nZ\262\211\207" [emerge-line-diff emerge-before-flag-lines emerge-after-flag-lines count-lines 1 line-beginning-position] 7 (#$ . 66303)])
#@313 Set `emerge-combine-versions-template' to STRING.
This value controls how `emerge-combine-versions' combines the two versions.
With prefix argument, `emerge-combine-versions-template' is made local to this
merge buffer.  Localization is permanent for any particular merge buffer.

(fn STRING &optional LOCALIZE)
(defalias 'emerge-set-combine-template #[513 "\211\203\301\300!\210\302\300\303 \236\203\304\202\305!\207" [emerge-combine-versions-template make-local-variable message buffer-local-variables "emerge-set-combine-versions-template set locally" "emerge-set-combine-versions-template set"] 5 (#$ . 66597) "s\nP"])
#@317 Copy region into `emerge-combine-versions-template'.
This controls how `emerge-combine-versions' will combine the two versions.
With prefix argument, `emerge-combine-versions-template' is made local to this
merge buffer.  Localization is permanent for any particular merge buffer.

(fn START END &optional LOCALIZE)
(defalias 'emerge-set-combine-versions-template #[770 "\211\203\301\300!\210{\302\300\303 \236\203\304\202\305!\207" [emerge-combine-versions-template make-local-variable message buffer-local-variables "emerge-set-combine-versions-template set locally." "emerge-set-combine-versions-template set."] 6 (#$ . 67235) "r\nP"])
#@288 Combine versions using the template in `emerge-combine-versions-template'.
Refuses to function if this difference has been edited, i.e., if it is
neither the A nor the B variant.
An argument forces the variant to be selected even if the difference has
been edited.

(fn &optional FORCE)
(defalias 'emerge-combine-versions #[256 "\301\"\207" [emerge-combine-versions-template emerge-combine-versions-internal] 4 (#$ . 67890) "P"])
#@456 Combine the two versions using the template in register REG.
See documentation of the variable `emerge-combine-versions-template'
for how the template is interpreted.
Refuses to function if this difference has been edited, i.e., if it is
neither the A nor the B variant.
An argument forces the variant to be selected even if the difference has
been edited.

Interactively, reads the register using `register-read-with-preview'.

(fn CHAR &optional FORCE)
(defalias 'emerge-combine-versions-register #[513 "\300!\211;\204\f\301\302!\210\303\"\207" [get-register error "Register does not contain text" emerge-combine-versions-internal] 6 (#$ . 68329) (byte-code "\301\302!D\207" [current-prefix-arg register-read-with-preview "Register containing template: "] 2)])
#@31 

(fn COMBINE-TEMPLATE FORCE)
(defalias 'emerge-combine-versions-internal #[514 "\300\301\302\303\304!\305\"\306\307%\310\211\211$\207" [make-byte-code 257 "\301\300\"\207" vconcat vector [emerge-combine-versions-edit] 4 "\n\n(fn DIFF-VECTOR)" emerge-select-version] 8 (#$ . 69103)])
#@37 

(fn DIFF-VECTOR COMBINE-TEMPLATE)
(defalias 'emerge-combine-versions-edit #[514 "rq\210\304HTb\210`\305HS|\210\212\306\211GW\203vH\211\307U\204)\211c\210\202nT\262\31018H0\202:\210\307\211\311\267\202h\312	\306HT\313HS#\210\202m\312\n\314HT\315HS#\210\202m\307c\210\202m\211\211c\266\210\210\211T\262\202\210)\316\317I\210\320 \210\205\206\321 )\207" [emerge-merge-buffer emerge-A-buffer emerge-B-buffer emerge-auto-advance 4 5 0 37 (error) #s(hash-table size 3 test eql rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (97 64 98 81 37 98)) insert-buffer-substring 1 2 3 6 combined emerge-refresh-mode-line emerge-next-difference] 10 (#$ . 69398)])
#@158 Set the major mode in a merge buffer.
Overrides any change that the mode might make to the mode line or local
keymap.  Leaves merge in fast mode.

(fn MODE)
(defalias 'emerge-set-merge-mode #[257 "\211 \210\301 \210\203
\300 \207\302 \207" [emerge-fast-mode emerge-refresh-mode-line emerge-edit-mode] 2 (#$ . 70097) (byte-code "\301\302\303\304\305\306%!C\207" [obarray intern completing-read "New major mode for merge buffer: " commandp t nil] 7)])
(defalias 'emerge-one-line-window #[0 "\301\302\303 \304Z!)\207" [window-min-height 1 shrink-window window-height 2] 3 nil nil])
#@10 

(fn N)
(defalias 'emerge-select-difference #[257 "	\306\f\307\310$\210\306
\311\312$\210\306\313\314\315$\210*\316\317!\207" [emerge-difference-list emerge-number-of-differences emerge-globalized-number-of-differences emerge-globalized-difference-list emerge-A-buffer emerge-B-buffer emerge-place-flags-in-buffer 0 1 2 3 nil 4 5 run-hooks emerge-select-hook] 6 (#$ . 70686)])
#@51 

(fn BUFFER DIFFERENCE BEFORE-INDEX AFTER-INDEX)
(defalias 'emerge-place-flags-in-buffer #[1028 "\203rq\210\300#)\207\300#\207" [emerge-place-flags-in-buffer1] 8 (#$ . 71076)])
#@44 

(fn DIFFERENCE BEFORE-INDEX AFTER-INDEX)
(defalias 'emerge-place-flags-in-buffer1 #[771 "\305	HH\306b\210\307\n!\210`\262\211S\306\223\210S\306\211\211\310Y\203Q	H\262\211H\262U\203Q\211S\306\223\210\211H\262U\203JS\262S\262\202\266	HH\311!\211b\210c\210\211T\306\223\210T\306\211\211\fW\205\240	H\262\211H\262U\205\240\211T\306\223\210\211H\262U\203\231T\262T\262\202l\266\204\266\202)\207" [inhibit-read-only emerge-globalized-difference-list emerge-before-flag emerge-after-flag emerge-globalized-number-of-differences t nil insert-before-markers 0 marker-position] 12 (#$ . 71270)])
#@10 

(fn N)
(defalias 'emerge-unselect-difference #[257 "H\304	\305H\306H#\210\304\n\307H\310H#\210\304\311H\312H#\266\313\314!\207" [emerge-difference-list emerge-A-buffer emerge-B-buffer emerge-merge-buffer emerge-remove-flags-in-buffer 0 1 2 3 4 5 run-hooks emerge-unselect-hook] 7 (#$ . 71924)])
#@28 

(fn BUFFER BEFORE AFTER)
(defalias 'emerge-remove-flags-in-buffer #[771 "rq\210\305	SZb\210\306\n!\203\307	!\210\202 \310 \210\311\312!\210\211Sb\210\306!\2030\307\f!\2026\310 \210\311\312!*\207" [inhibit-read-only emerge-before-flag-length emerge-before-flag-match emerge-after-flag-match emerge-after-flag-length t looking-at delete-char ding message "Trouble removing flag"] 5 (#$ . 72237)])
#@37 

(fn N &optional SUPPRESS-DISPLAY)
(defalias 'emerge-unselect-and-select-difference #[513 "\303Y\203	W\203\304!\210\303Y\203A	W\203A\305!\210\nH\211\306H\211\307=\2034\306\310I\210\202?\211\311=\203?\306\312I\210\266\211?\205M\313 \210\314 \207" [emerge-current-difference emerge-number-of-differences emerge-difference-list 0 emerge-unselect-difference emerge-select-difference 6 default-A A default-B B emerge-recenter emerge-refresh-mode-line] 7 (#$ . 72649)])
#@436 Perform tests to see whether user should be allowed to select a version
of this difference:
  a valid difference has been selected; and
  the difference text in the merge buffer is:
    the A version (execute a-version), or
    the B version (execute b-version), or
    empty (execute neither-version), or
    argument FORCE is true (execute neither-version)
Otherwise, signal an error.

(fn FORCE A-VERSION B-VERSION NEITHER-VERSION)
(defalias 'emerge-select-version #[1028 "\306 \210\307	\nH\211\310HT\311HS\312HT\313HS\314HT\315HS\316\f&\2038	!\202d\316
\f&\203N!\202d\n\204YU\203a!\202d\317\320!\266\207)\207" [inhibit-read-only emerge-difference-list emerge-current-difference emerge-A-buffer emerge-merge-buffer emerge-B-buffer emerge-validate-difference t 0 1 2 3 4 5 emerge-compare-buffers error "This difference region has been edited"] 18 (#$ . 73143)])
#@70 

(fn PROMPT ALTERNATIVE-DEFAULT-DIR DEFAULT-FILE A-FILE MUST-MATCH)
(defalias 'emerge-read-file-name #[1285 "\203,\203,\203,\301!\230\204,\302\303\304\305!#\211\305!P\205*\306$\207\203E\302\303\304#\205=\205C\306$\207\302\307P\205N\310\205T\306$\207" [emerge-default-last-directories file-name-directory read-file-name format "%s (default %s): " file-name-nondirectory confirm ": " nil] 11 (#$ . 74057)])
(defalias 'emerge-refresh-mode-line #[0 "\304\305T	\306Y\203	W\203\nH\307H\310\236A\202\311$C\312 \207" [emerge-current-difference emerge-number-of-differences emerge-difference-list mode-line-buffer-identification format "Emerge: %%b   diff %d of %d%s" 0 6 ((A . " - A") (B . " - B") (prefer-A . " - A*") (prefer-B . " - B*") (combined . " - comb")) "" force-mode-line-update] 6])
#@54 

(fn BUFFER-X X-BEGIN X-END BUFFER-Y Y-BEGIN Y-END)
(defalias 'emerge-compare-buffers #[1542 "ZZU\205N\3002NW\203LZ\301^rq\210\211\\{)rq\210\211\\{)\230\204<\302\300\303\"\210\202G\\\262\\\262\266\202\3040\207" [exit 1000 throw nil t] 12 (#$ . 74898)])
#@22 

(fn PREFIX SUFFIX)
(defalias 'emerge-unique-buffer-name #[514 "\300P!\204\fP\207\301\300\302\303$!\203 \211T\262\202
\302\303$\207" [get-buffer 2 format "%s<%d>%s"] 9 (#$ . 75190)])
(defalias 'emerge-validate-difference #[0 "\302Y\205		W?\205\303\304!\207" [emerge-current-difference emerge-number-of-differences 0 error "No difference selected"] 2])
#@13 

(fn VARS)
(defalias 'emerge-save-variables #[257 "\300\301\"\207" [mapcar #[257 "\2119\203\211J\207\211@ \207" [] 2 "\n\n(fn V)"]] 4 (#$ . 75569)])
#@20 

(fn VARS VALUES)
(defalias 'emerge-restore-variables #[514 "\205'@@9\203L\210\202A@!\210\266A\262\211A\262\202\207" [] 6 (#$ . 75728)])
#@80 Make a private temporary file based on `emerge-temp-file-prefix'.

(fn PREFIX)
(defalias 'emerge-make-temp-file #[257 "\301P!\207" [emerge-temp-file-prefix make-temp-file] 4 (#$ . 75891)])
#@168 Ask the user whether to write out an incomplete merge.
If answer is yes, call `write-file' to do so.  See `emerge-query-and-call'
for details of the querying process.
(defalias 'emerge-query-write-file #[0 "\300\301!\207" [emerge-query-and-call write-file] 2 (#$ . 76089) nil])
#@164 Ask the user whether to save an incomplete merge.
If answer is yes, call `save-buffer' to do so.  See `emerge-query-and-call'
for details of the querying process.
(defalias 'emerge-query-save-buffer #[0 "\300\301!\207" [emerge-query-and-call save-buffer] 2 (#$ . 76374) nil])
#@196 Ask the user whether to save or write out the incomplete merge.
If answer is yes, call COMMAND interactively.  During the call, the flags
around the current difference are removed.

(fn COMMAND)
(defalias 'emerge-query-and-call #[257 "\302\303!\203-\304Y\203	W\203\305!\210\306!\210\304Y\205,	W\2050\307!\210\310 \207\311\312!\207" [emerge-current-difference emerge-number-of-differences yes-or-no-p "Do you really write to write out this unfinished merge? " 0 emerge-unselect-difference call-interactively emerge-select-difference emerge-recenter message "Not written"] 3 (#$ . 76657)])
(defalias 'emerge-verify-file-buffer #[0 "\301p!\203\302 \2058\303\304\305\"!\203\306 \207\307\310\"\207\302 \203&\307\310\"\207\303\304\311\"!\2034\312\313\211\"\207\307\310\"\207" [buffer-file-name verify-visited-file-modtime buffer-modified-p yes-or-no-p format "Save file %s? " save-buffer error "Buffer out of sync for file %s" "Revert file %s? " revert-buffer t] 4])
#@15 

(fn BUFFER)
(defalias 'emerge-copy-modes #[257 "r\211q\210) \207" [major-mode] 2 (#$ . 77650)])
#@166 Like `define-key', but forcibly creates prefix characters as needed.
If some prefix of KEY has a non-prefix definition, it is redefined.

(fn KEYMAP KEY DEFINITION)
(defalias 'emerge-force-define-key #[771 "\300\"\211\250\203\301\302\303#\304#\210\210\301#\207" [lookup-key define-key substring 0 nil] 10 (#$ . 77756)])
#@30 

(fn KEYMAP KEY DEFINITION)
(defalias 'emerge-define-key-if-possible #[771 "\300\"\211\250\203\300\301\302#\"?\205'\303#\202'\211?\205'\303#\207" [lookup-key substring 0 define-key] 10 (#$ . 78092)])
#@285 Displays the name of the file loaded into the current buffer.
If the name won't fit on one line, the minibuffer is expanded to hold it,
and the command waits for a keystroke from the user.  If the keystroke is
SPC, it is ignored; if it is anything else, it is processed as a command.
(defalias 'emerge-show-file-name #[0 "\302 \211\204	\303\262\304 \305\306\307\310\311!\312\"\313$\216\314\315 !\210\316\216\317 \210c\210\320 \2045\321 \2045\322\323!\210\202$\306\324 \211\325=?\205E\211	B\211)\262*\262\207" [echo-keystrokes unread-command-events buffer-file-name "Buffer has no file name." current-window-configuration make-byte-code 0 "\301\300!\207" vconcat vector [set-window-configuration] 2 select-window minibuffer-window #[0 "\300 \207" [erase-buffer] 1] erase-buffer pos-visible-in-window-p window-full-height-p enlarge-window 1 read-event 32] 8 (#$ . 78316) nil])
#@229 Return file name to use for auto-saves of current buffer.
Does not consider `auto-save-visited-file-name';
that is checked before calling this function.
You can redefine this for customization.
See also `auto-save-file-name-p'.
(defalias 'emerge-make-auto-save-file-name #[0 "\203(\301!\302\303!\302R\304!\203\211\202'\305\306!\307\303!\310\311\301!!\302\260\207\312\305\306!\313\314\315 !\316\317\320!\302\260!\207" [buffer-file-name file-name-directory "#" file-name-nondirectory file-writable-p getenv "HOME" "/#&" "&" emerge-hash-string-into-string expand-file-name "/#%" emerge-unslashify-name buffer-name "%" make-temp-name ""] 8 (#$ . 79210)])
#@10 

(fn S)
(defalias 'emerge-hash-string-into-string #[257 "\300\301\211\211\211\211%\301\211GW\203)\302\246\302\246H\303_H\\\304\246I\210\211T\262\202\305\306\307#\207" [vector 0 5 35 65536 mapconcat #[257 "\211\300\246\301\\\262\211\302Y\203\211T\262\303!\207" [93 33 47 char-to-string] 3 "\n\n(fn B)"] ""] 8 (#$ . 79879)])
#@10 

(fn S)
(defalias 'emerge-unslashify-name #[257 "\300\301\302#\2030\303\300\211\224#\303\300\224\300\225#\304\230\203\305\202 \306\303\300\225\"Q\262\300\225T\262\202\210\207" [0 string-match "[/\\]" substring "/" "\\!" "\\\\"] 7 (#$ . 80226)])
(byte-code "\300\301\302\303\304DD\305\306\307\310\311&\210\312\301\313\314#\210\315\311!\207" [custom-declare-variable emerge-metachars funcall function #[0 "\300\207" [nil] 1] "No longer used.  Emerge now uses `shell-quote-argument'." :type (choice (const nil) regexp) :group emerge make-obsolete-variable nil "26.1" provide] 8)

Zerion Mini Shell 1.0