2024-04-08 19:51:12 -04:00
.TH BAKE "1" "March 2024" "bake 20240408" "User Commands"
2024-02-26 23:19:55 -05:00
.SH NAME
.B bake
\- file embeddable scripts
.SH SYNOPSIS
.B bake
[option] target\- file [\fB arguments\fP ...]
.SH DESCRIPTION
2024-03-24 16:33:57 -04:00
Use the format \fB @BAKE\fP cmd ... within the target\- file, this will execute the
2024-02-26 23:19:55 -05:00
rest of line, or until the first \fB @STOP\fR marker.
This format may be embedded within \fB binary files\fP , or any file where no unwanted preceding
instance of
.B @BAKE
appears.
\fB Shake\fP does not support some features of \fB Bake\fP , such as \fB @STOP\fP or \fB binary files\fP ,
please avoid its use.
2024-04-07 01:29:33 -04:00
Options [Must always be put first, may be merged together]
2024-02-26 23:19:55 -05:00
.HP
2024-04-07 01:48:12 -04:00
.B \- v \- \- version, \- h \- \- help, \- n \- \- dry\-run, \- x \- \- expunge
2024-02-26 23:19:55 -05:00
.PP
Expansions
These will expand to their counterpart statically first thing.
These may only be inserted inside of markers.
.TP
2024-04-07 01:29:33 -04:00
.B @FILENAME, $@
2024-02-26 23:19:55 -05:00
returns target\- file (abc.x.txt)
.TP
2024-04-07 01:29:33 -04:00
.B @SHORT, $*
2024-02-26 23:19:55 -05:00
returns target\- file without suffix (abc.x.txt \- > abc.x)
.TP
2024-04-07 01:29:33 -04:00
.B @ARGS, $+
2024-02-26 23:19:55 -05:00
returns
.B arguments
2024-04-06 19:59:15 -04:00
.PP
Additional Features And Notes
\fB @{\fP EXPUNGE_THIS_FILE\fB }\fP is a inline block to delete files or directories, non-recursive, only one file per block, removed from left to right. Has no influence on the normal command execution.
\\ SPECIAL_NAME will result in SPECIAL_NAME in the executed shell command. Backslashes are applicable to all symbols used by Bake, they are ignored otherwise.
2024-02-26 23:19:55 -05:00
.SH EXAMPLE
. \" SRC BEGIN (example.c)
.EX
// example.c
// @BAKE cc $@ -o $*
#include <stdio.h>
int main (void) {
printf("Hello.");
}
.EE
.SH COPYRIGHT
.PP
Licensed under the GNU Public License version 3 only, see <https://www.gnu.org/licenses/gpl\- 3.0\- standalone.html>.