aboutsummaryrefslogtreecommitdiff
path: root/_posts/2023-05-29-grep-to-less-maintain-colors.md
diff options
context:
space:
mode:
Diffstat (limited to '_posts/2023-05-29-grep-to-less-maintain-colors.md')
-rw-r--r--_posts/2023-05-29-grep-to-less-maintain-colors.md26
1 files changed, 26 insertions, 0 deletions
diff --git a/_posts/2023-05-29-grep-to-less-maintain-colors.md b/_posts/2023-05-29-grep-to-less-maintain-colors.md
new file mode 100644
index 0000000..49baa01
--- /dev/null
+++ b/_posts/2023-05-29-grep-to-less-maintain-colors.md
@@ -0,0 +1,26 @@
1---
2title: "Grep to Less that maintain colors"
3permalink: /grep-to-less-maintain-colors.html
4date: 2023-05-29T21:27:07+02:00
5layout: post
6type: note
7draft: false
8tags: [bash]
9---
10
11I often use `grep` to search for todo's in my code and other people's code and
12then pipe them in `less` and I missed having colors that grep outputs in `less`.
13
14- Grep's `--color=always` use markers to highlight the matching strings.
15- Less's `-R` option outputs "raw" control characters.
16
17You could use `alias grep='grep --color=always'` and `alias less='less -R'` or
18create todo function in your `.bashrc` that accepts first argument as search
19string.
20
21```sh
22# This is where the magic happens.
23grep --color=always -rni "TODO:" | less -R
24```
25
26![Less and grep](/assets/notes/grep-less.png)