%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/progmodes/ |
Current File : //usr/local/share/emacs/27.2/lisp/progmodes/compile.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\307\311&\210\312\313\314\315\316DD\317\320\321%\210\312\322\314\315\323DD\324\320\321%\210\312\325\314\315\326DD\327\320\330%\210\312\331\314\315\332DD\333\320\334\335\336&\207" [require tool-bar comint custom-declare-group compilation nil "Run compiler as inferior of Emacs, parse error messages." :group tools processes custom-declare-variable compilation-mode-hook funcall function #[0 "\300\207" [nil] 1] "List of hook functions run by `compilation-mode'." :type hook compilation-start-hook #[0 "\300\207" [nil] 1] "Hook run after starting a new compilation process.\nThe hook is run with one argument, the new process." compilation-window-height #[0 "\300\207" [nil] 1] "Number of lines in a compilation window.\nIf nil, use Emacs default." (choice (const :tag "Default" nil) integer) compilation-transform-file-match-alist #[0 "\300\207" [(("/bin/[a-z]*sh\\'" nil))] 1] "Alist of regexp/replacements to alter file names in compilation errors.\nIf the replacement is nil, the file will not be considered an\nerror after all. If not nil, it should be a regexp replacement\nstring." (repeat (list regexp string)) :version "27.1"] 8) #@338 Hook run after `compilation-filter' has inserted a string into the buffer. It is called with the variable `compilation-filter-start' bound to the position of the start of the inserted text, and point at its end. If Emacs lacks asynchronous process support, this hook is run after `call-process' inserts the grep output into the buffer. (defvar compilation-filter-hook nil (#$ . 1611)) #@125 Position of the start of the text inserted by `compilation-filter'. This is bound before running `compilation-filter-hook'. (defvar compilation-filter-start nil (#$ . 2004)) #@249 This is how compilers number the first column, usually 1 or 0. If this is buffer-local in the destination buffer, Emacs obeys that value, otherwise it uses the value in the *compilation* buffer. This enables a major-mode to specify its own value. (defvar compilation-first-column 1 (#$ . 2185)) #@247 Function to call to post-process filenames while parsing error messages. It takes one arg FILENAME which is the name of a file as found in the compilation output, and should return a transformed file name or a buffer, the one which was compiled. (defvar compilation-parse-errors-filename-function 'identity (#$ . 2488)) #@255 Function to call to customize the compilation process. This function is called immediately before the compilation process is started. It can be used to set any variables or functions that are used while processing the output of the compilation process. (defvar compilation-process-setup-function 'ignore (#$ . 2815)) #@240 Function to compute the name of a compilation buffer. The function receives one argument, the name of the major mode of the compilation buffer. It should return a string. By default, it returns `(concat "*" (downcase name-of-mode) "*")'. (defvar compilation-buffer-name-function 'compilation--default-buffer-name (#$ . 3140)) #@174 Functions to call when a compilation process finishes. Each function is called with two arguments: the compilation buffer, and a string describing how the process finished. (defvar compilation-finish-functions nil (#$ . 3474)) #@44 List of compilation processes now running. (defvar compilation-in-progress nil (#$ . 3707)) (byte-code "\301\236\204 \302\300\301\303\304\305\306\307\310\311\312\313\314\"&D\"\210\301\207" [mode-line-modes compilation-in-progress add-to-list propertize "[Compiling] " help-echo "Compiling; mouse-2: Goto Buffer" mouse-face mode-line-highlight local-map make-mode-line-mouse-map mouse-2 compilation-goto-in-progress-buffer] 13) #@35 Switch to the compilation buffer. (defalias 'compilation-goto-in-progress-buffer #[0 "G\301V\203 \302\303\304\305\306\"\307\310$!\207\203 \302\311@!!\207\312\313!\207" [compilation-in-progress 1 switch-to-buffer completing-read "Several compilation buffers; switch to: " mapcar #[257 "\300\301!!\207" [buffer-name process-buffer] 4 "\n\n(fn PROCESS)"] nil t process-buffer error "No ongoing compilations"] 6 (#$ . 4143) nil]) #@53 Stem of message to print when no matches are found. (defvar compilation-error "error" (#$ . 4582)) #@51 Arguments that were given to `compilation-start'. (defvar compilation-arguments nil (#$ . 4687)) (defvar compilation-num-errors-found 0) (defvar compilation-num-warnings-found 0) (defvar compilation-num-infos-found 0) (defconst compilation-mode-line-errors '(" [" (:propertize (:eval (int-to-string compilation-num-errors-found)) face compilation-error help-echo "Number of errors so far") " " (:propertize (:eval (int-to-string compilation-num-warnings-found)) face compilation-warning help-echo "Number of warnings so far") " " (:propertize (:eval (int-to-string compilation-num-infos-found)) face compilation-info help-echo "Number of informational messages so far") "]")) #@55 Alist of values for `compilation-error-regexp-alist'. (defvar compilation-error-regexp-alist-alist (byte-code "\300\301\302\303\304\305\306\307\310\311\312\313\314\315\316\317\320\321\322BB\323\324\325\326\327\330\331\332BB\333\334\335\336BB\337\340\341\342\343\344BB\345BBBBBBBBBBBBBBBBBBBBBBBBBBBBB\207" [(absoft "^\\(?:[Ee]rror on \\|[Ww]arning on\\( \\)\\)?[Ll]ine[ ]+\\([0-9]+\\)[ ]+of[ ]+\"?\\([a-zA-Z]?:?[^\":\n]+\\)\"?:" 3 2 nil (1)) (ada "\\(warning: .*\\)? at \\([^ \n]+\\):\\([0-9]+\\)$" 2 3 nil (1)) (aix " in line \\([0-9]+\\) of file \\([^ \n]+[^. \n]\\)\\.? " 2 1) (ant "^[ ]*\\(?:\\[[^] \n]+\\][ ]*\\)\\{1,2\\}\\(\\(?:[A-Za-z]:\\)?[^: \n]+\\):\\([0-9]+\\):\\(?:\\([0-9]+\\):\\([0-9]+\\):\\([0-9]+\\):\\)?\\( warning\\)?" 1 (2 . 4) (3 . 5) (6)) (bash "^\\([^: \n ]+\\): line \\([0-9]+\\):" 1 2) (borland "^\\(?:Error\\|Warnin\\(g\\)\\) \\(?:[FEW][0-9]+ \\)?\\([a-zA-Z]?:?[^:( \n]+\\) \\([0-9]+\\)\\(?:[) ]\\|:[^0-9\n]\\)" 2 3 nil (1)) (python-tracebacks-and-caml "^[ ]*File \\(\"?\\)\\([^,\" \n <>]+\\)\\1, lines? \\([0-9]+\\)-?\\([0-9]+\\)?\\(?:$\\|,\\(?: characters? \\([0-9]+\\)-?\\([0-9]+\\)?:\\)?\\([ \n]Warning\\(?: [0-9]+\\)?:\\)?\\)" 2 (3 . 4) (5 . 6) (7)) (cmake "^CMake \\(?:Error\\|\\(Warning\\)\\) at \\(.*\\):\\([1-9][0-9]*\\) ([^)]+):$" 2 3 nil (1)) (cmake-info "^ \\(?: \\*\\)?\\(.*\\):\\([1-9][0-9]*\\) ([^)]+)$" 1 2 nil 0) (comma "^\"\\([^,\" \n ]+\\)\", line \\([0-9]+\\)\\(?:[(. pos]+\\([0-9]+\\))?\\)?[:.,; (-]\\( warning:\\|[-0-9 ]*(W)\\)?" 1 2 3 (4)) (cucumber "\\(?:^cucumber\\(?: -p [^[:space:]]+\\)?\\|#\\)\\(?: \\)\\([^(].*\\):\\([1-9][0-9]*\\)" 1 2) (msft "^ *\\([0-9]+>\\)?\\(\\(?:[a-zA-Z]:\\)?[^ :( \n][^:( \n]*\\)(\\([0-9]+\\)) ?: \\(?:see declaration\\|\\(?:warnin\\(g\\)\\|[a-z ]+\\) C[0-9]+:\\)" 2 3 nil (4)) (edg-1 "^\\([^ \n]+\\)(\\([0-9]+\\)): \\(?:error\\|warnin\\(g\\)\\|remar\\(k\\)\\)" 1 2 nil (3 . 4)) (edg-2 "at line \\([0-9]+\\) of \"\\([^ \n]+\\)\"$" 2 1 nil 0) (epc "^Error [0-9]+ at (\\([0-9]+\\):\\([^)\n]+\\))" 2 1) (ftnchek "\\(^Warning .*\\)? line[ \n]\\([0-9]+\\)[ \n]\\(?:col \\([0-9]+\\)[ \n]\\)?file \\([^ :;\n]+\\)" 4 2 3 (1)) gradle-kotlin "^\\(?:\\(w\\)\\|.\\): *\\(\\(?:[A-Za-z]:\\)?[^:\n]+\\): *(\\([0-9]+\\), *\\([0-9]+\\))" (2 3 4 (1)) (iar "^\"\\(.*\\)\",\\([0-9]+\\)\\s-+\\(?:Error\\|Warnin\\(g\\)\\)\\[[0-9]+\\]:" 1 2 nil (3)) (ibm "^\\([^( \n ]+\\)(\\([0-9]+\\):\\([0-9]+\\)) : \\(?:warnin\\(g\\)\\|informationa\\(l\\)\\)?" 1 2 3 (4 . 5)) (irix "^[-[:alnum:]_/ ]+: \\(?:\\(?:[sS]evere\\|[eE]rror\\|[wW]arnin\\(g\\)\\|[iI]nf\\(o\\)\\)[0-9 ]*: \\)?\\([^,\" \n ]+\\)\\(?:, line\\|:\\) \\([0-9]+\\):" 3 4 nil (1 . 2)) (java "^\\(?:[ ]+at \\|==[0-9]+== +\\(?:at\\|b\\(y\\)\\)\\).+(\\([^()\n]+\\):\\([0-9]+\\))$" 2 3 nil (1)) (jikes-file "^\\(?:Found\\|Issued\\) .* compiling \"\\(.+\\)\":$" 1 nil nil 0) maven "^\\(?:\\[\\(?:ERROR\\|\\(?1:WARNING\\)\\|\\(?2:INFO\\)\\)] \\)?\\(?3:[^\n []\\(?:[^\n :]\\| [^\n/-]\\|:[^\n []\\)*\\):\\[\\(?4:[[:digit:]]+\\),\\(?5:[[:digit:]]+\\)] " (3 4 5 (1 . 2)) (jikes-line "^ *\\([0-9]+\\)\\.[ ]+.*\n +\\(<-*>\n\\*\\*\\* \\(?:Error\\|Warnin\\(g\\)\\)\\)" nil 1 nil 2 0 (2 (compilation-face '(3)))) clang-include "^In file included from \\([^\n:]+\\):\\([0-9]+\\):$" (1 2 nil 0) (gcc-include "^\\(?:In file included \\| \\| \\)from \\([0-9]*[^0-9\n]\\(?:[^\n :]\\| [^-/\n]\\|:[^ \n]\\)*?\\):\\([0-9]+\\)\\(?::\\([0-9]+\\)\\)?\\(?:\\(:\\)\\|\\(,\\|$\\)\\)?" 1 2 3 (4 . 5)) (ruby-Test::Unit "^ [[ ]?\\([^ (].*\\):\\([1-9][0-9]*\\)\\(\\]\\)?:in " 1 2) (gmake ": \\*\\*\\* \\[\\(\\(.+?\\):\\([0-9]+\\): .+\\)\\]" 2 3 nil 0 1) gnu "^\\(?:[[:alpha:]][-[:alnum:].]+: ?\\|[ ]+\\(?:in \\|from\\)\\)?\\(?1:\\(?:[0-9]*[^0-9\n]\\)\\(?:[^\n :]\\| [^-/\n]\\|:[^ \n]\\)*?\\)\\(?:: ?\\)\\(?2:[0-9]+\\)\\(?:-\\(?4:[0-9]+\\)\\(?:\\.\\(?5:[0-9]+\\)\\)?\\|[.:]\\(?3:[0-9]+\\)\\(?:-\\(?:\\(?4:[0-9]+\\)\\.\\)?\\(?5:[0-9]+\\)\\)?\\)?:\\(?: *\\(?6:\\(?:FutureWarning\\|RuntimeWarning\\|W\\(?::\\|arning\\)\\|warning\\)\\)\\| *\\(?7:[Ii]nfo\\(?:\\>\\|rmationa?l?\\)\\|I:\\|\\[ skipping .+ ]\\|instantiated from\\|required from\\|[Nn]ote\\)\\| *\\(?:[Ee]rror\\)\\|\\(?:[0-9]?\\)\\(?:[^0-9\n]\\|$\\)\\|[0-9][0-9][0-9]\\)" (1 (2 . 4) (3 . 5) (6 . 7)) ((lcc "^\\(?:E\\|\\(W\\)\\), \\([^(\n]+\\)(\\([0-9]+\\),[ ]*\\([0-9]+\\)" 2 3 4 (1)) (makepp "^makepp\\(?:\\(?:: warning\\(:\\).*?\\|\\(: Scanning\\|: [LR]e?l?oading makefile\\|: Imported\\|log:.*?\\) \\|: .*?\\)`\\(\\(\\S +?\\)\\(?::\\([0-9]+\\)\\)?\\)['(]\\)" 4 5 nil (1 . 2) 3 (0 (progn (save-match-data (compilation-parse-errors (match-end 0) (line-end-position) `("`\\(\\(\\S +?\\)\\(?::\\([0-9]+\\)\\)?\\)['(]" 2 3 nil ,(cond ((match-end 1) 1) ((match-end 2) 0) (t 2)) 1))) (end-of-line) nil))) (mips-1 " (\\([0-9]+\\)) in \\([^ \n]+\\)" 2 1) (mips-2 " in \\([^()\n ]+\\)(\\([0-9]+\\))$" 1 2) (omake "^\\*\\*\\* omake: file \\(.*\\) changed" 1 nil nil nil nil (0 (progn (compilation--flush-file-structure (match-string 1)) nil))) (oracle "^\\(?:Semantic error\\|Error\\|PCC-[0-9]+:\\).* line \\([0-9]+\\)\\(?:\\(?:,\\| at\\)? column \\([0-9]+\\)\\)?\\(?:,\\| in\\| of\\)? file \\(.*?\\):?$" 3 1 2) (perl " at \\([^ \n]+\\) line \\([0-9]+\\)\\(?:[,.]\\|$\\| during global destruction\\.$\\)" 1 2) (php "\\(?:Parse\\|Fatal\\) error: \\(.*\\) in \\(.*\\) on line \\([0-9]+\\)" 2 3 nil nil) (rxp "^\\(?:Error\\|Warnin\\(g\\)\\):.*\n.* line \\([0-9]+\\) char \\([0-9]+\\) of file://\\(.+\\)" 4 2 3 (1)) (sparc-pascal-file "^\\w\\w\\w \\w\\w\\w +[0-3]?[0-9] +[0-2][0-9]:[0-5][0-9]:[0-5][0-9] [12][09][0-9][0-9] +\\(.*\\):$" 1 nil nil 0) (sparc-pascal-line "^\\(\\(?:E\\|\\(w\\)\\) +[0-9]+\\) line \\([0-9]+\\) - " nil 3 nil (2) nil (1 (compilation-face '(2)))) (sparc-pascal-example "^ +\\([0-9]+\\) +.*\n\\(\\(?:e\\|\\(w\\)\\) [0-9]+\\)-+" nil 1 nil (3) nil (2 (compilation-face '(3)))) (sun ": \\(?:ERROR\\|WARNIN\\(G\\)\\|REMAR\\(K\\)\\) \\(?:[[:alnum:] ]+, \\)?File = \\(.+\\), Line = \\([0-9]+\\)\\(?:, Column = \\([0-9]+\\)\\)?" 3 4 5 (1 . 2)) (sun-ada "^\\([^, \n ]+\\), line \\([0-9]+\\), char \\([0-9]+\\)[:., (-]" 1 2 3) (watcom "^[ ]*\\(\\(?:[a-zA-Z]:\\)?[^ :( \n][^:( \n]*\\)(\\([0-9]+\\)): ?\\(?:\\(Error! E[0-9]+\\)\\|\\(Warning! W[0-9]+\\)\\):" 1 2 nil (4)) (4bsd "\\(?:^\\|:: \\|\\S ( \\)\\(/[^ \n ()]+\\)(\\([0-9]+\\))\\(?:: \\(warning:\\)?\\|$\\| ),\\)" 1 2 nil (3)) (gcov-file "^ *-: *\\(0\\):Source:\\(.+\\)$" 2 1 nil 0 nil) (gcov-header "^ *-: *\\(0\\):\\(?:Object\\|Graph\\|Data\\|Runs\\|Programs\\):.+$" nil 1 nil 0 nil) (gcov-nomark "^ *-: *\\([1-9]\\|[0-9]\\{2,\\}\\):.*$" nil 1 nil 0 nil (0 'default) (1 compilation-line-face)) (gcov-called-line "^ *\\([0-9]+\\): *\\([0-9]+\\):.*$" nil 2 nil 0 nil (0 'default) (1 compilation-info-face) (2 compilation-line-face)) (gcov-never-called "^ *\\(#####\\): *\\([0-9]+\\):.*$" nil 2 nil 2 nil (0 'default) (1 compilation-error-face) (2 compilation-line-face)) (perl--Pod::Checker "^\\*\\*\\* \\(?:ERROR\\|\\(WARNING\\)\\).* \\(?:at\\|on\\) line \\([0-9]+\\) \\(?:.* \\)?in file \\([^ \n]+\\)" 3 2 nil (1)) (perl--Test "^# Failed test [0-9]+ in \\([^ \n]+\\) at line \\([0-9]+\\)" 1 2) (perl--Test2 "^\\(.*NOK.*\\)?# Test [0-9]+ got:.* (\\([^ \n]+\\) at line \\([0-9]+\\)\\( fail #[0-9]+\\)?)" 2 3) (perl--Test::Harness "^.*NOK.* \\([^ \n]+\\) at line \\([0-9]+\\)" 1 2) (weblint "^\\([^ \n(]+\\) (\\([0-9]+\\):\\([0-9]+\\)) " 1 2 3) (guile-file "^In \\(.+\\..+\\):\n" 1 nil nil 0) (guile-line "^ *\\([0-9]+\\): *\\([0-9]+\\)" nil 1 2))] 31) (#$ . 5369)) (byte-code "\301\302\303\304\305DD\306\307\310\311\312\313\314\315\316\"F&\207" [data-directory custom-declare-variable compilation-error-regexp-alist funcall function #[0 "\301\302\"\207" [compilation-error-regexp-alist-alist mapcar car] 3] "Alist that specifies how to match errors in compiler output.\nOn GNU and Unix, any string is a valid filename, so these\nmatchers must make some common sense assumptions, which catch\nnormal cases. A shorter list will be lighter on resource usage.\n\nInstead of an alist element, you can use a symbol, which is\nlooked up in `compilation-error-regexp-alist-alist'. You can see\nthe predefined symbols and their effects in the file\n`etc/compilation.txt' (linked below if you are customizing this).\n\nEach elt has the form (REGEXP FILE [LINE COLUMN TYPE HYPERLINK\nHIGHLIGHT...]). If REGEXP matches, the FILE'th subexpression\ngives the file name, and the LINE'th subexpression gives the line\nnumber. The COLUMN'th subexpression gives the column number on\nthat line.\n\nIf FILE, LINE or COLUMN are nil or that index didn't match, that\ninformation is not present on the matched line. In that case the\nfile name is assumed to be the same as the previous one in the\nbuffer, line number defaults to 1 and column defaults to\nbeginning of line's indentation.\n\nFILE can also have the form (FILE FORMAT...), where the FORMATs\n(e.g. \"%s.c\") will be applied in turn to the recognized file\nname, until a file of that name is found. Or FILE can also be a\nfunction that returns (FILENAME) or (RELATIVE-FILENAME . DIRNAME).\nIn the former case, FILENAME may be relative or absolute, or it may\nbe a buffer.\n\nLINE can also be of the form (LINE . END-LINE) meaning a range\nof lines. COLUMN can also be of the form (COLUMN . END-COLUMN)\nmeaning a range of columns starting on LINE and ending on\nEND-LINE, if that matched.\n\nLINE, END-LINE, COL, and END-COL can also be functions of no argument\nthat return the corresponding line or column number. They can assume REGEXP\nhas just been matched, and should correspondingly preserve this match data.\n\nTYPE is 2 or nil for a real error or 1 for warning or 0 for info.\nTYPE can also be of the form (WARNING . INFO). In that case this\nwill be equivalent to 1 if the WARNING'th subexpression matched\nor else equivalent to 0 if the INFO'th subexpression matched.\nSee `compilation-error-face', `compilation-warning-face',\n`compilation-info-face' and `compilation-skip-threshold'.\n\nWhat matched the HYPERLINK'th subexpression has `mouse-face' and\n`compilation-message-face' applied. If this is nil, the text\nmatched by the whole REGEXP becomes the hyperlink.\n\nAdditional HIGHLIGHTs take the shape (SUBMATCH FACE), where\nSUBMATCH is the number of a submatch and FACE is an expression\nwhich evaluates to a face name (a symbol or string).\nAlternatively, FACE can evaluate to a property list of the\nform (face FACE PROP1 VAL1 PROP2 VAL2 ...), in which case all the\nlisted text properties PROP# are given values VAL# as well.\n\nAfter identifying errors and warnings determined by this\nvariable, the `compilation-transform-file-match-alist' variable\nis then consulted. It allows further transformations of the\nmatched file names, and weeding out false positives." :type (repeat (choice (symbol :tag "Predefined symbol") (sexp :tag "Error specification"))) :link file-link :tag "example file" expand-file-name "compilation.txt"] 13) #@49 Directory to restore to when doing `recompile'. (defvar compilation-directory nil (#$ . 16222)) #@727 A list for tracking when directories are entered or left. If nil, do not track directories, e.g. if all file names are absolute. The first element is the REGEXP matching these messages. It can match any number of variants, e.g. different languages. The remaining elements are all of the form (DIR . LEAVE). If for any one of these the DIR'th subexpression matches, that is a directory name. If LEAVE is nil or the corresponding LEAVE'th subexpression doesn't match, this message is about going into another directory. If it does match anything, this message is about going back to the directory we were in before the last entering message. If you change this, you may also want to change `compilation-page-delimiter'. (defvar compilation-directory-matcher '("\\(?:Entering\\|Leavin\\(g\\)\\) directory [`']\\(.+\\)'$" (2 . 1)) (#$ . 16325)) #@48 Value of `page-delimiter' in Compilation mode. (defvar compilation-page-delimiter "^\\(?:\f\\|.*\\(?:Entering\\|Leaving\\) directory [`'].+'\n\\)+" (#$ . 17180)) #@111 Additional things to highlight in Compilation mode. This gets tacked on the end of the generated expressions. (defvar compilation-mode-font-lock-keywords '(("^[Cc]hecking \\(?:[Ff]or \\|[Ii]f \\|[Ww]hether \\(?:to \\)?\\)?\\(.+\\)\\.\\.\\. *\\(?:(cached) *\\)?\\(\\(yes\\(?: .+\\)?\\)\\|no\\|\\(.*\\)\\)$" (1 font-lock-variable-name-face) (2 (compilation-face '(4 . 3)))) ("^\\([[:alnum:]_/.+-]+\\)\\(\\[\\([0-9]+\\)\\]\\)?[ ]*:" (1 font-lock-function-name-face) (3 compilation-line-face nil t)) (" --?o\\(?:utfile\\|utput\\)?[= ]\\(\\S +\\)" . 1) ("^Compilation \\(finished\\).*" (0 '(face nil compilation-message nil help-echo nil mouse-face nil) t) (1 compilation-info-face)) ("^Compilation \\(exited abnormally\\|interrupt\\|killed\\|terminated\\|segmentation fault\\)\\(?:.*with code \\([0-9]+\\)\\)?.*" (0 '(face nil compilation-message nil help-echo nil mouse-face nil) t) (1 compilation-error-face) (2 compilation-error-face nil t))) (#$ . 17349)) #@137 Regexp matching part of visited source lines to highlight temporarily. Highlight entire line if t; don't highlight source lines if nil. (defvar compilation-highlight-regexp t (#$ . 18313)) #@60 Overlay used to temporarily highlight compilation matches. (defvar compilation-highlight-overlay nil (#$ . 18508)) (byte-code "\300\301\302\303\304DD\305\306\307\310\311&\210\300\312\302\303\313DD\314\306\307%\210\300\315\302\303\316DD\317\306\307%\210\300\320\302\303\321DD\322\306\323\310\324&\210\300\325\302\303\326DD\327\306\330%\210\300\331\302\303\332DD\333\306\334%\210\300\335\302\303\336DD\337\306\307\310\340&\207" [custom-declare-variable compilation-error-screen-columns funcall function #[0 "\300\207" [t] 1] "If non-nil, column numbers in error messages are screen columns.\nOtherwise they are interpreted as character positions, with\neach character occupying one column.\nThe default is to use screen columns, which requires that the compilation\nprogram and Emacs agree about the display width of the characters,\nespecially the TAB character.\nIf this is buffer-local in the destination buffer, Emacs obeys\nthat value, otherwise it uses the value in the *compilation*\nbuffer. This enables a major-mode to specify its own value." :type boolean :version "20.4" compilation-read-command #[0 "\300\207" [t] 1] "Non-nil means \\[compile] reads the compilation command to use.\nOtherwise, \\[compile] just uses the value of `compile-command'.\n\nNote that changing this to nil may be a security risk, because a\nfile might define a malicious `compile-command' as a file local\nvariable, and you might not notice. Therefore, `compile-command'\nis considered unsafe if this variable is nil." compilation-ask-about-save #[0 "\300\207" [t] 1] "Non-nil means \\[compile] asks which buffers to save before compiling.\nOtherwise, it saves all modified buffers without asking." compilation-save-buffers-predicate #[0 "\300\207" [nil] 1] "The second argument (PRED) passed to `save-some-buffers' before compiling.\nE.g., one can set this to\n (lambda ()\n (string-prefix-p my-compilation-root (file-truename (buffer-file-name))))\nto limit saving to files located under `my-compilation-root'.\nNote, that, in general, `compilation-directory' cannot be used instead\nof `my-compilation-root' here." (choice (const :tag "Default (save all file-visiting buffers)" nil) (const :tag "Save all buffers" t) function) "24.1" compilation-search-path #[0 "\300\207" [(nil)] 1] "List of directories to search for source files named in error messages.\nElements should be directory names, not file names of directories.\nThe value nil as an element means to try the default directory." (repeat (choice (const :tag "Default" nil) (string :tag "Directory"))) compile-command #[0 "\300\301!\207" [purecopy "make -k "] 2] "Last shell command used to do a compilation; default for next compilation.\n\nSometimes it is useful for files to supply local values for this variable.\nYou might also use mode hooks to specify it in certain modes, like this:\n\n (add-hook \\='c-mode-hook\n (lambda ()\n (unless (or (file-exists-p \"makefile\")\n (file-exists-p \"Makefile\"))\n (set (make-local-variable \\='compile-command)\n (concat \"make -k \"\n (if buffer-file-name\n (shell-quote-argument\n (file-name-sans-extension buffer-file-name))))))))\n\nIt's often useful to leave a space at the end of the value." string compilation-disable-input #[0 "\300\207" [nil] 1] "If non-nil, send end-of-file as compilation process input.\nThis only affects platforms that support asynchronous processes (see\n`start-process'); synchronous compilation processes never accept input." "22.1"] 8) (defvar compilation-locs nil) #@198 Set this to t before creating a *compilation* buffer. Then every error line will have a debug text property with the matcher that fit this line and the match data. Use `describe-text-properties'. (defvar compilation-debug nil (#$ . 22052)) #@294 If non-nil, called when a compilation process dies to return a status message. This should be a function of three arguments: process status, exit status, and exit message; it returns a cons (MESSAGE . MODELINE) of the strings to write into the compilation buffer, and to put in its mode line. (defvar compilation-exit-message-function #[771 "\211B\207" [] 5 "\n\n(fn PROCESS-STATUS EXIT-STATUS MSG)"] (#$ . 22300)) (byte-code "\300\301\302\303\304DD\305\306\307\310\311\312\313& \207" [custom-declare-variable compilation-environment funcall function #[0 "\300\207" [nil] 1] "List of environment variables for compilation to inherit.\nEach element should be a string of the form ENVVARNAME=VALUE.\nThis list is temporarily prepended to `process-environment' prior to\nstarting the compilation process." :type (repeat (string :tag "ENVVARNAME=VALUE")) :options (("LANG=C")) :version "24.1"] 10) (defvar compile-history nil) (byte-code "\300\301\302\303\304\305%\210\300\306\307\310\304\305%\210\300\311\312\313\304\305%\210\300\314\315\316\304\317%\210\300\320\321\322\304\317%\210\300\323\324\325\304\317%\210\300\326\327\330\304\305%\210\300\331\332\333\304\305%\210\334\335\336\337\340DD\341\342\343\304\305&\207" [custom-declare-face compilation-error ((t :inherit error)) "Face used to highlight compiler errors." :version "22.1" compilation-warning ((t :inherit warning)) "Face used to highlight compiler warnings." compilation-info ((t :inherit success)) "Face used to highlight compiler information." compilation-mode-line-fail ((default :inherit compilation-error) (((class color) (min-colors 16)) (:foreground "Red1" :weight bold)) (((class color) (min-colors 8)) (:foreground "red")) (t (:inverse-video t :weight bold))) "Face for Compilation mode's \"error\" mode line indicator." "24.3" compilation-mode-line-run ((t :inherit compilation-warning)) "Face for Compilation mode's \"running\" mode line indicator." compilation-mode-line-exit ((default :inherit compilation-info) (((class color) (min-colors 16)) (:foreground "ForestGreen" :weight bold)) (((class color)) (:foreground "green" :weight bold)) (t (:weight bold))) "Face for Compilation mode's \"exit\" mode line indicator." compilation-line-number ((t :inherit font-lock-keyword-face)) "Face for displaying line numbers in compiler messages." compilation-column-number ((t :inherit font-lock-doc-face)) "Face for displaying column numbers in compiler messages." custom-declare-variable compilation-message-face funcall function #[0 "\300\207" [underline] 1] "Face name to use for whole messages.\nFaces `compilation-error-face', `compilation-warning-face',\n`compilation-info-face', `compilation-line-face' and\n`compilation-column-face' get prepended to this, when applicable." :type face] 8) #@51 Face name to use for file name in error messages. (defvar compilation-error-face 'compilation-error (#$ . 25073)) #@53 Face name to use for file name in warning messages. (defvar compilation-warning-face 'compilation-warning (#$ . 25193)) #@59 Face name to use for file name in informational messages. (defvar compilation-info-face 'compilation-info (#$ . 25319)) #@57 Face name to use for line numbers in compiler messages. (defvar compilation-line-face 'compilation-line-number (#$ . 25445)) #@59 Face name to use for column numbers in compiler messages. (defvar compilation-column-face 'compilation-column-number (#$ . 25576)) #@51 Face name to use for entering directory messages. (defvar compilation-enter-directory-face 'font-lock-function-name-face (#$ . 25713)) #@50 Face name to use for leaving directory messages. (defvar compilation-leave-directory-face 'font-lock-builtin-face (#$ . 25854)) (defvar compilation-parse-errors-function nil) (byte-code "\300\301\302\303#\210\304\305\306\307\310DD\311\312\313\314\315&\207" [make-obsolete-variable compilation-parse-errors-function compilation-error-regexp-alist "24.1" custom-declare-variable compilation-auto-jump-to-first-error funcall function #[0 "\300\207" [nil] 1] "If non-nil, automatically jump to the first error during compilation." :type boolean :version "23.1"] 8) #@63 If non-nil, automatically jump to the next error encountered. (defvar compilation-auto-jump-to-next nil (#$ . 26422)) (make-variable-buffer-local 'compilation-auto-jump-to-next) #@72 If non-nil, skip multiple error messages for the same source location. (defvar compilation-skip-to-next-location t (#$ . 26606)) (byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable compilation-skip-threshold funcall function #[0 "\300\207" [1] 1] "Compilation motion commands skip less important messages.\nThe value can be either 2 -- skip anything less than error, 1 --\nskip anything less than warning or 0 -- don't skip any messages.\nNote that all messages not positively identified as warning or\ninfo, are considered errors." :type (choice (const :tag "Skip warnings and info" 2) (const :tag "Skip info" 1) (const :tag "No skip" 0)) :version "22.1"] 8) #@60 Switch the `compilation-skip-threshold' level. (fn LEVEL) (defalias 'compilation-set-skip-threshold #[257 "\211\301\302\303\267\202 \304\202 \305\202 \306\202 \307\"\207" [compilation-skip-threshold message "Skipping %s" #s(hash-table size 3 test eql rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (0 10 1 14 2 18)) "Nothing" "Info messages" "Warnings and info" nil] 5 (#$ . 27307) (byte-code "\302\203 \303!\202 T\304\"C\207" [current-prefix-arg compilation-skip-threshold mod prefix-numeric-value 3] 3)]) (byte-code "\300\301\302\303\304DD\305\306\307\310\311&\207" [custom-declare-variable compilation-skip-visited funcall function #[0 "\300\207" [nil] 1] "Compilation motion commands skip visited messages if this is t.\nVisited messages are ones for which the file, line and column have been jumped\nto from the current content in the current compilation buffer, even if it was\nfrom a different message." :type boolean :version "22.1"] 8) #@13 (fn TYPE) (defalias 'compilation-type #[257 "\211@\203 \211@\225\203 \300\207\211A\203 \211A\225\203 \301\207\302\207" [1 0 2] 2 (#$ . 28280)]) #@13 (fn TYPE) (defalias 'compilation-face #[257 "\303!\211\304\267\202 \202 \202 \n\202 \305\207" [compilation-warning-face compilation-info-face compilation-error-face compilation-type #s(hash-table size 3 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (1 9 0 13 2 17)) nil] 4 (#$ . 28436)]) #@32 (fn LINE FILE-STRUCT MARKER) (defalias 'compilation--make-cdrloc '(macro . #[771 "\300\301BBBB\207" [list (nil)] 8 (#$ . 28757)])) #@12 (fn LOC) (defalias 'compilation--loc->col '(macro . #[257 "\300D\207" [car] 3 (#$ . 28899)])) #@12 (fn LOC) (defalias 'compilation--loc->line '(macro . #[257 "\300D\207" [cadr] 3 (#$ . 29002)])) #@12 (fn LOC) (defalias 'compilation--loc->file-struct '(macro . #[257 "\300\301E\207" [nth 2] 4 (#$ . 29107)])) #@12 (fn LOC) (defalias 'compilation--loc->marker '(macro . #[257 "\300\301E\207" [nth 3] 4 (#$ . 29224)])) #@12 (fn LOC) (defalias 'compilation--loc->visited '(macro . #[257 "\300\301E\207" [nthcdr 5] 4 (#$ . 29336)])) #@45 (fn FILE-SPEC FORMATS &optional LOC-TREE) (defalias 'compilation--make-file-struct '(macro . #[770 "\300\300EE\207" [cons] 8 (#$ . 29452)])) #@11 (fn FS) (defalias 'compilation--file-struct->file-spec '(macro . #[257 "\300D\207" [car] 3 (#$ . 29604)])) #@11 (fn FS) (defalias 'compilation--file-struct->formats '(macro . #[257 "\300D\207" [cadr] 3 (#$ . 29720)])) #@11 (fn FS) (defalias 'compilation--file-struct->loc-tree '(macro . #[257 "\300D\207" [cdr] 3 (#$ . 29835)])) #@79 compiler-macro for inlining `compilation--message-p'. (fn CL-WHOLE-ARG CL-X) (defalias 'compilation--message-p--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block compilation--message-p (and (memq (type-of cl-x) cl-struct-compilation--message-tags) t)) nil] 9 (#$ . 29950)]) (put 'compilation--message-p 'compiler-macro 'compilation--message-p--cmacro) #@13 (fn CL-X) (defalias 'compilation--message-p #[257 "\301!>\205 \302\207" [cl-struct-compilation--message-tags type-of t] 3 (#$ . 30345)]) (byte-code "\300\301\302\303#\304\305\306\301#\207" [function-put compilation--message-p side-effect-free error-free put compilation--message cl-deftype-satisfies] 5) #@82 compiler-macro for inlining `compilation--message->loc'. (fn CL-WHOLE-ARG CL-X) (defalias 'compilation--message->loc--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block compilation--message->loc (progn (or (compilation--message-p cl-x) (signal 'wrong-type-argument (list 'compilation--message cl-x))) (aref cl-x 1))) nil] 9 (#$ . 30660)]) (put 'compilation--message->loc 'compiler-macro 'compilation--message->loc--cmacro) #@69 Access slot "loc" of `compilation--message' struct CL-X. (fn CL-X) (defalias 'compilation--message->loc #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-compilation--message-tags type-of signal wrong-type-argument compilation--message 1] 5 (#$ . 31125)]) (byte-code "\300\301\302\303#\300\207" [function-put compilation--message->loc side-effect-free t] 4) #@83 compiler-macro for inlining `compilation--message->type'. (fn CL-WHOLE-ARG CL-X) (defalias 'compilation--message->type--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block compilation--message->type (progn (or (compilation--message-p cl-x) (signal 'wrong-type-argument (list 'compilation--message cl-x))) (aref cl-x 2))) nil] 9 (#$ . 31507)]) (put 'compilation--message->type 'compiler-macro 'compilation--message->type--cmacro) #@70 Access slot "type" of `compilation--message' struct CL-X. (fn CL-X) (defalias 'compilation--message->type #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-compilation--message-tags type-of signal wrong-type-argument compilation--message 2] 5 (#$ . 31977)]) (byte-code "\300\301\302\303#\300\207" [function-put compilation--message->type side-effect-free t] 4) #@86 compiler-macro for inlining `compilation--message->end-loc'. (fn CL-WHOLE-ARG CL-X) (defalias 'compilation--message->end-loc--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block compilation--message->end-loc (progn (or (compilation--message-p cl-x) (signal 'wrong-type-argument (list 'compilation--message cl-x))) (aref cl-x 3))) nil] 9 (#$ . 32362)]) (put 'compilation--message->end-loc 'compiler-macro 'compilation--message->end-loc--cmacro) #@73 Access slot "end-loc" of `compilation--message' struct CL-X. (fn CL-X) (defalias 'compilation--message->end-loc #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-compilation--message-tags type-of signal wrong-type-argument compilation--message 3] 5 (#$ . 32847)]) (byte-code "\300\301\302\303#\300\207" [function-put compilation--message->end-loc side-effect-free t] 4) #@94 compiler-macro for inlining `compilation--make-message'. (fn CL-WHOLE-ARG LOC TYPE END-LOC) (defalias 'compilation--make-message--cmacro #[1028 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (loc type end-loc) (cl-block compilation--make-message (record 'compilation--message loc type end-loc)) nil] 13 (#$ . 33241)]) (put 'compilation--make-message 'compiler-macro 'compilation--make-message--cmacro) #@80 Constructor for objects of type `compilation--message'. (fn LOC TYPE END-LOC) (defalias 'compilation--make-message #[771 "\300\301$\207" [record compilation--message] 8 (#$ . 33663)]) (byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303& \207" [function-put compilation--make-message side-effect-free t cl-struct-define compilation--message nil cl-structure-object record ((cl-tag-slot) (loc) (type) (end-loc)) cl-struct-compilation--message-tags] 11) #@260 A pair (POS . RES) caching the result of previous directory search. Basically, this pair says that calling (previous-single-property-change POS \='compilation-directory) returned RES, i.e. there is no change of `compilation-directory' between POS and RES. (defvar compilation--previous-directory-cache nil (#$ . 34143)) (make-variable-buffer-local 'compilation--previous-directory-cache) #@18 (fn START END) (defalias 'compilation--flush-directory-cache #[514 "?\206( @X\206( A\203 \301A!\203 AX\203% @\302\223\207\302\211\207" [compilation--previous-directory-cache marker-buffer nil] 5 (#$ . 34540)]) #@92 Like (previous-single-property-change POS \='compilation-directory), but faster. (fn POS) (defalias 'compilation--previous-directory #[257 "\203 \211@W\203 A\203 AW\203 A\207\205' @X\205' @\301\302\303$\204A \304!\205; \304!B\211\202b \211\203V \211U\203V @\303\223\210A\202b \303\223\210\304!\241\210\211\305!\203n \306!\202o \211\207" [compilation--previous-directory-cache previous-single-property-change compilation-directory nil copy-marker markerp marker-position] 7 (#$ . 34770)]) #@18 (fn IDX LEAVE) (defalias 'compilation-directory-properties #[514 "\211\203 \211\225\262\302\303\224!\211\205 \304S\305\"\206 \304\305\"\262\306\203' \202( \305\2036 A\206<