oursh icon indicating copy to clipboard operation
oursh copied to clipboard

Your comrade through the perilous world of UNIX.

Results 31 oursh issues
Sort by recently updated
recently updated
newest added

Greenberg and Blatt's [Executable formal semantics for the POSIX shell](https://arxiv.org/pdf/1907.05308.pdf) should be closely read before we're done with the [`T-semantics`](https://github.com/nixpulvis/oursh/labels/T%3A%20semantics) and [`POSIX`](https://github.com/nixpulvis/oursh/milestone/1) milestone. Hopefully we'll find at least a few...

T: semantics
L: design

We need to support the standard set of builtins. This issue can be thought of as a meta card for each of the builtins we'll need. Reference 2.14. Special Built-In...

L1: enhancement
L2: good first issue
T: semantics

Implement a framework for both built in and user added completions. This will be part of the a revised `completion` module, that retains the POSIX shell mode, but allows for...

L: design
F: completion
M: repl

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,...

L1: enhancement
T: io
L: design
M: process

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]

L1: enhancement
T: semantics
T: io
M: process

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%...

T: io
L: design
M: process

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...

T: grammar
F: history
M: program

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.

L1: enhancement
F: completion
M: repl