- Display a help message on startup, like "press Tab to see commands".
- Ctrl-z doesn't work.
- Ctrl-c does work, but maybe shouldn't cause exit. Ditto Ctrl-d. But maybe deft doesn't maintain much state so it doesn't matter?
- On startup, if no config file found say where it looked.
- Shell command-line editing doesn't work, e.g., M-b M-f.
- Documentation
- Showing config should look nicer than just dumping JSON.
- Should be able to modify configuration and have it reload.
- Should be able to set configuration parameters and save the updated
deft-package.json
back to disk.- This requires the JSON extensions for preserving file order and pretty printing.
- JSON should load into an ordered table / plist so that the order from the file is maintained.
- JSON should support pretty printing.
- Should be able to watch for changes to files and invoke the provided callback. (Use libuv?)
- Mandatory parameters are not implemented yet.
- Should CLI integrate with libuv?
- Need to set an exit status from something like
test
when run from the shell and not interactively. - Need to handle conditions correctly and not abort the process.
- Can not currently alter registry entries at runtime. (They are
calculated once and stored in the
project-dynamic-enviroment
. - Add ability to add a registry entry.
- Do we really need personal vs system registries? We currently never use system registries, do we?
- Can we make the registry that we add based on current working directory be relative rather than absolute?
- Finish
populate-registries
function.
- How do we get at project data, like
Target-Type
andExecutable
? (We'd like to use this when running tests.)
- Should finish up the Dylan Foundry
schema-core
code and use it to validate thedeft-package.json
instead of hand-rolled code within functions likepopulate-registries
.
- How should we pull in the system-provided Jam files and runtime libraries rather than having our own copy?
- Default to less output.
- Node completion on
<dylan-project-parameter>
should be against registries rather than open projects.
- Borrow the code from
make-dylan-app
. - Parameterize more:
- new project
- new application
- new library
- new tests
- Make it support adding to an existing project when it is inside an existing project.
- Make it set up basic deft integration for new project or tests.
- This will require the ability to modify and save out configuration.