sd
bash-ctx
sd | bash-ctx | |
---|---|---|
8 | 2 | |
699 | 42 | |
- | - | |
3.5 | 10.0 | |
about 2 months ago | about 6 years ago | |
Shell | Shell | |
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.
sd
-
Which command did you run 1731 days ago?
Prefixing these utility scripts is a nice tip, I used to do that as well.
Some time ago I found https://github.com/ianthehenry/sd though. It's a light wrapper around your own scripts which provides namespaces, autocompletion, custom help texts + some other QoL enhancements around that. It improves discoverability and usability a lot, very happy with it.
-
CLI user experience case study
A few things that can help with memory:
- spaced repetition for stuff that you use sporadically. I use Anki, it's great. For how to use it, this article is great: https://borretti.me/article/effective-spaced-repetition. I've found a positive feedback loop where the more I know how to do things without looking anything up, the more I use the CLI, the easier I remember things, the more things I discover, etc. I read once that when learning a new language, you should aim for content where you know 80%/90% already. It seems to be true for learning the CLI, and especially for integrating that learning into my day to day job.
- sd (https://github.com/ianthehenry/sd) for lowering the cost of creating a "documented alias". Before that I made aliases with either alias, or bash functions, all starting with "," to quickly see all which are "mine" (I read that trick in an article that I can't find), now the more complex stuff is in sd with some documentation.
- SD: My script directory
-
sd: your script directory
Yeah :( https://github.com/ianthehenry/sd/issues/9
The trouble is `sd` is just so easy to type on a qwerty keyboard, and it's such a nice mnemonic for "script directory." I've thought about renaming it, but I can't think of anything I like nearly as much.
-
Start all of your commands with a comma (2009)
zsh can do this if you set the PATH_DIRS option, but if I remember right it doesn't autocomplete deeply nested directories, just one level.
I made a little tool that dispatches hierarchical commands in a slightly nicer way, with intelligent autocomplete with command descriptions: https://github.com/ianthehenry/sd
bash-ctx
-
"Best" dev setup options for new Rails devs that want consistent dev + deployment experiences?
I'm on macOS and use MacPorts to install multiple versions of Ruby. Each is available as ruby2.9, ruby3.0 and so on along with bundle2.9, bundle3.0, etc. I configured Bundler to install dependencies into each project directory and use bash-ctx to configure per-project aliases. For example, .start always starts the project, no matter whether it's Ruby 2.9, Ruby 3.1 or Python+Flask.
-
Start all of your commands with a comma (2009)
where .rails is another alias (for running bundle exec rails ...). Last but not least, I automated the whole thing with bash-ctx (https://github.com/gregnavis/bash-ctx).
What are some alternatives?
comma - Comma runs software without installing it. [maintainers=@Artturin,@burke,@DavHau] [Moved to: https://github.com/nix-community/comma]
direnv - unclutter your .profile
sd - Intuitive find & replace CLI (sed alternative)
docker-rails-example - A production ready example Rails app that's using Docker and Docker Compose.
sad - CLI search and replace | Space Age seD
repo-cmd - Small unified framework for git-ignored scripting
gitpod - The developer platform for on-demand cloud development environments to create software faster and more securely.
garden - Garden grows and cultivates collections of Git trees ~ Official mirror of https://gitlab.com/garden-rs/garden
fugu - Fugu is simple, privacy-friendly, open-source and self-hostable product analytics. 🐡
just - 🤖 Just a command runner