* lisp/shell.el (shell-completion-vars): New function.
(shell-mode): * lisp/simple.el (read-shell-command): Use it. (blink-matching-open): No need for " [...]" in minibuffer-message.
This commit is contained in:
parent
98dc3df322
commit
914a0ae1ba
3 changed files with 35 additions and 36 deletions
|
@ -1,3 +1,10 @@
|
|||
2011-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* shell.el (shell-completion-vars): New function.
|
||||
(shell-mode):
|
||||
* simple.el (read-shell-command): Use it.
|
||||
(blink-matching-open): No need for " [...]" in minibuffer-message.
|
||||
|
||||
2011-05-12 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* calendar/appt.el (appt-now-displayed): Remove pointless variable.
|
||||
|
|
|
@ -380,6 +380,25 @@ to `dirtrack-mode'."
|
|||
:group 'shell
|
||||
:type '(choice (const nil) regexp))
|
||||
|
||||
(defun shell-completion-vars ()
|
||||
"Setup completion vars for `shell-mode' and `read-shell-command'."
|
||||
(set (make-local-variable 'comint-completion-fignore)
|
||||
shell-completion-fignore)
|
||||
(set (make-local-variable 'comint-delimiter-argument-list)
|
||||
shell-delimiter-argument-list)
|
||||
(set (make-local-variable 'comint-file-name-chars) shell-file-name-chars)
|
||||
(set (make-local-variable 'comint-file-name-quote-list)
|
||||
shell-file-name-quote-list)
|
||||
(set (make-local-variable 'comint-dynamic-complete-functions)
|
||||
shell-dynamic-complete-functions)
|
||||
(set (make-local-variable 'pcomplete-parse-arguments-function)
|
||||
;; FIXME: This function should be moved to shell.el.
|
||||
#'pcomplete-parse-comint-arguments)
|
||||
(setq comint-input-autoexpand shell-input-autoexpand)
|
||||
;; Not needed in shell-mode because it's inherited from comint-mode, but
|
||||
;; placed here for read-shell-command.
|
||||
(add-hook 'completion-at-point-functions 'comint-completion-at-point nil t))
|
||||
|
||||
(put 'shell-mode 'mode-class 'special)
|
||||
|
||||
(define-derived-mode shell-mode comint-mode "Shell"
|
||||
|
@ -437,22 +456,12 @@ Variables `comint-output-filter-functions', a hook, and
|
|||
control whether input and output cause the window to scroll to the end of the
|
||||
buffer."
|
||||
(setq comint-prompt-regexp shell-prompt-pattern)
|
||||
(setq comint-completion-fignore shell-completion-fignore)
|
||||
(setq comint-delimiter-argument-list shell-delimiter-argument-list)
|
||||
(setq comint-file-name-chars shell-file-name-chars)
|
||||
(setq comint-file-name-quote-list shell-file-name-quote-list)
|
||||
(set (make-local-variable 'comint-dynamic-complete-functions)
|
||||
shell-dynamic-complete-functions)
|
||||
(shell-completion-vars)
|
||||
(set (make-local-variable 'paragraph-separate) "\\'")
|
||||
(make-local-variable 'paragraph-start)
|
||||
(setq paragraph-start comint-prompt-regexp)
|
||||
(make-local-variable 'font-lock-defaults)
|
||||
(setq font-lock-defaults '(shell-font-lock-keywords t))
|
||||
(make-local-variable 'shell-dirstack)
|
||||
(setq shell-dirstack nil)
|
||||
(make-local-variable 'shell-last-dir)
|
||||
(setq shell-last-dir nil)
|
||||
(setq comint-input-autoexpand shell-input-autoexpand)
|
||||
(set (make-local-variable 'paragraph-start) comint-prompt-regexp)
|
||||
(set (make-local-variable 'font-lock-defaults) '(shell-font-lock-keywords t))
|
||||
(set (make-local-variable 'shell-dirstack) nil)
|
||||
(set (make-local-variable 'shell-last-dir) nil)
|
||||
(shell-dirtrack-mode 1)
|
||||
;; This is not really correct, since the shell buffer does not really
|
||||
;; edit this directory. But it is useful in the buffer list and menus.
|
||||
|
|
|
@ -36,10 +36,6 @@
|
|||
;;; From compile.el
|
||||
(defvar compilation-current-error)
|
||||
(defvar compilation-context-lines)
|
||||
;;; From comint.el
|
||||
(defvar comint-file-name-quote-list)
|
||||
(defvar comint-file-name-chars)
|
||||
(defvar comint-delimiter-argument-list)
|
||||
|
||||
(defcustom idle-update-delay 0.5
|
||||
"Idle time delay before updating various things on the screen.
|
||||
|
@ -2167,12 +2163,7 @@ to the end of the list of defaults just after the default value."
|
|||
(append minibuffer-default commands)
|
||||
(cons minibuffer-default commands))))
|
||||
|
||||
(defvar shell-delimiter-argument-list)
|
||||
(defvar shell-file-name-chars)
|
||||
(defvar shell-file-name-quote-list)
|
||||
(defvar shell-dynamic-complete-functions)
|
||||
;; shell requires comint.
|
||||
(defvar comint-dynamic-complete-functions)
|
||||
(declare-function shell-completion-vars "shell" ())
|
||||
|
||||
(defvar minibuffer-local-shell-command-map
|
||||
(let ((map (make-sparse-keymap)))
|
||||
|
@ -2189,15 +2180,7 @@ to `shell-command-history'."
|
|||
(require 'shell)
|
||||
(minibuffer-with-setup-hook
|
||||
(lambda ()
|
||||
(set (make-local-variable 'comint-delimiter-argument-list)
|
||||
shell-delimiter-argument-list)
|
||||
(set (make-local-variable 'comint-file-name-chars) shell-file-name-chars)
|
||||
(set (make-local-variable 'comint-file-name-quote-list)
|
||||
shell-file-name-quote-list)
|
||||
(set (make-local-variable 'comint-dynamic-complete-functions)
|
||||
shell-dynamic-complete-functions)
|
||||
(add-hook 'completion-at-point-functions
|
||||
'comint-completion-at-point nil 'local)
|
||||
(shell-completion-vars)
|
||||
(set (make-local-variable 'minibuffer-default-add-function)
|
||||
'minibuffer-default-add-shell-commands))
|
||||
(apply 'read-from-minibuffer prompt initial-contents
|
||||
|
@ -5589,10 +5572,10 @@ The function should return non-nil if the two tokens do not match.")
|
|||
(mismatch
|
||||
(if blinkpos
|
||||
(if (minibufferp)
|
||||
(minibuffer-message " [Mismatched parentheses]")
|
||||
(minibuffer-message "Mismatched parentheses")
|
||||
(message "Mismatched parentheses"))
|
||||
(if (minibufferp)
|
||||
(minibuffer-message " [Unmatched parenthesis]")
|
||||
(minibuffer-message "Unmatched parenthesis")
|
||||
(message "Unmatched parenthesis"))))
|
||||
((not blinkpos) nil)
|
||||
((pos-visible-in-window-p blinkpos)
|
||||
|
|
Loading…
Add table
Reference in a new issue