From 11764288885e2802c41df6cca9f1cb161222760a Mon Sep 17 00:00:00 2001 From: Aryadev Chavali Date: Tue, 9 Mar 2021 18:07:55 +0000 Subject: (Emacs)~make rip(grep) section preamble a bit nicer to read --- Emacs/.config/emacs/config.org | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/Emacs/.config/emacs/config.org b/Emacs/.config/emacs/config.org index 7baa1c6..f22e5a4 100644 --- a/Emacs/.config/emacs/config.org +++ b/Emacs/.config/emacs/config.org @@ -1026,32 +1026,34 @@ for exiting insert state. Otherwise, I don't really need it. #+end_src ** (Rip)grep *** Grep Preamble -Grep is a historical artefact. It is a searching utility that allows -one to search files for certain regex patterns. The fact that there -have been so many attempts to replace grep (with some success) only -goes to show how important a tool it is. +Grep is likely one of the most important programs ever invented; a +must-have tool for any Linux users inventory. It is a searching +utility that allows one to search files for certain regex patterns. +The fact that there have been so many attempts to replace grep (with +limited success) only goes to show how important its general function +is to people. Ripgrep is a grep-like utility written in Rust. It subsumes not only the ability to search a given file but also to search multiple files -within a directory (which is usually only found by composing the -program find with grep to search multiple files). Being incredibly -fast through its regex optimisations, it also uses ignore files such -as =.gitignore= to remove files from its searches. +within a directory (which is usually only done by composing the +program find with grep to search multiple files). It is incredibly +fast by virtue of its regex optimisations and the use of ignore files +such as =.gitignore= to filter files when searching. Grep has default Emacs utilities that use a =compilation= style buffer to search a variety of differing data sets. =grep= searches files, =rgrep= searches in a directory using the =find= binary and =zgrep= -searches archives. This is a great solution for most environments as -most of them will have grep and find installed. Even when you =ssh= -into a remote machine, they're likely to have these tools. +searches archives. This is a great solution for most computer +environments as basically all of them will have grep and find +installed. Even when you =ssh= into a remote machine, they're likely +to have these tools. The ripgrep package provides utilities to ripgrep projects and files for strings via the rg binary. Though [[*Ivy][ivy]] comes with =counsel-rg= using it makes me dependent on the ivy framework, and this configuration is intentionally built to be modular and switchable. Of course, this requires installing the rg binary which is available in -most common repositories nowadays. In terms of general speed, this is -better. +most repositories nowadays. *** Grep #+begin_src emacs-lisp (use-package grep -- cgit v1.2.3-13-gbd6f