diff --git a/conf-lisp/grep.el b/conf-lisp/grep.el index 4f0aa4d..8d2c655 100644 --- a/conf-lisp/grep.el +++ b/conf-lisp/grep.el @@ -1,20 +1,26 @@ ;; https://github.com/leoliu/ack-el (defun tvd-kill-ack() + "Close the *ack* window and kill the associated buffer along +with the ack process" (interactive) (let ((kill-buffer-query-functions nil)) (delete-window) (kill-buffer "*ack*"))) (defun tvd-hook-kill-ack() - ;; FIXME: still asks! + "set local keys in temporary ack buffer" (local-set-key (kbd "q") 'tvd-kill-ack)) (use-package ack :config - (setq ack-defaults-function 'ack-legacy-defaults) - (advice-add 'ack-mode :after - '(lambda () - (switch-to-buffer "*ack*")))) -(add-hook 'ack-mode-hook 'tvd-hook-kill-ack) + ;; don't annoy me with git search & co + (setq ack-defaults-function 'ack-legacy-defaults) + + ;; focus the *ack* buffer directly + (advice-add 'ack-mode :after + '(lambda () + (pop-to-buffer "*ack*"))) + :init + (add-hook 'ack-mode-hook 'tvd-hook-kill-ack))