diff --git a/Makefile b/Makefile index 5977f96..77f9f2a 100644 --- a/Makefile +++ b/Makefile @@ -45,7 +45,8 @@ SRC = src/shell.c \ src/my_ncurses/my_ncurses.c \ src/my_ncurses/string_utils.c \ src/my_ncurses/pause_utils.c \ - src/key_bindings/autocompletion.c + src/key_bindings/autocompletion.c \ + src/builtin/builtin_bindkey.c OBJ = $(SRC:%.c=%.o) OBJ += src/main.o diff --git a/include/builtin.h b/include/builtin.h index 3d1d673..ceb8e7f 100644 --- a/include/builtin.h +++ b/include/builtin.h @@ -28,6 +28,7 @@ int builtin_source(char **argv, env_t *env); int builtin_history(char **args, env_t *env); int builtin_alias(char **args, env_t *env); int builtin_unalias(char **args, env_t *env); +int builtin_bindkey(char **argv, env_t *env); //utility bool find_path_in_builtins(char *cmd); char **get_envpath(env_t *env); diff --git a/src/builtin/builtin_bindkey.c b/src/builtin/builtin_bindkey.c new file mode 100644 index 0000000..d72f1f3 --- /dev/null +++ b/src/builtin/builtin_bindkey.c @@ -0,0 +1,24 @@ +/* +** EPITECH PROJECT, 2020 +** ash +** File description: +** builtin_bindkey +*/ + +#include "shell.h" +#include "key_functions.h" +#include +#include +#include + +int builtin_bindkey(char **argv, env_t *env) +{ + if (!argv[0]) { + + } else if (!strcmp(argv[0], "-l")) { + for (int i = 0; key_functions[i].name; i++) + puts(key_functions[i].name); + } + free(argv); + return (0); +} \ No newline at end of file diff --git a/src/prompt.c b/src/prompt.c index e9f0235..d06ee8e 100644 --- a/src/prompt.c +++ b/src/prompt.c @@ -27,6 +27,7 @@ const builtin builtins[] = { {"source", &builtin_source}, {"alias", &builtin_alias}, {"unalias", &builtin_unalias}, + {"bindkey", &builtin_bindkey}, {NULL, NULL} };