Live data from Hacker News

Command line tools for productive programmers

earthly.dev

11–20 of 143 posts

Re: Command line tools for productive programmers

#11
post #3

6 tools: - broot - like tree - funky - like direnv - fzf - fuzzy finder - mcfly - cli completion - zoxide - like cd - gitupdate - auto commit and push The author references this discussion https://lobste.rs/s/yfgwjr/what_interesting_command_line_too...

I'd also add ncdu - which is really great when you need to easily see what's eating up disk space.

jq is also super nice when you have to parse json data.

I also like powerlevel10k: https://github.com/romkatv/powerlevel10k

Re: Command line tools for productive programmers

#12
post #3

6 tools: - broot - like tree - funky - like direnv - fzf - fuzzy finder - mcfly - cli completion - zoxide - like cd - gitupdate - auto commit and push The author references this discussion https://lobste.rs/s/yfgwjr/what_interesting_command_line_too...

I'd also add ncdu - which is really great when you need to easily see what's eating up disk space. jq is also super nice when you have to parse json data. I also like powerlevel10k: https://github.com/romkatv/powerlevel10k

jq is great for a quick pretty print of json too, just

| jq .

and you'll get nice color pretty printed output. 90% of the time I use jq it's just to pretty print like this.

Re: Command line tools for productive programmers

#13
post #3

6 tools: - broot - like tree - funky - like direnv - fzf - fuzzy finder - mcfly - cli completion - zoxide - like cd - gitupdate - auto commit and push The author references this discussion https://lobste.rs/s/yfgwjr/what_interesting_command_line_too...

I'd also add ncdu - which is really great when you need to easily see what's eating up disk space. jq is also super nice when you have to parse json data. I also like powerlevel10k: https://github.com/romkatv/powerlevel10k

If you like/use jq and work with html, yq is it’s counterpart. Dyff is in a similar realm.

Re: Command line tools for productive programmers

#14
post #9

> if the directory has many files or sub-directories, tree becomes much less helpful: you only see the last screen full of information as files scroll past you. > broot solves this problem by being aware of the size of your terminal window and adapting its output to fit it. What? You can just pipe `tree` into `less`. The solution isn't to download Yet Another Binary that does this specific thing and doesn't come inst…

What's wrong with solving problems the unix guys already solved decades ago, and doing so less elegantly?

Re: Command line tools for productive programmers

#15
post #3

6 tools: - broot - like tree - funky - like direnv - fzf - fuzzy finder - mcfly - cli completion - zoxide - like cd - gitupdate - auto commit and push The author references this discussion https://lobste.rs/s/yfgwjr/what_interesting_command_line_too...

I'd also add ncdu - which is really great when you need to easily see what's eating up disk space. jq is also super nice when you have to parse json data. I also like powerlevel10k: https://github.com/romkatv/powerlevel10k

I think https://github.com/dundee/gdu is faster than ncdu

Re: Command line tools for productive programmers

#16
post #9

> if the directory has many files or sub-directories, tree becomes much less helpful: you only see the last screen full of information as files scroll past you. > broot solves this problem by being aware of the size of your terminal window and adapting its output to fit it. What? You can just pipe `tree` into `less`. The solution isn't to download Yet Another Binary that does this specific thing and doesn't come inst…

Use broot as tree is not necessary of course `tree | less` works for that but as hinted in the article broot contains a lot more features. Fuzzy finding, preview, multiwindow copy/paste, renaming, directory navigation etc

Re: Command line tools for productive programmers

#17
post #8

For his usecase of funky i use ~/.bash_aliases, that way i can easily share them between machines. Eg to quickly add a new one: alias als="nvim $HOME/.bash_aliases && source $HOME/.bash_aliases" Be careful with quoting though, got myself into a situation where every new terminal asked for the root password. Shellcheck found the reason quickly. (edit) Another benefit is that those aliases abstract over differences of…

Funny, never occurred to me to make shortcuts out of .., I like that

Re: Command line tools for productive programmers

#18

Earlier quoted context omitted.

I'd also add ncdu - which is really great when you need to easily see what's eating up disk space. jq is also super nice when you have to parse json data. I also like powerlevel10k: https://github.com/romkatv/powerlevel10k

jq is great for a quick pretty print of json too, just | jq . and you'll get nice color pretty printed output. 90% of the time I use jq it's just to pretty print like this.

somecommand | python -m json.tool

installed everywhere

Re: Command line tools for productive programmers

#19
Brains recently got underrated. The way mcfly works is cool, but it offloads your habits to some “neural network” that you can’t control. There is not many methods slower than looking at unpredictable line-by-line output and almost nothing more anxious than a possibility of false choice done without thinking. This tool basically replaces a deterministic mismatch with a non-deterministic one. Your brain is good at predicting the former (because it is a neural network connected to itself) and bad at the latter, because two neural substances rarely agree.

My guess is that author wanted history-search-{for,back}ward in their .inputrc for up-down keys but missed that somehow. The default history behavior is undoubtedly tedious. https://unix.stackexchange.com/a/20830

The only thing I’d do to history-search- is to show a list of variants (like in wildmode=list:longest or similar) instead of presenting them one by one. Pretty sure it is already possible.

Re: Command line tools for productive programmers

#20
post #9

> if the directory has many files or sub-directories, tree becomes much less helpful: you only see the last screen full of information as files scroll past you. > broot solves this problem by being aware of the size of your terminal window and adapting its output to fit it. What? You can just pipe `tree` into `less`. The solution isn't to download Yet Another Binary that does this specific thing and doesn't come inst…

Use broot as tree is not necessary of course `tree | less` works for that but as hinted in the article broot contains a lot more features. Fuzzy finding, preview, multiwindow copy/paste, renaming, directory navigation etc

Does it contain emacs? That would be nice.
Post reply on HN