summaryrefslogtreecommitdiffstats
path: root/src/c_input.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/c_input.c')
-rw-r--r--src/c_input.c20
1 files changed, 17 insertions, 3 deletions
diff --git a/src/c_input.c b/src/c_input.c
index be72aa9..37f7b66 100644
--- a/src/c_input.c
+++ b/src/c_input.c
@@ -66,7 +66,7 @@ c_get_line_num(char *line,
it = 0;
line_num = 0;
- tcaps->lpos = 0;
+ tcaps->lpos = 1;
len = ft_strlen(line);
if (len < (tcaps->ws.ws_col - plen))
return (1);
@@ -81,9 +81,23 @@ c_get_line_num(char *line,
int16_t
c_back_slash(char **line,
- t_caps *tcaps)
+ uint32_t plen,
+ t_caps *tcaps)
{
- if (tcaps->cpos >= 1)
+ int32_t pos;
+
+ pos = -1;
+ if (((tcaps->cpos + plen) % (tcaps->ws.ws_col)) == 0
+ && tcaps->cpos >= 1)
+ {
+ *line = c_delchar(*line, tcaps->cpos);
+ tputs(tgetstr("up", NULL), 1, ft_putchar);
+ while(++pos <= (tcaps->ws.ws_col))
+ tputs(tgetstr("nd", NULL), 1, ft_putchar);
+ tputs(tgetstr("dc", NULL), 1, ft_putchar);
+ tcaps->cpos--;
+ }
+ else if (tcaps->cpos >= 1)
{
*line = c_delchar(*line, tcaps->cpos);
tcaps->cpos--;