;ELC ;;; compiled by kwzh@nutrimat.gnu.ai.mit.edu on Wed Jul 17 15:42:43 1996 ;;; from file /gd/gnu/emacs/19.0/lisp/ediff-mult.el ;;; emacs version 19.31.94.1. ;;; bytecomp version FSF 2.10 ;;; optimization is on. ;;; this file uses opcodes which do not exist in Emacs 18. (if (and (boundp 'emacs-version) (or (and (boundp 'epoch::version) epoch::version) (string-lessp emacs-version "19.29"))) (error "`ediff-mult.el' was compiled for Emacs 19.29 or later")) (require (quote ediff-init)) #@2  (defvar ediff-meta-buffer nil (#$ . 512)) (byte-code "!#" [make-variable-buffer-local ediff-meta-buffer put permanent-local t] 4) #@2  (defvar ediff-parent-meta-buffer nil (#$ . 656)) (byte-code "!#!B\nBLJ" [make-variable-buffer-local ediff-parent-meta-buffer put permanent-local t boundp ediff-registry-buffer nil current-load-list "This is an Ediff Session Group Panel: %s\n\nUseful commands:\n button2, `v', RET over a session line: start that Ediff session\n `M': in any session invoked from here, brings back this group panel\n `R': display the registry of active Ediff sessions\n `h': mark session for hiding (toggle)\n `x': hide marked sessions; with prefix arg--unhide hidden sessions\n `m': mark session for a non-hiding operation (toggle)\n SPC: next session\n DEL: previous session\n `E': browse Ediff on-line manual\n `q': quit this session group\n" ediff-meta-buffer-message] 4) #@33 The keymap for the meta buffer. (defvar ediff-meta-buffer-map nil (#$ . 1490)) (byte-code "!#" [make-variable-buffer-local ediff-meta-buffer-map put permanent-local t] 4) #@83 The keymap to be installed in the buffer showing differences between directories. (defvar ediff-dir-diffs-buffer-map (make-sparse-keymap) (#$ . 1675)) #@2  (defvar ediff-meta-action-function nil (#$ . 1831)) (byte-code "!#" [make-variable-buffer-local ediff-meta-action-function put permanent-local t] 4) #@2  (defvar ediff-meta-redraw-function nil (#$ . 1994)) (byte-code "!#" [make-variable-buffer-local ediff-meta-redraw-function put permanent-local t] 4) #@2  (defvar ediff-session-action-function nil (#$ . 2157)) (byte-code "!#" [make-variable-buffer-local ediff-session-action-function put permanent-local t] 4) #@2  (defvar ediff-metajob-name nil (#$ . 2326)) (byte-code "!#" [make-variable-buffer-local ediff-metajob-name put permanent-local t] 4) #@2  (defvar ediff-meta-diff-buffer nil (#$ . 2473)) (byte-code "!#" [make-variable-buffer-local ediff-meta-diff-buffer put permanent-local t] 4) #@2  (defvar ediff-filtering-regexp-history nil (#$ . 2628)) #@2  (defvar ediff-meta-list nil (#$ . 2690)) (byte-code "!#" [make-variable-buffer-local ediff-meta-list put permanent-local t] 4) #@2  (defvar ediff-dir-difference-list nil (#$ . 2831)) (byte-code "!#" [make-variable-buffer-local ediff-dir-difference-list put permanent-local t] 4) #@2  (defvar ediff-dir-diffs-buffer nil (#$ . 2992)) (byte-code "!#!BLJ" [make-variable-buffer-local ediff-dir-diffs-buffer put permanent-local t boundp ediff-session-registry nil current-load-list] 4) #@61 *Hooks run just after the registry control panel is set up. (defvar ediff-registry-setup-hook nil (#$ . -3217)) #@101 *Hooks run just after a meta-buffer controlling a session group, such as ediff-directories, is run. (defvar ediff-session-group-setup-hook nil (#$ . -3336)) #@53 *Hooks run just after the registry buffer is shown. (defvar ediff-show-registry-hook nil (#$ . -3499)) #@56 *Hooks run just after a session group buffer is shown. (defvar ediff-show-session-group-hook nil (#$ . -3608)) #@2  (defvar ediff-meta-patchbufer nil (#$ . 3724)) (byte-code "!#" [make-variable-buffer-local ediff-meta-patchbufer put permanent-local t] 4) (defalias 'ediff-get-group-buffer #[(meta-list) "@@" [meta-list] 1]) (defalias 'ediff-get-group-regexp #[(meta-list) "@A@" [meta-list] 1]) (defalias 'ediff-get-group-objA #[(meta-list) " @8" [2 meta-list] 2]) (defalias 'ediff-get-group-objB #[(meta-list) " @8" [3 meta-list] 2]) (defalias 'ediff-get-group-objC #[(meta-list) " @8" [4 meta-list] 2]) (defalias 'ediff-get-session-buffer #[(elt) "@" [elt] 1]) (defalias 'ediff-get-session-status #[(elt) "A@" [elt] 1]) (defalias 'ediff-set-session-status #[(session-info new-status) "A " [session-info new-status] 2]) (defalias 'ediff-get-session-objA #[(elt) " 8" [2 elt] 2]) (defalias 'ediff-get-session-objB #[(elt) " 8" [3 elt] 2]) (defalias 'ediff-get-session-objC #[(elt) " 8" [4 elt] 2]) (defalias 'ediff-get-session-objA-name #[(elt) " 8@" [2 elt] 2]) (defalias 'ediff-get-session-objB-name #[(elt) " 8@" [3 elt] 2]) (defalias 'ediff-get-session-objC-name #[(elt) " 8@" [4 elt] 2]) (defalias 'ediff-get-file-eqstatus #[(elt) "A@" [elt] 1]) (put (quote ediff-get-file-eqstatus) (quote byte-optimizer) (quote byte-compile-inline-expand)) (defalias 'ediff-set-file-eqstatus #[(elt value) "A " [elt value] 2]) (put (quote ediff-set-file-eqstatus) (quote byte-optimizer) (quote byte-compile-inline-expand)) (defalias 'ediff-setup-meta-map #[nil "  ! # # #  #  # # # # # J #U #d  #k  # !" [make-sparse-keymap ediff-meta-buffer-map suppress-keymap define-key "q" ediff-quit-meta-buffer "R" ediff-show-registry "E" ediff-documentation "v" ediff-meta-action-function " " " " ediff-next-meta-item "" ediff-previous-meta-item [delete] [backspace] ediff-one-filegroup-metajob "=" ediff-meta-mark-equal-files ediff-no-emacs-help-in-control-buffer "" ediff-emacs-p [mouse-2] [button2] use-local-map] 4]) #@516 This mode controls all operations on Ediff session groups. It is entered through one of the following commands: `ediff-directories' `edirs' `ediff-directories3' `edirs3' `ediff-merge-directories' `edirs-merge' `ediff-merge-directories-with-ancestor' `edirs-merge-with-ancestor' `ediff-directory-revisions' `edir-revisions' `ediff-merge-directory-revisions' `edir-merge-revisions' `ediff-merge-directory-revisions-with-ancestor' `edir-merge-revisions-with-ancestor' Commands: \{ediff-meta-buffer-map} (defalias 'ediff-meta-mode #[nil " É" [kill-all-local-variables ediff-meta-mode major-mode "MetaEdiff" mode-name] 2 (#$ . 5731)]) (byte-code " ! # # # # #" [suppress-keymap ediff-dir-diffs-buffer-map define-key "q" ediff-bury-dir-diffs-buffer " " next-line "" previous-line [delete] [backspace]] 4) #@140 Move to the next item in Ediff registry or session group buffer. Moves in circular fashion. With numeric prefix arg, skip this many items. (defalias 'ediff-next-meta-item #[(count) "WS " [count 1 0 ediff-next-meta-item1] 2 (#$ . 6582) "p"]) (defalias 'ediff-next-meta-item1 #[nil "`! b =)p #4#4x4wV4!)" [nil pos ediff-next-meta-overlay-start ediff-metajob-name ediff-registry ediff-get-meta-info noerror search-forward "*Ediff" t "a-zA-Z*" "-+?H* 0-9" 0 backward-char 1] 5]) #@144 Move to the previous item in Ediff registry or session group buffer. Moves in circular fashion. With numeric prefix arg, skip this many items. (defalias 'ediff-previous-meta-item #[(count) "WS " [count 1 0 ediff-previous-meta-item1] 2 (#$ . 7118) "p"]) (defalias 'ediff-previous-meta-item1 #[nil "`! b =)p #4#4x4wV4!)" [nil pos ediff-previous-meta-overlay-start ediff-metajob-name ediff-registry ediff-get-meta-info noerror search-forward "*Ediff" t "a-zA-Z*" "-+?H* 0-9" 0 backward-char 1] 5]) (defalias 'ediff-intersect-directories #[(jobname diff-var regexp dir1 dir2 &optional dir3 comparison-func) "‰ \n\f!#\n! # ;J!\f#\n\"\n\n\"\n\n #\"u#>)\"!\"\n ### \" \"!\" \" \" \fF B# L \fF\".B" [comparison-func string= nil difflist auxdir3 auxdir2 auxdir1 common lis3 lis2 lis1 file-name-as-directory dir1 directory-files regexp dir2 dir3 delete "." ".." ediff-intersection mapcar #[(elt) " \nP! \nP!\f? ?\f*'\n\"" [file-directory-p auxdir1 elt auxdir2 b a delq common] 5] jobname metajob ediff-metajob-name (ediff-directories3 ediff-filegroups3) #[(elt) " \nP! \nP!\f? ?\f*'\n\"" [file-directory-p auxdir1 elt auxdir3 b a delq common] 5] sort ediff-copy-list string-lessp ediff-set-difference ediff-union #[(elt) "B" [elt 1] 2] #[(elt) "@ A_@ A_@ )A_" [elt lis1 2 lis2 3 lis3 5] 3] diff-var #[(elt) " P\n P \f PE" [auxdir1 elt auxdir2 lis3 auxdir3] 4]] 9]) (defalias 'ediff-get-directory-files-under-revision #[(jobname regexp dir1) "! #\fN\f@\fA P!- \nB Q!= \nB R! \nB\n\"\n\"\n!\" F\n\",B" [nil auxdir1 common elt lis1 file-name-as-directory dir1 directory-files regexp file-directory-p file-exists-p ",v" "RCS/" delete "." ".." sort ediff-copy-list string-lessp mapcar #[(elt) " P‰E" [auxdir1 elt nil] 3]] 5]) (defalias 'ediff-prepare-meta-buffer #[(action-func meta-list meta-buffer-name redraw-function jobname &optional startup-hooks) " \" !p\f\f!\f!!Ȏ\fq \n \f \f =O\f#]\f@BA\"B\f=j\fB\f!!!\n=\f$@B$AB$!$!###->)#->)###=!!)9=)lcz>)zcc ;GV\"cc A@@!=Ac X @ AT != !\f !  !\n ! `\f)\f(\f!(\f!!()c !3c! !\n! !` #!b)q7=q:!." [ediff-get-group-buffer meta-list t 0 nil buffer-read-only tmp-list point pt f3 f2 f1 session-buf elt regexp sessionNum empty meta-buf StartBuffer get-buffer buffer-name ((set-buffer StartBuffer)) erase-buffer format ediff-meta-buffer-message ediff-abbrev-jobname ediff-metajob-name ediff-get-group-regexp metajob (ediff-directories ediff-directory-revisions ediff-merge-directories ediff-merge-directories-with-ancestor ediff-merge-directory-revisions ediff-merge-directory-revisions-with-ancestor) " `P': collect custom diffs of all marked sessions\n" (ediff-multifile-patch) " `P': show patch appropriately for the context (session or group)\n" " `u': show parent session group\n" ediff-one-filegroup-metajob " `D': show differences among directories\n" " `=': mark identical files in each session\n\n" "Filter-through regular expression: %s\n" "\n\n Size Last modified Name\n -----------------------------------------------------------------------\n\n" ediff-get-session-status 73 " ****** ****** This session group has no members\n" ediff-get-session-buffer ediff-get-session-objA ediff-get-session-objB ediff-get-session-objC " " "+" "-" " Session " int-to-string ":\n" ediff-meta-insert-file-info ediff-set-meta-overlay set-buffer-modified-p this-command ediff-quit error ediff-KILLED-VITAL-BUFFER] 14]) (defalias 'ediff-problematic-session-p #[(session) " ! ! !;>!> ;> !>\f;>\f!> \n>)>̂?+" [ediff-get-session-objA-name session ediff-get-session-objB-name ediff-get-session-objC-name f3 f2 f1 file-directory-p nil metajob ediff-metajob-name (ediff-merge-directories-with-ancestor ediff-merge-filegroups-with-ancestor) ancestor-is-dir] 5]) (defalias 'ediff-meta-insert-file-info #[(fileinfo) " @ A@);4!4  \")  \");{ DςEWRӂT\"W`Ԃe\f!!!u!!y!%c," [-1 fileinfo elt "*file doesn't exist*" file-modtime feq fname file-size file-exists-p filename ediff-file-attributes 7 5 format "%s %s %-20s %s\n" "=" " " "%10s" 0 "remote" "file" ediff-format-date decode-time file-directory-p file-name-as-directory ediff-abbreviate-file-name] 9]) #@28 Months' associative array. (defconst ediff-months (quote ((1 . "Jan") (2 . "Feb") (3 . "Mar") (4 . "Apr") (5 . "May") (6 . "Jun") (7 . "Jul") (8 . "Aug") (9 . "Sep") (10 . "Oct") (11 . "Nov") (12 . "Dec"))) (#$ . 13507)) (defalias 'ediff-format-date #[(time) "\f8 \"A\f8\f8\f8!\fA@!\f@!&" [format "%s %2d %4d %s:%s:%s" assoc 4 time ediff-months 3 5 ediff-fill-leading-zero 2] 9]) (defalias 'ediff-fill-leading-zero #[(num) "W \"!" [num 10 format "0%d" number-to-string] 3]) (put (quote ediff-fill-leading-zero) (quote byte-optimizer) (quote byte-compile-inline-expand)) (defalias 'ediff-draw-dir-diffs #[(diff-list) "!\"!!! !! !;/!!\"A!p!!!ߎq!! #cc;GV\"cc !!\" !!\"#c!!\"\"cc#c;\"ccc@@@AA\"U# P!!!\"\"c)\"c\"US P!H!J!\"\"cY\"c;\"UP!~!!\"\"c\"cc!)?@=A!.\f" [diff-list error "Lost difference info on these directories" ediff-unique-buffer-name "*Ediff File Group Differences" "*" buf-name ediff-get-group-regexp regexp ediff-abbreviate-file-name ediff-get-group-objA dir1 ediff-get-group-objB dir2 ediff-get-group-objC dir3 ediff-get-group-buffer meta-buf make-string 26 45 underline nil file code buffer-read-only get-buffer-create ediff-dir-diffs-buffer StartBuffer get-buffer buffer-name ((set-buffer StartBuffer)) use-local-map ediff-dir-diffs-buffer-map erase-buffer ediff-meta-buffer " *** Directory Differences ***\n" "\nUseful commands:\n `q': hide this buffer\n SPC: next line\n DEL: previous line\n\n" 0 format "Filter-through regular expression: %s\n" "\n" "\n%-27s%-26s" ediff-truncate-string-left file-name-as-directory 25 " %-25s\n" "%s%s" "%s\n\n" "\n\n" "\n *** No differences ***\n" mod 2 "%-27s" file-directory-p 24 "---" 3 "%-26s" 5 " %-25s" t set-buffer-modified-p this-command ediff-quit ediff-KILLED-VITAL-BUFFER] 8]) #@72 Bury the directory difference buffer. Display the meta buffer instead. (defalias 'ediff-bury-dir-diffs-buffer #[nil " !\n! \"*" [ediff-meta-buffer nil wind buf bury-buffer ediff-get-visible-buffer-window select-window set-window-buffer selected-window] 3 (#$ . 15604) nil]) #@70 Display differences among the directories involved in session group. (defalias 'ediff-show-dir-diffs #[nil " \n>) \n>))!!6!6!!; !\f! \f\"eb)" [nil metajob ediff-metajob-name (ediff-directory-revisions ediff-merge-directory-revisions ediff-merge-directory-revisions-with-ancestor) (ediff-multifile-patch) error "This command is inapplicable in the present context" ediff-dir-diffs-buffer get-buffer buffer-name ediff-draw-dir-diffs ediff-dir-difference-list buf other-window 1 set-window-buffer selected-window] 3 (#$ . 15905) nil]) #@40 Go to the parent session group buffer. (defalias 'ediff-up-meta-hierarchy #[nil "!!!!!" [ediff-parent-meta-buffer get-buffer buffer-name ediff-show-meta-buffer error "This session group has no parent"] 3 (#$ . 16494) nil]) (defalias 'ediff-redraw-registry-buffer #[(&optional ignore) "p  ! !!Ď q`ʼn \n \f  c\"Qc@AU!U!!Up!!!؎q =?)=!)`\n! !#c!!!;!!!;!!$c\n`#Up!!!q+>+!>+!!>+!?-]-!]-!!]-!^.n/n炋00!0!!0! 2\" 3U32U3T\"\f8 )=!)`\n\f ! !\" \n`#U!b. =!)" [StartBuffer ediff-registry-buffer get-buffer buffer-name ((set-buffer StartBuffer)) nil buffer-read-only registry-list meta-list job-name pt total-diffs cur-diff bufCname bufBname bufAname elt point erase-buffer "This is a registry of all active Ediff sessions.\n\nUseful commands:\n button2, `v', RET over a session record: switch to that session\n `M' over a session record: display the associated session group\n `R' in any Ediff session: display session registry\n SPC: next session\n DEL: previous session\n `E': browse Ediff on-line manual\n `q': bury registry\n\n\n Active Ediff Sessions:\n ----------------------\n\n" mapcar #[(elt) "!!!?\f\"" [elt get-buffer buffer-name delq ediff-session-registry] 3] ediff-session-registry " ******* No active Ediff sessions *******\n" ((set-buffer StartBuffer)) ediff-metajob-name ediff-meta-list ediff-registry this-command ediff-quit error ediff-KILLED-VITAL-BUFFER format " *group* %s: %s\n" ediff-abbrev-jobname " %s %s %s\n" ediff-abbreviate-file-name ediff-get-group-objA ediff-get-group-objB "" ediff-get-group-objC ediff-set-meta-overlay ((set-buffer StartBuffer)) ediff-buffer-A "!!!killed buffer!!!" ediff-buffer-B ediff-3way-comparison-job ediff-merge-job ediff-buffer-C "%-4d" ediff-number-of-differences ediff-current-difference -1 " _" " $" "%4d" ediff-job-name "/" " " ": %s" "\n " " " "\n" set-buffer-modified-p] 12]) (defalias 'ediff-set-meta-overlay #[(b e prop) " \f\"  # #  #)" [nil overl ediff-make-overlay b e ediff-emacs-p ediff-overlay-put mouse-face highlight t ediff-meta-info prop] 4]) #@51 Mark session for hiding. With prefix arg, unmark. (defalias 'ediff-mark-for-hiding #[(unmark) " ! !\f\n\"!!= \f\f.\"QK!K!!K!\"\"\fZ!\f!," [ediff-event-point last-command-event pos ediff-event-buffer meta-buf ediff-get-meta-info info ediff-get-session-buffer session-buf ediff-get-session-status 72 t unmark ediff-set-session-status nil get-buffer buffer-name error "Can't hide active session, %s" ediff-next-meta-item 1 ediff-update-meta-buffer] 4 (#$ . 19009) "P"]) #@62 Mark session for a group operation. With prefix arg, unmark. (defalias 'ediff-mark-for-operation #[(unmark) " ! !\f\n\"!=\n\n(\".\"\n7!\f!+" [ediff-event-point last-command-event pos ediff-event-buffer meta-buf ediff-get-meta-info info ediff-get-session-status 42 t unmark ediff-set-session-status nil ediff-next-meta-item 1 ediff-update-meta-buffer] 3 (#$ . 19546) "P"]) #@48 Hide marked sessions. With prefix arg, unhide. (defalias 'ediff-hide-marked-sessions #[(unhide) " ! A\n Â\nĂƉ \n \f  m @ A !!\f=+\nT\n =c!c + \"+\nV|! \n!! !." [ediff-get-group-buffer ediff-meta-list unhide 73 72 0 nil elt session-buf active-sessions-exist numMarked to from meta-list grp-buf ediff-get-session-buffer ediff-get-session-status buffer-live-p t ediff-set-session-status ediff-update-meta-buffer beep message "Nothing to reveal..." "Nothing to hide..." "Note: didn't hide active sessions!"] 8 (#$ . 19963) "P"]) (defalias 'ediff-operate-on-marked-sessions #[(operation) " ! AÉ \n A @ A T !=T\f \")\n!." [ediff-get-group-buffer ediff-meta-list 42 0 nil elt sessionNum numMarked marksym meta-list grp-buf ediff-get-session-status operation ediff-update-meta-buffer] 6]) (defalias 'ediff-append-custom-diff #[(session sessionNum) " !\f! lj \n \fm\f!m\f!!mp\f`\f!`\f!!`Ў\fq\f=\\ )l=l!)  ! !!!!!! qdb!c)\n>! q !\"\f!\f!%\") qdb !c)'\"-" [ediff-collect-diffs-metajob error "Sorry, I don't do this for everyone..." ediff-get-session-buffer session ediff-meta-diff-buffer ediff-metajob-name nil custom-diff-buf tmp-buf metajob meta-diff-buff session-buf get-buffer buffer-name StartBuffer ((set-buffer StartBuffer)) ediff-control-buffer ediff-compute-custom-diffs-maybe ediff-custom-diff-buffer this-command ediff-quit ediff-KILLED-VITAL-BUFFER "Ediff: something wrong--no multiple diffs buffer" insert-buffer "\n" (ediff-directories ediff-merge-directories ediff-merge-directories-with-ancestor) get-buffer-create ediff-tmp-buffer erase-buffer shell-command format "%s %s %s %s" ediff-custom-diff-program ediff-custom-diff-options ediff-get-session-objA-name ediff-get-session-objB-name t "Can't make context diff for Session %d" sessionNum] 9]) #@300 Collect custom diffs of marked sessions in buffer `*Ediff Multifile Diffs*'. This operation is defined only for `ediff-directories' and `ediff-directory-revisions', since its intent is to produce multifile patches. For `ediff-directory-revisions', we insist that all marked sessions must be active. (defalias 'ediff-collect-custom-diffs #[nil "!!!\"!p:!:!!:Ȏq )F\n=F !)!VT\" !" [ediff-meta-diff-buffer get-buffer buffer-name get-buffer-create ediff-unique-buffer-name "*Ediff Multifile Diffs" "*" StartBuffer ((set-buffer StartBuffer)) erase-buffer this-command ediff-quit error ediff-KILLED-VITAL-BUFFER ediff-operate-on-marked-sessions ediff-append-custom-diff 0 display-buffer not-this-window beep message "No marked sessions found"] 4 (#$ . 22026) nil]) #@63 Show the multi-file patch associated with this group session. (defalias 'ediff-meta-show-patch #[nil " ! !\f\n#  ! !!p\f q !q !!q͎ qP~Z!!}!q  !\"*|=|!)!," [ediff-event-point last-command-event pos ediff-event-buffer meta-buf ediff-get-meta-info noerror info ediff-meta-patchbufer patchbuffer get-buffer buffer-name StartBuffer ((set-buffer StartBuffer)) ediff-get-session-objB-name ediff-get-session-objC-name get-buffer-create ediff-tmp-buffer erase-buffer insert-buffer display-buffer not-this-window this-command ediff-quit error ediff-KILLED-VITAL-BUFFER "The patch buffer wasn't found"] 5 (#$ . 22852) nil]) #@54 Execute appropriate action for the selected session. (defalias 'ediff-filegroup-action #[nil " ! !\f\n\" \n \f!! !\n! !>X !T\"\f!X!p\fp\f!p\f!!pݎ\fq\nb !\n;\n! ; !߃!!!!l#\f \n \f%&,DEDBBFD&l/lj/&>)//&>))\\/&>)\\ !\\4!4!!4!l#\f \f%&,DEDBBFD%l!!!p!!!q 7!):=)//&>))% pEDABBFD\"l/&B>)C% \npEDCBBFD#l/&B>)l% \n pEDDBBFD$){:={) =!," [meta-buffer get-buffer buffer-name ediff-meta-list t nil buffer-read-only cont lis ediff-update-meta-buffer StartBuffer ((set-buffer StartBuffer)) ediff-get-group-buffer this-command ediff-quit error ediff-KILLED-VITAL-BUFFER] 4]) #@229 If no unprocessed sessions in the group, delete the meta buffer. If no session is in progress, ask to confirm before deleting meta buffer. Otherwise, bury the meta buffer. If this is a session registry buffer then just bury it. (defalias 'ediff-quit-meta-buffer #[nil "p   = !!4!4!!D!@ D!!\nc!c!!c!!)\f~!~!!~!!)!!!! -" [buf ediff-dir-diffs-buffer dir-diffs-buffer ediff-meta-diff-buffer meta-diff-buffer ediff-parent-meta-buffer parent-buf ediff-registry-buffer dont-show-registry bury-buffer ediff-cleanup-meta-buffer ediff-safe-to-quit y-or-n-p "Quit this session group? " message "" ediff-dispose-of-meta-buffer error "This session group has active sessions---cannot exit" get-buffer buffer-name kill-buffer t ediff-show-meta-buffer ediff-show-registry] 4 (#$ . 30770) nil]) (defalias 'ediff-dispose-of-meta-buffer #[(buf) " \n\"p < !< !!<Ǝ q8!8!!8!)H =H\f!) !" [delq buf ediff-session-registry StartBuffer get-buffer buffer-name ((set-buffer StartBuffer)) ediff-dir-diffs-buffer kill-buffer this-command ediff-quit error ediff-KILLED-VITAL-BUFFER] 3]) (defalias 'ediff-get-meta-info #[(buf point &optional noerror) "\f ! !!p u !u !!uɎ q\nM\f #I \"q\f!\n\"n\n@n\n@\"n\nAZ\n@)=!) ? !+" [nil tmp olist result point buf get-buffer buffer-name StartBuffer ((set-buffer StartBuffer)) ediff-xemacs-p extent-at ediff-meta-info ediff-overlay-get overlays-at mapcar #[(elt) " \"" [overlay-get elt ediff-meta-info] 3] overlay-get invisible this-command ediff-quit error ediff-KILLED-VITAL-BUFFER noerror ediff-update-registry "No session info in this line"] 5]) (defalias 'ediff-next-meta-overlay-start #[(point) "meb\n0\fp# !\"p! , !IdI\f!@F \"F !I\f!)" [nil overl ediff-xemacs-p extent-at point ediff-meta-info next-extent extent-start-position overlays-at overlay-get overlay-end next-overlay-change] 5]) (defalias 'ediff-previous-meta-overlay-start #[(point) "odb\n0\fp# !\"p! , !YeY\f!@D \"D !oK\fS\f!\f!@Xe\f)" [nil overl ediff-xemacs-p extent-at point ediff-meta-info previous-extent extent-start-position overlays-at overlay-get overlay-start previous-overlay-change] 5]) (defalias 'ediff-patch-file-form-meta #[(file &optional startup-hooks) " ! !\f\n\"\n \f!*\"2!\"!\n! !\f\nY\n!Y\n!!b\nb!p!!!ێq~ \f}#*= !." [ediff-event-point last-command-event pos ediff-event-buffer meta-buf ediff-get-meta-info info ediff-meta-patchbufer meta-patchbuf nil session-buf beg-marker end-marker file-directory-p file string-match "/dev/null" error "`%s' is not an ordinary file" file-name-as-directory ediff-get-session-buffer ediff-get-session-objB-name ediff-get-session-objC-name get-buffer buffer-name "Patch has been already applied to this file--cannot be repeated!" StartBuffer ((set-buffer StartBuffer)) ediff-patch-file-internal startup-hooks this-command ediff-quit ediff-KILLED-VITAL-BUFFER] 4]) #@130 Run though the session list and mark identical files. This is used only for sessions that involve 2 or 3 files at the same time. (defalias 'ediff-meta-mark-equal-files #[nil "A@f\n!\n!\n! \nA\n*\f\nA\n* \nA\n* \f\"\f >)] \"\f \"A -p!" [ediff-meta-list nil elt fileinfo3 fileinfo2 fileinfo1 list ediff-get-session-objA ediff-get-session-objB ediff-get-session-objC value ediff-mark-if-equal metajob ediff-metajob-name (ediff-merge-directories-with-ancestor ediff-merge-filegroups-with-ancestor ediff-directories3 ediff-filegroups3) ediff-update-meta-buffer] 6 (#$ . 34037) nil]) (defalias 'ediff-mark-if-equal #[(fileinfo1 fileinfo2) " ! @!7\f@!7 @\f@#U7  A*\f A*" [get-buffer-create ediff-tmp-buffer file-directory-p fileinfo1 fileinfo2 ediff-make-diff2-buffer 0 t value elt] 5]) (byte-code "!!" [provide ediff-mult require ediff-util] 2)