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 - should i use // comments, since that's what's used in rust? - 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 - assignment . export environment variables . no barewords - indentation is line continuation - static errors when variables are missing {{}}, even if recipe isn't run - 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 - windows support: currently calling 'sh', which won't work on windows the answer will probably be to write a 'sh' clone and to only call binaries from cargo - run recipes asyncronously - lint with clippy once it runs on stable