mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-10 15:56:18 +00:00
Add defgroup's; use defcustom for user vars.
This commit is contained in:
parent
4d100a01c9
commit
ed366e8726
146
lisp/comint.el
146
lisp/comint.el
@ -137,6 +137,20 @@
|
||||
;; comint-completion-autolist boolean completion behavior
|
||||
;; comint-completion-recexact boolean ...
|
||||
|
||||
(defgroup comint nil
|
||||
"General command interpreter in a window stuff."
|
||||
:group 'processes)
|
||||
|
||||
(defgroup comint-completion nil
|
||||
"Completion facilities in comint"
|
||||
:group 'comint)
|
||||
|
||||
(defgroup comint-source nil
|
||||
"Source finding facilities in comint"
|
||||
:prefix "comint-"
|
||||
:group 'comint)
|
||||
|
||||
|
||||
(defvar comint-prompt-regexp "^"
|
||||
"Regexp to recognise prompts in the inferior process.
|
||||
Defaults to \"^\", the null string at BOL.
|
||||
@ -162,7 +176,7 @@ For shells, a good value is (?\\| ?& ?< ?> ?\\( ?\\) ?;).
|
||||
|
||||
This is a good thing to set in mode hooks.")
|
||||
|
||||
(defvar comint-input-autoexpand nil
|
||||
(defcustom comint-input-autoexpand nil
|
||||
"*If non-nil, expand input command history references on completion.
|
||||
This mirrors the optional behavior of tcsh (its autoexpand and histlit).
|
||||
|
||||
@ -171,30 +185,55 @@ If the value is `history', then the expansion is only when inserting
|
||||
into the buffer's input ring. See also `comint-magic-space' and
|
||||
`comint-dynamic-complete'.
|
||||
|
||||
This variable is buffer-local.")
|
||||
This variable is buffer-local."
|
||||
:type '(choice (const :tag "off" nil)
|
||||
(const :tag "on" t)
|
||||
(const input)
|
||||
(const history))
|
||||
:group 'comint)
|
||||
|
||||
(defvar comint-input-ignoredups nil
|
||||
(defface comint-input-face '((((class color)
|
||||
(background dark))
|
||||
(:foreground "red"))
|
||||
(((class color)
|
||||
(background light))
|
||||
(:foreground "blue"))
|
||||
(t
|
||||
(:bold t)))
|
||||
"How to display user input for comint shells."
|
||||
:group 'comint)
|
||||
|
||||
(defcustom comint-input-ignoredups nil
|
||||
"*If non-nil, don't add input matching the last on the input ring.
|
||||
This mirrors the optional behavior of bash.
|
||||
|
||||
This variable is buffer-local.")
|
||||
This variable is buffer-local."
|
||||
:type 'boolean
|
||||
:group 'comint)
|
||||
|
||||
(defvar comint-input-ring-file-name nil
|
||||
(defcustom comint-input-ring-file-name nil
|
||||
"*If non-nil, name of the file to read/write input history.
|
||||
See also `comint-read-input-ring' and `comint-write-input-ring'.
|
||||
|
||||
This variable is buffer-local, and is a good thing to set in mode hooks.")
|
||||
This variable is buffer-local, and is a good thing to set in mode hooks."
|
||||
:type 'boolean
|
||||
:group 'comint)
|
||||
|
||||
(defvar comint-scroll-to-bottom-on-input nil
|
||||
(defcustom comint-scroll-to-bottom-on-input nil
|
||||
"*Controls whether input to interpreter causes window to scroll.
|
||||
If nil, then do not scroll. If t or `all', scroll all windows showing buffer.
|
||||
If `this', scroll only the selected window.
|
||||
|
||||
The default is nil.
|
||||
|
||||
See `comint-preinput-scroll-to-bottom'. This variable is buffer-local.")
|
||||
See `comint-preinput-scroll-to-bottom'. This variable is buffer-local."
|
||||
:type '(choice (const :tag "off" nil)
|
||||
(const t)
|
||||
(const all)
|
||||
(const this))
|
||||
:group 'comint)
|
||||
|
||||
(defvar comint-scroll-to-bottom-on-output nil
|
||||
(defcustom comint-scroll-to-bottom-on-output nil
|
||||
"*Controls whether interpreter output causes window to scroll.
|
||||
If nil, then do not scroll. If t or `all', scroll all windows showing buffer.
|
||||
If `this', scroll only the selected window.
|
||||
@ -203,34 +242,49 @@ If `others', scroll only those that are not the selected window.
|
||||
The default is nil.
|
||||
|
||||
See variable `comint-scroll-show-maximum-output' and function
|
||||
`comint-postoutput-scroll-to-bottom'. This variable is buffer-local.")
|
||||
`comint-postoutput-scroll-to-bottom'. This variable is buffer-local."
|
||||
:type '(choice (const :tag "off" nil)
|
||||
(const t)
|
||||
(const all)
|
||||
(const this)
|
||||
(const others))
|
||||
:group 'comint)
|
||||
|
||||
(defvar comint-scroll-show-maximum-output nil
|
||||
(defcustom comint-scroll-show-maximum-output nil
|
||||
"*Controls how interpreter output causes window to scroll.
|
||||
If non-nil, then show the maximum output when the window is scrolled.
|
||||
|
||||
See variable `comint-scroll-to-bottom-on-output' and function
|
||||
`comint-postoutput-scroll-to-bottom'. This variable is buffer-local.")
|
||||
`comint-postoutput-scroll-to-bottom'. This variable is buffer-local."
|
||||
:type 'boolean
|
||||
:group 'comint)
|
||||
|
||||
(defvar comint-buffer-maximum-size 1024
|
||||
(defcustom comint-buffer-maximum-size 1024
|
||||
"*The maximum size in lines for comint buffers.
|
||||
Comint buffers are truncated from the top to be no greater than this number, if
|
||||
the function `comint-truncate-buffer' is on `comint-output-filter-functions'.")
|
||||
the function `comint-truncate-buffer' is on `comint-output-filter-functions'."
|
||||
:type 'integer
|
||||
:group 'comint)
|
||||
|
||||
(defvar comint-input-ring-size 32
|
||||
"Size of input history ring.")
|
||||
|
||||
(defvar comint-process-echoes nil
|
||||
(defcustom comint-process-echoes nil
|
||||
"*If non-nil, assume that the subprocess echoes any input.
|
||||
If so, delete one copy of the input so that only one copy eventually
|
||||
appears in the buffer.
|
||||
|
||||
This variable is buffer-local.")
|
||||
This variable is buffer-local."
|
||||
:type 'boolean
|
||||
:group 'comint)
|
||||
|
||||
(defvar comint-password-prompt-regexp
|
||||
;; AIX puts the name of the person being su'd to in from of the prompt.
|
||||
(defcustom comint-password-prompt-regexp
|
||||
"\\(\\([Oo]ld \\|[Nn]ew \\|'s \\|^\\)[Pp]assword\\|pass phrase\\):\\s *\\'"
|
||||
"*Regexp matching prompts for passwords in the inferior process.
|
||||
This is used by `comint-watch-for-password-prompt'.")
|
||||
This is used by `comint-watch-for-password-prompt'."
|
||||
:type 'regexp
|
||||
:group 'comint)
|
||||
|
||||
;; Here are the per-interpreter hooks.
|
||||
(defvar comint-get-old-input (function comint-get-old-input-default)
|
||||
@ -240,6 +294,18 @@ It returns the text to be submitted as process input. The default is
|
||||
`comint-get-old-input-default', which grabs the current line, and strips off
|
||||
leading text matching `comint-prompt-regexp'.")
|
||||
|
||||
;; XEmacs - fsf doesn't have this, and I think it ought to default to 't'
|
||||
;; because it's good idiot-proof interface. --stig
|
||||
(defcustom comint-append-old-input t
|
||||
"*If nil, old text selected by \\[comint-send-input] is re-sent immediately.
|
||||
If non-nil, the old text is appended to the end of the buffer,
|
||||
and a prompting message is printed.
|
||||
|
||||
This flag does not affect the behavior of \\[comint-send-input]
|
||||
after the process output mark."
|
||||
:type 'boolean
|
||||
:group 'comint)
|
||||
|
||||
(defvar comint-dynamic-complete-functions
|
||||
'(comint-replace-by-expanded-history comint-dynamic-complete-filename)
|
||||
"List of functions called to perform completion.
|
||||
@ -277,20 +343,26 @@ massage the input string, put a different function here.
|
||||
`comint-simple-send' just sends the string plus a newline.
|
||||
This is called from the user command `comint-send-input'.")
|
||||
|
||||
(defvar comint-eol-on-send t
|
||||
(defcustom comint-eol-on-send t
|
||||
"*Non-nil means go to the end of the line before sending input.
|
||||
See `comint-send-input'.")
|
||||
See `comint-send-input'."
|
||||
:type 'boolean
|
||||
:group 'comint)
|
||||
|
||||
(defvar comint-mode-hook '()
|
||||
(defcustom comint-mode-hook '()
|
||||
"Called upon entry into comint-mode
|
||||
This is run before the process is cranked up.")
|
||||
This is run before the process is cranked up."
|
||||
:type 'hook
|
||||
:group 'comint)
|
||||
|
||||
(defvar comint-exec-hook '()
|
||||
(defcustom comint-exec-hook '()
|
||||
"Called each time a process is exec'd by `comint-exec'.
|
||||
This is called after the process is cranked up. It is useful for things that
|
||||
must be done each time a process is executed in a comint mode buffer (e.g.,
|
||||
`(process-kill-without-query)'). In contrast, the `comint-mode-hook' is only
|
||||
executed once when the buffer is created.")
|
||||
executed once when the buffer is created."
|
||||
:type 'hook
|
||||
:group 'comint)
|
||||
|
||||
(defvar comint-mode-map nil)
|
||||
|
||||
@ -1813,27 +1885,35 @@ See `comint-prompt-regexp'."
|
||||
;; Commands like this are fine things to put in load hooks if you
|
||||
;; want them present in specific modes.
|
||||
|
||||
(defvar comint-completion-autolist nil
|
||||
(defcustom comint-completion-autolist nil
|
||||
"*If non-nil, automatically list possibilities on partial completion.
|
||||
This mirrors the optional behavior of tcsh.")
|
||||
This mirrors the optional behavior of tcsh."
|
||||
:type 'boolean
|
||||
:group 'comint-completion)
|
||||
|
||||
(defvar comint-completion-addsuffix t
|
||||
(defcustom comint-completion-addsuffix t
|
||||
"*If non-nil, add a `/' to completed directories, ` ' to file names.
|
||||
If a cons pair, it should be of the form (DIRSUFFIX . FILESUFFIX) where
|
||||
DIRSUFFIX and FILESUFFIX are strings added on unambiguous or exact completion.
|
||||
This mirrors the optional behavior of tcsh.")
|
||||
This mirrors the optional behavior of tcsh."
|
||||
:type 'boolean
|
||||
:group 'comint-completion)
|
||||
|
||||
(defvar comint-completion-recexact nil
|
||||
(defcustom comint-completion-recexact nil
|
||||
"*If non-nil, use shortest completion if characters cannot be added.
|
||||
This mirrors the optional behavior of tcsh.
|
||||
|
||||
A non-nil value is useful if `comint-completion-autolist' is non-nil too.")
|
||||
A non-nil value is useful if `comint-completion-autolist' is non-nil too."
|
||||
:type 'boolean
|
||||
:group 'comint-completion)
|
||||
|
||||
(defvar comint-completion-fignore nil
|
||||
(defcustom comint-completion-fignore nil
|
||||
"*List of suffixes to be disregarded during file completion.
|
||||
This mirrors the optional behavior of bash and tcsh.
|
||||
|
||||
Note that this applies to `comint-dynamic-complete-filename' only.")
|
||||
Note that this applies to `comint-dynamic-complete-filename' only."
|
||||
:type '(repeat (string :tag "Suffix"))
|
||||
:group 'comint-completion)
|
||||
|
||||
(defvar comint-file-name-prefix ""
|
||||
"Prefix prepended to absolute file names taken from process input.
|
||||
@ -1849,7 +1929,7 @@ directory tracking functions.")
|
||||
This is a good thing to set in mode hooks.")
|
||||
|
||||
(defvar comint-file-name-quote-list nil
|
||||
"List of characters to quote with `\\' when in a file name.
|
||||
"List of characters to quote with `\' when in a file name.
|
||||
|
||||
This is a good thing to set in mode hooks.")
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;; shell.el --- specialized comint.el for running the shell.
|
||||
|
||||
;; Copyright (C) 1988, 1993, 1994, 1995, 1996 Free Software Foundation, Inc.
|
||||
;; Copyright (C) 1988, 93, 94, 95, 96, 1997 Free Software Foundation, Inc.
|
||||
|
||||
;; Author: Olin Shivers <shivers@cs.cmu.edu>
|
||||
;; Maintainer: Simon Marshall <simon@gnu.ai.mit.edu>
|
||||
@ -106,6 +106,19 @@
|
||||
|
||||
;;; Customization and Buffer Variables
|
||||
|
||||
(defgroup shell nil
|
||||
"Running shell from within Emacs buffers"
|
||||
:group 'processes
|
||||
:group 'unix)
|
||||
|
||||
(defgroup shell-directories nil
|
||||
"Directory support in shell mode"
|
||||
:group 'shell)
|
||||
|
||||
(defgroup shell-faces nil
|
||||
"Faces in shell buffers"
|
||||
:group 'shell)
|
||||
|
||||
;;;###autoload
|
||||
(defvar shell-prompt-pattern "^[^#$%>\n]*[#$%>] *"
|
||||
"Regexp to match prompts in the inferior shell.
|
||||
@ -119,13 +132,15 @@ on lines which don't start with a prompt.
|
||||
|
||||
This is a fine thing to set in your `.emacs' file.")
|
||||
|
||||
(defvar shell-completion-fignore nil
|
||||
(defcustom shell-completion-fignore nil
|
||||
"*List of suffixes to be disregarded during file/command completion.
|
||||
This variable is used to initialize `comint-completion-fignore' in the shell
|
||||
buffer. The default is nil, for compatibility with most shells.
|
||||
Some people like (\"~\" \"#\" \"%\").
|
||||
|
||||
This is a fine thing to set in your `.emacs' file.")
|
||||
This is a fine thing to set in your `.emacs' file."
|
||||
:type '(repeat (string :tag "Suffix"))
|
||||
:group 'shell)
|
||||
|
||||
(defvar shell-delimiter-argument-list '(?\| ?& ?< ?> ?\( ?\) ?\;)
|
||||
"List of characters to recognise as separate arguments.
|
||||
@ -166,57 +181,79 @@ shell buffer.
|
||||
|
||||
This is a fine thing to set in your `.emacs' file.")
|
||||
|
||||
(defvar shell-command-regexp "[^;&|\n]+"
|
||||
(defcustom shell-command-regexp "[^;&|\n]+"
|
||||
"*Regexp to match a single command within a pipeline.
|
||||
This is used for directory tracking and does not do a perfect job.")
|
||||
This is used for directory tracking and does not do a perfect job."
|
||||
:type 'regexp
|
||||
:group 'shell)
|
||||
|
||||
(defvar shell-completion-execonly t
|
||||
(defcustom shell-completion-execonly t
|
||||
"*If non-nil, use executable files only for completion candidates.
|
||||
This mirrors the optional behavior of tcsh.
|
||||
|
||||
Detecting executability of files may slow command completion considerably.")
|
||||
Detecting executability of files may slow command completion considerably."
|
||||
:type 'boolean
|
||||
:group 'shell)
|
||||
|
||||
(defvar shell-popd-regexp "popd"
|
||||
"*Regexp to match subshell commands equivalent to popd.")
|
||||
(defcustom shell-popd-regexp "popd"
|
||||
"*Regexp to match subshell commands equivalent to popd."
|
||||
:type 'regexp
|
||||
:group 'shell-directories)
|
||||
|
||||
(defvar shell-pushd-regexp "pushd"
|
||||
"*Regexp to match subshell commands equivalent to pushd.")
|
||||
(defcustom shell-pushd-regexp "pushd"
|
||||
"*Regexp to match subshell commands equivalent to pushd."
|
||||
:type 'regexp
|
||||
:group 'shell-directories)
|
||||
|
||||
(defvar shell-pushd-tohome nil
|
||||
(defcustom shell-pushd-tohome nil
|
||||
"*If non-nil, make pushd with no arg behave as \"pushd ~\" (like cd).
|
||||
This mirrors the optional behavior of tcsh.")
|
||||
This mirrors the optional behavior of tcsh."
|
||||
:type 'boolean
|
||||
:group 'shell-directories)
|
||||
|
||||
(defvar shell-pushd-dextract nil
|
||||
(defcustom shell-pushd-dextract nil
|
||||
"*If non-nil, make \"pushd +n\" pop the nth dir to the stack top.
|
||||
This mirrors the optional behavior of tcsh.")
|
||||
This mirrors the optional behavior of tcsh."
|
||||
:type 'boolean
|
||||
:group 'shell-directories)
|
||||
|
||||
(defvar shell-pushd-dunique nil
|
||||
(defcustom shell-pushd-dunique nil
|
||||
"*If non-nil, make pushd only add unique directories to the stack.
|
||||
This mirrors the optional behavior of tcsh.")
|
||||
This mirrors the optional behavior of tcsh."
|
||||
:type 'boolean
|
||||
:group 'shell-directories)
|
||||
|
||||
(defvar shell-cd-regexp "cd"
|
||||
"*Regexp to match subshell commands equivalent to cd.")
|
||||
(defcustom shell-cd-regexp "cd"
|
||||
"*Regexp to match subshell commands equivalent to cd."
|
||||
:type 'regexp
|
||||
:group 'shell-directories)
|
||||
|
||||
(defvar shell-chdrive-regexp
|
||||
(defcustom shell-chdrive-regexp
|
||||
(if (memq system-type '(ms-dos windows-nt))
|
||||
; NetWare allows the five chars between upper and lower alphabetics.
|
||||
"[]a-zA-Z^_`\\[\\\\]:"
|
||||
nil)
|
||||
"*If non-nil, is regexp used to track drive changes.")
|
||||
"*If non-nil, is regexp used to track drive changes."
|
||||
:type 'regexp
|
||||
:group 'shell-directories)
|
||||
|
||||
(defvar explicit-shell-file-name nil
|
||||
"*If non-nil, is file name to use for explicitly requested inferior shell.")
|
||||
(defcustom explicit-shell-file-name nil
|
||||
"*If non-nil, is file name to use for explicitly requested inferior shell."
|
||||
:type '(choice (const :tag "None" nil) file)
|
||||
:group 'shell)
|
||||
|
||||
(defvar explicit-csh-args
|
||||
(defcustom explicit-csh-args
|
||||
(if (eq system-type 'hpux)
|
||||
;; -T persuades HP's csh not to think it is smarter
|
||||
;; than us about what terminal modes to use.
|
||||
'("-i" "-T")
|
||||
'("-i"))
|
||||
"*Args passed to inferior shell by M-x shell, if the shell is csh.
|
||||
Value is a list of strings, which may be nil.")
|
||||
Value is a list of strings, which may be nil."
|
||||
:type '(repeat (string :tag "Argument"))
|
||||
:group 'shell)
|
||||
|
||||
(defvar shell-input-autoexpand 'history
|
||||
(defcustom shell-input-autoexpand 'history
|
||||
"*If non-nil, expand input command history references on completion.
|
||||
This mirrors the optional behavior of tcsh (its autoexpand and histlit).
|
||||
|
||||
@ -226,7 +263,9 @@ into the buffer's input ring. See also `comint-magic-space' and
|
||||
`comint-dynamic-complete'.
|
||||
|
||||
This variable supplies a default for `comint-input-autoexpand',
|
||||
for Shell mode only.")
|
||||
for Shell mode only."
|
||||
:type '(choice (const nil) (const input) (const history))
|
||||
:type 'shell)
|
||||
|
||||
(defvar shell-dirstack nil
|
||||
"List of directories saved by pushd in this buffer's shell.
|
||||
@ -260,8 +299,10 @@ Thus, this does not include the shell's current directory.")
|
||||
shell-replace-by-expanded-directory)
|
||||
'complete-expand)))
|
||||
|
||||
(defvar shell-mode-hook '()
|
||||
"*Hook for customising Shell mode.")
|
||||
(defcustom shell-mode-hook '()
|
||||
"*Hook for customising Shell mode."
|
||||
:type 'hook
|
||||
:group 'shell)
|
||||
|
||||
(defvar shell-font-lock-keywords
|
||||
(list (cons shell-prompt-pattern 'font-lock-keyword-face)
|
||||
|
Loading…
Reference in New Issue
Block a user