summaryrefslogtreecommitdiffstats
path: root/src/compose
Commit message (Collapse)AuthorAgeFilesLines
* Add the 'alias' built-in commandRory Dudley2024-03-301-3/+5
| | | | | | | | | | | The shell now has support for aliases (via alias foo=bar). The 'unalias' command is also available to remove aliases. Finally, Environment::aliases was changed to be a HashMap<String, String>, instead of a Vec<String>. Since the verse's verb might change (for instance, it is an environment variable, or an alias), add another check in Poem::recite, which simply continues, instead of running the spellchecker, if the verb is empty.
* Add wrapper for global shell environmentRory Dudley2024-03-301-0/+13
Instead of having to pass around a bunch of different data structures for various shell functions, create the wrapper compose::Environment, which serves as a global shell state. It is configured via login/profile/rc scripts initially, but can of course be modified throughout the lifetime of the shell.