Nathan Lilienthal
Nathan Lilienthal
We need to support the basic `fg`, `bg`, and `jobs`, `wait` commands, background syntax `&`, and the signal `SIGTSTP` typically invoked via ctrl-z. The `disown` command is standard in Bash,...
Support the [standard POSIX](https://pubs.opengroup.org/onlinepubs/9699919799/) redirection syntax ### Input - [ ] `[n]`, `[n]>|` - 2.7.2 Redirecting Output - [ ] `[n]>>` - 2.7.3 Appending Redirected Output - [ ] `[n]
Today I've written a little bit of code that uses `fork`, `wait` and `execvp` directly. There's built in support for this kind of thing in `std::process`, however I'm not 100%...
Much like bash's `!!` and related history expansions, we should support support the same when the history feature is enabled. It's a valid question of how to support disabling this...
We currently output completion possibilities over 25 in length by simply joining them with `\n`s. We should mirror `sh` style completions and format them into columns.
We should limit the number of historical entries saved to `~/.oursh_history`, this could be a good thing to do right after #13 and, #18.
We currently maintain the count of each command in it's `History` entry, but we `save` and `load` without them. The goal should be to have these values persisted in the...
POSIX shell language defines functions like `foo() { ... }`. We must support them. - [ ] #54 - [ ] #55 Related to #27.
```sh file $(which oursh) DATE=$(date) ``` And if strings have already landed then: ```sh DATE="$(date)" ```
Globs
Change the lexer to allow strings with `*` and expand them much like `expand_var` or `expand_home`.