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



(byte-code "\300\301!\210\302\303!\207" [provide reftex-global require reftex] 2)#@129 Create TAGS file by running `etags' on the current document.
The TAGS file is also immediately visited with `visit-tags-table'.
(defalias 'reftex-create-tags-file #[0 "\301!\210\302 \303 \304\305\306\307\310#\"r\311!q\210\312\313!\210\314!\210\315\316!)\207" [current-prefix-arg reftex-access-scan-info reftex-TeX-master-file reftex-all-document-files format "etags %s" mapconcat shell-quote-argument " " reftex-get-file-buffer-force message "Running etags to create TAGS file..." shell-command visit-tags-table "TAGS"] 8 (#$ . 166) nil])
(defvar reftex-grep-history nil)#@75 Last grep command used in \[reftex-grep-document]; default for next grep.
(defvar reftex-grep-command "grep -n " (#$ . 747))#@152 Run grep query through all files related to this document.
With prefix arg, force to rescan document.
No active TAGS table is required.

(fn GREP-CMD)
(defalias 'reftex-grep-document #[257 "\301!\210\302\303!\304\305\306\307\310##\311!\207" [current-prefix-arg reftex-access-scan-info reftex-all-document-files t format "%s %s" mapconcat identity " " grep] 9 (#$ . 878) (byte-code "\301\302\303\211\304%C\207" [reftex-grep-command read-from-minibuffer "Run grep on document (like this): " nil reftex-grep-history] 6)])#@252 Regexp search through all files of the current document.
Starts always in the master file.  Stops when a match is found.
To continue searching for next match, use command \[tags-loop-continue].
No active TAGS table is required.

(fn &optional REGEXP)
(defalias 'reftex-search-document #[256 "\301 \204 \302\303\304\"!\262\305\230\203 \306!\262\307!\210\310\311C\"\207" [current-prefix-arg reftex-this-word read-string format "Search regexp in document [%s]: " "" regexp-quote reftex-access-scan-info tags-search reftex-all-document-files] 6 (#$ . 1408) nil])#@553 Do `query-replace-regexp' of FROM with TO over the entire document.
Third arg DELIMITED (prefix arg) means replace only word-delimited matches.

As each match is found, the user must type a character saying
what to do with it.  Type SPC or `y' to replace the match,
DEL or `n' to skip and go to the next match.  For more directions,
type \[help-command] at that time.

If you exit (\[keyboard-quit], RET or q), you can resume the query replace
with the command \[tags-loop-continue].
No active TAGS table is required.

