%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/ |
Current File : //usr/local/share/emacs/27.2/lisp/term.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. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (defconst term-protocol-version "0.96") (byte-code "\300\301!\210\300\302!\210\300\303!\210\304\305\306\307\310\311%\207" [require ring ehelp comint custom-declare-group term nil "General command interpreter in a window." :group processes] 6) #@29 Size of input history ring. (defvar term-input-ring-size 32 (#$ . 651)) #@92 When using alternate sub-buffer, contains saved term-home-marker from original sub-buffer. (defvar term-saved-home-marker nil (#$ . 729)) #@62 (current-column) at start of screen line, or nil if unknown. (defvar term-start-line-column 0 (#$ . 873)) #@44 If non-nil, is cache for (current-column). (defvar term-current-column 0 (#$ . 985)) #@67 Current vertical row (relative to home-marker) or nil if unknown. (defvar term-current-row 0 (#$ . 1076)) (defvar term-insert-mode nil) #@193 Last character was a graphic in the last column. If next char is graphic, first move one column right (and line warp) before displaying it. This emulates (more or less) the behavior of xterm. (defvar term-do-line-wrapping nil (#$ . 1219)) #@51 A queue of strings whose echo we want suppressed. (defvar term-kill-echo-list nil (#$ . 1464)) (defvar term-terminal-undecoded-bytes nil) (defvar term-current-face 'term) #@222 Top-most line (inclusive) of the scrolling region. `term-scroll-start' must be in the range [0,term-height). In addition, its value has to be smaller than `term-scroll-end', i.e. one line scroll regions are not allowed. (defvar term-scroll-start 0 (#$ . 1642)) (make-variable-buffer-local 'term-scroll-start) #@225 Bottom-most line (inclusive) of the scrolling region. `term-scroll-end' must be in the range [0,term-height). In addition, its value has to be greater than `term-scroll-start', i.e. one line scroll regions are not allowed. (defvar term-scroll-end nil (#$ . 1959)) (make-variable-buffer-local 'term-scroll-end) #@69 Number of lines before we need to page; if nil, paging is disabled. (defvar term-pager-count nil (#$ . 2276)) (defvar term-saved-cursor nil) (byte-code "\300\301\302\303#\210\304\211\203( \211@\301N\203! \302N\204! \305\302\301N#\210A\266\202\202 \210\306\301\302\307#\207" [defvaralias term-command-hook term-command-function nil (saved-value saved-variable-comment) put make-obsolete-variable "27.1"] 7) (defvar term-command-function 'term-command-hook) (defvar term-log-buffer nil) #@241 If t, forward scrolling should be implemented by delete to top-most line(s); and if nil, scrolling should be implemented by moving term-home-marker. It is set to t if there is a (non-default) scroll-region OR the alternate buffer is used. (defvar term-scroll-with-delete nil (#$ . 2774)) #@41 Saves the old keymap when in char mode. (defvar term-old-mode-map nil (#$ . 3069)) #@32 Saves old keymap while paging. (defvar term-pager-old-local-map nil (#$ . 3158)) #@58 The `buffer-read-only' state to set in `term-line-mode'. (defvar term-line-mode-buffer-read-only nil (#$ . 3245)) (byte-code "\300\301!\210\302\303\304\305\306DD\307\310\311\312\313&\207" [make-variable-buffer-local term-line-mode-buffer-read-only custom-declare-variable explicit-shell-file-name funcall function #[0 "\300\207" [nil] 1] "If non-nil, is file name to use for explicitly requested inferior shell." :type (choice (const nil) file) :group term] 8) #@371 Regexp to recognize prompts in the inferior process. Defaults to "^", the null string at BOL. Good choices: Canonical Lisp: "^[^> \n]*>+:? *" (Lucid, franz, kcl, T, cscheme, oaklisp) Lucid Common Lisp: "^\\(>\\|\\(->\\)+\\) *" franz: "^\\(->\\|<[0-9]*>:\\) *" kcl: "^>+ *" shell: "^[^#$%>\n]*[#$%>] *" T: "^>+ *" This is a good thing to set in mode hooks. (defvar term-prompt-regexp "^" (#$ . 3714)) #@381 List of characters to recognize as separate arguments in input. Strings comprising a character in this list will separate the arguments surrounding them, and also be regarded as arguments in their own right (unlike whitespace). See `term-arguments'. Defaults to the empty list. For shells, a good value is (?\| ?& ?< ?> ?\( ?\) ?\;). This is a good thing to set in mode hooks. (defvar term-delimiter-argument-list nil (#$ . 4135)) (byte-code "\300\301\302\303\304DD\305\306\307\310\311&\210\300\312\302\303\313DD\314\306\315\310\311&\210\300\316\302\303\317DD\320\306\315\310\311&\210\300\321\302\303\322DD\323\324\325\306\315\310\311& \210\300\326\302\303\327DD\330\324\325\306\315\310\311& \210\300\331\302\303\332DD\333\306\315\310\311&\210\300\334\302\303\335DD\336\306\315\310\311&\210\300\337\302\303\340DD\341\324\342\306\315\310\311& \210\343\337\344\345#\207" [custom-declare-variable term-input-autoexpand funcall function #[0 "\300\207" [nil] 1] "If non-nil, expand input command history references on completion.\nThis mirrors the optional behavior of tcsh (its autoexpand and histlit).\n\nIf the value is `input', then the expansion is seen on input.\nIf the value is `history', then the expansion is only when inserting\ninto the buffer's input ring. See also `term-magic-space' and\n`term-dynamic-complete'.\n\nThis variable is buffer-local." :type (choice (const nil) (const t) (const input) (const history)) :group term term-input-ignoredups #[0 "\300\207" [nil] 1] "If non-nil, don't add input matching the last on the input ring.\nThis mirrors the optional behavior of bash.\n\nThis variable is buffer-local." boolean term-input-ring-file-name #[0 "\300\207" [nil] 1] "If non-nil, name of the file to read/write input history.\nSee also `term-read-input-ring' and `term-write-input-ring'.\n\nThis variable is buffer-local, and is a good thing to set in mode hooks." term-char-mode-buffer-read-only #[0 "\300\207" [t] 1] "If non-nil, only the process filter may modify the buffer in char mode.\n\nA non-nil value makes the buffer read-only in `term-char-mode',\nwhich prevents editing commands from making the buffer state\ninconsistent with the state of the terminal understood by the\ninferior process. Only the process filter is allowed to make\nchanges to the buffer.\n\nCustomize this option to nil if you want the previous behavior." :version "26.1" term-char-mode-point-at-process-mark #[0 "\300\207" [t] 1] "If non-nil, keep point at the process mark in char mode.\n\nA non-nil value causes point to be moved to the current process\nmark after each command in `term-char-mode' (provided that the\npre-command point position was also at the process mark). This\nprevents commands that move point from making the buffer state\ninconsistent with the state of the terminal understood by the\ninferior process.\n\nMouse events are not affected, so moving point and selecting text\nis still possible in char mode via the mouse, after which other\ncommands can be invoked on the mouse-selected point or region,\nuntil the process filter (or user) moves point to the process\nmark once again.\n\nCustomize this option to nil if you want the previous behavior." term-scroll-to-bottom-on-output #[0 "\300\207" [nil] 1] "Controls whether interpreter output causes window to scroll.\nIf nil, then do not scroll. If t or `all', scroll all windows showing buffer.\nIf `this', scroll only the selected window.\nIf `others', scroll only those that are not the selected window.\n\nThe default is nil.\n\nSee variable `term-scroll-show-maximum-output'.\nThis variable is buffer-local." term-scroll-show-maximum-output #[0 "\300\207" [nil] 1] "Controls how interpreter output causes window to scroll.\nIf non-nil, then show the maximum output when the window is scrolled.\n\nSee variable `term-scroll-to-bottom-on-output'.\nThis variable is buffer-local." term-suppress-hard-newline #[0 "\300\207" [nil] 1] "Non-nil means interpreter should not break long lines with newlines.\nThis means text can automatically reflow if the window is resized." "24.4" make-obsolete-variable nil "27.1"] 10) (defvar term-pending-frame nil) #@312 Function that submits old text in term mode. This function is called when return is typed while the point is in old text. It returns the text to be submitted as process input. The default is `term-get-old-input-default', which grabs the current line, and strips off leading text matching `term-prompt-regexp'. (defvar term-get-old-input 'term-get-old-input-default (#$ . 8285)) #@188 List of functions called to perform completion. Functions should return non-nil if completion was performed. See also `term-dynamic-complete'. This is a good thing to set in mode hooks. (defvar term-dynamic-complete-functions '(term-replace-by-expanded-history term-dynamic-complete-filename) (#$ . 8671)) #@190 Predicate for filtering additions to input history. Only inputs answering true to this function are saved on the input history list. Default is to save anything that isn't all whitespace. (defvar term-input-filter #[257 "\300\301\"?\207" [string-match "\\`\\s *\\'"] 4 "\n\n(fn STR)"] (#$ . 8985)) #@160 Functions to call before input is sent to the process. These functions get one argument, a string containing the text to send. This variable is buffer-local. (defvar term-input-filter-functions nil (#$ . 9292)) #@295 Function to actually send to PROCESS the STRING submitted by user. Usually this is just `term-simple-send', but if your mode needs to massage the input string, this is your hook. This is called from the user command `term-send-input'. `term-simple-send' just sends the string plus a newline. (defvar term-input-sender 'term-simple-send (#$ . 9511)) (byte-code "\300\301\302\303\304DD\305\306\307\310\311&\210\300\312\302\303\313DD\314\306\315\310\311&\210\300\316\302\303\317DD\320\306\315\310\311&\207" [custom-declare-variable term-eol-on-send funcall function #[0 "\300\207" [t] 1] "Non-nil means go to the end of the line before sending input.\nSee `term-send-input'." :type boolean :group term term-mode-hook #[0 "\300\207" [nil] 1] "Called upon entry into term mode.\nThis is run before the process is cranked up." hook term-exec-hook #[0 "\300\207" [nil] 1] "Called each time a process is exec'd by `term-exec'.\nThis is called after the process is cranked up. It is useful for things that\nmust be done each time a process is executed in a term mode buffer (e.g.,\n`set-process-query-on-exit-flag'). In contrast, `term-mode-hook' is only\nexecuted once, when the buffer is created."] 8) #@23 Keymap for Term mode. (defvar term-mode-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\301\316\317#\210\301\320\321#\210\301\322\323#\210\301\324\325#\210\301\326\327#\210\301\330\331#\210\301\332\333#\210\301\334\335#\210\301\336\337#\210\301\340\341#\210\301\342\343#\210\301\344\317#\210\301\345\346#\210\301\347\350#\210\301\351\352#\210\301\353\354#\210\301\355\356#\210\301\357\360#\210\301\361\362#\210\301\363\364#\210\365\366\367\370$\210\365\366\371\372$\210\211\207" [make-sparse-keymap define-key "p" term-previous-input "n" term-next-input "r" term-previous-matching-input "s" term-next-matching-input [138412146] term-previous-matching-input-from-input [138412147] term-next-matching-input-from-input "\f" term-show-output " " term-send-input "" term-delchar-or-maybe-eof "" term-bol "" term-kill-input "" backward-kill-word "" term-interrupt-subjob "" term-stop-subjob "" term-quit-subjob " " term-copy-old-input "" term-kill-output "" "" term-show-maximum-output "\f" term-dynamic-list-input-ring "" term-next-prompt "" term-previous-prompt "" term-send-eof "" term-char-mode "\n" term-line-mode "" term-pager-toggle easy-menu-do-define nil "Complete menu for Term mode." ("Complete" ["Complete Before Point" term-dynamic-complete t] ["Complete File Name" term-dynamic-complete-filename t] ["File Completion Listing" term-dynamic-list-filename-completions t] ["Expand File Name" term-replace-by-expanded-filename t]) "In/Out menu for Term mode." ("In/Out" ["Expand History Before Point" term-replace-by-expanded-history term-input-autoexpand] ["List Input History" term-dynamic-list-input-ring t] ["Previous Input" term-previous-input t] ["Next Input" term-next-input t] ["Previous Matching Current Input" term-previous-matching-input-from-input t] ["Next Matching Current Input" term-next-matching-input-from-input t] ["Previous Matching Input..." term-previous-matching-input t] ["Next Matching Input..." term-next-matching-input t] ["Backward Matching Input..." term-backward-matching-input t] ["Forward Matching Input..." term-forward-matching-input t] ["Copy Old Input" term-copy-old-input t] ["Kill Current Input" term-kill-input t] ["Show Current Output Group" term-show-output t] ["Show Maximum Output" term-show-maximum-output t] ["Backward Output Group" term-previous-prompt t] ["Forward Output Group" term-next-prompt t] ["Kill Current Output Group" term-kill-output t])] 6) (#$ . 10719)) #@113 Escape character for char sub-mode of term mode. Do not change it directly; use `term-set-escape-char' instead. (defvar term-escape-char nil (#$ . 13284)) #@33 Keymap used in Term pager mode. (defvar term-pager-break-map (byte-code "\300 \301\302\303\304 \302\"#\210\301\305\303\304 \305\"#\210\301\306\303\304 \306\"#\210\301\307\310#\210\301\311\312#\210\301\313\314#\210\301\315\314#\210\301\316\317#\210\301\320\321#\210\301\322\323#\210\301\324\325#\210\301\326\327#\210\301\330\331#\210\211\207" [make-keymap define-key "" lookup-key current-global-map "" "" " " term-pager-page " " term-pager-line "?" term-pager-help "h" "b" term-pager-back-page "" term-pager-back-line "q" term-pager-discard "D" term-pager-disable "<" term-pager-bob ">" term-pager-eob] 7) (#$ . 13445)) #@123 True if communications via pty; false if by pipe. Buffer local. This is to work around a bug in Emacs process signaling. (defvar term-ptyp t (#$ . 14089)) #@95 Last string searched for by term input history search, for defaulting. Buffer local variable. (defvar term-last-input-match "" (#$ . 14251)) (defvar term-input-ring nil) #@40 Index of last matched history element. (defvar term-input-ring-index nil (#$ . 14427)) #@47 Input previously used to match input history. (defvar term-matching-input-from-input-string "" (#$ . 14520)) (defvar term-pager-filter t) (byte-code "\300\301\302\303#\210\300\304\302\303#\210\300\305\302\303#\210\300\306\302\303#\210\300\307\302\303#\210\300\310\302\303#\210\300\311\302\303#\207" [put term-input-ring permanent-local t term-input-ring-index term-input-autoexpand term-input-filter-functions term-scroll-to-bottom-on-output term-scroll-show-maximum-output term-ptyp] 4) (defalias 'term-in-char-mode '(macro . #[0 "\300\207" [(eq (current-local-map) term-raw-map)] 1])) (defalias 'term-in-line-mode '(macro . #[0 "\300\207" [(not (term-in-char-mode))] 1])) (defalias 'term-pager-enabled '(macro . #[0 "\300\207" [term-pager-count] 1])) (defalias 'term-handling-pager '(macro . #[0 "\300\207" [term-pager-old-local-map] 1])) (defalias 'term-using-alternate-sub-buffer '(macro . #[0 "\300\207" [term-saved-home-marker] 1])) (defvar term-ansi-at-host nil) (defvar term-ansi-at-dir nil) (defvar term-ansi-at-user nil) (defvar term-ansi-at-message nil) (defvar term-ansi-at-save-user nil) (defvar term-ansi-at-save-pwd nil) (defvar term-ansi-at-save-anon nil) (defvar term-ansi-current-bold nil) (defvar term-ansi-current-color 0) (defvar term-ansi-face-already-done nil) (defvar term-ansi-current-bg-color 0) (defvar term-ansi-current-underline nil) (defvar term-ansi-current-reverse nil) (defvar term-ansi-current-invisible nil) (defvar ansi-term-color-vector [term term-color-black term-color-red term-color-green term-color-yellow term-color-blue term-color-magenta term-color-cyan term-color-white]) (byte-code "\302\300\303\304\305DD\306\307\310\311\312&\210\313\300\314\315#\210\302\301\303\304\316DD\306\307\310\311\317&\210\313\301\314\315#\210\320\310\321\322\323 \324BBBBBC\325\307\310%\210\320\326\327\330\307\310%\210\320\331\332\333\307\310%\210\320\334\335\336\307\310%\210\320\337\340\341\307\310%\210\320\342\343\344\307\310%\210\320\345\346\347\307\310%\210\320\350\351\352\307\310%\210\320\353\354\355\307\310%\210\320\356\357\360\307\310%\210\320\361\362\363\307\310%\210\302\364\303\304\365DD\366\307\310\311\367\370\371& \207" [term-default-fg-color term-default-bg-color custom-declare-variable funcall function #[0 "\300\207" [nil] 1] "If non-nil, default color for foreground in Term mode." :group term :type (choice (const nil) (string :tag "color")) make-obsolete-variable "use the face `term' instead." "24.3" #[0 "\300\207" [nil] 1] (choice (const nil) (string :tag "color")) custom-declare-face t :foreground :background (:inherit default) "Default face to use in Term mode." term-bold ((t :bold t)) "Default face to use for bold text." term-underline ((t :underline t)) "Default face to use for underlined text." term-color-black ((t :foreground "black" :background "black")) "Face used to render black color code." term-color-red ((t :foreground "red3" :background "red3")) "Face used to render red color code." term-color-green ((t :foreground "green3" :background "green3")) "Face used to render green color code." term-color-yellow ((t :foreground "yellow3" :background "yellow3")) "Face used to render yellow color code." term-color-blue ((t :foreground "blue2" :background "blue2")) "Face used to render blue color code." term-color-magenta ((t :foreground "magenta3" :background "magenta3")) "Face used to render magenta color code." term-color-cyan ((t :foreground "cyan3" :background "cyan3")) "Face used to render cyan color code." term-color-white ((t :foreground "white" :background "white")) "Face used to render white color code." term-buffer-maximum-size #[0 "\300\207" [8192] 1] "The maximum size in lines for term buffers.\nTerm buffers are truncated from the top to be no greater than this number.\nNotice that a setting of 0 means \"don't truncate anything\". This variable\nis buffer-local." integer :version "27.1"] 10) #@71 Keyboard map for sending characters directly to the inferior process. (defvar term-raw-map (byte-code "\301 \301 \302\211\303W\2031 \304\305\306\"\307#\210\211\310=\204* \211\311=\204* \304\305\306\"\312#\210\211T\262\202 \304\313\307#\210\304\314#\210\304\315\316#\210\304\317\320#\210\304\321\322#\210\304\323\324#\210\304\325\326#\210\304\327\330#\210\304\331\332#\210\304\333\334#\210\304\335\336#\210\304\337\340#\210\304\341\340#\210\304\342\343#\210\304\344\345#\210\304\346\347#\210\304\350\351#\210\304\352\353#\210\304\354\355#\210\304\356\357#\210\304\360\361#\210\304\362\363#\210\304\364\365#\210)\207" [esc-map make-keymap 0 128 define-key make-string 1 term-send-raw 79 91 term-send-raw-meta [remap self-insert-command] "" [mouse-2] term-mouse-paste [up] term-send-up [down] term-send-down [right] term-send-right [left] term-send-left [C-up] term-send-ctrl-up [C-down] term-send-ctrl-down [C-right] term-send-ctrl-right [C-left] term-send-ctrl-left [delete] term-send-del [deletechar] [backspace] term-send-backspace [home] term-send-home [end] term-send-end [insert] term-send-insert [S-prior] scroll-down [S-next] scroll-up [S-insert] term-paste [prior] term-send-prior [next] term-send-next [xterm-paste] term--xterm-paste] 7) (#$ . 18414)) #@30 Terminal menu for Term mode. (defvar term-terminal-menu nil (#$ . 19713)) (byte-code "\303\304 \nE\305\306$\207" [term-mode-map term-raw-map term-pager-break-map easy-menu-do-define term-terminal-menu "Terminal menu for Term mode." ("Terminal" ["Line mode" term-line-mode :active (term-in-char-mode) :help "Switch to line (cooked) sub-mode of term mode"] ["Character mode" term-char-mode :active (term-in-line-mode) :help "Switch to char (raw) sub-mode of term mode"] ["Paging" term-pager-toggle :style toggle :selected term-pager-count :help "Toggle paging feature"])] 5) #@29 Signals menu for Term mode. (defvar term-signals-menu nil (#$ . 20293)) (byte-code "\303\304 \nE\305\306$\207" [term-mode-map term-raw-map term-pager-break-map easy-menu-do-define term-signals-menu "Signals menu for Term mode." ("Signals" ["BREAK" term-interrupt-subjob :active t :help "Interrupt the current subjob"] ["STOP" term-stop-subjob :active t :help "Stop the current subjob"] ["CONT" term-continue-subjob :active t :help "Send CONT signal to process buffer's process group"] ["QUIT" term-quit-subjob :active t :help "Send quit signal to the current subjob"] ["KILL" term-kill-subjob :active t :help "Send kill signal to the current subjob"] ["EOF" term-send-eof :active t :help "Send an EOF to the current buffer's process"])] 5) #@27 Menu for Term pager mode. (defvar term-pager-menu nil (#$ . 21040)) (easy-menu-do-define 'term-pager-menu term-pager-break-map "Menu for Term pager mode." '("More pages?" ["1 page forwards" term-pager-page t] ["1 page backwards" term-pager-back-page t] ["1 line backwards" term-pager-back-line t] ["1 line forwards" term-pager-line t] ["Goto to beginning" term-pager-bob t] ["Goto to end" term-pager-eob t] ["Discard remaining output" term-pager-discard t] ["Disable paging" term-pager-toggle t] ["Help" term-pager-help t])) (defvar term-raw-escape-map (byte-code "\300 \301\302\"\210\303\304\305\306 \304\"#\210\303\307\305\306 \307\"#\210\303\310\311#\210\303\312\313#\210\303\314\315#\210\303\316\317#\210\211\207" [make-sparse-keymap set-keymap-parent Control-X-prefix define-key "" lookup-key current-global-map "" "" term-pager-toggle "" term-char-mode "\n" term-line-mode [134217848] execute-extended-command] 7)) #@68 Change `term-escape-char' and keymaps that depend on it. (fn KEY) (defalias 'term-set-escape-char #[257 "\203\n \303 \304#\210\305!\203 \211\202 \306!\303 \n#\210\303\n\304#\207" [term-escape-char term-raw-map term-raw-escape-map define-key term-send-raw vectorp vector] 5 (#$ . 21978)]) (byte-code "\301\206 \302!\210\303\304\305\306#\207" [term-escape-char term-set-escape-char 3 put term-mode mode-class special] 4) (defvar term-display-table (byte-code "\301!\206 \302 \303\304\262\211\305W\203 \306!I\210\211T\262\202\f \307\262\211\310W\2037 \306!I\210\211T\262\202# \311\262\211\312W\203N \306!I\210\211T\262\202: \207" [standard-display-table copy-sequence make-display-table nil 0 10 vector 11 32 128 256] 6)) (defalias 'term-ansi-reset #[0 "\306\307\211\307\310\307\211 \310\211\n\207" [term-current-face term-ansi-current-underline term-ansi-current-bold term-ansi-current-reverse term-ansi-current-color term-ansi-current-invisible term nil 0 term-ansi-face-already-done term-ansi-current-bg-color] 3]) (defvar term-mode-hook nil) (byte-code "\300\301N\204\f \302\300\301\303#\210\304\305!\204 \302\305\306\307#\210\300\207" [term-mode-hook variable-documentation put "Hook run after entering Term mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" boundp term-mode-map definition-name term-mode] 4) (defvar term-mode-map (make-sparse-keymap)) (byte-code "\301\302N\204 \303\301\302\304\305!#\210\306\307!\204 \303\307\310\311#\210\312\313 !\210\307\302N\204- \303\307\302\304\314!#\210\306\300!\204B \303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P \303\300\302\304\320!#\210\303\311\321\317#\207" [term-mode-abbrev-table term-mode-map variable-documentation put purecopy "Keymap for `term-mode'." boundp term-mode-syntax-table definition-name term-mode (lambda (#1=#:def-tmp-var) (defvar term-mode-syntax-table #1#)) make-syntax-table "Syntax table for `term-mode'." (lambda (#1#) (defvar term-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `term-mode'." derived-mode-parent] 5) #@1668 Major mode for interacting with an inferior interpreter. The interpreter name is same as buffer name, sans the asterisks. There are two submodes: line mode and char mode. By default, you are in char mode. In char sub-mode, each character (except `term-escape-char') is sent immediately to the subprocess. The escape character is equivalent to the usual meaning of C-x. In line mode, you send a line of input at a time; use \[term-send-input] to send. In line mode, this maintains an input history of size `term-input-ring-size', and you can access it with the commands \[term-next-input], \[term-previous-input], and \[term-dynamic-list-input-ring]. Input ring history expansion can be achieved with the commands \[term-replace-by-expanded-history] or \[term-magic-space]. Input ring expansion is controlled by the variable `term-input-autoexpand', and addition is controlled by the variable `term-input-ignoredups'. Input to, and output from, the subprocess can cause the window to scroll to the end of the buffer. See variables `term-scroll-to-bottom-on-input', and `term-scroll-to-bottom-on-output'. If you accidentally suspend your process, use \[term-continue-subjob] to continue it. This mode can be customized to create specific modes for running particular subprocesses. This can be done by setting the hooks `term-input-filter-functions', `term-input-filter', `term-input-sender' and `term-get-old-input' to appropriate functions, and the variable `term-prompt-regexp' to the appropriate regular expression. Commands in raw mode: \{term-raw-map} Commands in line mode: \{term-mode-map} Entry to this mode runs the hooks on `term-mode-hook'. (defalias 'term-mode #[0 "\306\300!\210\307\310 \210\311\312\313!\210\314\f!\210 @\315ABC\306\316!\210\317\320!\306\321!\210\322\323 !\306\324!\210\325 \306\326!\210\327 \306\330!\210\327 \306\331!\210\332\306\333!\210\306\334!\210\306\335!\210\306\336!\210\306\337!\210\306\340!\210\306\341!\210\204x \342!\306\343!\210\344 #\306\345!\210D%\306\346!\210\315&\306\347!\210\306\350!\210\306\351!\210\306\352!\210\306\353!\210\306\354!\210\306\355!\210\306\356!\210\306\357!\210\306\360!\210\306\361!\210\306\362!\210\306\363!\210\306\364!\210\306\365!\210\306\366!\210\306\367!\210\306\370!\210\306\371!\210\306\372!\210\306\373!\210\306\374!\210\306\375!\210\306\376!\210\306\377!\210\306\201L !\210\306\201M !\210\306\201N !\210\306\201O !\210\306\201P !\210\306\201Q !\210\306\201R !\210\306\201S !\210\306\201T !\210\306\201E !\210\201U E\306\201F !\210\327 F\306\201V !\210\201W \210\306\201G !\210\315G\306\201H !\210\315H\306\201I !\210\201X I\201Y \201Z \201[ \201\\ B\201] \315$\210\201Y \201Z \201^ \201_ B\201` \201a $\210\201b \201c \201d \315\307$\210\201e \210\201f J!\210\201f K!\210\204\271\342!\201g \210)\201h \201i !\207" [delay-mode-hooks major-mode mode-name term-mode-map term-mode-syntax-table term-mode-abbrev-table make-local-variable t kill-all-local-variables term-mode "Term" use-local-map set-syntax-table nil term-home-marker copy-marker 0 term-height floor window-screen-lines term-width window-max-chars-per-line term-last-input-start make-marker term-last-input-end term-last-input-match "" term-saved-home-marker term-saved-cursor term-prompt-regexp term-input-ring-size term-input-ring term-input-ring-file-name term-input-ring-index make-ring term-ansi-at-host system-name term-ansi-at-dir term-ansi-at-message ange-ftp-default-user ange-ftp-default-password ange-ftp-generate-anonymous-password term-buffer-maximum-size term-ansi-current-bold term-ansi-current-color term-ansi-face-already-done term-ansi-current-bg-color term-ansi-current-underline term-ansi-current-reverse term-ansi-current-invisible term-terminal-undecoded-bytes term-do-line-wrapping term-kill-echo-list term-start-line-column term-current-column term-current-row term-log-buffer term-pager-count term-pager-old-local-map term-old-mode-map term-insert-mode term-completion-fignore term-get-old-input term-matching-input-from-input-string local-abbrev-table indent-tabs-mode term-display-table buffer-display-table default-directory term-vertical-motion term-pending-delete-marker term-pending-frame cua-mode font-lock-defaults term-terminal-menu term-signals-menu term-input-autoexpand term-input-ignoredups term-delimiter-argument-list term-input-filter term-input-sender term-eol-on-send term-scroll-to-bottom-on-output term-scroll-show-maximum-output term-ptyp vertical-motion term-current-face term-ansi-reset (nil t) advice--add-function :filter-return #[0 "\300\301!\207" [advice--buffer-local filter-buffer-substring-function] 2] #[257 "\300\301\"\207" [advice--set-buffer-local filter-buffer-substring-function] 4 "\n\n(fn GV--VAL)"] term--filter-buffer-substring #[0 "\300\301!\207" [advice--buffer-local window-adjust-process-window-size-function] 2] #[257 "\300\301\"\207" [advice--set-buffer-local window-adjust-process-window-size-function] 4 "\n\n(fn GV--VAL)"] #[257 "\211\203 \300A@\"\210\207" [term-reset-size] 4 "\n\n(fn SIZE)"] ((name . term-maybe-reset-size)) add-hook read-only-mode-hook term-line-mode-buffer-read-only-update term--reset-scroll-region easy-menu-add term-update-mode-line run-mode-hooks term-mode-hook] 5 (#$ . 24138) nil]) (defalias 'term--remove-fake-newlines #[0 "eb\210\301\302`\303\"\211\262\205&