From 98451de1fa4d5756aaafd4ffbd92c674ff31c8be Mon Sep 17 00:00:00 2001 From: whaffman Date: Fri, 28 Feb 2025 14:19:54 +0100 Subject: [PATCH] 0 Norm errors --- inc/minishell.h | 4 +- inc/parser.h | 5 +- inc/redirect.h | 27 +++++------ inc/tokenizer.h | 29 ++++++------ inc/utils.h | 74 +++++++++++++++--------------- src/lexer/lexer_read_word.c | 3 +- src/parser/parser_get_arguments.c | 17 +++---- src/prompt/prompt.c | 10 ++-- src/redirect/redirect_get_inputs.c | 4 +- src/token/token_char_convert.c | 16 +++---- src/token/token_type_convert.c | 16 +++---- 11 files changed, 103 insertions(+), 102 deletions(-) diff --git a/inc/minishell.h b/inc/minishell.h index f2a8c52..5a4a96e 100644 --- a/inc/minishell.h +++ b/inc/minishell.h @@ -6,7 +6,7 @@ /* By: marvin +#+ */ /* +#+ */ /* Created: 2025/02/04 16:13:13 by whaffman #+# #+# */ -/* Updated: 2025/02/28 01:36:31 by whaffman ######## odam.nl */ +/* Updated: 2025/02/28 14:18:54 by whaffman ######## odam.nl */ /* */ /* ************************************************************************** */ @@ -42,8 +42,6 @@ # define MAGENTA "\001\033[0;35m\002" # define CYAN "\001\033[0;36m\002" # define RESET "\001\033[0m\002" -# define PROMPT RESET "🐚" GREEN "minishell" RESET ": " -# define PROMPT_LEN 51 # ifndef DBG # define DBG diff --git a/inc/parser.h b/inc/parser.h index a3d0483..e2f06af 100644 --- a/inc/parser.h +++ b/inc/parser.h @@ -6,7 +6,7 @@ /* By: qmennen +#+ */ /* +#+ */ /* Created: 2025/02/11 14:03:03 by qmennen #+# #+# */ -/* Updated: 2025/02/11 17:19:01 by whaffman ######## odam.nl */ +/* Updated: 2025/02/28 14:08:11 by whaffman ######## odam.nl */ /* */ /* ************************************************************************** */ @@ -18,7 +18,8 @@ t_command *parser_alloc_command(t_minishell *msh, char *cmd); t_list *parser_get_commands(t_minishell *msh); t_list *parser_get_input_redirects(t_list *list); -void parser_create_command(t_minishell *msh, t_command *cmd, t_list **l_tkn); +void parser_create_command(t_minishell *msh, + t_command *cmd, t_list **l_tkn); char **parser_get_arguments(t_list *list, t_minishell *msh); int parser_validate_command(t_command *command); diff --git a/inc/redirect.h b/inc/redirect.h index 3a1e568..632c609 100644 --- a/inc/redirect.h +++ b/inc/redirect.h @@ -1,12 +1,12 @@ /* ************************************************************************** */ /* */ -/* ::: :::::::: */ -/* redirect.h :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: qmennen +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2025/02/23 12:26:29 by Quinten #+# #+# */ -/* Updated: 2025/02/27 18:09:47 by qmennen ### ########.fr */ +/* :::::::: */ +/* redirect.h :+: :+: */ +/* +:+ */ +/* By: qmennen +#+ */ +/* +#+ */ +/* Created: 2025/02/23 12:26:29 by Quinten #+# #+# */ +/* Updated: 2025/02/28 14:08:33 by whaffman ######## odam.nl */ /* */ /* ************************************************************************** */ @@ -16,12 +16,13 @@ t_redirect *redirect_new(t_minishell *msh, t_token_type type, char *value); void redirect_new_error(t_minishell *msh, t_list **redirects, int flag); -int redirect_create(t_minishell *msh, t_list **tokens, t_list **redirects, t_token_type type); -t_list *redirect_get_inputs(t_minishell *msh, t_list *list); -t_list *redirect_get_outputs(t_minishell *msh, t_list *list); -int redirect_is_valid(t_list *lst, t_token *token, int mode); -int redirect_token_type(t_token *token); -int redirect_is_delimiter(t_token *token); +int redirect_create(t_minishell *msh, t_list **tokens, + t_list **redirects, t_token_type type); +t_list *redirect_get_inputs(t_minishell *msh, t_list *list); +t_list *redirect_get_outputs(t_minishell *msh, t_list *list); +int redirect_is_valid(t_list *lst, t_token *token, int mode); +int redirect_token_type(t_token *token); +int redirect_is_delimiter(t_token *token); int process_heredoc(t_minishell *msh, t_token *heredoc, t_token *delim); #endif diff --git a/inc/tokenizer.h b/inc/tokenizer.h index bab22bf..0291dca 100644 --- a/inc/tokenizer.h +++ b/inc/tokenizer.h @@ -1,12 +1,12 @@ /* ************************************************************************** */ /* */ -/* ::: :::::::: */ -/* tokenizer.h :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: qmennen +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2025/02/05 12:36:00 by whaffman #+# #+# */ -/* Updated: 2025/02/27 19:03:09 by qmennen ### ########.fr */ +/* :::::::: */ +/* tokenizer.h :+: :+: */ +/* +:+ */ +/* By: qmennen +#+ */ +/* +#+ */ +/* Created: 2025/02/05 12:36:00 by whaffman #+# #+# */ +/* Updated: 2025/02/28 14:09:17 by whaffman ######## odam.nl */ /* */ /* ************************************************************************** */ @@ -16,17 +16,18 @@ /** * Lexer */ -t_lexer *ft_lexer_new(t_minishell *msh); -void ft_lexer_free(t_minishell *msh, t_lexer *lexer); -void lexer_readchar(t_lexer *lexer); -char *lexer_readword(t_minishell *msh, t_lexer *lexer); -t_list *ft_parse_input(t_minishell *msh); -char *lexer_parse_quotes(t_minishell *msh, t_lexer *lexer); +t_lexer *ft_lexer_new(t_minishell *msh); +void ft_lexer_free(t_minishell *msh, t_lexer *lexer); +void lexer_readchar(t_lexer *lexer); +char *lexer_readword(t_minishell *msh, t_lexer *lexer); +t_list *ft_parse_input(t_minishell *msh); +char *lexer_parse_quotes(t_minishell *msh, t_lexer *lexer); /** * Token */ t_token *ft_token_next(t_minishell *msh, t_lexer *lexer); -t_token *token_new(t_minishell *msh, t_token_type type, char *c, int pos); +t_token *token_new(t_minishell *msh, + t_token_type type, char *c, int pos); void ft_token_free(t_minishell *msh, t_token *token); void ft_clear_tokenlist(t_minishell *msh, void *content); t_token *token_parse(t_minishell *msh, t_lexer *lexer); diff --git a/inc/utils.h b/inc/utils.h index 0b2c726..1a32191 100644 --- a/inc/utils.h +++ b/inc/utils.h @@ -1,37 +1,37 @@ -/* ************************************************************************** */ -/* */ -/* :::::::: */ -/* utils.h :+: :+: */ -/* +:+ */ -/* By: whaffman +#+ */ -/* +#+ */ -/* Created: 2025/02/05 16:06:35 by whaffman #+# #+# */ -/* Updated: 2025/02/20 18:07:19 by whaffman ######## odam.nl */ -/* */ -/* ************************************************************************** */ - -#ifndef UTILS_H -# define UTILS_H - -void free_minishell_line(t_minishell *msh); -void free_minishell(t_minishell **msh); -void free_command_list(t_minishell *msh, void *content); -t_minishell *init_minishell(void); -void print_banner(void); -void print_list(void *content); -void simple_builtins(t_minishell *msh); -void error_msg(char *func, char *msg); -void check_malloc(t_minishell *msh, void *ptr); -char *ft_strdup_safe(t_minishell *msh, const char *str); -char *ft_substr_safe(t_minishell *msh, const char *str, - unsigned int start, size_t len); -char *ft_strjoin_safe(t_minishell *msh, - const char *s1, const char *s2); -void *malloc_safe(t_minishell *msh, size_t size); -void free_safe(t_minishell *msh, void **ptr); -void free_freelist(t_minishell *msh); -void ft_lstclear_safe(t_minishell *msh, t_list **lst, - void (*del)(t_minishell *msh, void *)); -t_list *ft_lstnew_safe(t_minishell *msh, void *content); - -#endif // UTILS_H +/* ************************************************************************** */ +/* */ +/* :::::::: */ +/* utils.h :+: :+: */ +/* +:+ */ +/* By: whaffman +#+ */ +/* +#+ */ +/* Created: 2025/02/05 16:06:35 by whaffman #+# #+# */ +/* Updated: 2025/02/28 14:10:11 by whaffman ######## odam.nl */ +/* */ +/* ************************************************************************** */ + +#ifndef UTILS_H +# define UTILS_H + +void free_minishell_line(t_minishell *msh); +void free_minishell(t_minishell **msh); +void free_command_list(t_minishell *msh, void *content); +t_minishell *init_minishell(void); +void print_banner(void); +void print_list(void *content); +void simple_builtins(t_minishell *msh); +void error_msg(char *func, char *msg); +void check_malloc(t_minishell *msh, void *ptr); +char *ft_strdup_safe(t_minishell *msh, const char *str); +char *ft_substr_safe(t_minishell *msh, + const char *str, unsigned int start, size_t len); +char *ft_strjoin_safe(t_minishell *msh, + const char *s1, const char *s2); +void *malloc_safe(t_minishell *msh, size_t size); +void free_safe(t_minishell *msh, void **ptr); +void free_freelist(t_minishell *msh); +void ft_lstclear_safe(t_minishell *msh, + t_list **lst, void (*del)(t_minishell *msh, void *)); +t_list *ft_lstnew_safe(t_minishell *msh, void *content); + +#endif // UTILS_H diff --git a/src/lexer/lexer_read_word.c b/src/lexer/lexer_read_word.c index e6172d9..2ffb01c 100644 --- a/src/lexer/lexer_read_word.c +++ b/src/lexer/lexer_read_word.c @@ -6,7 +6,7 @@ /* By: qmennen +#+ */ /* +#+ */ /* Created: 2025/02/05 19:03:47 by qmennen #+# #+# */ -/* Updated: 2025/02/28 14:04:22 by whaffman ######## odam.nl */ +/* Updated: 2025/02/28 14:06:32 by whaffman ######## odam.nl */ /* */ /* ************************************************************************** */ @@ -70,7 +70,6 @@ char *lexer_readword(t_minishell *msh, t_lexer *lexer) if (lexer->current_char == '"' || lexer->current_char == '\'') { return (lexer_parse_quotes(msh, lexer)); - } if (!match_quotes(msh, lexer)) return (NULL); diff --git a/src/parser/parser_get_arguments.c b/src/parser/parser_get_arguments.c index 1ce6230..0375ba9 100644 --- a/src/parser/parser_get_arguments.c +++ b/src/parser/parser_get_arguments.c @@ -1,12 +1,12 @@ /* ************************************************************************** */ /* */ -/* ::: :::::::: */ -/* parser_get_arguments.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: qmennen +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2025/02/11 16:20:09 by qmennen #+# #+# */ -/* Updated: 2025/02/27 18:58:48 by qmennen ### ########.fr */ +/* :::::::: */ +/* parser_get_arguments.c :+: :+: */ +/* +:+ */ +/* By: qmennen +#+ */ +/* +#+ */ +/* Created: 2025/02/11 16:20:09 by qmennen #+# #+# */ +/* Updated: 2025/02/28 14:07:23 by whaffman ######## odam.nl */ /* */ /* ************************************************************************** */ @@ -44,7 +44,8 @@ static int parser_should_expand(t_list *value) { while (token->value[i]) { - if (token->value[i] == '$' && !expander_character_valid(token->value[i + 1])) + if (token->value[i] == '$' + && !expander_character_valid(token->value[i + 1])) return (0); i++; } diff --git a/src/prompt/prompt.c b/src/prompt/prompt.c index 45a5e2e..1eb2fbf 100644 --- a/src/prompt/prompt.c +++ b/src/prompt/prompt.c @@ -6,7 +6,7 @@ /* By: qmennen +#+ */ /* +#+ */ /* Created: 2025/02/04 16:13:08 by whaffman #+# #+# */ -/* Updated: 2025/02/26 16:15:04 by whaffman ######## odam.nl */ +/* Updated: 2025/02/28 14:18:20 by whaffman ######## odam.nl */ /* */ /* ************************************************************************** */ @@ -14,22 +14,22 @@ char *get_user(t_minishell *msh) { - const char guest[] = "guest"; int len; t_environment *user; char *username; char *result; + const char *prompt = RESET "🐚" GREEN "minishell" RESET ": "; user = environment_get(msh, "USER"); if (user == NULL) - username = (char *)guest; + username = "guest"; else username = user->value; - len = ft_strlen(username) + ft_strlen(PROMPT GREEN) + 1; + len = ft_strlen(username) + ft_strlen(prompt) + ft_strlen(GREEN) + 1; result = (char *)malloc_safe(msh, len); ft_strlcpy(result, GREEN, ft_strlen(GREEN) + 1); ft_strlcat(result, username, ft_strlen(GREEN) + ft_strlen(username) + 1); - ft_strlcat(result, PROMPT, len); + ft_strlcat(result, prompt, len); return (result); } diff --git a/src/redirect/redirect_get_inputs.c b/src/redirect/redirect_get_inputs.c index 4c686d6..fb5552f 100644 --- a/src/redirect/redirect_get_inputs.c +++ b/src/redirect/redirect_get_inputs.c @@ -6,7 +6,7 @@ /* By: qmennen +#+ */ /* +#+ */ /* Created: 2025/02/23 12:29:05 by Quinten #+# #+# */ -/* Updated: 2025/02/28 01:19:39 by whaffman ######## odam.nl */ +/* Updated: 2025/02/28 14:00:39 by whaffman ######## odam.nl */ /* */ /* ************************************************************************** */ @@ -39,7 +39,7 @@ t_list *redirect_get_inputs(t_minishell *msh, t_list *list) } check_heredoc(msh, current, token); flag = redirect_is_valid(current, token, F_OK | R_OK); - if(flag) + if (flag) redirect_create(msh, ¤t, &redirects, token->type); current = current->next; } diff --git a/src/token/token_char_convert.c b/src/token/token_char_convert.c index fbfd1f5..0d0cd71 100644 --- a/src/token/token_char_convert.c +++ b/src/token/token_char_convert.c @@ -1,16 +1,16 @@ /* ************************************************************************** */ /* */ -/* ::: :::::::: */ -/* token_char_convert.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: qmennen +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2025/02/27 18:25:34 by qmennen #+# #+# */ -/* Updated: 2025/02/27 18:28:13 by qmennen ### ########.fr */ +/* :::::::: */ +/* token_char_convert.c :+: :+: */ +/* +:+ */ +/* By: qmennen +#+ */ +/* +#+ */ +/* Created: 2025/02/27 18:25:34 by qmennen #+# #+# */ +/* Updated: 2025/02/28 14:07:08 by whaffman ######## odam.nl */ /* */ /* ************************************************************************** */ -# include "minishell.h" +#include "minishell.h" t_token_type token_char_convert(char c, int is_double) { diff --git a/src/token/token_type_convert.c b/src/token/token_type_convert.c index c42e681..3c2a143 100644 --- a/src/token/token_type_convert.c +++ b/src/token/token_type_convert.c @@ -1,16 +1,16 @@ /* ************************************************************************** */ /* */ -/* ::: :::::::: */ -/* token_type_convert.c :+: :+: :+: */ -/* +:+ +:+ +:+ */ -/* By: qmennen +#+ +:+ +#+ */ -/* +#+#+#+#+#+ +#+ */ -/* Created: 2025/02/27 18:25:34 by qmennen #+# #+# */ -/* Updated: 2025/02/27 18:26:40 by qmennen ### ########.fr */ +/* :::::::: */ +/* token_type_convert.c :+: :+: */ +/* +:+ */ +/* By: qmennen +#+ */ +/* +#+ */ +/* Created: 2025/02/27 18:25:34 by qmennen #+# #+# */ +/* Updated: 2025/02/28 14:07:12 by whaffman ######## odam.nl */ /* */ /* ************************************************************************** */ -# include "minishell.h" +#include "minishell.h" char *token_type_convert(t_token_type type) {