Add line editing, history and tab completion to shell.

This commit is contained in:
Jonas 'Sortie' Termansen 2013-12-27 00:27:02 +01:00
parent d8df769692
commit 242cfcca12
2 changed files with 1413 additions and 143 deletions

View File

@ -106,6 +106,9 @@ Despite that, it does have some key features. Here are the features that are
supported:
* Processes can be started in the usual Unix manner.
* Tab-completion.
* Line editing.
* History.
* Background tasks ('&').
* Standard output redirection ('>').
* Piping stdin from a task to stdin of another ('|').
@ -125,6 +128,11 @@ supported:
* Basic wildcards ('foo*.bar').
* Clearing the screen (Control-L, '^L').
* Deleting the last typed word (Control-W, '^W').
* Deleting everything before the cursor (Control-U, '^U').
* Deleting everything after the cursor (Control-K, '^K').
* Go to start of line (Control-A, '^A', Home).
* Go to end of line (Control-E, '^E', End).
* Move between words (Control-arrows).
These features are missing from the shell:

1548
sh/sh.cpp

File diff suppressed because it is too large Load Diff