#+TITLE: TODO list for minishell * Stuff to fix ** DONE PWD=qwe; pwd <== recheck ** DONE VISUAL=qweqwe crontab -e <=== deal with it ** DONE cd qweqwe <=== stderr ** DONE lpipes leaks <=== this is a big one (split lpipes | lcom | com) ** DONE /true/path/to/non-existant/bin/fail-plus-bad-fork ** DONE fix pwd when cd / ** DONE Multiline pipes (ls |) ** DONE Go full tok + quotes ** DONE fix \; \&& \|| ** DONE Variables quotes qwe="okokoko kkok" asd='bav' ** DONE Fix PSX \stuff subst with "" '' ** DONE ls qweqwe; echo $? <---- substitute ** DONE Don't fuck with '$vars' ** DONE <>> CLOSED: [2020-09-26 Sat 18:41] ** DONE Subst ~ after > CLOSED: [2020-09-26 Sat 19:43] ** DONE msh ~> qwewqrqrqwrqwrqr ($? and output vs bash) CLOSED: [2020-10-05 Mon 15:45] ** DONE bus error on msh ~> exit CLOSED: [2020-10-05 Mon 16:12] ** DONE SEGV on pipes ** DONE buildable on Linux + gcc CLOSED: [2020-10-12 Mon 19:56] ** DONE pipes don't split "qweqwreq | qweqweqe" CLOSED: [2020-10-21 Wed 21:10] ** DONE pipes + conditions "ls | grep kdf && echo yes || echo no" CLOSED: [2020-10-22 Thu 16:25] ** DONE 2>&1 CLOSED: [2020-10-22 Thu 21:47] ** DONE 'echo qweqwe 1>file' file has 'qweqwe 1' in it CLOSED: [2020-10-27 Tue 19:35] ** CANCELLED alias ls='clear; ls | grep qwe' <--- aliases not substed in the right place CLOSED: [2020-10-19 Mon 19:56] ** DONE forked write(2) stuff on cd ** DONE Multiline && || ** DONE ./qwe.sh <=== handle bad shebang ** DONE msh ~> ./qwe.sh <---- without shebang (maybe works fine already) CLOSED: [2020-10-05 Mon 18:34] ** TODO 'qweqwe=qweqwe' ** DONE fix that goddamn exit(2) 25 leak ** DONE lpipes leaks on builtins (same as above man) ** DONE leaks on builtins (same as above man) ** DONE Variables stack rework ** DONE $1 $2 $3 $4... vars CLOSED: [2020-09-26 Sat 17:32] ** DONE Fix $? ** DONE Handle comments better # ** TODO Handle memory ** TODO Fix ~ only first pos of arg ** TODO exit 25 leak is back ** TODO -c option full redo ** TODO Various in-code TODO ** DONE ./minishell a.sh <-- no shebang, no chmod +x ** DONE macOS compliancy ** DONE No fixed int CLOSED: [2020-10-28 Wed 01:40] ** TODO export qwe="'123'"; echo $qwe <--- show squotes like bash * Stuff to add ** DONE builtins to pipes ** DONE Proper ~ subst ** DONE SIGNAL CLOSED: [2020-12-07 Mon 15:31] ** DONE && || ** DONE .minishellrc ** DONE .minishell_history ** DONE history builtin ** DONE $_ CLOSED: [2020-12-11 Fri 18:37] ** TODO Parse error before p_line for scripts ** DONE Norm [2/2] CLOSED: [2020-10-03 Sat 14:46] + [X] libft + [X] minishell ** DONE [ builtin <=== pretty cool yet simple stuff ( [ $a -eq 1 ] ) ** DONE alias ** DONE Read scripts ** DONE PSX rice ** DONE << [2/2] CLOSED: [2020-09-28 Mon 19:30] + [X] base + [X] <<- to skip tabs ** CANCELLED if else [0/4] CLOSED: [2020-12-07 Mon 15:32] + [ ] if - fi + [ ] else + [ ] else + [ ] elif + [ ] while - do - done + [ ] for CLOSED: [2020-12-07 Mon 15:31] ** DONE Termcaps CLOSED: [2020-12-07 Mon 15:31] ** TODO -i option (alias and history in scripts, etc) ** CANCELLED Simple arithmetics $((a + 1)) CLOSED: [2020-12-11 Fri 16:01] ** CANCELLED & CLOSED: [2020-10-21 Wed 16:41]