%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/ediff-diff.elc

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

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

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

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


(byte-code "\300\301!\210\300\302!\210\303\304\305\306\307\310\311\312&\210\313\314\315\316\317DD\320\321\322%\210\313\323\315\316\324DD\325\321\322%\210\326\327M\210\313\330\315\316\331DD\332\321\322%\210\313\333\315\316\334DD\335\321\322%\210\313\336\315\316\337DD\340\321\341%\207" [require ediff-init ediff-util custom-declare-group ediff-diff nil "Diff related utilities." :prefix "ediff-" :group ediff custom-declare-variable ediff-diff-program funcall function #[0 "\300\207" [#1="diff"] 1 #1#] "Program to use for generating the differential of the two files." :type string ediff-diff3-program #[0 "\300\207" [#2="diff3"] 1 #2#] "Program to be used for three-way comparison.\nMust produce output compatible with Unix's diff3 program." ediff-set-actual-diff-options #[0 "\300\207" [nil] 1] ediff-shell #[0 "\302>\203	\207\303\207" [system-type shell-file-name (ms-dos windows-nt) "sh"] 2] "The shell used to run diff and patch.\nIf user's .profile or .cshrc files are set up correctly, any shell\nwill do.  However, some people set $prompt or other things\nincorrectly, which leads to undesirable output messages.  These may\ncause Ediff to fail.  In such a case, set `ediff-shell' to a shell that\nyou are not using or, better, fix your shell's startup file." ediff-cmp-program #[0 "\300\207" [#3="cmp"] 1 #3#] "Utility to use to determine if two files are identical.\nIt must return code 0, if its arguments are identical files." ediff-cmp-options #[0 "\300\207" [nil] 1] "Options to pass to `ediff-cmp-program'.\nIf GNU diff is used as `ediff-cmp-program', then the most useful options\nare `-I REGEXP', to ignore changes whose lines match the REGEXP." (repeat string)] 8)
#@21 

(fn SYMBOL VALUE)
(defalias 'ediff-set-diff-options #[514 "L\210\300 \207" [ediff-set-actual-diff-options] 4 (#$ . 2095)])
(byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable ediff-diff-options funcall function #[0 "\301>\203\302\207\303\207" [system-type (ms-dos windows-nt) "--binary" ""] 2] "Options to pass to `ediff-diff-program'.\nIf Unix diff is used as `ediff-diff-program',\nthen a useful option is `-w', to ignore space.\nOptions `-c', `-u', and `-i' are not allowed. Case sensitivity can be\ntoggled interactively using \\[ediff-toggle-ignore-case].\n\nDo not remove the default options. If you need to change this variable, add new\noptions after the default ones.\n\nThis variable is not for customizing the look of the differences produced by\nthe command \\[ediff-show-diff-output]. Use the variable\n`ediff-custom-diff-options' for that." :set ediff-set-diff-options :type string] 8)
#@180 If t, skip over difference regions that differ only in letter case.
This variable can be set either in .emacs or toggled interactively.
Use `setq-default' if setting it in .emacs
(defvar ediff-ignore-case nil (#$ . 3044))
(byte-code "\300\301!\210\302\301\303\304#\210\305\306\307\310\311DD\312\313\314%\210\305\315\307\310\316DD\317\313\314%\207" [make-variable-buffer-local ediff-ignore-case put permanent-local t custom-declare-variable ediff-ignore-case-option funcall function #[0 "\300\207" [#1="-i"] 1 #1#] "Option that causes the diff program to ignore case of letters." :type string ediff-ignore-case-option3 #[0 "\300\207" [#2=""] 1 #2#] "Option that causes the diff3 program to ignore case of letters.\nGNU diff3 doesn't have such an option."] 6)
#@2 
(defvar ediff-actual-diff-options ediff-diff-options (#$ . 3807))
(byte-code "\300\301!\210\302\301\303\304#\210\305\306\307\310\311DD\312\313\314%\210\305\315\307\310\316DD\317\313\314%\207" [make-variable-buffer-local ediff-actual-diff-options put permanent-local t custom-declare-variable ediff-custom-diff-program funcall function #[0 "\207" [ediff-diff-program] 1] "Program to use for generating custom diff output for saving it in a file.\nThis output is not used by Ediff internally." :type string ediff-custom-diff-options #[0 "\300\207" [#1="-c"] 1 #1#] "Options to pass to `ediff-custom-diff-program'."] 6)
#@69 Pattern to match lines produced by diff3 that describe differences.
(defvar ediff-match-diff3-line "^====\\(.?\\)
?$" (#$ . 4432))
(byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable ediff-diff3-options funcall function #[0 "\300\207" [#1=""] 1 #1#] "Options to pass to `ediff-diff3-program'." :set ediff-set-diff-options :type string] 8)
#@2 
(defvar ediff-actual-diff3-options ediff-diff3-options (#$ . 4811))
(byte-code "\300\301!\210\302\301\303\304#\210\305\306\307\310\311DD\312\313\314%\207" [make-variable-buffer-local ediff-actual-diff3-options put permanent-local t custom-declare-variable ediff-diff3-ok-lines-regexp funcall function #[0 "\300\207" [#1="^\\([1-3]:\\|====\\|  \\|.*Warning *:\\|.*No newline\\|.*missing newline\\|^
$\\)"] 1 #1#] "Regexp that matches normal output lines from `ediff-diff3-program'.\nLines that do not match are assumed to be error messages." :type regexp] 6)
#@2 
(defvar ediff-diff-status "" (#$ . 5375))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local ediff-diff-status put permanent-local t] 4)
#@324 If `on', Ediff auto-highlights fine diffs for the current diff region.
If `off', auto-highlighting is not used. If `nix', no fine diffs are shown
at all, unless the user force-refines the region by hitting `*'.

This variable can be set either in .emacs or toggled interactively.
Use `setq-default' if setting it in .emacs
(defvar ediff-auto-refine (byte-code "\300 \203\301\207\302\207" [ediff-has-face-support-p on nix] 1) (#$ . 5545))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local ediff-auto-refine put permanent-local t] 4)
#@200 If t, skip over difference regions that differ only in the white space and line breaks.
This variable can be set either in .emacs or toggled interactively.
Use `setq-default' if setting it in .emacs
(defvar ediff-ignore-similar-regions nil (#$ . 6112))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local ediff-ignore-similar-regions put permanent-local t] 4)
#@63 Auto-refine only the regions of this size (in bytes) or less.
(defvar ediff-auto-refine-limit 14000 (#$ . 6502))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local ediff-auto-refine-limit put permanent-local t] 4)
#@260 Regexp that matches normal output lines from `ediff-diff-program'.
This is mostly lifted from Emerge, except that Ediff also considers
warnings and `Missing newline'-type messages to be normal output.
Lines that do not match are assumed to be error messages.
(defvar ediff-diff-ok-lines-regexp "^\\([0-9,]+[acd][0-9,]+
?$\\|[<>] \\|---\\|.*Warning *:\\|.*No +newline\\|.*missing +newline\\|^
?$\\)" (#$ . 6748))
#@68 Pattern to match lines produced by diff that describe differences.
(defvar ediff-match-diff-line (byte-code "\300\301\302\303\260\207" ["\\([0-9]+\\)\\(\\|,\\([0-9]+\\)\\)" "^" "\\([acd]\\)" "
?$"] 6) (#$ . 7166))
#@402 value is a function symbol depending on the kind of job is to be done.
For 2-way jobs and for ediff-merge, it should be `ediff-setup-diff-regions'.
For jobs requiring diff3, it should be `ediff-setup-diff-regions3'.

The function should take three mandatory arguments, file-A, file-B, and
file-C. It may ignore file C for diff2 jobs. It should also take
one optional arguments, diff-number to refine.
(defvar ediff-setup-diff-regions-function nil (#$ . 7390))
(byte-code "\300\301!\210\302\301\303\304#\207" [make-variable-buffer-local ediff-setup-diff-regions-function put permanent-local t] 4)
#@29 

(fn FILE-A FILE-B FILE-C)
(defalias 'ediff-setup-diff-regions #[771 "\305\306\"\203\307\310!\210	\211\205\311!\205\312\311!!\262\204'\313\314\315\316\"!\317	#\210\320\n	\"\210\321\322	\f#!\207" [ediff-diff-options ediff-diff-buffer ediff-diff-ok-lines-regexp ediff-word-mode ediff-narrow-bounds string-match "^-[ciu]\\| -[ciu]\\|\\(^\\| \\)-[^- ]+[ciu]" error "Options `-c', `-u', and `-i' are not allowed in `ediff-diff-options'" get-buffer buffer-name get-buffer-create ediff-unique-buffer-name "*ediff-diff" "*" ediff-make-diff2-buffer ediff-prepare-error-list ediff-convert-diffs-to-overlays ediff-extract-diffs] 8 (#$ . 7992)])
#@32 

(fn DIFF-BUFFER FILE1 FILE2)
(defalias 'ediff-make-diff2-buffer #[771 "\304\305\"\262\304\305\"\262\247\204#\306\307\310!\"\210\311\312!\210\313\202|\211\247\2047\306\307\310!\"\210\311\312!\210\313\202|\306\314\315!\315!#\210\316\317	&\210\306\320!\210\211\205d\321!\205d\322\321!!\262\203srq\210\323 )\202|\n\324=\206|\325!\207" [ediff-diff-program ediff-actual-diff-options this-command ediff-KILLED-VITAL-BUFFER ediff-file-attributes 7 message "Can't find file: %s" ediff-abbreviate-file-name sit-for 2 1 "Computing differences between %s and %s ..." file-name-nondirectory ediff-exec-process synchronize "" get-buffer buffer-name buffer-size ediff-quit error] 12 (#$ . 8648)])
#@37 

(fn FILE-A FILE-B FILE-C REG-NUM)
(defalias 'ediff-setup-fine-diff-regions #[1028 "\211\205\306!\205\307\306!!\262\204\310\311\312\313\"!\314\211\211\211\211	\262\203,\n\202-\262\2037\f\2028
\262\203C\202E\262\315TC\203W\316\317#\210\266\320\321
\203i
\202k\f
\203u
\202w\205\210
\203\206
\202\210&\210\322\"\210\323\314\203\235\316\317#\210\266\203\253\324\325\326#\202\257\327\326\"\262\203\334\204\303\330\331A\"\210\202\334\204\321\330\332A\"\210\202\334\204\334\330\333A\"\210\334\"\207" [ediff-fine-diff-buffer ediff-3way-job ediff-diff3-program ediff-diff-program ediff-actual-diff3-options ediff-actual-diff-options get-buffer buffer-name get-buffer-create ediff-unique-buffer-name "*ediff-fine-diff" "*" nil "Refining difference region %d ..." apply message ediff-exec-process synchronize ediff-prepare-error-list "" ediff-extract-diffs3 3way-comparison word-mode ediff-extract-diffs mapc #[257 "\211\300\301I\210\211\302\301I\207" [0 nil 1] 4 "\n\n(fn ELT)"] #[257 "\211\300\301I\210\211\302\301I\207" [2 nil 3] 4 "\n\n(fn ELT)"] #[257 "\211\300\301I\210\211\302\301I\207" [4 nil 5] 4 "\n\n(fn ELT)"] ediff-convert-fine-diffs-to-overlays ediff-diff3-ok-lines-regexp ediff-diff-ok-lines-regexp ediff-verbose-p] 17 (#$ . 9375)])
#@28 

(fn OK-REGEXP DIFF-BUFF)
(defalias 'ediff-prepare-error-list #[514 "\211\205\305!\205\306\305!!\262\204\307\310\311\312\"!\211\205,\305!\205,\306\305!!\262\203orq\210\313\314 \210\211\211\205J\305!\205J\306\305!!\262\203Yr\211q\210\315 )\202b\n\316=\206b\317!c\210eb\210\320!\210)\202y\n\316=\204y\317!\210\211\205\211\305!\205\211\306\305!!\262\203\230rq\210\321 )\202\241\n\316=\206\241\317!\322U?\205\323\f\323 \210\324!\210\211\211\205\301\305!\205\301\306\305!!\262\203\314\325\305!!\210\210\326\327\"\266\202\207" [ediff-error-buffer buffer-undo-list this-command ediff-KILLED-VITAL-BUFFER ediff-control-buffer get-buffer buffer-name get-buffer-create ediff-unique-buffer-name "*ediff-errors" "*" t erase-buffer buffer-string ediff-quit error delete-matching-lines buffer-size 0 ediff-skip-unsuitable-frames switch-to-buffer kill-buffer user-error "Errors in diff output.  Diff output is in %S"] 9 (#$ . 10715)])
#@47 

(fn DIFF-BUFFER WORD-MODE &optional BOUNDS)
(defalias 'ediff-extract-diffs #[770 "	\n\306\307\306\307\306\307\211\211\211
\203\310\202\311B\262\f\203@\f@\312!\205+\313!\262\262\fA@\312!\205<\313!\262\262\211\205Q\314!\205Q\315\314!!\262\203jrq\210\203c\202deb\210)\202t\316=\204t\317\f!\210\n\211\205\205\314!\205\205\315\314!!\262\203\236r\nq\210\211\203\227\211\202\230eb\210)\202\250\316=\204\250\317\f!\210	\211\205\271\314!\205\271\315\314!!\262\203\352	\211\205\317\314!\205\317\315\314!!\262\203\340r	q\210eb\210)\202\352\316=\204\352\317\f!\210\211\205\373\314!\205\373\315\314!!\262\203vrq\210eb\210\320
\307\321#\203r\322\306\224\306\225{!\323\224\323\225\203'\322{!\202(\266\202\324\224\324\225{\322\325\224\325\225{!\326\224\326\225\203F\322{!\202G\266\202\307\211\211\211\211\211\211\211\n\327\230\203iT\262	\fT\262
\f\262\f\202\213\n\330\230\203\201T\262\f	T\262\n	\262	\202\213T\262\fT\262	\331=\203\235	\262\262\202\245\f\262\262\203\211\205\275\314!\205\275\315\314!!\262\203\353\332ZZ
Z
Z	Z	Z\307\211\211\211\211&\202	\332ZZ
Z
Z\307\211\211\211\211\211\211&C\244\262\262\262\262\202m\211\205,\314!\205,\315\314!!\262\203crq\210\206A\206Aeb\210\fZy\210`\262
Zy\210`\262\262\262)\202m\316=\204m\317\f!\210\211\205~\314!\205~\315\314!!\262\203\264rq\210\206\223
\206\223eb\210	Zy\210`\262\nZy\210`\262\262\262)\202\276\316=\204\276\317\f!\210\211\205\317\314!\205\317\315\314!!\262\203\211\205\345\314!\205\345\315\314!!\262\203rq\210\206\365eb\210Zy\210`\262Zy\210`\262\262\211\262)\202\316=\204\317\f!\210\211\205/\314!\205/\315\314!!\262\203W\332				\307\211\331=\203N\333\202O\334\307&\202i\332				\307\211\211\211\211\211\211&C\244\262\266
\202)\202\200\316=\204\200\317\f!\210\207" [ediff-buffer-A ediff-buffer-B ediff-buffer-C this-command ediff-KILLED-VITAL-BUFFER ediff-match-diff-line 1 nil words points overlayp overlay-start get-buffer buffer-name ediff-quit error re-search-forward t string-to-number 3 4 5 7 "a" "d" default-B vector A B ediff-default-variant] 41 (#$ . 11698)])
#@18 

(fn DIFF-LIST)
(defalias 'ediff-convert-diffs-to-overlays #[257 "\304\305\"\210\304\306\"\210\203\304\307\"\210	\203\304\310\"\210\n\203(\311\312\313A\"!\314\315!\207" [ediff-3way-job ediff-merge-with-ancestor-job ediff-merge-job ediff-state-of-merge ediff-set-diff-overlays-in-one-buffer A B C Ancestor vconcat mapcar #[257 "\211\300H\301H\302\205\303\304\"\"\207" [9 10 vector format "%S"] 7 "\n\n(fn ELT)"] message "Processing difference regions ... done"] 5 (#$ . 14039)])
#@27 

(fn BUF-TYPE DIFF-LIST)
(defalias 'ediff-set-diff-overlays-in-one-buffer #[514 "\306\307\267\202\202	\202\n\202\202\310\f@\311\267\2022
@\2023
A@\2023\312
8\2023\310\313!\205<\314!\262\315\267\202V
@\202W
A@\202W\312
8\202W\310\313!\205`\316!\262\310\211\211\211\211\211\211\211A\262G\262\f\211\205\205\317!\205\205\320\317!!\262\203\227r\fq\210	\262)\202\2435\321=\204\243\3226!\210\203.
T\262@\262\323\267\202\307\324\202\310\312\202\310\325\202\310\326H\262\327\267\202\340\330\202\341\331\202\341\332\202\341\333H\262\334H\262=\204\335=\204\211\336>\203\337\337\340\341\342E\"\"@\262\343\344\"\262\202\310\262\n\345=\203\311\f\211\2050\317!\2050\320\317!!\262\203Ar\fq\210b\210)\202M5\321=\204M\3226!\210\211\205^\317!\205^\320\317!!\262\203|rq\210\346T\"\262\346\347#\262)\202\2105\321=\204\210\3226!\210	V\203\223\262V\203\234\262\f\211\205\255\317!\205\255\320\317!!\262\203\274r\fq\210`)\202\3075\321=\206\307\3226!\262\350#\262\351\352#\210\353 \2037\2038\203\354\355!\203\3719\202\373:\356\"A\266\202\266\202\"\210\357\360\"\324U\203\361\362	$\210\363\310\211$C\244\262A\262\202\243;\356\"A\266\202\364	!L\207" [ediff-buffer-A ediff-buffer-B ediff-buffer-C ediff-ancestor-buffer ediff-control-buffer ediff-narrow-bounds -1 #s(hash-table size 4 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (A 7 B 11 C 15 Ancestor 19)) nil #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (A 33 B 38 C 44)) 2 overlayp overlay-start #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (A 69 B 74 C 80)) overlay-end get-buffer buffer-name ediff-quit error #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (A 187 B 191 C 195)) 0 4 6 #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (A 212 B 216 C 220)) 1 3 5 7 8 Ancestor (A B C) delq A B C format "=diff(%S)" words ediff-goto-word end ediff-make-bullet-proof-overlay ediff-overlay-put ediff-diff-num ediff-has-face-support-p ediff-set-overlay-face cl-oddp assoc mod 10 message "Buffer %S: Processing difference region %d of %d" vector vconcat this-command ediff-KILLED-VITAL-BUFFER ediff-use-faces ediff-highlight-all-diffs ediff-even-diff-face-alist ediff-odd-diff-face-alist ediff-difference-vector-alist] 25 (#$ . 14542)])
#@25 

(fn &optional N FLAG)
(defalias 'ediff-make-fine-diffs #[512 "\204\262	\306W\203\307\n!\210\203\310\262\311\312W\206\204	Y\206\204\313
!234\314\315\"\314\316\"\314\317\"\320	\315\"\320\n\316\"\320\317\"\321\322\321E\"G\306V\203\323
!\203q5\203q\324\317\321#\2106\203\244\325
T\204\203\315\202\223\204\214\316\202\223?\205\223\317D7\203\237\326\327#\210\266\202\316\330
T\203\261\315\202\300\203\272\316\202\300\205\300\317D7\203\314\326\327#\210\266\203\357\203\357\203\357\3158\331\"A\266\202J
H\332\333I\210\202~\3158\331\"A\266\202J
H\332\321I\210\202~\334=\203\207\3158\331\"A\266\202J
H\306H\203\207\3158\331\"A\266\202J
H\332H\203~\327\335T\3158\331\"A\266\202JH\332H\315=\203O\336\202\202\3158\331\"A\266\202JH\332H\316=\203h\337\202\202\3158\331\"A\266\202JH\332H\317=\203\201\340\202\202\341#\210\202~\310=\203\277\3158\331\"A\266\202J
H\306H\204~\f\342>\204~\343
T\344\345!D7\203\272\326\327#\210\266\202~\346\347\315\350#\347\315\351#9:%\210\352\353\f#\262\n\346\347\316\350#\347\316\351#;:%\210\352\354#\262	<\203\346\347\317\350#\347\317\351#=:%\210\352\355\n#\262	234<\203@\203@\356\321\n\n$\210\202w<\203V\203V\356\n\321\n$\210\202w<\203l\203l\356\n\n\321$\210\202w\356\n\n\n$\210\357\3158\331\"A\266\202JH\306HG\3168\331\"A\266\202JH\306HG\n\203\2705\204\270\3178\331\"A\266\202JH\306HG\202\271\312#\262\203\310\203\310\204\337\204\204<\203\331\204\211\312=\203\3158\331\"A\266\202J
H\332\333I\210\360
TC7\203\326\327#\210\266\202~\211\312=\203l\335
T\203*\3158\331\"A\266\202JH\332\315I\210\336\202[\203D\3158\331\"A\266\202JH\332\316I\210\337\202[\205[\3158\331\"A\266\202JH\332\317I\210\340D7\203g\326\327#\210\266\202~\3158\331\"A\266\202J
H\332\321I\210\361
!\266\213\207" [ediff-current-difference ediff-number-of-differences ediff-NO-DIFFERENCES ediff-word-mode ediff-auto-refine ediff-tmp-buffer 1 error skip nix 0 get-buffer-create ediff-empty-diff-region-p A B C ediff-whitespace-diff-region-p nil delq ediff-looks-like-combined-merge ediff-set-fine-overlays-in-one-buffer "Region %d is empty in all buffers but %S" apply message "Region %d in buffer %S is empty" assoc 2 t noforce "Only white-space differences in region %d %s" "in buffers B & C" "in buffers A & C" "in buffers A & B" "" (off nix) "Region %d exceeds the auto-refinement limit. Type `%s' to refine" substitute-command-keys "\\[ediff-make-or-kill-fine-diffs]" ediff-wordify ediff-get-diff-posn beg end ediff-make-temp-file "fineDiffA" "fineDiffB" "fineDiffC" ediff-setup-fine-diff-regions + "Only white-space differences in region %d" ediff-set-fine-diff-properties ediff-temp-file-A ediff-temp-file-B ediff-temp-file-C ediff-merge-job ediff-3way-comparison-job ediff-verbose-p ediff-difference-vector-alist ediff-buffer-A ediff-control-buffer ediff-buffer-B ediff-3way-job ediff-buffer-C] 21 (#$ . 17092)])
#@10 

(fn N)
(defalias 'ediff-install-fine-diff-if-necessary #[257 "\304=\203@	\203@\n\305=\204@\n\306=\204@\307\310\311#\307\310\312#ZV\203;\307\313\311#\307\313\312#ZV\203;\314\315\"\207\314\316\"\207\305=\205J\314\316\"\207" [ediff-auto-refine ediff-use-faces ediff-highlighting-style ediff-auto-refine-limit on off ascii ediff-get-diff-posn A end beg B ediff-make-fine-diffs noforce skip] 7 (#$ . 20215)])
#@28 

(fn N &optional DEFAULT)
(defalias 'ediff-set-fine-diff-properties #[513 "\302 ?\206'\303W\206'Y\206'\304\305#\210\304\306#\210	\205'\304\307#\207" [ediff-number-of-differences ediff-3way-job ediff-has-face-support-p 0 ediff-set-fine-diff-properties-in-one-buffer A B C] 6 (#$ . 20645)])
#@37 

(fn BUF-TYPE N &optional DEFAULT)
(defalias 'ediff-set-fine-diff-properties-in-one-buffer #[770 "\302\"A\266\202JH\303H?\205	\302\"A\266\202\304\305\306\307\310\311!\312\"\313\314%\"\207" [ediff-difference-vector-alist ediff-fine-diff-face-alist assoc 1 mapc make-byte-code 257 "\301\300\"\207" vconcat vector [ediff-set-overlay-face] 4 "\n\n(fn OVERL)"] 12 (#$ . 20954)])
#@26 

(fn DIFF-LIST REG-NUM)
(defalias 'ediff-set-fine-overlays-for-combined-merge #[514 "\302\211\2039\3031\304@A@#\211\2620\202\210\202\210B\262G\305V\2032AA\262\202\306\307!\210\202\310!\262\311	\312\"A\266\202JH\305\313\314\"I\207" [ediff-buffer-C ediff-difference-vector-alist nil (error) ediff-make-bullet-proof-overlay 1 error "ediff-set-fine-overlays-for-combined-merge: corrupt list of\ndelimiter regions" reverse C assoc apply vector] 9 (#$ . 21350)])
#@38 

(fn BUF-TYPE DIFF-LIST REGION-NUM)
(defalias 'ediff-set-fine-overlays-in-one-buffer #[771 "\306\307\310#\311\267\202\202	\202\n\202\202\312\f\312\211\211\211\211\211\n
\211
\313\"A\266\202JH\211\203?\314\315\316H\"\210\210\211
\313\"A\266\202JH\316\312I\266A\262\f\211\205g\317!\205g\320\317!!\262\203yrq\210b\210)\202\205!\321=\204\205\322\"!\210#\203\244\f\323=\203\244\324!\211\262\203\244\325\f\"\202H\2034	T\262\n@\262
\326\267\202\303\327\202\304\330\202\304\331H\262
\332\267\202\327\316\202\330\333\202\330\334H\262\204\343\203,\211\205\364\317!\205\364\320\317!!\262\203rq\210\335T	\"\262\335	\336#\262)\202!\321=\204\322\"!\210\337\n#\262C\244\262A\262\f\202\244\f
\313\"A\266\202JH\316\340!I\207" [ediff-buffer-A ediff-buffer-B ediff-buffer-C ediff-ancestor-buffer ediff-control-buffer ediff-difference-vector-alist -1 ediff-get-diff-posn beg #s(hash-table size 4 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (A 12 B 16 C 20 Ancestor 24)) nil assoc mapc delete-overlay 1 get-buffer buffer-name ediff-quit error C ediff-looks-like-combined-merge ediff-set-fine-overlays-for-combined-merge #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (A 187 B 191)) 0 2 4 #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (A 207 B 211)) 3 5 ediff-goto-word end ediff-make-bullet-proof-overlay vconcat this-command ediff-KILLED-VITAL-BUFFER ediff-merge-job] 20 (#$ . 21843)])
#@29 

(fn DIFF-LIST REGION-NUM)
(defalias 'ediff-convert-fine-diffs-to-overlays #[514 "\301\302#\210\301\303#\210\205\301\304#\207" [ediff-3way-job ediff-set-fine-overlays-in-one-buffer A B C] 6 (#$ . 23432)])
#@13 

(fn FILE)
(defalias 'ediff-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 (#$ . 23653)])
#@62 

(fn DIFF-BUFFER WORD-MODE THREE-WAY-COMP &optional BOUNDS)
(defalias 'ediff-extract-diffs3 #[1027 "	\n\306\307\306\307\306\307\306\307\211\211\211\203\310\202\311B\262\203Y@\312!\205.\313!\262\262A@\312!\205?\313!\262\262\205W\3148\312!\205U\313!\262\262\211\205j\315!\205j\316\315!!\262\203\203rq\210\203|\202}eb\210)\202\215\f\317=\204\215\320
!\210
\211\205\236\315!\205\236\316\315!!\262\203\267r
q\210\203\260\202\261eb\210)\202\301\f\317=\204\301\320
!\210\203\372\f\211\205\327\315!\205\327\316\315!!\262\203\360r\fq\210\211\203\351\211\202\352eb\210)\202\372\f\317=\204\372\320
!\210\211\205\315!\205\316\315!!\262\203<\211\205!\315!\205!\316\315!!\262\2032rq\210eb\210)\202<\f\317=\204<\320
!\210\211\205M\315!\205M\316\315!!\262\203\341rq\210eb\210\321 \307\322#\203\335\323\314!\210\306\224\306\225{\204w\211\324\230\204\331\325\326!@\325\326!A@\325\327!@\325\327!A@\325\324!@\325\324!A@\326\230\203\235\330\202\252\327\230\203\250\331\202\252!\211\332>\203\264\333\202\265\334\326\230\203\300\334\202\323\327\230\203\313\333\202\323\324\230\205\323\335\307\211\211\211\211\211\211\211\211\211\211U\262%\203\365\262\n\262	\202!\336=\203\262\n\262	\202\262\n\262	&\203O\337\"ZZ\"ZZ\"ZZ\307\211\211\211\211&C\244\262\262 \262\262\202\327#\211\205`\315!\205`\316\315!!\262\203\227r#q\210\206u\206ueb\210 Zy\210`\262Zy\210`\262\262 \262)\202\241\f\317=\204\241\320
!\210\"\211\205\262\315!\205\262\316\315!!\262\203\350r\"q\210\206\307\206\307eb\210Zy\210`\262Zy\210`\262\262\262)\202\362\f\317=\204\362\320
!\210!\211\205\315!\205\316\315!!\262\2039r!q\210\206\206eb\210	Zy\210`\262\nZy\210`\262\262\262)\202C\f\317=\204C\320
!\210 \211\205T\315!\205T\316\315!!\262\203\232 \211\205j\315!\205j\316\315!!\262\203\220r q\210Zy\210`\262Zy\210`\262\262)\202\232\f\317=\204\232\320
!\210&\203\272\337						\307\211\307\211&C\202\324\337								&C\244\262\266\210\202Z)\202\353\f\317=\204\353\320
!\210\207" [ediff-buffer-A ediff-buffer-B ediff-buffer-C ediff-ancestor-buffer this-command ediff-KILLED-VITAL-BUFFER 1 nil words points overlayp overlay-start 2 get-buffer buffer-name ediff-quit error re-search-forward t beginning-of-line "3" ediff-get-diff3-group "1" "2" prefer-A prefer-B (default-A prefer-A) B A C default-B vector ediff-match-diff3-line ediff-default-variant] 53 (#$ . 24062)])
#@29 

(fn FILE-A FILE-B FILE-C)
(defalias 'ediff-setup-diff-regions3 #[771 "\306\307\"\203\310\311!\210	\211\205\312!\205\313\312!!\262\204'\314\315\316\317\"!\320\321!\210\322\n	\323&\210\324\f	\"\210\325\326	
$!\207" [ediff-diff-options ediff-diff-buffer ediff-diff3-program ediff-actual-diff3-options ediff-diff3-ok-lines-regexp ediff-word-mode string-match "^-i\\| -i\\|\\(^\\| \\)-[^- ]+i" error "Option `-i' is not allowed in `ediff-diff3-options'" get-buffer buffer-name get-buffer-create ediff-unique-buffer-name "*ediff-diff" "*" message "Computing differences ..." ediff-exec-process synchronize ediff-prepare-error-list ediff-convert-diffs-to-overlays ediff-extract-diffs3 ediff-3way-comparison-job ediff-narrow-bounds] 11 (#$ . 26732)])
#@438 Execute the diff PROGRAM.

The PROGRAM output is sent to BUFFER, which must be a live buffer
object.

The PROGRAM is executed asynchronously unless `system-type' is
`windows-nt' or `ms-dos', or SYNCH is non-nil.

OPTIONS is a string of space-separated options to pass to PROGRAM.  It
may be a blank string.

FILES is a list of filenames to pass to PROGRAM; nil and "" elements
are ignored.

(fn PROGRAM BUFFER SYNCH OPTIONS &rest FILES)
(defalias 'ediff-exec-process #[1156 "\306 \307\310\311!\"\203	\202\n\312\313\314!\315\316\"\"\262\317\320\321\312\"\"\262\307\310\311!\"\204?\f=\204?\317\322\"\262\323\324\325\326\327!\330\"\331$\216rq\210\332 \210\333(\334>\204a\203p\335\336	\312\n\312&\202\224\337!\211\203|\340!\210\210\335\341\342	%\343)\344\345\"\210\346\347\"\262+\207" [ediff-job-name ediff-coding-system-for-write ediff-coding-system-for-read coding-system-for-read ediff-fine-diff-buffer default-directory match-data string-match "buffer" symbol-name nil append split-string mapcar #[257 "\211;\205E\301!\206\f\211\302\211?\205\303!\211\211?\205\304\305\303!\")\266\202\203=\211G\306U\2037\307\202;\310\306\"\262\311!P)\266\203\207" [file-name-handler-alist file-local-copy nil file-local-name string-prefix-p "/:" 2 "/" substring file-remote-p] 10 "\n\n(fn FILE)"] delete "" delq "--binary" make-byte-code 0 "\301\300!\207" vconcat vector [store-match-data] 2 erase-buffer "/" (ms-dos windows-nt) apply call-process get-buffer-process kill-process start-process "Custom Diff" (":%s") set-process-sentinel ediff-process-sentinel set-process-filter ediff-process-filter system-type mode-line-process] 15 (#$ . 27508)])
#@20 

(fn PROC STRING)
(defalias 'ediff-process-filter #[514 "p\300!\301C\302!\303!\304\305\306\307\310	$\311\"\312$\216q\210`dU\204,`\240\210db\210\313!)\207" [process-buffer nil get-buffer-window window-start make-byte-code 0 "\304\302\303\"\210\301\242\203\301\242b\210\300q\207" vconcat vector [set-window-start] 3 insert-before-markers] 16 (#$ . 29215)])
#@23 

(fn PROCESS SIGNAL)
(defalias 'ediff-process-sentinel #[514 "\301!\302>\205\303\304!!\205r\304!q\210\305)\306!\207" [mode-line-process process-status (exit signal) buffer-name process-buffer nil delete-process] 5 (#$ . 29594)])
#@105 Function to call to move to the next word.
Used for splitting difference regions into individual words.
(defvar ediff-forward-word-function 'ediff-forward-word (#$ . 29840))
(make-variable-buffer-local 'ediff-forward-word-function)
#@112 Characters constituting white space.
These characters are ignored when differing regions are split into words.
(defvar ediff-whitespace " \n	\f
\240" (#$ . 30079))
(make-variable-buffer-local 'ediff-whitespace)
#@158 Characters that constitute words of type 1.
More precisely, [ediff-word-1] is a regexp that matches type 1 words.
See `ediff-forward-word' for more details.
(defvar ediff-word-1 "-[:word:]_" (#$ . 30297))
(make-variable-buffer-local 'ediff-word-1)
#@158 Characters that constitute words of type 2.
More precisely, [ediff-word-2] is a regexp that matches type 2 words.
See `ediff-forward-word' for more details.
(defvar ediff-word-2 "0-9.," (#$ . 30552))
(make-variable-buffer-local 'ediff-word-2)
#@158 Characters that constitute words of type 3.
More precisely, [ediff-word-3] is a regexp that matches type 3 words.
See `ediff-forward-word' for more details.
(defvar ediff-word-3 "`'?!:;\"{}[]()" (#$ . 30802))
(make-variable-buffer-local 'ediff-word-3)
#@158 Characters that constitute words of type 4.
More precisely, [ediff-word-4] is a regexp that matches type 4 words.
See `ediff-forward-word' for more details.
(defvar ediff-word-4 (concat "^" ediff-word-1 ediff-word-2 ediff-word-3 ediff-whitespace) (#$ . 31061))
(make-variable-buffer-local 'ediff-word-4)
#@272 Move point one word forward.
There are four types of words, each of which consists entirely of
characters in `ediff-word-1', `ediff-word-2', `ediff-word-3', or
`ediff-word-4'.  Words are recognized by passing these one after another as
arguments to `skip-chars-forward'.
(defalias 'ediff-forward-word #[0 "\304w\305\306!\\\307V\206!	\304w\307V\206!\n\304w\307V\206!\304w\307V\207" [ediff-word-1 ediff-word-2 ediff-word-3 ediff-word-4 nil skip-syntax-forward "w" 0] 3 (#$ . 31372)])
#@59 

(fn BEG END IN-BUFFER OUT-BUFFER &optional CONTROL-BUF)
(defalias 'ediff-wordify #[1284 "\211\203.\211\211\205\305!\205\306\305!!\262\203\"r\211q\210)\202/	\307=\206/\310\n!\202/\311\211\211rq\210\203e\211\205K\305!\205K\306\305!!\262\203Yrq\210)\202g	\307=\206g\310\n!\202g\312 \262\313		\"\262q\210\314!\210\315 \210\211c\210eb\210\f\311w\210e`|\210m?\205\242 \210`\262\f\311w\210`|\210\316c\210\202\211)\207" [ediff-forward-word-function this-command ediff-KILLED-VITAL-BUFFER ediff-syntax-table ediff-whitespace get-buffer buffer-name ediff-quit error nil syntax-table buffer-substring-no-properties set-syntax-table erase-buffer "\n"] 13 (#$ . 31865)])
#@37 

(fn BEG END IN-BUFFER OUT-BUFFER)
(defalias 'ediff-copy-to-buffer #[1028 "r\211q\210\300 \210\301#\210eb)\207" [erase-buffer insert-buffer-substring] 8 (#$ . 32572)])
#@29 

(fn N BUF &optional FLAG)
(defalias 'ediff-goto-word #[770 "	\211\205\305!\205\306\305!!\262\203arq\210\n\307w\210\310 p\311\312\313\314\315\"\316\"\317$\216\320!\210\321V\203K \210\n\307w\210S\262\2025\203Y\312V\203Y \210)\266`)\202j\322=\206j\323\f!\207" [ediff-forward-word-function ediff-syntax-table ediff-whitespace this-command ediff-KILLED-VITAL-BUFFER get-buffer buffer-name nil syntax-table make-byte-code 0 "r\301q\210\302\300!)\207" vconcat vector [set-syntax-table] 2 set-syntax-table 1 ediff-quit error] 14 (#$ . 32750)])
#@66 Return t if files F1 and F2 have identical contents.

(fn F1 F2)
(defalias 'ediff-same-file-contents #[514 "\302!?\205]\302!?\205]\303!\303!\232\2039\304\305\306\211\211\307	\310\311!!\310\311!!D\"&\211\247\2058\211\312=\207\313!\313!\314\312\315\316\317\"\320\"\321$\216\322\206T\206Y\")\266\202\207" [ediff-cmp-program ediff-cmp-options file-directory-p file-remote-p apply process-file nil append expand-file-name file-local-name 0 file-local-copy make-byte-code "\300\203\302\300!\210\301\205\302\301!\207" vconcat vector [delete-file] 2 ediff-same-file-contents] 14 (#$ . 33328)])
#@294 Return t if D1 and D2 have the same content.
D1 and D2 can either be both directories or both regular files.
Symlinks and the likes are not handled.
If FILTER-RE is non-nil, recursive checking in directories
affects only files whose names match the expression.

(fn D1 D2 &optional FILTER-RE)
(defalias 'ediff-same-contents #[770 "\211G\301V\204\n\302\262\303\304$\210\305!\203M\305!\203M\204.\306\307!\203,\310\202.\311\310=\205]\312\313#\312\313#\314\315\"\314\315\"\316#\207\317!\205]\317!\205]\320\"\207" [ediff-recurse-to-subdirectories 0 nil message "Comparing `%s' and `%s' modulo `%s'" file-directory-p y-or-n-p "Compare subdirectories recursively? " yes no directory-files t ediff-delete-all-matches "^\\.\\.?$" ediff-same-file-contents-lists file-regular-p ediff-same-file-contents] 11 (#$ . 33951)])
#@38 

(fn ENTRIES-1 ENTRIES-2 FILTER-RE)
(defalias 'ediff-same-file-contents-lists #[771 "GGU\205<\300\301\"\300\301\"\232\205<\302\2038\211\2038\303@@#\2032A\262A\262\202\304\262\202?\262\207" [mapcar file-name-nondirectory t ediff-same-contents nil] 8 (#$ . 34801)])
#@29 

(fn REGEX FILE-LIST-LIST)
(defalias 'ediff-delete-all-matches #[514 "\300\211\203@\262\301\302!\"\204\211B\262A\262\202\303!\207" [nil string-match file-name-nondirectory reverse] 8 (#$ . 35096)])
(defalias 'ediff-set-actual-diff-options #[0 "\203	\306\nQ\f\306
Q\202	\f\307\303\"\210\307\310\"\207" [ediff-ignore-case ediff-diff-options ediff-ignore-case-option ediff-actual-diff-options ediff-diff3-options ediff-ignore-case-option3 " " set-default ediff-actual-diff3-options] 3])
(defalias 'ediff-toggle-ignore-case #[0 "\306\307!\204\f\310\311\"\210\210	?\312 \210	\203\313\314!\210\202\"\313\315!\210\n\203*\313\316!\207\2038\f\317\230\2038\313\320!\207
\204G\317\230\203G\313\321!\207\322\323!\210\324 \207" [this-command ediff-ignore-case ediff-merge-job ediff-diff3-job ediff-ignore-case-option3 ediff-3way-job nil ediff-in-control-buffer-p user-error "%S: This command runs in Ediff Control Buffer only!" ediff-set-actual-diff-options message "Ignoring regions that differ only in case" "Ignoring case differences turned OFF" "Ignoring letter case is too dangerous in merge jobs" "" "Ignoring letter case is not supported by this diff3 program" "Ignoring letter case is not supported by this diff program" sit-for 1 ediff-update-diffs ediff-ignore-case-option] 4 nil nil])
(provide 'ediff-diff)

Zerion Mini Shell 1.0