Shell project

Moul 1374d7ec0e [mod] move Todo on doc folder. 3 years ago
doc 1374d7ec0e [mod] move Todo on doc folder. 3 years ago
libft 7de8a1f4dc [fix] libft: tabdel: prevent segfault if tab null. 3 years ago
non_use_src 1dc5e1f084 [mod] add non used code for cote parsing. 4 years ago
src 0123b092a2 [fix] correct segfault with '|'. 3 years ago
.gitignore 666c38c089 [doc] add subject, rename folder scale to doc. 4 years ago
LICENSE 0b0938d923 initial commit 5 years ago
Makefile dce0b34bfe [wip] refactor pipe and redirection parsing. 3 years ago 28977c150e [enh] update readme: remove copy/paste old shortcuts. Remove useless bonus and sort them. 3 years ago
auteur 4df0f1b9f6 [mod] remove execution rights on files. 4 years ago 2e51bc9aa5 [enh] leaks: grep only main line. 3 years ago 5230434daa [enh] add basic shell script execution as parameter. 4 years ago 0123b092a2 [fix] correct segfault with '|'. 3 years ago

21 Shell

21 Shell project


  • Begin/End:
    • Home & End
    • Ctrl + A & Ctrl + E
  • Move between words: Ctrl + U & Ctrl + I
  • Move between lines up/down: Ctrl + T & Ctrl + G


  • Rights on the path
  • ./21sh -c "ls; pwd"
  • Basic script execution: ./21sh
  • Unit tests: make test
  • Moving up and down between lines
  • Moving right left on many lines
  • Also works moving between words
  • Documented code with comments
  • Ctrl + L: clear

Functionnal schema

Three entries:

  • Command with '-c' option
  • Script as sub-cmd
  • Open Shell
    • Termcaps
    • Handle line parsing
    • History
    • Herething
    • Handle semicolons
      • Launch pipes
      • Launch redirections
      • Launch executions
      • Launch executables
      • Launch built-in: cd, pwd, env, setenv and unsetenv