[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ELPA-diffs] /srv/bzr/emacs/elpa r277: * ack.el: Make minibuffer prompt
From: |
Leo Liu |
Subject: |
[ELPA-diffs] /srv/bzr/emacs/elpa r277: * ack.el: Make minibuffer prompt more informative |
Date: |
Sun, 21 Oct 2012 13:26:02 +0800 |
User-agent: |
Bazaar (2.5.0) |
------------------------------------------------------------
revno: 277
committer: Leo Liu <address@hidden>
branch nick: elpa
timestamp: Sun 2012-10-21 13:26:02 +0800
message:
* ack.el: Make minibuffer prompt more informative
modified:
packages/ack/ack.el
=== modified file 'packages/ack/ack.el'
--- a/packages/ack/ack.el 2012-10-08 03:54:59 +0000
+++ b/packages/ack/ack.el 2012-10-21 05:26:02 +0000
@@ -267,6 +267,13 @@
(ansi-color-apply-on-region beg ack--ansi-color-last-marker))
nil))))))
+(defun ack-update-minibuffer-prompt (prompt)
+ "Visually replace minibuffer prompt with PROMPT."
+ (when (minibufferp)
+ (let ((inhibit-read-only t))
+ (put-text-property
+ (point-min) (minibuffer-prompt-end) 'display prompt))))
+
(defun ack-skel-file ()
"Insert a template for case-insensitive file name search."
(interactive)
@@ -285,10 +292,13 @@
(root (or (ack-guess-project-root default-directory regexp)
(error "Cannot locate vc project root")))
(which (car (directory-files root nil regexp)))
+ (backend (downcase (substring which 1)))
(cmd (or (cdr (assoc which ack-vc-grep-commands))
- (error "No command provided for `%s grep'"
- (substring which 1)))))
+ (error "No command provided for `%s grep'" backend))))
(setq project-root root)
+ (ack-update-minibuffer-prompt
+ (format "Run %s grep in `%s': " backend
+ (file-name-nondirectory (directory-file-name project-root))))
(delete-minibuffer-contents)
(skeleton-insert '(nil cmd " '" _ "'"))))
@@ -338,16 +348,19 @@
\\{ack-minibuffer-local-map}"
(interactive
- (let ((project-root (funcall ack-default-directory-function
- current-prefix-arg))
+ (let ((project-root (or (funcall ack-default-directory-function
+ current-prefix-arg)
+ default-directory))
;; Disable completion cycling; see http://debbugs.gnu.org/12221
(completion-cycle-threshold nil))
(list (minibuffer-with-setup-hook (if (>= emacs-major-version 24)
'shell-completion-vars
'pcomplete-shell-setup)
- (read-from-minibuffer "Run ack (like this): "
- ack-command ack-minibuffer-local-map
- nil 'ack-history))
+ (read-from-minibuffer
+ (format "Run ack in `%s': "
+ (file-name-nondirectory
+ (directory-file-name project-root)))
+ ack-command ack-minibuffer-local-map nil 'ack-history))
project-root)))
(let ((default-directory (expand-file-name
(or directory default-directory))))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [ELPA-diffs] /srv/bzr/emacs/elpa r277: * ack.el: Make minibuffer prompt more informative,
Leo Liu <=