branch: master commit f4bd3a49bd009fe2e20bc2cfc83616bc9168a64b Author: Jon Miller <joneb...@gmail.com> Commit: Jon Miller <joneb...@gmail.com>
counsel.el (counsel-ag): Add initial-directory Support alternative initial directory which helps other packages call this function with their unique starting directory. --- counsel.el | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) diff --git a/counsel.el b/counsel.el index 5d5263b..25f1f44 100644 --- a/counsel.el +++ b/counsel.el @@ -1040,18 +1040,19 @@ Usable with `ivy-resume', `ivy-next-line-and-call' and "Grep in the current directory for STRING." (if (< (length string) 3) (counsel-more-chars 3) - (let ((regex (counsel-unquote-regex-parens + (let ((default-directory counsel--git-grep-dir) + (regex (counsel-unquote-regex-parens (setq ivy--old-re (ivy--regex string))))) (counsel--async-command (format "ag --noheading --nocolor %S" regex)) nil))) -(defun counsel-ag (&optional initial-input) +(defun counsel-ag (&optional initial-input initial-directory) "Grep for a string in the current directory using ag. INITIAL-INPUT can be given as the initial minibuffer input." (interactive) - (setq counsel--git-grep-dir default-directory) + (setq counsel--git-grep-dir (or initial-directory default-directory)) (ivy-read "ag: " 'counsel-ag-function :initial-input initial-input :dynamic-collection t