Commit graph

464 commits

Author SHA1 Message Date
Jack Halford
764c62cc45 changed header layout 2017-03-07 18:37:13 +01:00
gwojda
b4e7d8ab5e mise a la norme edition de ligne 2017-03-07 17:37:32 +01:00
wescande
48dc3d7c70 recup merge + modif 2017-03-07 16:56:20 +01:00
wescande
29aff9ebb7 exec en cours 2017-03-07 16:43:32 +01:00
wescande
7195207116 merging 2017-03-07 15:35:36 +01:00
wescande
b2af159f64 pour merge 2017-03-07 15:12:20 +01:00
Jack Halford
eb9a697ef4 merged bt_jobs 2017-03-07 15:10:13 +01:00
Jack Halford
a5f186eb59 new process logic 2017-03-07 15:05:04 +01:00
Antoine Riard
14be331b4e expr math doing 2017-03-07 12:22:05 +01:00
AntoHesse
6c8c3ea792 parsing math ok 2017-03-07 02:09:33 +01:00
AntoHesse
bc1c16a45b parsing func stable, todo parsing brace_group 2017-03-07 01:17:58 +01:00
Antoine Riard
4be3a84471 expansion case yeaaah 2017-03-06 19:46:09 +01:00
Antoine Riard
1dbc4653fd expansion for + cleanage code get_reserved_word 2017-03-06 19:05:43 +01:00
Antoine Riard
9f87126762 pull ok 2017-03-06 17:59:07 +01:00
Antoine Riard
8873f31f79 protection stack symbolique 2017-03-06 17:57:51 +01:00
Jack Halford
e9633119e5 >& and <& check if fd is open for reading/writing specifically 2017-03-06 16:58:47 +01:00
wescande
c42357efa3 merge of stuff 2017-03-06 16:22:01 +01:00
wescande
d3821b9ac7 some correctif 2017-03-06 16:20:06 +01:00
Antoine Riard
e675eceb87 redirection ok, further test needed 2017-03-06 15:58:30 +01:00
Jack Halford
40aebb29b2 redirect greatand / lessand execution done (parsing not functional yet) 2017-03-05 19:48:56 +01:00
gwojda
21a2aca244 ajout control L 2017-03-05 19:41:13 +01:00
Jack Halford
23cdcb2dbb merged new reidrection layout from pda 2017-03-05 19:30:27 +01:00
Antoine Riard
cba548d0ae redir io number seems good 2017-03-05 18:17:51 +01:00
Jack Halford
b998f45e49 comments with # 2017-03-05 17:30:32 +01:00
Antoine Riard
9e0c2bd906 merged done 2017-03-05 16:50:27 +01:00
Antoine Riard
2b456eac9c rectification cleanage code 2017-03-05 16:40:22 +01:00
Jack Halford
ee883b38a9 parens and curly braces lexing OK 2017-03-05 16:30:48 +01:00
Jack Halford
9a038e9290 && || seem to work now 2017-03-05 15:19:18 +01:00
Jack Halford
566cd522ae builtins no longer remain in job control 2017-03-05 15:07:43 +01:00
Antoine Riard
56b106ee0f gen ast cleand 2017-03-04 22:08:31 +01:00
Antoine Riard
3dc47431ba gestion error ok + moar grammar pipe 2017-03-04 16:51:38 +01:00
AntoHesse
0f684e6189 clean instruction (token, parser, error) whatever succes or error, still issue lexing after syntax error 2017-03-04 02:51:52 +01:00
AntoHesse
dc423db858 stack is now a beautiful linked list 2017-03-04 02:17:06 +01:00
AntoHesse
af311380f4 further streamile grammar around pipe 2017-03-04 01:26:20 +01:00
wescande
6ce2a1ec14 rectif free on expand_var 2017-03-03 20:45:36 +01:00
Antoine Riard
b4fdc05f64 ast free 2017-03-03 20:12:57 +01:00
Antoine Riard
29692ef8fa ast free 2017-03-03 20:02:53 +01:00
Jack Halford
20e96b751f pipes work 2017-03-03 18:50:13 +01:00
Jack Halford
03c62f69a6 stuff 2017-03-03 18:03:17 +01:00
Jack Halford
2ad34631e3 parentheses dont trigger more input after lexing 2017-03-03 17:58:08 +01:00
Jack Halford
2926a9d00d merged pda_execution 2017-03-03 17:33:36 +01:00
Antoine Riard
d0b821c483 pipe fix grammar + assignement word parsing 2017-03-03 17:19:39 +01:00
Jack Halford
418859e9e8 it compiles ! much more testing for simple commands to work 2017-03-03 16:51:18 +01:00
wescande
df7ed59b03 ajout du bool dans l'appel a glob pour demander un matching complet ou juste une expnsion de var +bquote (cas de l'assignation de variables) 2017-03-03 16:30:06 +01:00
Antoine Riard
b90a17f2fa googd redir 2017-03-03 14:37:22 +01:00
wescande
7a72910a97 ajout de l'expansion du ~ + mise a la norme de command_get_output et correctif appliqué en cas de read invalid 2017-03-03 14:35:30 +01:00
Jack Halford
975a271bc9 Merge branch 'pda' of https://github.com/jzck/minishell into pda 2017-03-03 14:24:24 +01:00
Antoine Riard
a4d0093144 good state 2017-03-03 14:20:26 +01:00
AntoHesse
b9d8b949be perdu entre les 2 libs de lst :( to-do tomorroz 2017-03-03 02:00:15 +01:00
Antoine Riard
37d9898f59 doing pipe + lst cmds 2017-03-02 22:02:53 +01:00
Jack Halford
3857b06785 execution much simpler with new parser, thx ariard! 2017-03-02 21:17:16 +01:00
Jack Halford
62d3ef01d2 merged pda 2017-03-02 12:37:15 +01:00
ariard@student.42.fr
722a290aee yale sauf subshell 2017-03-01 23:01:43 +01:00
ariard@student.42.fr
aa9097575d rewef 2017-03-01 18:04:29 +01:00
ariard@student.42.fr
9f9d799bbe merge fixed 2017-03-01 16:28:44 +01:00
ariard@student.42.fr
f5fafb4c19 before pull 2017-03-01 16:25:53 +01:00
Jack Halford
03152a9e2b conflicts resolved 2017-02-28 21:40:22 +01:00
ariard@student.42.fr
871b4da000 test 2017-02-28 19:28:01 +01:00
M600
c1b3704cab Include rebase 2017-02-27 13:25:15 +01:00
AntoHesse
9c0984658e exec flow control 2017-02-26 01:13:47 +01:00
ariard@student.42.fr
8c8ee2152e parsing heredoc doing 2017-02-25 20:36:27 +01:00
ariard@student.42.fr
eeb0887081 commit from un cluster qui marche aka new redir 2017-02-25 19:31:02 +01:00
ariard@student.42.fr
7b1d505a5b gen func ok, todo: multi branch declaration, probleme lexer sur brackets 2017-02-25 00:31:51 +01:00
ariard@student.42.fr
102196bff4 parsing brace_clause + func def ok 2017-02-24 23:17:29 +01:00
ariard@student.42.fr
f703185a3a assignement word lexing parsing 2017-02-24 21:00:38 +01:00
ariard@student.42.fr
0461285d95 subshell et case ok 2017-02-24 19:30:20 +01:00
ariard@student.42.fr
d50a0d1b13 parsing for ok 2017-02-24 16:29:51 +01:00
AntoHesse
79bceb05a9 trop fatigue pour debug les case nesting, fuck it, todo tomorrow 2017-02-23 01:55:09 +01:00
AntoHesse
50da96bbd6 on a retrpuve la compagnie TK_PAREN 2017-02-22 20:25:51 +01:00
AntoHesse
2fbea4837d gramamr for 2017-02-22 19:50:29 +01:00
AntoHesse
5976d0d281 grammar case part 1 motherfucker 2017-02-22 01:43:25 +01:00
ariard@student.42.fr
49b79603b3 insert newline add 2017-02-21 22:45:59 +01:00
Jack Halford
8084ffb6a1 pipes done 2017-02-21 22:42:13 +01:00
ariard@student.42.fr
04c4978c35 Merge branch 'pda' of https://github.com/jzck/42sh into pda
"conflict resolved"
2017-02-21 20:33:12 +01:00
ariard@student.42.fr
fffb8c74a5 before pull main clean 2017-02-21 20:29:46 +01:00
Jack Halford
ec79b05131 new instruction handler looks good 2017-02-21 20:21:52 +01:00
ariard@student.42.fr
07c2101df4 EOF error add 2017-02-21 18:15:21 +01:00
ariard@student.42.fr
d05cec4962 include + parser state 2017-02-21 16:46:13 +01:00
ariard@student.42.fr
58473871ca ok 2017-02-21 15:22:11 +01:00
ariard@student.42.fr
62a8832823 before pull 2017-02-21 14:36:32 +01:00
Jack Halford
661cb0eb8b get_fd 2017-02-21 14:35:14 +01:00
Jack Halford
c04006a471 fixed some merging problems : it compiles now 2017-02-20 22:41:02 +01:00
ariard@student.42.fr
8d23821d69 after mege 2017-02-20 21:05:12 +01:00
wescande
4ea6fb5801 Merge remote-tracking branch 'origin/glob_bquote' 2017-02-20 19:18:23 +01:00
wescande
10596c48d9 optimisation du backquotting + mise a la norme 2017-02-20 19:11:52 +01:00
ariard@student.42.fr
2e012b3e91 if elif ok, else coming 2017-02-20 17:20:34 +01:00
ariard@student.42.fr
3d65d42708 grammar if stable 2017-02-20 16:07:54 +01:00
wescande
169aa62b7e rectif nombreuses issues + ajout de l'expansion des backquote 2017-02-20 15:31:13 +01:00
ariard@student.42.fr
f6aefd7739 grammar if then elif part one 2017-02-19 19:32:45 +01:00
ariard@student.42.fr
fbce14ef34 modifs gestion d'erreur 2017-02-19 16:55:06 +01:00
Jack Halford
694744bf0c PIPESINGLE macro was wrong 2017-02-19 15:18:46 +01:00
gwojda
923ffa1ea0 correction free history + crash potentiel sur la table de hash 2017-02-19 12:02:34 +01:00
ariard@student.42.fr
6609e3b8d9 while one nest ok 2017-02-18 20:10:42 +01:00
gwojda
480c9810c9 ajout builtin hash + ajout rehash si access ne fonctionne pas sur path donné dans la table 2017-02-18 16:52:55 +01:00
gwojda
ea073dceaf correction segv edition de ligne + ajout table de hash 2017-02-18 14:42:43 +01:00
ariard@student.42.fr
96e439b652 parsing while simple ok 2017-02-17 23:43:44 +01:00
ariard@student.42.fr
4ef7af6e20 while error check doing 2017-02-17 19:49:12 +01:00
ariard@student.42.fr
b0a3e63ffc modif redirect list 2017-02-17 17:15:58 +01:00
Jack Halford
b8bf58fbab doing some bquote expansion fix 2017-02-17 15:49:03 +01:00
gwojda
0e1595101b commit merge 2017-02-17 11:15:32 +01:00
AntoHesse
7f83e231aa && || 2017-02-17 02:38:56 +01:00
M600
61b193013e Refreshed documentation on autocompletion module 2017-02-16 22:19:56 +01:00
M600
46d7e7ce4e Fix completion nested in the command 2017-02-16 18:05:21 +01:00
AntoHesse
7477cb4c0d debug exec ou parsing 2017-02-16 17:35:44 +01:00
AntoHesse
beb3723122 conflict ok 2017-02-16 17:04:37 +01:00
AntoHesse
90457ec703 before pull 2017-02-16 17:02:37 +01:00
M600
2abdf8c925 Advanced research update early version. Fix a few bugs. 2017-02-16 15:21:23 +01:00
M600
fbecb59a14 Reworked colors and fix a few bugs. Still missing advanced research 2017-02-16 15:21:23 +01:00
gwojda
3dfc6abb61 correction de quelques bugs sur le prompt - correction de segv sur env - correction de leaks 2017-02-16 12:46:42 +01:00
ariard@student.42.fr
185ed2ebd3 gen ast en cours 2017-02-15 20:58:41 +01:00
ariard@student.42.fr
fc37e7999a Merge branch 'pda' of https://github.com/jzck/minishell into pda
"work last night"
2017-02-15 18:31:49 +01:00
ariard@student.42.fr
78a2dafe50 before merge with clean dir 2017-02-15 18:31:37 +01:00
gwojda
b67c7fd7d3 ajout d'env avec opt -i -u / export / unset 2017-02-15 15:46:43 +01:00
Jack Halford
73f12e7e96 merged heredoc support; moved history/ into src/ because of makefile
problems
2017-02-15 07:06:57 +01:00
AntoHesse
8e05bba1c6 less code is better 2017-02-15 02:22:05 +01:00
Jack Halford
c764027070 heredoc starting to work; goto do multiple heredoc and execution part 2017-02-14 20:32:34 +01:00
ariard@student.42.fr
0040a07ce9 bitwise pour exclure next_token malvenu 2017-02-14 19:09:30 +01:00
gwojda
71f13249b8 recollage de l'historique + control R + point d'exclamation. quelques fixes pour le prompt 2017-02-14 15:45:17 +01:00
Jack Halford
be6be17f2a bquotes expansion refactoring for future norm checks; still need to preventh field splitting for dquoted bquotes; also need to fuse bquote expansion into the globbing module 2017-02-14 00:42:41 +01:00
ariard@student.42.fr
fd951302a3 combinaison pipe et simple ok 2017-02-13 23:00:05 +01:00
Jack Halford
2e0b6102ce bquotes expand correctly but segfault afterwards... 2017-02-13 15:31:21 +01:00
ariard@student.42.fr
582087186f a lot of grammar 2017-02-12 21:09:23 +01:00
ariard@student.42.fr
2a70b3f702 moar moar moar grammar 2017-02-12 19:19:16 +01:00
ariard@student.42.fr
a07ed6eea7 moaaaar grammar 2017-02-12 18:47:16 +01:00
Jack Halford
742a99440e backslash should work, also keep NL when they are quoted 2017-02-12 18:11:59 +01:00
AntoHesse
6601e2111f moar moar grammar 2017-02-12 04:09:36 +01:00
AntoHesse
516e1dade5 enforcement grammar part 1 2017-02-12 02:40:34 +01:00
ariard@student.42.fr
30494f2df2 moar grammar 2017-02-10 20:08:46 +01:00
Jack Halford
0a1fd7e518 dquotes->bquotes 2017-02-10 13:38:49 +01:00
Jack Halford
6ec9f9295e initial implementation looks ok, parenthesis needs fix 2017-02-10 05:19:26 +01:00
ariard@student.42.fr
1358c367e6 jack a raison: les enums ca marche.. 2017-02-10 01:43:20 +01:00
Jack Halford
e8cd4f45b0 started to work on lexer_stack 2017-02-10 00:38:45 +01:00
ariard@student.42.fr
87b7d65d71 archi ok, test struct de grammaire 2017-02-09 20:34:09 +01:00
ariard@student.42.fr
e7a7fc04df proto parser en cours 2017-02-09 18:10:28 +01:00
ariard@student.42.fr
ebc57c0da8 parser as a pushdown automata, test 2017-02-09 16:06:05 +01:00
ariard@student.42.fr
5ec1e4c29f before test pushdown automata 2017-02-08 23:28:18 +01:00
Jack Halford
c5263b51d0 Merge branch 'random_fixes' 2017-02-08 22:49:01 +01:00
Jack Halford
5a033a8789 fcntl for saving fds, new option to distinguish interactive shell or not 2017-02-08 22:48:37 +01:00
wescande
6c8ea86a24 ajout memrealloc et modif token_append sur les char esc et esc2 2017-02-08 18:46:16 +01:00
wescande
c2d979012a rectif du ./ dans le glob + optim du nb de result dans le cas de recherche cross-dir 2017-02-07 19:53:12 +01:00
Jack Halford
28acb3b814 removed lexer_var and prototype 2017-02-07 18:14:57 +01:00
Jack Halford
b613f9fb89 conflicts resolved 2017-02-07 18:06:30 +01:00
Jack Halford
a01b7b76ab redirection now works with builtins! 2017-02-07 17:57:52 +01:00
wescande
6648487f4a mergeing of branch var expansion 2017-02-07 17:40:10 +01:00
wescande
7610136d18 expansion des variables ok, fait a l'execution et plus dans le lexer (laissé en commentaire dans le lexer) 2017-02-07 17:22:39 +01:00
Jack Halford
060800769b lexer_comment done 2017-02-07 12:57:46 +01:00
Jack Halford
c56f9dac85 lexer_comment back onto master 2017-02-07 12:38:04 +01:00
Jack Halford
d7f5116eb0 looks promising 2017-02-07 02:07:47 +01:00
Jack Halford
bb52d35f4d starting to fix redirects 2017-02-06 23:49:58 +01:00
ariard@student.42.fr
46ccf47755 loop read again if script modifierd 2017-02-06 22:04:21 +01:00
ariard@student.42.fr
c0977b20ff until exec ok 2017-02-06 21:02:37 +01:00
ariard@student.42.fr
490f81ee23 exec if + elif + else ok to-do:syntax error 2017-02-06 19:48:17 +01:00
ariard@student.42.fr
a211bfd1b0 parsing if/elsif stable 2017-02-06 17:59:48 +01:00
Jack Halford
5cac33e7cf Merge branch 'master' of https://github.com/jzck/minishell 2017-02-06 17:01:23 +01:00
Jack Halford
156e1cb29c file redirections repaired 2017-02-06 16:51:34 +01:00
wescande
fe57e9e520 rectif du segv sur {} + modification de la gestion des {} (ordre + qd chaine unique) + ajout de fonction pours les chars esc (set_char_esc | set_char_no_esc | set_char_esc_mode 2017-02-06 15:38:10 +01:00
ariard@student.42.fr
9bb45abb3d currently parsing if, to-do:syntax error, clean code& interactive shell 2017-02-06 00:05:32 +01:00
ariard@student.42.fr
63b25532b3 parsing loop presque 2017-02-05 19:38:46 +01:00
gwojda
f63737a90c changement des couleurs du prompt - correction leger bug sur le backslash 2017-02-05 17:45:17 +01:00
ariard@student.42.fr
cd2019c0fd fucking newline to parse 2017-02-05 00:15:12 +01:00
gwojda
c77af3da9f mise a jour des parentheses/accolades 2017-02-04 18:28:05 +01:00
gwojda
288acbb378 mise a la norme edition de ligne - heredoc mal géré 2017-02-04 16:29:28 +01:00
ariard@student.42.fr
9bbd6d7403 do as a sep + multiple newline 2017-02-04 15:52:07 +01:00
ariard@student.42.fr
0a5143bd69 multi loop ok, to-do : do as a separator(lexing), in case of multisep after do delete all (parsing), before while inspect after done (parsing) 2017-02-03 20:03:54 +01:00
gwojda
08710f9e6b merge 2017-02-03 18:40:27 +01:00
gwojda
86fc221cb4 heredoc - historique avec point d'exclamation - sortie plus propre avec control D - historique ne prend plus en compte deux commandes consecutives egales 2017-02-03 18:38:22 +01:00
Jack Halford
065aacaadd removed debug messages from completion 2017-02-03 17:36:07 +01:00
Jack Halford
12d069d26b fix des problemes de compilations post-merge 2017-02-03 16:28:47 +01:00
Jack Halford
593258dff2 merged lexer-hotfix 2017-02-03 16:23:54 +01:00
Jack Halford
2f647b820f no more skipping delims before lexing, removed superfluous headers from lib, readded do_job_notifications before prompt 2017-02-03 16:15:55 +01:00
m600x
6ab0634d4c Reworked autocompletion multichoice 2017-02-03 15:49:03 +01:00
ariard@student.42.fr
fcea6dda9b scripting stable before new lexing and parsing(merged with master) 2017-02-03 15:41:14 +01:00
Jack Halford
585d469324 lexer skips delims before starting to tokenize 2017-02-03 15:15:38 +01:00
m600x
cb9fe01c3e Merging 2017-02-03 15:14:02 +01:00
m600x
fff7a872e6 Pre-Merge 2017-02-03 15:08:32 +01:00
gwojda
c0918e8e6b quoting + backslash + backquotes + parentheses + accolades revu : normalement ca marche. On va tenter d'ajouter la completion 2017-02-03 15:04:54 +01:00
Jack Halford
f4efbdd313 hotfix, forget to check compilation 2017-02-03 14:56:30 +01:00
ariard@student.42.fr
e708ce1e16 merge resolved 2017-02-03 14:44:35 +01:00
Jack Halford
da66e7bd79 Merge branch 'redirection-fix' 2017-02-03 14:42:41 +01:00
m600x
9f15e9b4c7 Content of data->line.input and data->line.pos updated 2017-02-03 14:15:46 +01:00
Jack Halford
62be4bc470 new architecture for redirection inside of fork(), chained redirects dont work properly yet 2017-02-03 14:11:34 +01:00
Jack Halford
985745f881 starting to fixi redirections 2017-02-03 13:21:06 +01:00
m600x
f43f11cd14 Rebase init 2017-02-03 12:36:25 +01:00
gwojda
7fb9aa2da5 changement du squelette (passage a un tableau de pointeur sur fonction) - pas encore tout resté 2017-02-02 19:07:32 +01:00
Jack Halford
7265a6c340 cleaner main, added ft_lexer to encapsulate all phases of tokenization 2017-02-02 15:45:55 +01:00
Jack Halford
b08b727779 orphan backquotes and orpan parens generate parse errors 2017-02-02 15:28:18 +01:00
Jack Halford
073ef322e4 fixed backquotes 2017-02-02 14:57:30 +01:00
gwojda
97ac417f81 ajout d'un fichier pour garder l'historique des utilisations precedentes (.42sh_history dans le dossier du 42sh) + gestion du resize de fenetre 2017-02-02 13:40:20 +01:00
Jack Halford
d5c830d347 Merge branch 'job-control-fix' 2017-02-02 01:21:16 +01:00
Jack Halford
0d8610ca65 exit statuses behave correctly now (like bash) 2017-02-02 00:56:16 +01:00
wescande
cd7b4cde7c merge de la suppression de leaks 2017-02-01 19:52:36 +01:00
wescande
9641ed9dbb suppression d'un malheureux leaks + opti recursivite 2017-02-01 19:50:32 +01:00
Jack Halford
62cdc4ca84 back to looking like the GNU tutorial 2017-02-01 17:30:45 +01:00
Gautier WOJDA
feac290fee Comportement de control C/D mise a jour (avec le bruit d'erreur pour control D) -- mise a jour de l'edition de lignes, quelques bugs resolus (merci wescande :p) 2017-02-01 16:54:15 +01:00
ariard@student.42.fr
f33d2be526 lexing if ok 2017-02-01 00:00:27 +01:00
wescande
43f1295324 finition sur le globbing (expansion des accolades, gestion des characteres echappe) => normalement aucun bug + mise a la norme 2017-01-31 23:25:41 +01:00
ariard@student.42.fr
b0dececf1f loop_del 2017-01-31 22:52:36 +01:00
ariard@student.42.fr
73b4cc3060 resolution empty tree + nested loop + while error lexing 2017-01-31 22:12:49 +01:00
wescande
3c8c143143 merge de extend_glob. Ajout de la barre de progression dans le makefile 2017-01-31 19:52:04 +01:00
wescande
ad7d814c74 extension du globbing implemente SUPER MAKEFILE QUI DECHIRE TA M*RE 2017-01-31 19:36:29 +01:00