[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/simple.el,v
From: |
Juri Linkov |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/simple.el,v |
Date: |
Tue, 22 Apr 2008 19:50:12 +0000 |
CVSROOT: /sources/emacs
Module name: emacs
Changes by: Juri Linkov <jurta> 08/04/22 19:50:11
Index: simple.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/simple.el,v
retrieving revision 1.921
retrieving revision 1.922
diff -u -b -r1.921 -r1.922
--- simple.el 21 Apr 2008 20:48:10 -0000 1.921
+++ simple.el 22 Apr 2008 19:50:11 -0000 1.922
@@ -1957,6 +1957,25 @@
is run interactively. A value of nil means that output to stderr and
stdout will be intermixed in the output stream.")
+(declare-function mailcap-file-default-commands "mailcap" (files))
+
+(defun minibuffer-default-add-shell-commands ()
+ "Return a list of all commands associted with the current file.
+This function is used to add all related commands retieved by `mailcap'
+to the end of the list of defaults just after the default value."
+ (interactive)
+ (let* ((filename (if (listp minibuffer-default)
+ (car minibuffer-default)
+ minibuffer-default))
+ (commands (and filename (require 'mailcap nil t)
+ (mailcap-file-default-commands (list filename)))))
+ (setq commands (mapcar (lambda (command)
+ (concat command " " filename))
+ commands))
+ (if (listp minibuffer-default)
+ (append minibuffer-default commands)
+ (cons minibuffer-default commands))))
+
(defun minibuffer-complete-shell-command ()
"Dynamically complete shell command at point."
(interactive)
@@ -2031,7 +2050,15 @@
In an interactive call, the variable `shell-command-default-error-buffer'
specifies the value of ERROR-BUFFER."
- (interactive (list (read-shell-command "Shell command: ")
+ (interactive
+ (list
+ (minibuffer-with-setup-hook
+ (lambda ()
+ (set (make-local-variable 'minibuffer-default-add-function)
+ 'minibuffer-default-add-shell-commands))
+ (read-shell-command "Shell command: " nil nil
+ (and buffer-file-name
+ (file-relative-name buffer-file-name))))
current-prefix-arg
shell-command-default-error-buffer))
;; Look for a handler in case default-directory is a remote file name.
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Chong Yidong, 2008/04/02
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Stefan Monnier, 2008/04/02
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Chong Yidong, 2008/04/03
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Stefan Monnier, 2008/04/04
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Glenn Morris, 2008/04/10
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Stefan Monnier, 2008/04/11
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Stefan Monnier, 2008/04/13
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Stefan Monnier, 2008/04/21
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v,
Juri Linkov <=
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Glenn Morris, 2008/04/25
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Glenn Morris, 2008/04/26
- [Emacs-diffs] Changes to emacs/lisp/simple.el,v, Stefan Monnier, 2008/04/29