fixed get_user and prompt
This commit is contained in:
parent
71d1797a22
commit
83c50f511f
@ -5,7 +5,7 @@ A lot of amazing shell stuff
|
|||||||
- libncurses-dev
|
- libncurses-dev
|
||||||
|
|
||||||
## TODO
|
## TODO
|
||||||
- Find absolute path for command input ('/', './', 'cmd')
|
-[x] Find absolute path for command input ('/', './', 'cmd')
|
||||||
- Add heredoc to tokenizer
|
- Add heredoc to tokenizer
|
||||||
-[x] Environment to `t_list`
|
-[x] Environment to `t_list`
|
||||||
-[x] Get environment array (export)
|
-[x] Get environment array (export)
|
||||||
|
|||||||
@ -6,7 +6,7 @@
|
|||||||
/* By: whaffman <whaffman@student.codam.nl> +#+ */
|
/* By: whaffman <whaffman@student.codam.nl> +#+ */
|
||||||
/* +#+ */
|
/* +#+ */
|
||||||
/* Created: 2025/02/04 16:13:13 by whaffman #+# #+# */
|
/* Created: 2025/02/04 16:13:13 by whaffman #+# #+# */
|
||||||
/* Updated: 2025/02/11 14:09:23 by whaffman ######## odam.nl */
|
/* Updated: 2025/02/11 15:50:21 by whaffman ######## odam.nl */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
@ -37,5 +37,6 @@
|
|||||||
# define MAGENTA "\001\033[0;35m\002"
|
# define MAGENTA "\001\033[0;35m\002"
|
||||||
# define CYAN "\001\033[0;36m\002"
|
# define CYAN "\001\033[0;36m\002"
|
||||||
# define RESET "\001\033[0m\002"
|
# define RESET "\001\033[0m\002"
|
||||||
|
# define PROMPT RESET "🐚" GREEN "minishell" RESET ": "
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@ -6,7 +6,7 @@
|
|||||||
/* By: qmennen <qmennen@student.codam.nl> +#+ */
|
/* By: qmennen <qmennen@student.codam.nl> +#+ */
|
||||||
/* +#+ */
|
/* +#+ */
|
||||||
/* Created: 2025/02/04 16:13:08 by whaffman #+# #+# */
|
/* Created: 2025/02/04 16:13:08 by whaffman #+# #+# */
|
||||||
/* Updated: 2025/02/08 14:34:53 by willem ######## odam.nl */
|
/* Updated: 2025/02/11 16:06:17 by whaffman ######## odam.nl */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
@ -14,19 +14,28 @@
|
|||||||
|
|
||||||
char *get_user(t_list *environment)
|
char *get_user(t_list *environment)
|
||||||
{
|
{
|
||||||
char *str1;
|
const char guest[] = "guest";
|
||||||
char *str2;
|
int len;
|
||||||
|
t_environment *user;
|
||||||
|
char *username;
|
||||||
|
char *result;
|
||||||
|
|
||||||
str1 = ft_strdup(environment_get(environment, "USER")->value);
|
user = environment_get(environment, "USER");
|
||||||
if (str1 == NULL)
|
if (user == NULL)
|
||||||
str1 = ft_strdup("guest");
|
username = (char *)guest;
|
||||||
if (str1 == NULL)
|
else
|
||||||
|
username = user->value;
|
||||||
|
len = ft_strlen(username) + ft_strlen(PROMPT) + ft_strlen(GREEN) + 1;
|
||||||
|
result = (char *)malloc(len);
|
||||||
|
if (result == NULL)
|
||||||
|
{
|
||||||
|
perror("malloc");
|
||||||
return (NULL);
|
return (NULL);
|
||||||
str2 = ft_strjoin(GREEN, str1);
|
}
|
||||||
free(str1);
|
ft_strlcpy(result, GREEN, ft_strlen(GREEN) + 1);
|
||||||
str1 = ft_strjoin(str2, RESET "🐚" GREEN "minishell" RESET ": ");
|
ft_strlcat(result, username, ft_strlen(GREEN) + ft_strlen(username) + 1);
|
||||||
free(str2);
|
ft_strlcat(result, PROMPT, len);
|
||||||
return (str1);
|
return (result);
|
||||||
}
|
}
|
||||||
|
|
||||||
char *get_path(t_list *environment)
|
char *get_path(t_list *environment)
|
||||||
|
|||||||
@ -6,7 +6,7 @@
|
|||||||
/* By: whaffman <whaffman@student.codam.nl> +#+ */
|
/* By: whaffman <whaffman@student.codam.nl> +#+ */
|
||||||
/* +#+ */
|
/* +#+ */
|
||||||
/* Created: 2025/02/05 16:03:57 by whaffman #+# #+# */
|
/* Created: 2025/02/05 16:03:57 by whaffman #+# #+# */
|
||||||
/* Updated: 2025/02/05 16:04:18 by whaffman ######## odam.nl */
|
/* Updated: 2025/02/11 15:36:24 by whaffman ######## odam.nl */
|
||||||
/* */
|
/* */
|
||||||
/* ************************************************************************** */
|
/* ************************************************************************** */
|
||||||
|
|
||||||
@ -17,6 +17,6 @@ void free_minishell(t_minishell *minishell)
|
|||||||
if (minishell->line)
|
if (minishell->line)
|
||||||
free_minishell_line(minishell);
|
free_minishell_line(minishell);
|
||||||
if (minishell->environment)
|
if (minishell->environment)
|
||||||
environment_free(minishell->environment);
|
environment_free_list(&minishell->environment);
|
||||||
free(minishell);
|
free(minishell);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user