(fn &optional FROM TO DELIMITED)
(defalias 'reftex-query-replace-document #[768 "\301 \204 \302\303\304\"!\262\305\230\203 \306!\262\204& \302\303\307\"!\262\310!\210\311\312 \211\227\232?\2059 \313\206? %\210\314 \207" [current-prefix-arg reftex-this-word read-string format "Replace regexp in document [%s]: " "" regexp-quote "Replace regexp %s with: " reftex-access-scan-info fileloop-initialize-replace reftex-all-document-files default fileloop-continue] 10 (#$ . 1983) nil])#@57 Produce a list of all duplicate labels in the document.
(defalias 'reftex-find-duplicate-labels #[0 "\302\303!\210\304 \305\306\307\310J!\"\310!\262\211\204 \311\312!\210\313\314!\210\315\301!\210\316 \210\317c\210\320\321!\320\322!\261\210\323c\210\324c\210\325\326 !\210\327\330\331\"\210\327\332\333\"\210\211\203n \211@@\203g \211@A\203g T\262\334\335@\336#\337\261\210\211A\262\202I eb\210\305U\205\201 \340p!\210\341 \210\342\343!\207" [reftex-docstruct-symbol TeX-master reftex-access-scan-info t reftex-TeX-master-file 0 mapcar #[257 "\301@\302>\203\n \301\207\303@J\"\262\304GW\203! @\305\306\"B\207\301C\207" [reftex-docstruct-symbol nil (toc bof eof bib thebib label-numbers xr xr-doc master-dir file-error bibview-cache appendix is-multi index) reftex-all-assoc-string 1 mapcar #[257 "\300\3018!\207" [abbreviate-file-name 3] 4 "\n\n(fn X)"]] 6 "\n\n(fn X)"] reftex-uniquify-by-car error "No duplicate labels in document" switch-to-buffer-other-window "*Duplicate Labels*" make-local-variable erase-buffer "                MULTIPLE LABELS IN CURRENT DOCUMENT:\n" substitute-command-keys " Move point to label and type \\`r' to run a query-replace on the label\n" " and its references.  Type \\`q' to exit this buffer.\n\n" " LABEL               FILE\n" " -------------------------------------------------------------\n" use-local-map make-sparse-keymap local-set-key [113] #[0 "\300p!\210\301 \207" [kill-buffer delete-window] 2 "Kill this buffer." nil] [114] reftex-change-label mapconcat identity "\n    " "\n" kill-buffer delete-window message "Document does not contain duplicate labels."] 7 (#$ . 3008) nil])#@281 Run `query-replace-regexp' of FROM with TO in all macro arguments.
Works on the entire multifile document.
If you exit (\[keyboard-quit], RET or q), you can resume the query replace
with the command \[tags-loop-continue].
No active TAGS table is required.

(fn &optional FROM TO)
(defalias 'reftex-change-label #[512 "\300\301!\204 \302\303\304\"!\262\305\230\203 \211\262\204( \302\303\306\"\307\211$\262\310\311\312!\313Q\303\314\"\"\207" [reftex-this-word "-a-zA-Z0-9_*.:" read-string format "Replace label globally [%s]: " "" "Replace label %s with: " nil reftex-query-replace-document "{" regexp-quote "}" "{%s}"] 8 (#$ . 4661) nil])#@581 Renumber all simple labels in the document to make them sequentially.
Simple labels are the ones created by RefTeX, consisting only of the
prefix and a number.  After the command completes, all these labels will
have sequential numbers throughout the document.  Any references to
the labels will be changed as well.  For this, RefTeX looks at the
arguments of any macros which either start or end in the string `ref'.
This command should be used with care, in particular in multifile
documents.  You should not use it if another document refers to this
one with the `xr' package.
(defalias 'reftex-renumber-simple-labels #[0 "\304\305!\210\306 \203 \307\310!\204 \311\312!\210\313\314\315\316#\317Q\320\321Q\322\323Q\324\325\"\326 	J\327\211\211\211\211\211\211\211A\262	\242\211\262\203\220 @;\2032 \330\f@\"\2032 @\262\331\332\305@\"\"\262\331\"\203l \311\333\"\210\332\305@\"\334\211AT\241!P\262BB\262\230\2042 \335\262\2022 \211\204\230 \311\336!\210\337\326 !\210\340 \210\341	\f	\342\343%\262\307\344\345	G	G$!\203\342 \335\341	\f	\342\327%\210\327)\306 \203\332 \307\346!\203\332 \340 \210\304\305!\210\347\350!\207\347\351!\207" [reftex-typekey-to-prefix-alist reftex-docstruct-symbol inhibit-quit quit-flag reftex-access-scan-info 1 reftex-is-multi yes-or-no-p "Replacing all simple labels in multiple files is risky.  Continue? " error "Abort" "\\(" mapconcat cdr "\\|" "\\)" "\\`" "\\([0-9]+\\)\\'" "[{,]\\(" "\\([0-9]+\\)\\)[,}]" mapcar #[257 "\211A\300B\207" [0] 3 "\n\n(fn X)"] reftex-all-document-files nil string-match assoc match-string "Duplicate label %s" int-to-string t "Simple labels are already in correct sequence" reftex-ensure-write-access reftex-save-all-document-buffers reftex-translate "Undefined label or reference %s. Ignore and continue? " test format "Replace %d items at %d places in %d files? " "Save entire document? " message "Done replacing simple labels." "No replacements done"] 19 (#$ . 5320) nil])#@55 

(fn FILES SEARCH-RE TRANSLATE-ALIST ERROR-FMT TEST)
(defalias 'reftex-translate #[1285 "\301\302\211\211\211\211\211\211\f\211A\262\242\211\262\203\372 \303!\262\204% \304\305\"\210q\210\212\214~\210eb\210\306\f\302\307#\203\366 \310u\210\212\311\312!\262\313\f\"\262\314 \262\315\312!\262A\262\206[ `b\210\203\362 \316\317!\204\235 \316\320!\204\235 \316\321!\204\235 \316\322\323	!\"!\204\235 \316\324\322\323\n!\"\325Q!\204\235 \316\326\322\323\n!\"\327Q!\203\362 \330!\210\203\312 \211\204\312 \331\216\332\312\301\224\301\225#\210\333 \210\334\322\"!\204\306 \304\335!\210)\202\362 \203\333 \211\203\333 T\262\202\362 \204\362 \211\203\362 \312\224b\210\312\224\312\225|\210\211Ac\210)\202/ *\202 \207" [reftex-find-label-regexp-format 0 nil reftex-get-file-buffer-force error "No such file %s" re-search-forward t -1 reftex-match-string 1 assoc match-data reftex-what-macro looking-at "\\\\ref" "\\\\[a-zA-Z]*ref\\(range\\)?[^a-zA-Z]" "\\\\ref[a-zA-Z]*[^a-zA-Z]" format regexp-quote "\\\\begin[[:space:]]*{[^}]+}[[:space:]]*\\[[^][]*\\(?:{[^}{]*\\(?:{[^}{]*\\(?:{[^}{]*}[^}{]*\\)*}[^}{]*\\)*}[^][]*\\)*" "[^]]*\\]" "\\\\begin[[:space:]]*{[^}]+}[[:space:]]*{[^}{]*\\(?:{[^}{]*\\(?:{[^}{]*\\(?:{[^}{]*}[^}{]*\\)*}[^}{]*\\)*}[^}{]*\\)*" "[^}]*}" set-match-data #[0 "\300\301!\207" [reftex-unhighlight 1] 2] reftex-highlight ding y-or-n-p "Abort"] 19 (#$ . 7315)])#@141 Save all documents associated with the current document.
The function is useful after a global action like replacing or renumbering
labels.
(defalias 'reftex-save-all-document-buffers #[0 "\300 \301\211r\211A\262\242\211\262\205# \302!\262\211\203 \211q\210\303 \210\202 )\207" [reftex-all-document-files nil find-buffer-visiting save-buffer] 5 (#$ . 8735) nil])#@132 Make sure we have write access to all files in FILES.
Also checks if buffers visiting the files are in read-only mode.

(fn FILES)
(defalias 'reftex-ensure-write-access #[257 "\301\211\211A\262\242\211\262\205a \302!\204$ \303 \210\304\305\306\"!\204$ \307\310!\210\311!\204: \303 \210\304\305\312\"!\204: \307\310!\210\313!\211\262\203 r\211q\210)\203 \303 \210\304\305\314\315!\"!\204 \307\310!\210\202 \207" [buffer-read-only nil file-exists-p ding y-or-n-p format "No such file %s. Continue?" error "Abort" file-writable-p "No write access to %s. Continue?" find-buffer-visiting "Buffer %s is read-only.  Continue?" buffer-name] 8 (#$ . 9111)])
(defalias 'reftex-isearch-wrap-function #[0 "\302p\303\"!\210	\203 e\202 db\207" [isearch-next-buffer-function isearch-forward switch-to-buffer t] 4])
(defalias 'reftex-isearch-push-state-function #[0 "p\300\301\"\207" [make-closure #[257 "\301\300\"\207" [V0 reftex-isearch-pop-state-function] 4 "\n\n(fn CMD)"]] 4])#@19 

(fn CMD BUFFER)
(defalias 'reftex-isearch-pop-state-function #[514 "\300!\207" [switch-to-buffer] 4 (#$ . 10103)])#@29 

(fn STRING BOUND NOERROR)
(defalias 'reftex-isearch-isearch-search #[771 "\302\303 \211#\206] ?\205] \3041[ \205Y \211#\204X 	\203> p!\262\2044 \305\306!\210\202 \307!\210eb\210\202 p!\262\204N \305\310!\210\202 \307!\210db\210\202 `0\207\210\302\207" [isearch-next-buffer-function isearch-forward nil isearch-search-fun-default (error) error "Wrap forward" switch-to-buffer "Wrap backward"] 9 (#$ . 10226)])#@32 

(fn CRT-BUF &optional WRAPP)
(defalias 'reftex-isearch-switch-to-next-file #[513 "\301 \210\302!\303 \211\205? \203 \2047 \304!\262\2027 \204% \305!\262\211@\230\2043 \211A\262\202% \211A\262\211\205? \306@!\207" [isearch-forward reftex-access-scan-info buffer-file-name reftex-all-document-files last reverse find-file-noselect] 6 (#$ . 10662)])#@363 When on, isearch searches the whole document, not only the current file.
This minor mode allows isearch to search through all the files of
the current TeX document.

With no argument, this command toggles
`reftex-isearch-minor-mode'.  With a prefix argument ARG, turn
`reftex-isearch-minor-mode' on if ARG is positive, otherwise turn it off.

(fn &optional ARG)
(defalias 'reftex-isearch-minor-mode #[256 "\204	 \206 \306!\307X?\211=\204\242 \203e \310 \211\203\\ \211@r\211q\210	\203T \311\302!\2039 \312\302!\210\313\202R \312\303!\210\314\312\304!\210\315\312\305!\210\316\312\317!\210\313\320)A\266\202\202 \210\321\322\300\"\210\202\242 \310 \211\203\234 \211@r\211q\210	\203\224 \311\302!\203\202 \323\302!\210\202\222 \323\303!\210\323\304!\210\323\305!\210\323\317!\210\324)A\266\202\202g \210\325\322\300\"\210\326\327 !\207" [reftex-isearch-minor-mode reftex-mode multi-isearch-next-buffer-function isearch-wrap-function isearch-search-fun-function isearch-push-state-function prefix-numeric-value 0 buffer-list boundp make-local-variable reftex-isearch-switch-to-next-file reftex-isearch-wrap-function #[0 "\300\207" [reftex-isearch-isearch-search] 1] reftex-isearch-push-state-function isearch-next-buffer-function t add-hook reftex-mode-hook kill-local-variable nil remove-hook set-buffer-modified-p buffer-modified-p] 7 (#$ . 11030) "P"])
(byte-code "\300\301\302\303\211\301%\207" [add-minor-mode reftex-isearch-minor-mode "/I" nil] 6)
