just/notes
2016-10-23 20:39:50 -07:00

65 lines
2.2 KiB
Plaintext

notes
-----
- parse arguments on command line by name:
. j build a=hello
. by position: j build hello
. with marker: j a 1 : hello 2 :
. could also allow this to override variables
although maybe only after a '--': j build -- a=hello
- parse lines into {{fragments}} and allow argument substitution
- change error messages to underline problem token
- allow calling recipes in a justfile in a different directory:
- just ../foo # ../justfile:foo
- just xyz/foo # xyz/justfile:foo
- just xyz/ # xyz/justfile:DEFAULT
- this is going to be hard. should a single recipe with a slash
require that all recipes have slashes?
or should non-slash recipes still run in this directory?
will need to change things a great deal
- assignment
. export environment variables
. no barewords
- indentation is line continuation
- static errors when variables are missing {{}}, even if recipe isn't run
- write some tests to test the binary itself and all command line flags
- change name back to 'just'
. suggest j as alias
- create some kind of group feedback forum:
. email list, reddit
- change description to "a polyglot command runner"?
- update readme
- document all code, including private stuff
(can this be enforced with a lint?)
#![deny(missing_docs)]
- note that shell is invoked with -cu, explain -c and -u
- document all features with example justfiles
(also make them runnable as tests)
. update tarball dep
. check version string
. clean
. update logs (repetitive git flow)
- full documentation
. habit of using clever commands and writing little scripts
. very low friction to write a script (no new file, chmod, add to rcs)
. make list of contributors, include travis
. alias .j='just -j ~/.justfile -d ~'
- vim and emacs syntax hilighting (use makefile syntax hilighting for now)
- split up code into modules for easier reading
. parsing
. tokenizing
. executing
- make sure there isn't any unused code
- try to get some users
. facebook friends
. irc
. r/rust
later:
- preludes:
may be nice to allow all recipes in a given langauge to share
functions, variables, etc. could have a "prelude" recipe
which was included as a prefix to other recipes