|
|
| version 1.21.2.4, 2025/12/24 00:00:53 | version 1.21.2.5, 2025/12/24 00:16:40 |
|---|---|
| Line 505 bufEND(int idx, void * __restrict cli_buffer) | Line 505 bufEND(int idx, void * __restrict cli_buffer) |
| } | } |
| static int | static int |
| bufLEFTin(int idx, void * __restrict cli_buffer) | |
| { | |
| linebuffer_t *buf = cli_buffer; | |
| if (!cli_buffer || idx < 0 || idx > MAX_BINDKEY) | |
| return RETCODE_ERR; | |
| if (buf->line_posin > 0) { | |
| rewindin(buf, 1); | |
| buf->line_posin--; | |
| } | |
| return RETCODE_OK; | |
| } | |
| static int | |
| bufLEFT(int idx, void * __restrict cli_buffer) | bufLEFT(int idx, void * __restrict cli_buffer) |
| { | { |
| linebuffer_t *buf = cli_buffer; | linebuffer_t *buf = cli_buffer; |
| Line 519 bufLEFT(int idx, void * __restrict cli_buffer) | Line 535 bufLEFT(int idx, void * __restrict cli_buffer) |
| } | } |
| static int | static int |
| bufRIGHTin(int idx, void * __restrict cli_buffer) | |
| { | |
| linebuffer_t *buf = cli_buffer; | |
| if (!cli_buffer || idx < 0 || idx > MAX_BINDKEY) | |
| return RETCODE_ERR; | |
| if (buf->line_posin < buf->line_lenin) { | |
| write(buf->line_out, buf->line_input + buf->line_posin, 1); | |
| buf->line_posin++; | |
| } | |
| return RETCODE_OK; | |
| } | |
| static int | |
| bufRIGHT(int idx, void * __restrict cli_buffer) | bufRIGHT(int idx, void * __restrict cli_buffer) |
| { | { |
| linebuffer_t *buf = cli_buffer; | linebuffer_t *buf = cli_buffer; |
| Line 1444 cliInit(int fin, int fout, const char *prompt) | Line 1476 cliInit(int fin, int fout, const char *prompt) |
| keys[i].key_len = inkeys[i].key_len = sizeof K_RIGHT - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_RIGHT - 1; |
| if (cli_buffer->line_prompt) | if (cli_buffer->line_prompt) |
| keys[i].key_func = bufRIGHT; | keys[i].key_func = bufRIGHT; |
| inkeys[i].key_func = bufRIGHTin; | |
| memcpy(keys[i].key_ch, K_RIGHT, keys[i].key_len); | memcpy(keys[i].key_ch, K_RIGHT, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_RIGHT, inkeys[i].key_len); | memcpy(inkeys[i].key_ch, K_RIGHT, inkeys[i].key_len); |
| i++; | i++; |
| keys[i].key_len = inkeys[i].key_len = sizeof K_LEFT - 1; | keys[i].key_len = inkeys[i].key_len = sizeof K_LEFT - 1; |
| if (cli_buffer->line_prompt) | if (cli_buffer->line_prompt) |
| keys[i].key_func = bufLEFT; | keys[i].key_func = bufLEFT; |
| inkeys[i].key_func = bufLEFTin; | |
| memcpy(keys[i].key_ch, K_LEFT, keys[i].key_len); | memcpy(keys[i].key_ch, K_LEFT, keys[i].key_len); |
| memcpy(inkeys[i].key_ch, K_LEFT, inkeys[i].key_len); | memcpy(inkeys[i].key_ch, K_LEFT, inkeys[i].key_len); |
| i++; | i++; |