No description
- C 95.3%
- Makefile 4.4%
- Shell 0.3%
| libbuiltins | ||
| libexpand | ||
| libft@43252b90d4 | ||
| libgnl@8f1dfb1478 | ||
| libht | ||
| liblst@20ed8d22ba | ||
| libop | ||
| libpipeline | ||
| libprint | ||
| libqtoken | ||
| libred | ||
| libscanner | ||
| libscmd | ||
| libshbi | ||
| libshell | ||
| libshparam | ||
| libsigctx | ||
| libstrtab | ||
| misc | ||
| mk@ab3d20c0f6 | ||
| test_scripts | ||
| .gitignore | ||
| .gitmodules | ||
| eval.pdf | ||
| Makefile | ||
| mish.c | ||
| readme.md | ||
| tofix.md | ||
Description
An overkill implementation of the infamous 42 School Minishell project.
We call it Mish.
Status
Work in progress.
Many things are not implemented, but everything else works.
Goal
A fully compliant POSIX shell with readable and customizable source code.
Coding Style
The core of the project is coded in a stricter version of The Norm V4.
If you want to contribute your code has to be compatible with our source code.
For instance you:
- must write at most 80 character par line;
- must write at most 5 function definitions par
.cfile; - should never define a function that takes more than 4 arguments;
- should never decalre more than 5 variables inside a function;
But you also:
- must define exactly
1non-staticfunction par.cfile; - must define such function inside a
.cfile named like the function itself; - must define such functions inside a static library;
- must name each library folder with a
libprefix (eg.lib<libname>); - must name all non-
staticfunctions in the library with a<libname>_prefix;
Libraries
Four levels:
# '0'
libft
libsigctx
libgnl
libstrtab
liblst
libht
# '1'
libexpand
libqtoken
libshparam
libred
# '2'
libscmd
libpipeline
libop
libprint
libshbi
libbbuiltins
# '3'
libscanner
libshell