Use helm-do-ag instead of helm-ag #805

Fixes project search matching against the leading file name.

And ensures modeline remains disabled.
This commit is contained in:
Henrik Lissner 2018-08-15 19:44:09 +02:00
parent 104e01f588
commit 11b8ee55a1
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395
2 changed files with 14 additions and 16 deletions

View file

@ -153,18 +153,12 @@ order.
('grep (+helm--grep-search directory query prompt all-files recursive) ('grep (+helm--grep-search directory query prompt all-files recursive)
(cl-return t)))) (cl-return t))))
(helm-ag-base-command (string-join command " "))) (helm-ag-base-command (string-join command " ")))
(if (and (eq engine 'ag) (when (> (length query) 0)
(equal query "")) (setcdr (assq 'requires-pattern helm-source-do-ag) 1))
(helm-do-ag directory) (cl-letf (((symbol-function 'helm-ag--marked-input) (lambda (_escape) query)))
(setq helm-ag--last-query query) (helm-do-ag directory)
(helm-attrset 'search-this-file nil helm-ag-source) ;; restore default
(helm-attrset 'name (helm-ag--helm-header helm-ag--default-directory) helm-ag-source) (setcdr (assq 'requires-pattern helm-source-do-ag) 3))))
(helm :sources '(helm-ag-source)
:input query
:prompt prompt
:buffer "*helm-ag*"
:keymap helm-ag-map
:history 'helm-ag--helm-history))))
(defun +helm--get-command (format) (defun +helm--get-command (format)
(cl-loop for tool in (cl-remove-duplicates +helm-project-search-engines :from-end t) (cl-loop for tool in (cl-remove-duplicates +helm-project-search-engines :from-end t)

View file

@ -114,10 +114,14 @@ be negative.")
plist))) plist)))
(advice-add #'helm :filter-args #'+helm*replace-prompt) (advice-add #'helm :filter-args #'+helm*replace-prompt)
(defun +helm*hide-mode-line (&rest _) ;; Hide the modeline
(unless helm-mode-line-string (defun +helm|hide-mode-line (&rest _)
(hide-mode-line-mode +1))) (with-current-buffer (helm-buffer-get)
(advice-add #'helm-display-mode-line :override #'+helm*hide-mode-line) (unless helm-mode-line-string
(hide-mode-line-mode +1))))
(add-hook 'helm-after-initialize-hook #'+helm|hide-mode-line)
(advice-add #'helm-display-mode-line :override #'+helm|hide-mode-line)
(advice-add #'helm-ag-show-status-default-mode-line :override #'ignore)
(defun +helm*hide-minibuffer-maybe () (defun +helm*hide-minibuffer-maybe ()
"Hide minibuffer in Helm session if we use the header line as input field." "Hide minibuffer in Helm session if we use the header line as input field."