handlebars.c
sub
handlebars.c | sub | |
---|---|---|
1 | 4 | |
33 | 1,733 | |
- | 0.0% | |
10.0 | 0.0 | |
over 1 year ago | over 2 years ago | |
C | Shell | |
GNU Lesser General Public License v3.0 only | 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.
handlebars.c
-
The Unreasonable Effectiveness of Makefiles
Yes, I used autotools[0]. It's definitely hairier than plain make, but you get a lot of useful features on top of it. There's thousands of examples all over the internet so it's easy to reference them.
I like the elegance of pure make, and do use it when appropriate, but I wouldn't really want to reimplement the things autotools does myself in it.
[0]: https://github.com/jbboehr/handlebars.c/blob/master/configur...
sub
-
The Unreasonable Effectiveness of Makefiles
Scripts in bin have no documentation, no easy way to enumerate them, etc. There is definitely a time and a place for bin scripts, especially as things grow in complexity. However the beauty of just is that there's one file (the justfile) that defines all of your project's actions. You don't have to go spelunking into bin to figure out how to tweak a compiler flag, etc. And since just will run anything there's no reason why your complex bin scripts can't just be called from a simple one liner task in a justfile.
Could your write a bash script that does stuff like enumerate all the bin scripts, pull out documentation comments, etc.? Absolutely, and people have followed that pattern for a while (see https://github.com/qrush/sub) but it's a bunch of boilerplate to copy between projects. Just pulls out that logic into a simpler config file.
- Bash-Oneliner: A collection of handy Bash One-Liners and terminal tricks
- Bashly – Create beautiful bash scripts from simple YAML configuration
-
sd: my script directory
Many moons ago Basecamp published sub (github) which runs on a similar idea with different tradeoffs being chosen.
What are some alternatives?
checkexec - CLI tool to conditionally execute commands only when files in a dependency list have been updated. Like `make`, but standalone.
bashly - Bash command line framework and CLI generator
make-booster - Utility routines to simplify using GNU make and Python
shfmt - Dockernized shfmt. This formats shell script.
just - 🤖 Just a command runner
tlog - Terminal I/O logger
hofmod-cli - Hofstadter generator for Golang CLIs
tclmake - Partial make clone in pure Tcl
vscode-bash-debug - Bash shell debugger extension for VSCode (based on bashdb)
run - Task runner that helps you easily manage and invoke small scripts and wrappers
ngs - Next Generation Shell (NGS)