added run command function
parent
866f407472
commit
9639dfc19e
3
efn.c
3
efn.c
|
@ -3,7 +3,6 @@
|
|||
#include "consts.h"
|
||||
|
||||
#include "types.h"
|
||||
|
||||
#include "efn.h"
|
||||
|
||||
#include "main.c"
|
||||
|
@ -25,5 +24,3 @@
|
|||
#include "commands.c"
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
22
main.c
22
main.c
|
@ -18,9 +18,24 @@ parse_command(char *input) {
|
|||
return &starts[0];
|
||||
}
|
||||
|
||||
void
|
||||
run_command(char *c) {
|
||||
char **com = parse_command(c);
|
||||
if(com[0] == NULL) return;
|
||||
if(commands[com[0][0]] != NULL)
|
||||
commands[com[0][0]](c, com);
|
||||
else
|
||||
puts("invalid command");
|
||||
}
|
||||
|
||||
int
|
||||
main(int argc, char **argv) {
|
||||
static char buf[COM_BUF_SIZE];
|
||||
|
||||
if (argc >= 2) {
|
||||
// todo, open file
|
||||
}
|
||||
|
||||
while(1) {
|
||||
memset(buf, 0, sizeof(buf));
|
||||
printf(" > ");
|
||||
|
@ -30,8 +45,7 @@ main(int argc, char **argv) {
|
|||
if (buf[i] == '\n')
|
||||
buf[i] = '\0';
|
||||
if (com != NULL) {
|
||||
if (commands[com[0]] != NULL) commands[com[0]](buf, parse_command(com));
|
||||
else puts("invalid command.");
|
||||
run_command(com);
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
|
@ -39,3 +53,7 @@ main(int argc, char **argv) {
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue