;ELC   
;;; Compiled
;;; in Emacs version 29.4
;;; with all optimizations.



(byte-code "\300\301\302\303\304\305%\210\306\307\310\311\312DD\313\314\315%\210\306\316\310\311\317DD\320\314\321%\210\306\322\310\311\323DD\324\314\325\326\327&\207" [custom-declare-group diff nil "Comparing files with `diff'." :group tools custom-declare-variable diff-switches funcall function #[0 "\300\301!\207" [purecopy "-u"] 2 #1=""] "A string or list of strings specifying switches to be passed to diff.\n\nThis variable is also used in the `vc-diff' command (and related\ncommands) if the backend-specific diff switch variable isn't\nset (`vc-git-diff-switches' for git, for instance), and\n`vc-diff-switches' isn't set." :type (choice string (repeat string)) diff-command #[0 "\300\301!\207" [purecopy "diff"] 2 #1#] "The command to use to run diff." string diff-entire-buffers #[0 "\300\207" [t] 1 #1#] "If non-nil, diff the entire buffers, not just the visible part.\nIf nil, only use the narrowed-to parts of the buffers." boolean :version "29.1"] 8)
(defalias 'diff-switches #[0 "\205 \302\303	;\203 	\202 \304\305	\306#\"\207" [current-prefix-arg diff-switches read-string "Diff switches: " mapconcat identity " "] 6])#@273 Code run when the diff process exits.
CODE is the exit code of the process.  It should be 0 only if no diffs
were found.
If optional args OLD-TEMP-FILE and/or NEW-TEMP-FILE are non-nil,
delete the temporary files so named.

(fn CODE &optional OLD-TEMP-FILE NEW-TEMP-FILE)
(defalias 'diff-sentinel #[769 "\203 \301!\210\211\203 \301!\210\302 \210eb\210\212db\210\303\304\305\306\267\202, \307\202- \310\202- \311\312 #c*\207" [inhibit-read-only delete-file diff-setup-whitespace t format "\nDiff finished%s.  %s\n" #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (0 36 2 40)) " (no differences)" " (diff error)" "" current-time-string] 7 (#$ . 1225)])#@606 Find and display the differences between OLD and NEW files.
When called interactively, read NEW, then OLD, using the
minibuffer.  The default for NEW is the current buffer's file
name, and the default for OLD is a backup file for NEW, if one
exists.  If NO-ASYNC is non-nil, call diff synchronously.

When called interactively with a prefix argument SWITCHES, prompt
interactively for diff switches.  Otherwise, the switches
specified in the variable `diff-switches' are passed to the diff
command.

Non-interactively, OLD and NEW may each be a file or a buffer.

(fn OLD NEW &optional SWITCHES NO-ASYNC)
(defalias 'diff #[1026 "\300\301$!\207" [display-buffer diff-no-select] 10 (#$ . 1926) (byte-code "\203 \301!\203 \302\303\304\305!\"\306\307$\202 \302\310\306\211\307$\311!\211\203; \301!\203; \302\303\312\305!\"\313!\307$\202C \302\314\313!\306\307$\262\211\315 E\207" [buffer-file-name file-exists-p read-file-name format-prompt "Diff new file" file-name-nondirectory nil t "Diff new file: " file-newest-backup "Diff original file" file-name-directory "Diff original file: " diff-switches] 7)])#@190 Like `file-local-copy' but also supports a buffer as the argument.
When FILE-OR-BUF is a buffer, return the filename of a local
temporary file with the buffer's contents.

(fn FILE-OR-BUF)
(defalias 'diff-file-local-copy #[257 "\301!\203& r\211q\210\302\303!\203 \304\305\211\305\306%\210\202$ \304ed\305\306%\210)\207\307!\207" [diff-entire-buffers bufferp make-temp-file "buffer-content-" write-region nil nomessage file-local-copy] 8 (#$ . 3054)])#@170 Whether `diff-command' understands the "--label" option.
Possible values are:
  t     -- yes, it does
  nil   -- no, it does not
  check -- try to probe whether it does
(defvar diff-use-labels 'check (#$ . 3517))#@24 

(fn &optional FORCE)
(defalias 'diff-check-labels #[256 "\211\204\f \302=\204\f \207\303\304\305\"r\211q\210\306\307\"\216\3101( \311	\312\305\312\313%0\202- \210\312\2027 \2057 \314\315\312\305#??*\262\211\207" [diff-use-labels diff-command check generate-new-buffer " *temp*" t make-closure #[0 "\301\300!\205	 \302\300!\207" [V0 buffer-name kill-buffer] 2] (error) call-process nil "--help" search-backward "--label"] 8 (#$ . 3735)])#@479 Compare the OLD and NEW file/buffer.
If the optional SWITCHES is nil, the switches specified in the
variable `diff-switches' are passed to the diff command,
otherwise SWITCHES is used.  SWITCHES can be a string or a list
of strings.

If NO-ASYNC is non-nil, call diff synchronously.

By default, this function creates the diff in the "*Diff*"
buffer.  If BUF is non-nil, BUF is used instead.  This function
returns the buffer used.

(fn OLD NEW &optional SWITCHES NO-ASYNC BUF)
(defalias 'diff-no-select #[1282 "CCC\306\242!\204 \307\242!\240\210\306\242!\204\" \307\242!\240\210\211\242\204+ \211\240\210\211\242<\2047 \211\242C\240\210\204@ \310\311!\262\312 \210\313\242!\313\242!\314\315	\316\242\317\320\204^ \205\213 \n\321=\205\213 \322\f\242;\203r \f\242\202w \323\242!\322\242;\203\205 \242\202\212 \323\242!F	\206\223 \f\242	\206\233 \f\242D\244\"\"B\324#rq\210\321\325p!\210\321\326 )\210\327p!\210\330 \210\331\332!\210\333\334\n	%\211\211)\321\335\261)\210\204\336\337!\203\340\341	*+%\342\343\"\210\344\333\345	#\"\266\202\321\346\347*\350\350+&#)\210)\207" [diff-switches diff-command diff-use-labels default-directory buffer-read-only inhibit-read-only bufferp expand-file-name get-buffer-create "*Diff*" diff-check-labels diff-file-local-copy mapconcat identity append mapcar shell-quote-argument t "--label" prin1-to-string " " buffer-disable-undo erase-buffer buffer-enable-undo diff-mode make-local-variable revert-buffer-function make-closure #[514 "\304\303\242\302\242\301\242\300p%\207" [V0 V1 V2 V3 diff-no-select] 8 "\n\n(fn IGNORE-AUTO NOCONFIRM)"] "\n" fboundp make-process start-process "Diff" set-process-filter diff-process-filter set-process-sentinel #[514 "r\302!q\210\303\304!\301\300#)\207" [V0 V1 process-buffer diff-sentinel process-exit-status] 6 "\n\n(fn PROC MSG)"] diff-sentinel call-process nil diff-default-directory shell-file-name shell-command-switch] 22 (#$ . 4185)])#@20 

(fn PROC STRING)
(defalias 'diff-process-filter #[514 "r\301!q\210`\302!U\212\302!b\210\303c)\210\302!`\304\223)\210\211\205' \302!b)\207" [inhibit-read-only process-buffer process-mark t nil] 6 (#$ . 6192)])#@302 Diff this file with its backup file or vice versa.
Uses the latest backup, if there are several numerical backups.
If this file is a backup, diff it with its original.
The backup file is the first file given to `diff'.
With prefix arg SWITCHES, prompt for diff switches.

(fn FILE &optional SWITCHES)
(defalias 'diff-backup #[513 "\300\211\301!\203 \262\302!\262\202\" \303!\206 \304\305\"\262\262\306#\207" [nil backup-file-name-p file-name-sans-versions diff-latest-backup-file error "No backup found for %s" diff] 8 (#$ . 6416) (byte-code "\300\301!\302 D\207" [read-file-name "Diff (file with backup): " diff-switches] 2)])#@64 Return the latest existing backup of file FN, or nil.

(fn FN)
(defalias 'diff-latest-backup-file #[257 "\300\301\"\211\203 \211\301\"\207\302!\207" [find-file-name-handler diff-latest-backup-file file-newest-backup] 5 (#$ . 7064)])#@154 View the differences between BUFFER and its associated file.
This requires the external program `diff' to be in your `exec-path'.

(fn &optional BUFFER)
(defalias 'diff-buffer-with-file #[256 "\301\206 p!r\302!\206 \211q\210\204 \303\304!\210\305p\306\307$)\207" [buffer-file-name get-buffer buffer-base-buffer error "Buffer is not visiting a file" diff nil noasync] 7 (#$ . 7307) "bBuffer: "])#@624 Find and display the differences between OLD and NEW buffers.

When called interactively, read NEW, then OLD, using the
minibuffer.  The default for NEW is the current buffer, and the
default for OLD is the most recently selected other buffer.
If NO-ASYNC is non-nil, call diff synchronously.

When called interactively with a prefix argument, prompt
interactively for diff switches.  Otherwise, the switches
specified in the variable `diff-switches' are passed to the
diff command.

OLD and NEW may each be a buffer or a buffer name.

Also see the `diff-entire-buffers' variable.

(fn OLD NEW &optional SWITCHES NO-ASYNC)
(defalias 'diff-buffers #[1026 "\300\301!\301!$\207" [diff get-buffer] 9 (#$ . 7715) (byte-code "\300\301p\302#\300\303\304p\302\"\302#\211\305 E\207" [read-buffer "Diff new buffer" t "Diff original buffer" other-buffer diff-switches] 6)])
(provide 'diff)
