difftastic
exa
difftastic | exa | |
---|---|---|
68 | 129 | |
19,575 | 23,303 | |
- | - | |
9.9 | 3.5 | |
8 days ago | about 1 month ago | |
Rust | Rust | |
MIT License | 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.
difftastic
-
Linus Torvalds adds arbitrary tabs to kernel code
i want a diff tool that shows me exactly which tokens have changed, and which haven't, regardless of how they are laid out.
These already exist: https://github.com/Wilfred/difftastic
when we get that, then we should get even less merge conflicts.
Counterintuitively, that is not the case. AST-merge is a much, much, much, much, much harder problem than AST-diff.
https://github.com/Wilfred/difftastic?tab=readme-ov-file#can...
The fact that diffs can be used to drive a 3-way merge is in fact an accidental property that arises due to the sheer crudeness of the diff format. As soon as you start using more-sophisticated diff formats, solutions to "the diff problem" no longer lead directly to solutions to "the merge problem".
- FLaNK AI Weekly 25 March 2025
-
Difftastic, a structural diff tool that understands syntax
Yes there is an `—-override` option you can use to specify the language in which a file should be parsed.
https://github.com/Wilfred/difftastic/blob/master/CHANGELOG....
-
So You Think You Know Git – Git Tips and Tricks by Scott Chacon
Use the fantastic difftastic instead of git's diff. https://difftastic.wilfred.me.uk/
[alias]
- Difftastic: A structural diff tool that understands syntax
-
SemanticDiff now supports Rust
difftastic provides similar capabilities in a free tool based on treesitter
-
My programming language aware diff for VS Code and GitHub now supports Rust
difftastic? https://github.com/Wilfred/difftastic
-
Prettier $20k Bounty was Claimed
If you're looking for a VS Code extension or a GitHub app, check out https://semanticdiff.com/. I'm a co-founder of this project.
If you prefer a CLI tool, check out https://github.com/Wilfred/difftastic. It supports more languages, but doesn't recognize when code has been replaced by an equivalent version ("invariances"). So it will show some changes (e.g. replacing a character in a string with an escape sequence) even though they are technically equivalent.
-
Pijul: Version-Control Post-Git • Goto 2023
Shameless plug: I've written difftastic[1], a tool that builds ASTs and then does a structural diff of them. You can use it with git too.
It's an incredibly hard problem though, both from a computational complexity point of view, and trying to build a comprehensible UI once you've done the structural AST diff.
[1]: https://github.com/wilfred/difftastic
-
Always leave a trailing comma in Python lists, dicts, tuples
There is a diff tool called difftastic: https://github.com/Wilfred/difftastic
The idea is that it does not show diff based on text change, but on syntastic meaning. For that, it uses tree-sitter.
I think it still shows the trailing comma in the situation as shown in the article, but it's quite different experience than the standard text based diff.
exa
-
A ‘Software Developer’ Knows Enough to Deliver Working Software Alone and in Teams
It depends on the scale of the project but man, if you can't build a simple CRUD app in your preferred stack and deploy it in some fashion (even if it's just a binary posted on some website, kinda like Exa) then that's just disappointing...
-
Which 2nd language should I learn?
Can compile to a single binary to build tools like exa
- Exa Is Deprecated
- ls -l IN COLOR!
-
What's your favorite Go architecture for a new micro-service? Here's mine...
Try https://github.com/ogham/exa and exa -T -L2 command . It will generate a good folder structure tree to update the question
-
macOS Command-Line Tools You Might Not Know About
Some of us don't want all of GNU's utilities; just on an as-needed basis. They're not as needed as they once were.
Many of these utilities have been rewritten in Rust and have more modern features.
For example, instead of ls, I use exa [1]. Or ripgrep [2] instead of grep.
[1]: https://github.com/ogham/exa
[2]: https://github.com/BurntSushi/ripgrep
-
List of apps I use every day - Version 2023
fish: A very fast shell with various customization options to streamline daily commands. I discovered it through this post by @caarlos0, where he provides more details about performance and the differences between fish and zsh. Additionally, I use some CLI utilities like delta, exa, and ripgrep. Here's my dotfiles for fish.
-
Ls with icons
Hi! I use this: https://the.exa.website, and the package to this: https://archlinux.org/packages/extra/x86_64/exa/
-
Everything I Installed on My New Mac
I still use exa for listing files in the terminal. It's a modern replacement for ls with a lot of useful features. With icons, colors, and git integration, it makes listing files much nicer.
What are some alternatives?
delta - A syntax-highlighting pager for git, diff, and grep output
lsd - The next gen ls command
diffsitter - A tree-sitter based AST difftool to get meaningful semantic diffs
colorls - A Ruby gem that beautifies the terminal's ls command, with color and font-awesome icons. :tada:
neogit - An interactive and powerful Git interface for Neovim, inspired by Magit
fish-shell - The user-friendly command line shell.
Visual Studio Code - Visual Studio Code
fd - A simple, fast and user-friendly alternative to 'find'
gumtree - An awesome code differencing tool
coreutils - Cross-platform Rust rewrite of the GNU coreutils
tree-sitter-cpp - C++ grammar for tree-sitter
bat - A cat(1) clone with wings.