bat
delta
bat | delta | |
---|---|---|
207 | 100 | |
52,305 | 25,973 | |
1.9% | 1.7% | |
9.3 | 8.6 | |
13 days ago | 7 days ago | |
Rust | Rust | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
bat
-
Man pages are great, man readers are the problem
I page man (and many other things) through bat[0] which improves my experience.
[0]: https://github.com/sharkdp/bat
-
What to do when your git worktree is not detecting file changes
my cat replacement (bat), shows the changed lines
-
bat VS kat - a user suggested alternative
2 projects | 13 Mar 2025
- Rewriting essential Linux packages in Rust
- Core Git Developers Configure Git
-
Effortlessly Manage Your Notes with my Bash Script Featuring FZF Integration!
bat (for enhanced preview in search)
-
Wombat - Syntax Highlighting with Rust's Bat Called from Crystal
Have you heard of the command-line tool bat, written in Rust? bat is a command-line tool similar to cat that displays file contents in the terminal, but with additional features like line numbering, syntax highlighting, and paging.
-
17 Essential CLI Tools to Boost Developer Productivity
bat
-
Hyperfine: A command-line benchmarking tool
Perhaps interesting (for some) to note that hyperfine is from the same author as at least a few other "ne{w,xt} generation" command line tools (that could maybe be seen as part of "rewrite it in Rust", but I don't want to paint the author with a brush they disagree with!!): fd (find alternative; https://github.com/sharkdp/fd), bat ("supercharged version of the cat command"; https://github.com/sharkdp/bat), and hexyl (hex viewer; https://github.com/sharkdp/hexyl). (And certainly others I've missed!)
Pointing this out because I myself appreciate comments that do this.
For myself, `fd` is the one most incorporated into my own "toolbox" -- used it this morning prior to seeing this thread on hyperfine! So, thanks for all that, sharkdp if you're reading!
Ok, end OT-ness.
-
Delta: A syntax-highlighting pager for Git, diff, grep, and blame output
i like bat, but they also link over to delta :D
https://github.com/sharkdp/bat?tab=readme-ov-file#git-diff
delta
-
Core Git Developers Configure Git
You can also do that with delta (https://github.com/dandavison/delta), with additional options that you can put on your .gitconfig
-
How to Use Delta Pager without Headings
https://github.com/dandavison/delta/issues/364 https://github.com/dandavison/delta https://dandavison.github.io/delta/full—help-output.html
-
Delta: A syntax-highlighting pager for Git, diff, grep, and blame output
Thanks! https://github.com/dandavison/delta/pull/1893
> To automatically display the light or dark version of images depending on their gh theme
Ah, good call. That could be a nice improvement -- creating light and dark versions of the screenshots with switching as you describe.
-
How I use git
As someone who also uses Git exclusively from the command line, without any TUI wrappers, I agree with a lot of this. The parts about commits being revertable, bisectable and in general _atomic_ are very important, and IME the only correct way of using version control.
One exception: conventional commits. I find them very useful even on solo projects, since a) they make it easy to spot the type of change at a glance, and b) they force me to keep commits atomic. That is, if I'm ever compelled to make a commit that is both a `fix` and a `refactor`, usually out of laziness :), sticking to a conventional commit message is a quick way to determine what needs to be split into a different commit. These conventions really shine when used in a team, as they improve communication and keep the history tidy (along with all other benefits of atomic commits), but so far I haven't had the luck to work on teams that agree to adopt this workflow. Using these commits to generate changelogs would be wrong, as changelogs should almost never be autogenerated (though these days maybe AI does an acceptable job at it), but they're still useful to keep track of the number of fixes, features, etc. that were produced in a release.
And a tip: in addition to plain shell and Git aliases, I've found scmpuff[1] and delta[2] to be invaluable in a Git CLI workflow.
[1]: https://mroth.github.io/scmpuff/
[2]: https://github.com/dandavison/delta
- A syntax-highlighting pager for Git, diff, grep, and blame output
-
Developer tool 'diff' is 40 years old: can it be improved?
https://github.com/dandavison/delta is nice for a prettier presentation of the same information as `git diff`.
This may or may not qualify, since I think GNU diff supports it with an option, as does Git diff, but "Color-words" diff can be nice, where changes in the middle of the line are highlighted and whitespace is ignored.
Somebody already recommended https://github.com/Wilfred/difftastic, which I second. It uses treesitter and is very interesting. Surprisingly, in practice difftastic is not always noticeably better than color words diff (don't expect miracles), but occasionally it is much better.
-
"GitHub" Is Starting to Feel Like Legacy Software
`git blame` lets you identify the commit that changed the line you’re looking for, but doesn’t make it easy to then view further details. The author might prefer GitHub’s blame view because it has these features:
• each hunk has a link to the commit that changed it, as opposed to needing to copy a line’s SHA and then run a new `git show …` command
• each hunk has a link to view the `blame` as of that older commit, as opposed to needing to copy a line’s SHA and then run a new `git blame … path/to/file` command
• the code is syntax highlighted by default, without you needing to configure your local Git install to use https://github.com/dandavison/delta
These features lead to a better experience than `git blame`. Various IDEs, editor plugins, TUIs, and GUIs provide similar features.
- Difftastic, a structural diff tool that understands syntax
- Popular Git Config Options
What are some alternatives?
fzf - :cherry_blossom: A command-line fuzzy finder
difftastic - a structural diff that understands syntax 🟥🟩
iTerm2-Color-Schemes - Over 400 terminal color schemes/themes for iTerm/iTerm2. Includes ports to Terminal, Konsole, PuTTY, Xresources, XRDB, Remmina, Termite, XFCE, Tilda, FreeBSD VT, Terminator, Kitty, MobaXterm, LXTerminal, Microsoft's Windows Terminal, Visual Studio, Alacritty, Ghostty, and many more
diff-so-fancy - Good-lookin' diffs. Actually… nah… The best-lookin' diffs. :tada:
glow - Render markdown on the CLI, with pizzazz! 💅🏻
lazygit - simple terminal UI for git commands