# runfile (`rfile`) a **suckless** and **minimal**, **POSIX C99** alternative to `Makefile`/`justfile`! --- ## `rfile` syntax & features - `#` -> ignore line (comment) ### variables the variable system in `rfile`s is very minimal: - every variable is a _string_ - when accessed, `rf` text-substitutes the variable with its content example: ``` @cc=gcc @inp=rf.c @out=rf @opts=-Wall -Wextra -pedantic -std=c99 @cc @inp -o @out @opts # becomes 'gcc rf.c -o rf -Wall -Wextra -pedantic -std=c99' ``` ### rfile command prefix (`@`) - `@:! [msg]` -> print/log with box/banner - `@: [msg]` -> print/log - `@var=cmd` -> create variable `var` - `@var` -> access variable `var` ### command sections example syntax: ``` section { @: hello! } ``` every other line is treated as a command and will run normally. > if no section is specified when calling `rf`, only commands in global scope will run. --- ## usage 1. create an `rfile`. 2. run `rf [section name]` :)