aboutsummaryrefslogtreecommitdiff
path: root/.emacs.d/init/ycp-grep.el
diff options
context:
space:
mode:
authorYuchen Pei <id@ypei.org>2023-06-17 17:20:29 +1000
committerYuchen Pei <id@ypei.org>2023-06-17 17:20:29 +1000
commit093ffa5fbf7143f4668bb0a3dc9659a5cc836e12 (patch)
tree1ed4e14b2a43b8e338f4ad6a04d969b99b9239be /.emacs.d/init/ycp-grep.el
parentabc686827ae38ee715d9eed1c5c29161c74127e6 (diff)
Moving things one level deeper
To ease gnu stow usage. Now we can do stow -t ~ emacs
Diffstat (limited to '.emacs.d/init/ycp-grep.el')
-rw-r--r--.emacs.d/init/ycp-grep.el125
1 files changed, 0 insertions, 125 deletions
diff --git a/.emacs.d/init/ycp-grep.el b/.emacs.d/init/ycp-grep.el
deleted file mode 100644
index 715f643..0000000
--- a/.emacs.d/init/ycp-grep.el
+++ /dev/null
@@ -1,125 +0,0 @@
-;;; ycp-grep.el -- My config for search -*- lexical-binding: t -*-
-
-;; Copyright (C) 2023 Free Software Foundation.
-
-;; Author: Yuchen Pei <id@ypei.org>
-;; Protesilaos Stavrou <info@protesilaos.com>
-;; Maintainer: Yuchen Pei <id@ypei.org>
-;; Package-Requires: ((emacs "28.2"))
-
-;; This file is part of dotfiles.
-
-;; dotfiles is free software: you can redistribute it and/or modify it under
-;; the terms of the GNU Affero General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-
-;; dotfiles is distributed in the hope that it will be useful, but WITHOUT
-;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-;; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General
-;; Public License for more details.
-
-;; You should have received a copy of the GNU Affero General Public
-;; License along with dotfiles. If not, see <https://www.gnu.org/licenses/>.
-
-;;; Commentary:
-
-;; My config for search. Covers grep, search, isearch, occur, recoll
-;; etc.
-
-;;; Code:
-
-
-;;; `grep' package
-(my-package grep
- (:delay 10)
- (setq grep-command "grep -inRH --color -A1 -B1 -E ")
- ;; in the form of (string . position), see docs of read-from-minibuffer
- (setq grep-find-command
- '("find . -type f -exec grep -inRH --color -A1 -B1 -E \\{\\} +" . 52))
- (grep-apply-setting 'grep-find-template
- "find -H <D> <X> -type f <F> -exec grep <C> -n --null -E -A1 -B1 <R> /dev/null \\{\\} +")
- (setq grep-files-aliases
- '(("all" . "* .*")
- ("el" . "*.el")
- ("ch" . "*.[ch]")
- ("c" . "*.c")
- ("cc" . "*.cc *.cxx *.cpp *.C *.CC *.c++")
- ("cchh" . "*.cc *.[ch]xx *.[ch]pp *.[CHh] *.CC *.HH *.[ch]++")
- ("hh" . "*.hxx *.hpp *.[Hh] *.HH *.h++")
- ("h" . "*.h")
- ("l" . "[Cc]hange[Ll]og*")
- ("m" . "[Mm]akefile*")
- ("tex" . "*.tex")
- ("texi" . "*.texi")
- ("asm" . "*.[sS]")
- ("docs" . "*.md *.html *.rst *.org *.txt *.asciidoc *.adoc *.tex *.texi")))
- (my-keybind global-map
- "C-c r f" #'grep-find
- "C-c r g" #'grep)
-)
-
-(my-package my-grep
- (:delay 10)
- ;; TODO: do we really need this?
- (advice-add 'grep :filter-return #'my-grep-focus-buffer)
-)
-
-(my-package isearch
- (:delay 5)
- (setq search-whitespace-regexp ".*?" ; one `setq' here to make it obvious they are a bundle
- isearch-lax-whitespace t
- isearch-regexp-lax-whitespace nil)
- (setq isearch-lazy-count t)
- (setq lazy-count-prefix-format nil)
- (setq lazy-count-suffix-format " (%s/%s)")
- (setq isearch-yank-on-move 'shift)
- (setq isearch-allow-scroll 'unlimited)
- (setq isearch-repeat-on-direction-change t)
- (define-key minibuffer-local-isearch-map (kbd "M-/") #'isearch-complete-edit)
- (my-keybind isearch-mode-map
- "C-g" #'isearch-cancel ; instead of `isearch-abort'
- "M-/" #'isearch-complete
- "C-o" #'isearch-occur)
- (my-keybind global-map
- "C-s" 'isearch-forward-regexp
- "C-r" 'isearch-backward-regexp)
- )
-
-(my-package replace
- (:delay 5)
- (add-hook 'occur-mode-hook #'hl-line-mode)
- (my-keybind occur-mode-map "t" #'toggle-truncate-lines)
- )
-
-
-;;; `xref' package
-(my-package xref
- ;; All those have been changed for Emacs 28
- (setq xref-show-definitions-function #'xref-show-definitions-completing-read) ; for M-.
- (setq xref-show-xrefs-function #'xref-show-definitions-buffer)
- )
-
-;;; wgrep (writable grep)
-(my-package wgrep
- (:install t)
- (:delay 15)
- (setq wgrep-auto-save-buffer t)
- (setq wgrep-change-readonly-file t)
- (my-keybind grep-mode-map
- "e" #'wgrep-change-to-wgrep-mode
- "C-x C-q" #'wgrep-change-to-wgrep-mode
- "C-c C-c" #'wgrep-finish-edit))
-
-;;; org-recoll
-(my-package org-recoll
- (:delay 60)
- (my-keybind org-recoll-mode-map
- "n" #'org-next-visible-heading
- "p" #'org-previous-visible-heading
- "f" #'org-recoll-next-page
- "b" #'org-recoll-previous-page
- "<ret>" #'org-open-at-point
- "q" #'quit-window))
-
-(provide 'ycp-grep)