;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (byte-code "\300\301\302\303\304\305%\210\306\307\310\311\312DD\313\304\301\314\315&\210\306\316\310\311\317DD\320\304\301\314\321&\210\306\322\310\311\323DD\324\304\301\314\325&\210\306\326\310\311\327DD\330\304\301\314\325&\210\306\331\310\311\332DD\333\314\334\304\301&\210\306\335\310\311\336DD\337\314\340\304\301&\210\306\341\310\311\342DD\343\314\344\304\301&\210\306\345\310\311\346DD\347\304\301\314\350&\210\306\351\310\311\352DD\353\304\301\314\354&\207" [custom-declare-group texfrag nil "Preview LaTeX fragments in buffers with non-LaTeX major modes." :group preview custom-declare-variable texfrag-preview-buffer-at-start funcall function #[0 "\300\207" [nil] 1] "Preview buffer at start of command `texfrag-mode' when non-nil." :type boolean texfrag-setup-alist #[0 "\300\207" [((texfrag-html html-mode) (texfrag-eww eww-mode) (texfrag-sx sx-question-mode) (texfrag-prog prog-mode) (texfrag-trac-wiki trac-wiki-mode) (texfrag-org org-mode))] 1] "Alist that maps texfrag setup functions to lists of major modes.\nEach element is a `cons'.\nThe `car' of the cons is the symbol of the texfrag setup function\nand the `cdr' of the cons is the list of major modes supported by that\nsetup function." (repeat (cons :tag "Pair of texfrag setup function and list of corresponding major modes" (symbol :tag "Symbol of texfrag setup function") (repeat :tag "Major modes" (symbol)))) texfrag-header-default #[0 "\300\207" [#1="\\documentclass{article}\n\\usepackage{amsmath,amsfonts}\n\\usepackage[utf8]{inputenc}\n\\usepackage[T1]{fontenc}"] 1 #1#] "LaTeX header inserted by the function `texfrag-header-default' into the LaTeX buffer." string texfrag-subdir #[0 "\300\207" [#2="texfrag"] 1 #2#] "Name of the sub-directory for the preview data." texfrag-prefix #[0 "\300\207" [""] 1] "Prefix for texfrag keys.\nDefaults to the prefix of preview-mode.\nIf there is a collision with the major mode you can change this prefix in the major mode's hook function." key-sequence texfrag-LaTeX-max-file-name-length #[0 "\300\207" [72] 1] "Maximal length of LaTeX file names." integerp texfrag-poll-time #[0 "\300\207" [0.25] 1] "Polling time for `texfrag-region-synchronously' in seconds." numberp texfrag-eww-default-file-name #[0 "\300\207" [(make-temp-file "texfrag-eww" nil ".tex")] 1] "LaTeX file name for TeX fragments in eww if the url is not a file:// url.\nThis can be a file name or a sexp that generates the file name." (choice file sexp) texfrag-pdf-annot-LaTeX-file #[0 "\300\207" [(make-temp-file "texfrag-pdf" nil ".tex")] 1] "LaTeX file name for TeX fragments in pdf-annotations.\nThis can be a file name or a sexp that generates the file name." (choice file sexp)] 8) #@46 Customization type for `texfrag-frag-alist'. (defconst texfrag-frag-alist-type '(repeat (list :tag "Equation filter" (regexp :tag "Regexp matching the fragment beginning") (texfrag-regexp :tag "Regexp matching the fragment end") (string :tag "Replacement of beginning in LaTeX buffer") (string :tag "Replacement of end in LaTeX buffer") (set :tag "Fragment type" :inline t (list :tag "Show as display equation" :inline t (const :display) (const t)) (list :tag "Generator function" :inline t (const :generator) #'identity)))) (#$ . 2780)) #@76 Inhibit call of function `texfrag-mode' through `texfrag-global-mode-fun'. (defvar texfrag-inhibit nil (#$ . 3324)) (define-widget 'texfrag-regexp 'string "A regular expression." :match 'texfrag-widget-regexp-match :validate 'texfrag-widget-regexp-validate :tag "Regexp") #@272 Check whether VAL is *not* a valid regular expression with group references. Returns the error message of `string-match' if VAL is not a regular expression. Group references are just ignored. If VAL is a widget instead of a string (widget-value val) is tested. (fn VAL) (defalias 'texfrag-not-regexp-with-refs-p #[257 "\300!\203 \301!\262\302\303\304#\203$\305\306\307\211\310%\262\302\225\262\202\f\210\3111/\303\312\"0\207\313!\207" [widgetp widget-value 0 string-match "\\(?:^\\|[^\\\\]\\)\\(?:\\\\\\\\\\)*\\(\\\\\\)[0-9]" replace-match "\\\\\\\\" nil 1 (error) "" error-message-string] 8 (#$ . 3603)]) #@97 Return non-nil if VALUE is a valid regexps with additional group references. (fn WIDGET VALUE) (defalias 'texfrag-widget-regexp-match #[514 "\211;\205 \300!?\207" [texfrag-not-regexp-with-refs-p] 4 (#$ . 4230)]) #@123 Return WIDGET with non-nil :error property if VALUE is not a valid regexps with additional group references. (fn WIDGET) (defalias 'texfrag-widget-regexp-validate #[257 "\300!\211\205\301\302#\210\207" [texfrag-not-regexp-with-refs-p widget-put :error] 6 (#$ . 4452)]) (byte-code "\301\302\303\304\305DD\306\307\310\311&\210\301\312\303\304\313DD\314\311\315\307\310&\210\301\316\303\304\317DD\320\311\315\307\310&\210\321\322\323\324#\210\321\325\323\324#\210\321\326!\210\321\322!\210\321\327!\210\321\330!\207" [texfrag-frag-alist-type custom-declare-variable texfrag-LaTeX-frag-alist funcall function #[0 "\300\207" [(("\\$\\$" "\\$\\$" "$$" "$$" :display t) ("\\$" "\\$" "$" "$") ("\\\\\\[" "\\\\\\]" "\\\\[" "\\\\]" :display t) ("\\\\(" "\\\\)" "\\\\(" "\\\\)") ("\\\\begin{\\([a-z*]+\\)}" "\\\\end{\\1}" "\\\\begin{\\2}" "\\\\end{\\2}" :display t))] 1] "`texfrag-frag-alist' for LaTeX." :group texfrag :type texfrag-org-class-options #[0 "\300\207" [#1=""] 1 #1#] "LaTeX class options for texfrag in orgmode.\nDefaults to the empty string. Should include the enclosing brackets." string texfrag-org-add-to-header #[0 "\300\207" [#1#] 1 #1#] "LaTeX commands added between `org-format-latex-header' and \\begin{document}." require tex-site nil t preview cl-lib tex subr-x] 8) #@75 Function that collects all LaTeX header contents from the current buffer. (defvar texfrag-header-function 'texfrag-header-default (#$ . 5751)) (make-variable-buffer-local 'texfrag-header-function) #@111 String with the LaTeX tail or Function that collects all preview-LaTeX tail contents from the current buffer. (defvar texfrag-tail-function "\n\\end{document}\n%%Local Variables:\n%%TeX-master: t\n%%End:\n" (#$ . 5955)) (make-variable-buffer-local 'texfrag-tail-function) #@519 Function that searches for the next LaTeX fragment starting at point. It is called with: (funcall texfrag-next-frag-function BOUND) It returns nil if there is no LaTeX fragment within the region. Otherwise it returns a list (b e eqn match) with b: beginning of equation region e: end of equation region eqn: equation text inclusive delimiters, e.g., $ or \begin{align*}...\end{align*} (it is not necessarily equal to (buffer-substring b e)) match: entry from `texfrag-frag-alist' associated with the match (defvar texfrag-next-frag-function 'texfrag-next-frag-default (#$ . 6234)) (make-variable-buffer-local 'texfrag-next-frag-function) #@520 Function that searches for the previous LaTeX fragment starting at point. It is called with: (funcall \[texfrag-next-frag-function] BOUND) It returns nil if there is no LaTeX fragment within the region. Otherwise it returns a list (b e eqn) with b: beginning of equation region e: end of equation region eqn: equation text inclusive delimiters, e.g., $ or \begin{align*}...\end{align*} (it is not necessarily equal to (buffer-substring b e)) match: entry from `texfrag-frag-alist' associated with the match (defvar texfrag-previous-frag-function 'texfrag-previous-frag-default (#$ . 6891)) (make-variable-buffer-local 'texfrag-previous-frag-function) #@90 Only collect LaTeX fragments from comments. Modify this variable in the major mode hook. (defvar texfrag-comments-only t (#$ . 7560)) (make-variable-buffer-local 'texfrag-comments-only) #@1658 Regular expressions for the beginning and the end of formulas. Override the default in the hook for the major mode. The default works for some LaTeX fragments in doxygen. The value is a list of equation-filters. Each equation-filter is a list of two matchers, two replacement strings, and further property-value pairs. The first matcher can be a regular expression string matching the beginning of a formula or a list with the regular expression string as its first element and a function as its second element. The function returns non-nil if the match really starts a LaTeX fragment. The second matcher can only be regular expression. The regular expressions of the first two matchers match the beginning and the end of an equation in the original buffer. The last two strings are the beginning and the end of the corresponding equation in the LaTeX buffer. They have the format of the NEWTEXT argument of `replace-match'. You need to escape the backslash character ?\\ and you can refer to groups as explained further below. Capturing groups can be used in the first two regular expressions. These groups can be referred to in the last two replacement strings. The indexes for the captures are determined as match for the combined regular expression \(beginning regexp\)\(end regexp\). Following properties are recognized: :display (default: nil) if the :display property is non-nil fragments are wrapped into newlines by `texfrag-fix-display-math'. :generator (default: nil) May be nil or a generator function to be called with the transformed match as argument. The generator should return the image or a file name to the image to be displayed.  (defvar texfrag-frag-alist '(("\\\\f\\$" "\\\\f\\$" "$" "$" embedded) ("\\\\f\\[" "\\\\f\\]" "\\\\[" "\\\\]" display) ("\\\\f{\\([a-z]+[*]?\\)}[{]?" "\\\\f}" "\\\\begin{\\2}" "\\\\end{\\2}" display)) (#$ . 7754)) (make-variable-buffer-local 'texfrag-frag-alist) #@117 Filter function transforming the equation text from the original buffer into the equation text in the LaTeX buffer. (defvar texfrag-equation-filter 'identity (#$ . 9680)) (make-variable-buffer-local 'texfrag-equation-filter) #@594 Return a regular expression constructed from RE-TEMPLATE (a string). Thereby use the previous `match-data' DATA with corresponding string STR if this was a `string-match'. Let N be the number of sub-expressions of the previous match then \n with n=0,...,N are replaced by the quoted matches from the previous match and \n with n=N+1,... are replaced by n-(N+1). Example: With str equal to "foo bar" and preceeding match (string-match "f\\(o+\\)" str) the form (texfrag-combine-regexps "\\(ba\\)zz.*\\1G\\2" (match-data) str) returns: "\\(ba\\)zz.*ooG\\1" (fn RE-TEMPLATE DATA &optional STR) (defalias 'texfrag-combine-regexps #[770 "G\300\245\301\302\303\304\305#\211\262\203\233\211OP\262T\262G=\2030\211\306P\262\202H\307=\203E\211\305P\262T\262\202\304\310#=\203\223\311\302\"\312!W\203}\313\314 \315\316\"\216\317 !\210\311 \"\206v\303)\262!\202\205\320\321 ZT\"P\262G\\\262\266\202\211\306P\262\202\211\301OP\207" [2 nil 0 "" string-match "\\\\" "\\" 92 "[0-9]+" match-string string-to-number regexp-quote match-data make-closure #[0 "\301\300\302\"\207" [V0 set-match-data evaporate] 3] set-match-data format "\\%d"] 15 (#$ . 9912)]) #@479 Combines the match data in ARGS of multiple `string-match' commands. The combined data appears as if it originates from one `string-match' command. Let str_1, str_2, ... be strings and re_1, re_2, ... regular expressions. Set matches_k to the `match-data' of (`string-match' re_k str_k) for k=1,2,.... (texfrag-combine-match-data str_1 matches_1 str_2 matches_2 ...) returns the result of (string-match "\\(re_1\\)\\(re_2\\)..." "str_1str_2...") (fn str_1 re_1 str_2 re_2 ...) (defalias 'texfrag-combine-match-data #[128 "\300\301C\203,@A@G\302\303\304\305\"\"\"\262\211\242\\\240\210AA\262\266\202\301\242BB\207" [nil 0 append mapcar make-closure #[257 "\211\300\242\\\207" [V0] 3 "\n\n(fn I)"]] 12 (#$ . 11125)]) #@108 Extract the beginning regexp from FRAG. FRAG is a LaTeX fragment entry in `texfrag-frag-alist'. (fn FRAG) (defalias 'texfrag-regexp-begin #[257 "\211:\203\f\211@\262\202\207" [] 2 (#$ . 11867)]) #@205 Search for the next LaTeX fragment in region from `point' to BOUND. See the documentation of variable `texfrag-next-frag-function' for further details about the argument and the return value. (fn BOUND) (defalias 'texfrag-next-frag-default #[257 "\302\303\304#\260\305\211\204\222\306\307#\203\222\310\224`\311\310!\312\313\314$\211@;\204.\211@A@ \203\215\315 \316A@#\306\305\307#\310\224\311\310!\317\"\210\315 P\320 $\204a\321\322 \fp$\210\323!\210 \324\325\f8\305\211$ \326\n\"!\324\3278\305\211 $Q F\266\210\262\266\202\207" [texfrag-frag-alist texfrag-equation-filter mapconcat texfrag-regexp-begin "\\|" nil re-search-forward t 0 match-string cl-assoc :test #[514 "\300\301!\"\207" [string-match texfrag-regexp-begin] 5 "\n\n(fn KEY CANDIDATE)"] match-data texfrag-combine-regexps string-match texfrag-combine-match-data user-error "LaTeX fragment beginning at %s with %s in buffer %s not closed" set-match-data replace-match 2 buffer-substring-no-properties 3] 24 (#$ . 12074)]) #@204 Search for the next LaTeX fragment in the region from `point' to BOUND. See the documentation of `texfrag-previous-frag-function' for further details about the argument and the return value. (fn BOUND) (defalias 'texfrag-previous-frag-default #[257 "\302\303\304#\260\305\306#\205s\307\224\307\225\310\307!\311\312\313$\314 \305\315!\316\306#\307\225\310\307!\317@\"\210\314 \320 $P\204J\321\322 #\210\323!\210\n\324\325 8\316\211$ \326 \"!\324\327 8\316\211$Q\nF\266\213\207" [texfrag-frag-alist texfrag-equation-filter mapconcat cadr "\\|" re-search-backward t 0 match-string cl-rassoc :test #[514 "\300@\"\207" [string-match] 5 "\n\n(fn KEY CANDIDATE)"] match-data texfrag-regexp-begin nil string-match texfrag-combine-match-data user-error "LaTeX fragment ending at %d with %s has no start string" set-match-data replace-match 2 buffer-substring-no-properties 3] 22 (#$ . 13116)]) #@65 Just return the value of the variable `texfrag-header-default'. (defalias 'texfrag-header-default #[0 "\207" [texfrag-header-default] 1 (#$ . 14046)]) #@117 Reduce via BINOP all PRED satisfying ARGS. Returns nil if none of the args are numbers. (fn BINOP PRED &rest ARGS) (defalias 'texfrag-reduce-any #[642 "\300C\301\302\303$\"\210\211\242\207" [nil mapc make-closure #[257 "\301!\205\302\301\302\242!\203\300\302\242\"\206\240\207" [V0 V1 V2] 5 "\n\n(fn X)"]] 10 (#$ . 14205)]) #@59 The position of the start of the current comment, or nil. (defalias 'texfrag-comment-start-position #[0 "\212\300\301\300x\210\302 \3038\205\3048\211\262\211b\210\305\262\262\204\211\262)\207" [nil " \n" syntax-ppss 4 8 t] 4 (#$ . 14551)]) #@57 The position of the end of the current comment, or nil. (defalias 'texfrag-comment-end-position #[0 "\212\300\301\300w\302V\203m\204\300u\210\303 \3048\205(\305`d\300\211\306&\210`\262m?\262\204\211\262)\207" [nil " \n" 0 syntax-ppss 4 parse-partial-sexp syntax-table] 9 (#$ . 14808)]) #@280 Search for the next LaTeX fragment in the region from `point' to BOUND. list with the entries as in `texfrag-next-frag-function': ;(b e str) b: beginning of LaTeX fragment e: end of LaTeX fragment str: LaTeX equation to be inserted in the target LaTeX file (fn &optional BOUND) (defalias 'texfrag-search-forward-fragment #[256 "\302\211\203;\203`W\203@\303 \211\262\204\304\305\"\203@ \306\307\310\206+\303 $!\211\262\204@\304\305\"\210\202 !\262\203IA@b\210\207" [texfrag-comments-only texfrag-next-frag-function nil texfrag-comment-end-position comment-search-forward t texfrag-reduce-any min numberp] 9 (#$ . 15115)]) #@155 Search backward for next LaTeX fragment in region from `point' to BOUND. See `texfrag-search-forward-fragment' for further details. (fn &optional BOUND) (defalias 'texfrag-search-backward-fragment #[256 "\302\211\203+\303 \211\262\204\304\305\"\2030 \206\303 !\211\262\2040\304\305\"\210\202 !\262\2038@b\210\207" [texfrag-comments-only texfrag-previous-frag-function nil texfrag-comment-start-position comment-search-backward t] 6 (#$ . 15771)]) #@124 Used instead of `buffer-file-name' for function `texfrag-LaTeX-file' when non-nil. Can be modified in the major mode hook. (defvar texfrag-LaTeX-file nil (#$ . 16247)) (make-variable-buffer-local 'texfrag-LaTeX-file) #@124 Get file name from option OPT. OPT can be a file name string or a Lisp form that generates the file name string. (fn OPT) (defalias 'texfrag-file-name-option #[257 "\211;\203\207\300!\207" [eval] 3 (#$ . 16471)]) #@198 Replace chars in NAME that are not ASCII and do not match RE. RE is a regular expression defaulting to "[^]<>:"/\|?*+{}[]". Relevant characters are replaced by _hex-number. (fn NAME &optional RE) (defalias 'texfrag-file-name-escape #[513 "\211C\211\242\204 \211\300\240\210\301\302\303\"\304#\207" ["[^]<>:\"/\\|?*+{}[]" mapconcat make-closure #[257 "\301!\302U\204\303V\203\304W\203\305\300\242\"\203\207\306\307\"\207" [V0 char-to-string 95 32 128 string-match format "_%0.2X"] 5 "\n\n(fn CHAR)"] ""] 7 (#$ . 16695)]) #@370 Return name of LaTeX file corresponding to the current buffers source file. Return the absolute file name if ABSOLUTE is non-nil. Create the directory of the LaTeX file (inclusive parent directories) if it does not exist yet and MKDIR is non-nil. Return the preview directory instead of the LaTeX file name if PRV-DIR is non-nil. (fn &optional ABSOLUTE MKDIR PRV-DIR) (defalias 'texfrag-LaTeX-file #[768 "\206 \306 !\205 \307 !\211\203\310!\206>\311\n!\203%\312\313 !!\202>\204-\314\315!\210\316\317\320 \321\f\322Z\320 G^O\323Q\324\"\205E\325!\211\203R\211\211\326\230\262\203\234\327\325\307 \206[\320 !!\262\211G\fV\203l\211\330\fO\262\331!\211\203\332 \"\203\323P\262\210\211;\205\212\333\334\"?\205\217\334\203\227\335\202\231 Q\262\203\253\336!\204\253\337\324\"\210\203\264\313\"\207\207" [texfrag-LaTeX-file texfrag-tex-buffer default-directory texfrag-subdir texfrag-LaTeX-max-file-name-length TeX-file-extensions buffer-live-p buffer-file-name file-name-directory file-writable-p directory-file-name expand-file-name user-error "Default directory is write protected and tex-path is not allowed to create a temporary directory" make-temp-file "texfrag-" buffer-name nil 20 "-" t file-name-nondirectory "" texfrag-file-name-escape 0 file-name-extension assoc-string string-suffix-p "." "prv" file-directory-p mkdir TeX-default-extension] 10 (#$ . 17240)]) #@216 Return preview directory for the LaTeX file with texfrags for BUF. ABSOLUTE and MKDIR have the same meaning as for function `texfrag-LaTeX-file'. BUF defaults to `current-buffer'. (fn &optional BUF ABSOLUTE MKDIR) (defalias 'texfrag-preview-dir #[768 "r\206pq\210\300\301#)\207" [texfrag-LaTeX-file t] 7 (#$ . 18659)]) #@66 `texfrag-region' generates this buffer as a LaTeX target buffer. (defvar texfrag-tex-buffer nil (#$ . 18990)) (make-variable-buffer-local 'texfrag-tex-buffer) #@119 `texfrag-region' generates a LaTeX-buffer. This variable is the link back from the LaTeX-buffer to the source buffer. (defvar texfrag-source-buffer nil (#$ . 19156)) (make-variable-buffer-local 'texfrag-source-buffer) #@55 Run BODY in `texfrag-source-buffer'. (fn &rest BODY) (defalias 'texfrag-with-source-buffer '(macro . #[128 "\300\301\302\303BBE\207" [progn (unless (buffer-live-p texfrag-source-buffer) (user-error "TeXfrag source buffer %S not ready in LaTeX target buffer %S" texfrag-source-buffer (current-buffer))) with-current-buffer texfrag-source-buffer] 6 (#$ . 19380)])) (put 'texfrag-with-source-buffer 'edebug-form-spec 'body) #@55 Run BODY in `texfrag-source-buffer'. (fn &rest BODY) (defalias 'texfrag-with-tex-buffer '(macro . #[128 "\300\301\302\303BBE\207" [progn (unless (buffer-live-p texfrag-tex-buffer) (user-error "TeXfrag LaTeX buffer %S not ready in LaTeX target buffer %S" texfrag-tex-buffer (current-buffer))) with-current-buffer texfrag-tex-buffer] 6 (#$ . 19809)])) (put 'texfrag-with-tex-buffer 'edebug-form-spec 'body) #@105 Get the transformed equation entry from return value MATCH of `texfrag-next-frag-function'. (fn MATCH) (defalias 'texfrag-match-transformed-eqn '(macro . #[257 "\300\301E\207" [nth 2] 4 (#$ . 20223)])) #@85 Get FRAG entry from return value MATCH of `texfrag-next-frag-function'. (fn MATCH) (defalias 'texfrag-match-frag '(macro . #[257 "\300\301E\207" [nth 3] 4 (#$ . 20433)])) #@73 Get the property list in entry FRAG of `texfrag-frag-alist'. (fn FRAG) (defalias 'texfrag-frag-plist '(macro . #[257 "\300\301E\207" [nthcdr 4] 4 (#$ . 20612)])) #@63 Get the property list in the FRAG entry of MATCH. (fn MATCH) (defalias 'texfrag-match-plist '(macro . #[257 "\300\301DD\207" [texfrag-frag-plist texfrag-match-frag] 4 (#$ . 20782)])) #@212 Set in `texfrag-region' and reset in `texfrag-after-tex' in the source buffer. A non-nil value indicates that `preview-region' is running in the LaTeX target buffer. The actual value is the LaTeX target buffer. (defvar texfrag-running nil (#$ . 20974)) (make-variable-buffer-local 'texfrag-running) #@112 Buffer-local hook function for `texfrag-after-preview-hook'. It is used in LaTeX buffers generated by texfrag. (defalias 'texfrag-after-tex #[0 "\302!\204\f\303\304p#\210rq\210\305)\306\307\305\211\211$\210\305\207" [texfrag-source-buffer texfrag-running buffer-live-p user-error "TeXfrag source buffer %S not ready in LaTeX target buffer %S" nil cl--map-overlays #[514 "\300\301\"\302=\203V\303\304!\305\"\211\205\306!\211\205\304!\211\205$\307!\211\2051rq\210\310\")\211\203T\211\300\311\"\230\203K\312$\210\202P\313!\210\313!\210\266\314\207" [overlay-get category preview-overlay get-text-property overlay-start texfrag-src overlay-buffer overlay-end buffer-substring-no-properties texfrag-string move-overlay delete-overlay nil] 12 "\n\n(fn OL --CL-VAR--)"]] 5 (#$ . 21280)]) #@109 Hook run as last action before `texfrag-tex-buffer' is killed. `TeX-output-buffer' has already been closed. (defvar texfrag-cleanup-hook nil (#$ . 22103)) #@100 Delete the buffer registered at `texfrag-tex-buffer'. Delete also the corresponding output buffer. (defalias 'texfrag-cleanup #[0 "\303!\205kp\303!\204\304\305p#\210rq\210 )=\205krq\210\306\307\310 !!\303!\2050\311!\312\303!\203J\313!\203B\314!\210\315\312!\210\316!\210\317\320!\210\315\312!\210\316p!\210)\266)\303!\203h\321\322\323\312C$\210\312\211\207" [texfrag-tex-buffer texfrag-source-buffer kill-buffer-query-functions buffer-live-p user-error "TeXfrag LaTeX buffer %S not ready in LaTeX target buffer %S" TeX-process-buffer file-name-sans-extension buffer-file-name get-buffer-process nil process-live-p kill-process set-buffer-modified-p kill-buffer run-hooks texfrag-cleanup-hook cl--assertion-failed (null (buffer-live-p texfrag-tex-buffer)) "Texfrag-tex-buffer %s still live."] 5 (#$ . 22265)]) #@178 Buffer-local hook run after the preview images have been created. (i.e., after `preview-parse-messages'). The current buffer is the one stored in variable `TeX-command-buffer'. (defvar texfrag-after-preview-hook nil (#$ . 23105)) #@105 Run hooks from `texfrag-after-preview-hook' as after-advice for `preview-parse-messages'. (fn &rest _) (defalias 'texfrag-after-preview #[128 "rq\210\301\302!)\207" [TeX-command-buffer run-hooks texfrag-after-preview-hook] 3 (#$ . 23342)]) (advice-add 'preview-parse-messages :after 'texfrag-after-preview) #@69 Clear out all texfrag overlays within region from B to E. (fn B E) (defalias 'texfrag-clearout-region #[514 "\300\301\302$\210\302\207" [cl--map-overlays #[514 "\300\301\"\204\300\302\"\303=\203\304!\210\305\207" [overlay-get texfrag-string category preview-overlay delete-overlay nil] 5 "\n\n(fn OL --CL-VAR--)"] nil] 7 (#$ . 23657)]) #@139 Insert part of the TeX buffer described by FUN. FUN may be a function returning the string to be inserted or the string itself. (fn FUN) (defalias 'texfrag-insert-tex-part '(macro . #[257 "\300\301\302\303DD\304D\305DD\306\307\310\311 D FDFDD\207" [insert texfrag-with-source-buffer cond stringp functionp funcall t user-error "Unrecognized format of %s: %s" quote] 11 (#$ . 24010)])) (put 'texfrag-insert-tex-part 'edebug-form-spec 'form) #@195 Call me like `preview-gs-place'. Return OV after setting 'preview-image to a cons (IMG . IMG) assuming that img is already an image. (fn OV IMG BOX &optional COUNTERS TEMPDIR &rest PLACE-OPTS) (defalias 'texfrag-generator-place-preview #[1411 ";\203.\300!\262\301!\203(\302!\204(\303!\262\304\305\211B#\210\202.\306\307\"\210\207" [expand-file-name file-readable-p file-directory-p create-image overlay-put preview-image warn "Cannot find image file %S"] 11 (#$ . 24465)]) #@511 Collect LaTeX fragments in region from B to E in the LaTeX target file. Thereby, the LaTeX target file is that one returned by function `texfrag-LaTeX-file'. Afterwards start `preview-document' on the target file. The function `texfrag-after-tex' is hooked into `texfrag-after-preview-hook' which runs after `preview-document'. `texfrag-after-tex' transfers the preview images from the LaTeX target file buffer to the source buffer. B defaults to `point-min' and E defaults to `point-max'. (fn &optional B E) (defalias 'texfrag-region #[512 "\204e\262\211\204d\262\306\307\310\307\211\"p\311\312\313\314\315\206 !#!\306\211\211\n\306\2119\316!\262:*\317  \"\210\212\nb\210\320\n!\211\262\203\317@A@\306\321\322\3238\233\324\"\211\203\222\325!\204r\326\327p$\210\330\331;<\332\333 8!\306\211\334=!\306&\262*\266\202G\335\"\262\204\253rq\210\336 !\210ed|\210)\337\"\262\340\341#\210rq\210\342\343\333 8\344#\261\210)\266\202G)\203\236\345!\204\336\346\347!\210rq\210\350\351#\210\352\353!\210+\354\353\355\307#\210\345+!\204\326\356+p#\210r+q\2100;\2030\202'\3250!\203!0 \202'\326\357\3600#)c\210eb\210\345+!\204;\326\356+p#\210r+q\2101;\203K1\202^\3251!\203X1 \202^\326\357\3611#)c\210\345+!\204o\326\356+p#\210r+q\210)\362c\210\363 \210\306\211>?\364 \210\365\366\367\307\211$\210rq\210@)\307A\211\370 ,\202\242\306\211@*\207" [coding-system-for-write buffer-file-coding-system preview-scale texfrag-inhibit make-backup-files auto-insert nil t texfrag-LaTeX-file intern-soft replace-regexp-in-string "-with-signature" "" symbol-name find-file-noselect texfrag-clearout-region texfrag-search-forward-fragment plist-get 4 3 :generator functionp user-error "Generator %S used at %s in buffer %s is not a function" texfrag ((texfrag (place texfrag-generator-place-preview))) preview-place-preview 2 cl-copy-list make-overlay set-buffer-file-coding-system buffer-substring-no-properties overlay-put texfrag-string "\n" propertize texfrag-src buffer-live-p cl--assertion-failed (buffer-live-p tex-buf) message "Running texfrag with LaTeX target buffer %S and source buffer %S" make-local-variable texfrag-source-buffer put permanent-local "TeXfrag source buffer %S not ready in LaTeX target buffer %S" "Unrecognized format of %s: %s" texfrag-tail-function texfrag-header-function "\n\\begin{document}" save-buffer TeX-latex-mode add-hook texfrag-after-preview-hook texfrag-after-tex preview-document auto-insert-alist texfrag-tex-buffer preview-image-creators preview-image-type TeX-active-tempdir LaTeX-mode-hook TeX-mode-hook texfrag-running preview-auto-cache-preamble] 23 (#$ . 24964) "r"]) #@79 Check whether the overlays in region from B to E are ready for use. (fn B E) (defalias 'texfrag-ready-p #[514 "\300C\301C\3022\303\304\305#\301$0\210\242\203\300\207\211\242\207" [t nil --cl-block---cl-finish---- cl--map-overlays make-closure #[514 "\302\303\"\304>\203\302\305\"\204\302\306\"A\204'\301\307\240\210\300\307\240\204'\310\311\307\"\210\307\207" [V0 V1 overlay-get preview-state (active inactive) queued preview-image nil throw --cl-block---cl-finish----] 5 "\n\n(fn OL --CL-VAR--)"]] 9 (#$ . 27682)]) #@293 While TEST is non-nil and SECONDS long quit is not sent run BODY. When the user presses a key other than \[keyboard-quit] the event is available as let-bound variable EVENT in BODY. Returns t when it exits on \[keyboard-quit] and nil when TEST evaluates to nil. (fn TEST SECONDS &rest BODY) (defalias 'texfrag-while-not-quit-and '(macro . #[642 "\300\301\302\303\304\305\306\307\310\311\312 FE\313BBDEBB\314BBB\207" [let ((inhibit-quit t) event) while and null eq setq event read-event "Press C-g to abort." nil (7) ((eq event 7))] 16 (#$ . 28226)])) (byte-code "\300\301\302\303#\210\304\301\305\306#\300\207" [put texfrag-while-not-quit-and edebug-form-spec (sexp sexp body) function-put lisp-indent-function 2] 4) #@870 Call `texfrag-region' on region from B to E synchronously. It waits for `texfrag-after-tex' to finish. Usage example: File content of "test.org": --8<------------------------------------------------------------------ Start texfrag region. First TeX-fragment: \(z= qrt{x^2 + y^2}\) Second TeX-fragment: \(s(x) = \int_0^x \sqrt{1 + f'(\bar x)^2}\;d\bar x\) Stop texfrag region. #+begin_src emacs-lisp :results silent (preview-clearout-buffer) (goto-char (point-min)) (texfrag-region-synchronously (point-min) (search-forward "Stop texfrag region.")) (goto-char (point-min)) (search-forward "\\(")) (let ((b (match-beginning 0))) (message "%S" (overlays-at b))) #+end_src * Local Variables :noexport: Local Variables: mode: org eval: (texfrag-mode) read-only-mode: nil End: -->8------------------------------------------------------------------ (fn B E) (defalias 'texfrag-region-synchronously #[514 "\303\"\210\304\305 \203\306\307\305\n#\211\262\310=\203 )\211\310=\266\202\203&\311 \210\304\305\312\"\204>\306\307\305\n#\211\262\310=\203*)\211\310=\266\202\205I\311 \207" [inhibit-quit texfrag-running texfrag-poll-time texfrag-region t nil read-event "Press C-g to abort." 7 keyboard-quit texfrag-ready-p] 8 (#$ . 28955) "r"]) #@213 A function registered here will override the behavior of `preview-region'. The function is called with two arguments the beginning and the end of the region to be processed. It defaults to the original function. (defvar texfrag-preview-region-function nil (#$ . 30225)) (make-variable-buffer-local 'texfrag-preview-region-function) #@48 Process LaTeX fragments in the whole document. (defalias 'texfrag-document #[0 "ed\"\207" [texfrag-preview-region-function] 3 (#$ . 30563) nil]) #@66 Keymap of command `texfrag-mode' to be bound to some prefix-key. (defvar texfrag-submap (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\207" [make-sparse-keymap define-key "" texfrag-document "" preview-at-point "\f" texfrag-show-log] 5) (#$ . 30715)) (advice-add 'preview-region :around 'texfrag-preview-region-ad) #@34 Menu for command `texfrag-mode'. (defvar texfrag-mode-map (make-sparse-keymap) (#$ . 31063)) (easy-menu-do-define nil texfrag-mode-map "Generating or removing previews with texfrag." '("TeX" ["Turn off texfrag mode" (texfrag-mode -1) t] ["Help for texfrag mode" (describe-function 'texfrag-mode) t] "--" "Generate previews" ["at point" preview-at-point t] ["for region" texfrag-region t] ["for document" texfrag-document t] "--" "Remove previews" ["at point" preview-clearout-at-point t] ["from region" preview-clearout t] ["from document" preview-clearout-document t] "--" "Log" ["Show log file" texfrag-show-log t])) #@130 In texfrag mode set the prefix key sequence buffer-locally to PREFIX. Example: (texfrag-set-prefix (kbd "")) (fn PREFIX) (defalias 'texfrag-set-prefix #[257 "\303 \304#\210\211\303 \n#\207" [texfrag-mode-map texfrag-prefix texfrag-submap define-key nil] 5 (#$ . 31689)]) #@68 Find the setup function associated to current buffer's major mode. (defalias 'texfrag-find-setup-function #[0 "\302\303\304\305\"\" C\211\242\235\204\211\242\306N\240\204 \211\242\205&\307\310\311\"\"\242\207" [texfrag-setup-alist major-mode apply append mapcar cdr derived-mode-parent cl-rassoc-if make-closure #[257 "\300\242\235\207" [V0] 3 "\n\n(fn MODES)"]] 6 (#$ . 31977)]) #@86 Deregister me from `post-command-hook' and run `texfrag-region' for the full buffer. (defalias 'texfrag-post-command-preview #[0 "\300\301\302\303#\210\304ed\"\207" [remove-hook post-command-hook texfrag-post-command-preview t texfrag-region] 4 (#$ . 32373)]) #@93 Non-nil if TeXfrag mode is enabled. Use the command `texfrag-mode' to change this variable. (defvar texfrag-mode nil (#$ . 32639)) (make-variable-buffer-local 'texfrag-mode) #@631 Preview LaTeX fragments in current buffer with the help of the `preview' package. This is a minor mode. If called interactively, toggle the `TeXfrag mode' mode. If the prefix argument is positive, enable the mode, and if it is zero or negative, disable the mode. If called from Lisp, toggle the mode if ARG is `toggle'. Enable the mode if ARG is nil, omitted, or is a positive number. Disable the mode if ARG is a negative number. To check whether the minor mode is enabled in the current buffer, evaluate `texfrag-mode'. The mode's hook is called both when the mode is enabled and when it is disabled. (fn &optional ARG) (defalias 'texfrag-mode #[256 "\306 \307=\203 ?\202\247\203\310W\203\311\202\312\313\301!\2031\314\300 \"\2031\300 B\315 \211\203:\211 \210\210\203r\312 \204G\316\317\f &#\210\320 \210\321 \210'\203`\322\323\324\312\211$\210\322\325\326\311\312$\210\322\327\326\311\312$\210)\202\201\330\325\326\312#\210\330\327\326\312#\210\331 \210\332\333\203\213\334\202\214\335\"\210\336\337!\203\256\306 \203\240\211\306 \232\203\256\340\341\203\252\342\202\253\343\344#\210\210\345 \210\207" [texfrag-mode local-minor-modes texfrag-inhibit texfrag-preview-region-function texfrag-mode-map texfrag-prefix current-message toggle 1 nil t boundp delq texfrag-find-setup-function texfrag-region define-key LaTeX-preview-setup preview-mode-setup add-hook post-command-hook texfrag-post-command-preview kill-buffer-hook texfrag-cleanup change-major-mode-hook remove-hook preview-clearout-document run-hooks texfrag-mode-hook texfrag-mode-on-hook texfrag-mode-off-hook called-interactively-p any message "TeXfrag mode %sabled%s" "en" "dis" " in current buffer" force-mode-line-update texfrag-submap texfrag-preview-buffer-at-start] 7 (#$ . 32820) (byte-code "\203\n\301!\202 \302C\207" [current-prefix-arg prefix-numeric-value toggle] 2)]) (defvar texfrag-mode-hook nil) (byte-code "\301\302N\204\f\303\301\302\304#\210\303\301\305\306#\210\303\301\307\310C#\210\311\312\313\314\300!\205#\310\211%\207" [texfrag-mode-map texfrag-mode-hook variable-documentation put "Hook run after entering or leaving `texfrag-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" custom-type hook standard-value nil add-minor-mode texfrag-mode " TeX" boundp] 6) #@128 Helper function for command `texfrag-global-mode'. Switch texfrag mode on if the major mode of the current buffer supports it. (defalias 'texfrag-global-mode-fun #[0 "?\205 ?\205\n?\205\303 \205\301 \207" [texfrag-inhibit texfrag-mode texfrag-source-buffer texfrag-find-setup-function] 1 (#$ . 35214)]) (put 'texfrag-global-mode 'globalized-minor-mode t) (defvar texfrag-mode-major-mode nil nil) (byte-code "\300\301!\210\302\303\304\305\306DD\307\310\311\312\313\314\315\316\317\320\317& \207" [make-variable-buffer-local texfrag-mode-major-mode custom-declare-variable texfrag-global-mode funcall function #[0 "\300\207" [nil] 1] "Non-nil if Texfrag-Global mode is enabled.\nSee the `texfrag-global-mode' command\nfor a description of this minor mode.\nSetting this variable directly does not take effect;\neither customize it (see the info node `Easy Customization')\nor call the function `texfrag-global-mode'." :set custom-set-minor-mode :initialize custom-initialize-default :type boolean :group texfrag :require] 14) #@351 Toggle Texfrag mode in all buffers. With prefix ARG, enable Texfrag-Global mode if ARG is positive; otherwise, disable it. If called from Lisp, enable the mode if ARG is omitted or nil. Texfrag mode is enabled in all buffers where `texfrag-global-mode-fun' would do it. See `texfrag-mode' for more information on Texfrag mode. (fn &optional ARG) (defalias 'texfrag-global-mode #[256 "\303 \304\301\305=\203\306\301!?\202!\247\203 \307W\203 \310\202!\311\"\210\312\300!\2038\313\301\"\306\301!\2038\301B \203N\314\315\316\"\210\314\317\320\"\210\314\321\322\"\210\202]\323\315\316\"\210\323\317\320\"\210\323\321\322\"\210\324 \211\203\203\211@r\211q\210 \203s\325 \210\202{\n\203{\302\326!\210)A\266\202\202_\210\327\330\306\301!\203\220\331\202\221\332\"\210\333\334!\203\271\335\301!\210\303 \203\251\211\303 \232\203\271\336\337\306\301!\203\265\340\202\266\341\342#\210\210\343 \210\306\301!\207" [global-minor-modes texfrag-global-mode texfrag-mode current-message set-default toggle default-value 1 nil t boundp delq add-hook after-change-major-mode-hook texfrag-global-mode-enable-in-buffers find-file-hook texfrag-global-mode-check-buffers change-major-mode-hook texfrag-global-mode-cmhh remove-hook buffer-list texfrag-global-mode-fun -1 run-hooks texfrag-global-mode-hook texfrag-global-mode-on-hook texfrag-global-mode-off-hook called-interactively-p any customize-mark-as-set message "Texfrag-Global mode %sabled%s" "en" "dis" "" force-mode-line-update] 6 (#$ . 36254) (byte-code "\203\n\301!\202 \302C\207" [current-prefix-arg prefix-numeric-value toggle] 2)]) (defvar texfrag-global-mode-hook nil) (byte-code "\301\302N\204\f\303\301\302\304#\210\303\301\305\306#\210\303\301\307\310C#\210\311\312\310\313\300!\205#\310\211%\207" [texfrag-global-mode-map texfrag-global-mode-hook variable-documentation put "Hook run after entering or leaving `texfrag-global-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" custom-type hook standard-value nil add-minor-mode texfrag-global-mode boundp] 6) (defvar texfrag-mode-set-explicitly nil nil) (make-variable-buffer-local 'texfrag-mode-set-explicitly) (defalias 'texfrag-mode-set-explicitly #[0 "\301\211\207" [texfrag-mode-set-explicitly t] 2]) (byte-code "\300\301\302\303#\210\304\305\301\"\207" [put texfrag-mode-set-explicitly definition-name texfrag-global-mode add-hook texfrag-mode-hook] 4) (defvar texfrag-global-mode-buffers nil) (defalias 'texfrag-global-mode-enable-in-buffers #[0 "\305\211\211\2059\211@\306!\2032r\211q\210 \204/\n =\204/\f\203,\304\307!\210\310 \210\202/\310 \210 )A\266\202\202\207" [texfrag-global-mode-buffers texfrag-mode-set-explicitly texfrag-mode-major-mode major-mode texfrag-mode nil buffer-live-p -1 texfrag-global-mode-fun] 5]) (put 'texfrag-global-mode-enable-in-buffers 'definition-name 'texfrag-global-mode) (defalias 'texfrag-global-mode-check-buffers #[0 "\300 \210\301\302\303\"\207" [texfrag-global-mode-enable-in-buffers remove-hook post-command-hook texfrag-global-mode-check-buffers] 3]) (put 'texfrag-global-mode-check-buffers 'definition-name 'texfrag-global-mode) (defalias 'texfrag-global-mode-cmhh #[0 "p\211\235\204 \211B\210\301\302\303\"\207" [texfrag-global-mode-buffers add-hook post-command-hook texfrag-global-mode-check-buffers] 3]) (put 'texfrag-global-mode-cmhh 'definition-name 'texfrag-global-mode) #@299 Around advice for `preview-region'. It overrides the behavior of `preview-region' with the function registered at `texfrag-preview-region-function'. The original `preview-region' function is passed through argument OLDFUN. B and E are the boundaries of the region to be processed. (fn OLDFUN B E) (defalias 'texfrag-preview-region-ad #[771 "\303 \203\n\203\n\"\202\")\207" [inhibit-read-only texfrag-mode texfrag-preview-region-function t] 6 (#$ . 39729)]) #@58 Show log-file of last preview process of current buffer. (defalias 'texfrag-show-log #[0 "\300\301!\207" [TeX-recenter-output-buffer nil] 2 (#$ . 40205) nil]) #@98 Insert line breaks around displayed math environments in region from B to E. (fn &optional B E) (defalias 'texfrag-fix-display-math #[512 "\212\301 \301 \302\303#\216\206d\304\223\210\206eb\210\304!\211\262\205b\305\3068\233\307\310\"\2065\211@\311=\262\203A@\304\223\210b\210\312\313!\204M\314c\210\211@b\210\315\316\317 \"\204\\\314c\210b\210\202\262)\266\202)\207" [texfrag-next-frag-function make-marker make-closure #[0 "\301\302\211\223\210\300\302\211\223\207" [V0 V1 nil] 3] nil 4 3 plist-get :display display looking-at "[[:space:]]*$" "\n" looking-back "^[[:space:]]*" line-beginning-position] 9 (#$ . 40370)]) #@132 `texfrag-equation-filter' filtering STR for `texfrag-MathJax-mode'. Replaces & with &, < with <, and > with >. (fn STR) (defalias 'texfrag-MathJax-filter #[257 "\300\301\302#\262\300\303\304#\262\300\305\306#\207" [replace-regexp-in-string "&" "&" "<" "<" ">" ">"] 5 (#$ . 41027)]) #@67 Value for `texfrag-frag-alist' in modes with MathJax-like syntax. (defvar texfrag-MathJax-alist '(("\\$\\$" "\\$\\$" "$$" "$$") ("\\\\\\[" "\\\\\\]" "\\\\[" "\\\\]") ("\\\\(" "\\\\)" "\\\\(" "\\\\)") ("\\\\begin{\\([a-z*]+\\)}" "\\\\end{\\1}" "\\\\begin{\\2}" "\\\\end{\\2}")) (#$ . 41341)) #@32 Texfrag setup for `prog-mode'. (defalias 'texfrag-prog #[0 "\300\207" ["Texfrag setup for `prog-mode'."] 1 (#$ . 41638)]) #@38 Generate LaTeX header for org-files. (defalias 'texfrag-org-header #[0 "\305\306!\210\211 \236\n \307\310\"\203\311\312\"\262\211\211\313\230\262\204N\307\314\"\203N\311\312\"\211\203A\315\316\317O\320\321R\316\322\312%\202K\315\323\324\"\316\322$\262\210\f;\203X\fP\262\325\326\"\206h\327\330\331\332!!\333#\207" [org-preview-latex-default-process org-preview-latex-process-alist org-format-latex-header texfrag-org-class-options texfrag-org-add-to-header require org string-match "[[:space:]]*\\[\\(.*\\)\\][[:space:]]*" match-string 1 "" "\\\\documentclass\\(\\[.*\\]\\)?{" replace-match nil -1 "," "]" t format "\\documentclass[%s]{" plist-get :latex-header org-latex-make-preamble org-export-get-environment org-export-get-backend latex snippet] 11 (#$ . 41766)]) #@122 Return non-nil if point is in a LaTeX formula of an org document. Formulas can be LaTeX fragments or LaTeX environments. (defalias 'texfrag-org-latex-p #[0 "\300\301!\210\302\303 \304\305\"\216\306 )\262!\307>\207" [require org-element org-element-type match-data make-closure #[0 "\301\300\302\"\207" [V0 set-match-data evaporate] 3] org-element-context (latex-fragment latex-environment)] 5 (#$ . 42569)]) #@31 Texfrag setup for `org-mode'. (defalias 'texfrag-org #[0 "\304\305\306\307\211\207" [texfrag-frag-alist texfrag-comments-only texfrag-header-function org-html-with-latex ((("\\$" texfrag-org-latex-p) "\\$" "$" "$") (("\\\\(" texfrag-org-latex-p) "\\\\)" "$" "$") (("\\\\\\[" texfrag-org-latex-p) "\\\\\\]" "\\\\[" "\\\\]") (("\\\\begin{\\([a-z*]+\\)}" texfrag-org-latex-p) "\\\\end{\\1}" "\\\\begin{\\2}" "\\\\end{\\2}")) nil texfrag-org-header dvipng] 2 (#$ . 42985)]) (byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable texfrag-org-keep-minor-modes funcall function #[0 "\300\207" [texfrag] 1] "Let `org-mode' restore minor modes after restart.\nPossible values:\n'texfrag : preserve option `texfrag-mode' only\nt: preserve as many minor modes as possible\nnil: dont preserve any minor modes" :type (choice (item texfrag) (item t) (item nil)) :group texfrag] 8) #@97 Call OLDFUN with ARGS but remember active minor modes and restart them. (fn OLDFUN &rest ARGS) (defalias 'texfrag-org-keep-minor-modes #[385 "\303=\203 \205\304\202\305\306\n\"\307\"\210\211\211\205-\211@\211J\204&\211 \210A\266\202\202\207" [texfrag-org-keep-minor-modes texfrag-mode minor-mode-list texfrag (texfrag-mode) cl-remove-if-not #[257 "\300\301\302!\"?\205\303!\205\211J\207" [string-match "\\(\\`\\|-\\)global-" symbol-name boundp] 5 "\n\n(fn MINOR-MODE)"] apply] 6 (#$ . 43894)]) (advice-add 'org-mode-restart :around 'texfrag-org-keep-minor-modes) #@46 Preview TeX-fragments in MathJax html-pages. (defalias 'texfrag-trac-wiki #[0 "\302\303\211\207" [texfrag-comments-only texfrag-frag-alist nil (("^{{{\n#!latex" "^}}}" #1="" #1#) ("\\$" "\\$" "$" "$") ("\\\\(" "\\\\)" "\\\\(" "\\\\)") ("\\\\\\[" "\\\\\\]" "\\\\[" "\\\\]") ("\\\\(" "\\\\)" "\\\\(" "\\\\)") ("\\\\begin{\\([a-z*]+\\)}" "\\\\end{\\1}" "\\\\begin{\\2}" "\\\\end{\\2}"))] 2 (#$ . 44484)]) (byte-code "\301\302\303\304\305DD\306\307\310\311&\207" [texfrag-frag-alist-type custom-declare-variable texfrag-html-frag-alist funcall function #[0 "\301\302\"\207" [texfrag-LaTeX-frag-alist append (("]*>" #1="" #1# :generator identity))] 3] "Regular expression for TeX fragments in HTML pages." :group texfrag :type] 8) #@163 Special `texfrag-region' for region from B to E in html mode. It differs from `texfrag-region' by skipping the text from buffer-beginning up to . (fn B E) (defalias 'texfrag-html-region-function #[514 "\212b\210\300\301\302\303#\204b\210\304\301\303#\262)\205\305\"\207" [search-backward "