|
1 | 1 | runfile.sh |
2 | 2 | ---------- |
3 | 3 | ``` |
4 | | - · Language-agnostic project task runner · Missing companion of the ubiquitous Make · |
5 | | - · Use a Runfile on its own to manage project tasks · start, build, test, lint, etc · |
6 | | - · Use Runfile & Makefile in tandem to keep project tasks and build steps organized · |
| 4 | + · Language-agnostic project task runner · The venerable Make's missing companion · |
| 5 | + · Use Runfile by itself to manage your project tasks · start build test lint etc · |
| 6 | + · Use Runfile & Makefile in tandem to keep project tasks + build steps organized · |
7 | 7 | ``` |
8 | 8 |
|
9 | 9 | [](https://github.com/evnp/runfile.sh/actions) |
@@ -47,46 +47,46 @@ Runfiles can be thought of as filling a similar role to these other excellent pr |
47 | 47 | Usage |
48 | 48 | ----- |
49 | 49 | ```sh |
50 | | -$ run --runfile-help |
| 50 | +$ run --help |
51 | 51 |
|
52 | | -· Usage · run ····················· Print list of all available tasks. |
53 | | - run [options] [task] ···· Run a task (ignored if action is specified). |
54 | | - run [options] [action] ·· Run a Runfile/Makefile action. |
| 52 | +· Usage · run ··················· Print list of all available tasks. |
| 53 | + run [task] ············ Run a task. |
| 54 | + run [task] [options] ·· Run a task with options available to task code. |
55 | 55 |
|
56 | | -# ./Runfile syntax (this is a comment!) |
57 | | -taskabc: # task description |
| 56 | + run --[help|version|runfile|makefile|edit|new|alias] [options] |
| 57 | + run -[h|v|r|m|e|n|a] ·· Actions for managing Runfiles; details below. |
| 58 | + |
| 59 | +# ./Runfile -- syntax primer (this line is a comment!) |
| 60 | +taskabc: # Task description. |
58 | 61 | shell command(s) for task abc |
59 | | -taskxyz: taskabc # task description, taskxyz runs taskabc first just like Make would |
| 62 | +taskxyz: taskabc # Task description, taskxyz runs taskabc first just like Make would. |
60 | 63 | shell command(s) for task xyz |
61 | | -#^ whitespace doesn't matter; tabs, spaces, blank lines are all ok, or may be omitted |
62 | | - |
63 | | -· Actions · |
64 | | - |
65 | | --h --help --usage ····· Print this usage documentation then exit. |
66 | | --v --version ·········· Print current runfile.sh version then exit. |
67 | | ---runfile ············· Print contents of nearest Runfile (in current dir or dir above). |
68 | | ---makefile ············ Print contents of Makefile generated from nearest Runfile. |
69 | | ---runfile-edit ········ Open nearest Runfile with \$EDITOR. |
70 | | ---makefile-edit ······· Open nearest Makefile with \$EDITOR. |
71 | | ---runfile-create ······ Write template Runfile in current dir. |
72 | | ---makefile-create ····· Write generated Makefile in current dir. |
73 | | ---runfile-overwrite ··· Overwrite existing Runfile with template Runfile. |
74 | | ---makefile-overwrite ·· Overwrite existing Makefile with generated Makefile. |
75 | | ---runfile-aliases ····· Print command aliases for nearest Runfile (for shell config). |
76 | | - |
77 | | -· Options · |
78 | | - |
79 | | ---runfile-compact ···· Use "compact" formatting for Runfile when creating or printing. |
80 | | ---runfile-confirm ···· Always ask for confirmation before opening files with $EDITOR. |
81 | | ---runfile-noconfirm ·· Never ask for confirmation before opening files with $EDITOR. |
82 | | ---runfile-noedit ····· Never open files with $EDITOR. |
83 | | ---runfile-verbose ···· Print code line-by-line to terminal during task execution. |
84 | | ---makefile-compat ···· Disable all features not compatible with Make. |
85 | | - |
86 | | ---make-dry-run ·· Don't execute task code, just print line-by-line to terminal instead. |
87 | | ---make-* ········ Pass any argument directly to they underlying Make command |
88 | | - · by prefixing the intended Make argument with "--make-". |
89 | | - · For example, --make-dry-run will pass --dry-run to Make. |
| 64 | +#^ Unlike Make, whitespace doesn't matter; tabs, spaces, extra blank lines are all ok. |
| 65 | + |
| 66 | +-h --help ··········· Print this usage documentation then exit. |
| 67 | +-v --version ········ Print current runfile.sh version then exit. |
| 68 | +-r --runfile ········ Print contents of nearest Runfile (in current dir or dir above). |
| 69 | +-m --makefile ······· Print contents of Makefile generated from nearest Runfile. |
| 70 | +-m --makefile TASK ·· Print contents of single task from generated Makefile. |
| 71 | +-e --edit ··········· Open nearest Runfile with \$EDITOR. |
| 72 | +-n --new ············ Interactively create new Runfile in current dir. |
| 73 | +-a --alias ·········· Show command aliases for nearest Runfile (for shell config). |
| 74 | +-a --alias FILENAME · Attempt to write/update aliases within shell config file. |
| 75 | +--eject ············· Generate Makefile from Runfile and write to current dir. |
| 76 | + |
| 77 | +--verbose ··········· Print code line-by-line to terminal during task execution. |
| 78 | +--compact ··········· Use "compact" formatting for Runfile when creating or printing. |
| 79 | +--compat ············ Disable all features not compatible with Make. |
| 80 | +--confirm ··········· Always ask for confirmation before opening files with \$EDITOR. |
| 81 | +--noconfirm ········· Never ask for confirmation before opening files with \$EDITOR. |
| 82 | +--noedit ············ Never open files with \$EDITOR. |
| 83 | +RUNFILE_VERBOSE=1 RUNFILE_COMPACT=1 RUNFILE_COMPAT=1 · All options may also be · |
| 84 | +RUNFILE_CONFIRM=1 RUNFILE_NOCONFIRM=1 RUNFILE_NOEDIT=1 · provided as env variables · |
| 85 | + |
| 86 | +--make-dry-run ······ Don't execute task code, just print line-by-line to terminal. |
| 87 | +--make-ARGUMENT ····· Pass any argument directly to they underlying Make command |
| 88 | + · by prefixing the intended Make argument with "--make-". |
| 89 | + · For example, --make-dry-run will pass --dry-run to Make. |
90 | 90 | ``` |
91 | 91 |
|
92 | 92 | Install |
|
0 commit comments