修改DL(n)宏,修复在使用上键回看历史记录时历史记录向右移动的问题
This commit is contained in:
parent
f2d49ad330
commit
4ac7518e43
|
@ -94,7 +94,7 @@ extern "C" {
|
|||
#define DCH(n) "\x1B[%dP",n /* 删除字符 删除当前光标位置的 <n> 个字符,这会从屏幕右边缘以空格字符移动。*/
|
||||
#define ECH(n) "\x1B[%dX",n /* 擦除字符 擦除当前光标位置的 <n> 个字符,方法是使用空格字符覆盖它们。*/
|
||||
#define IL(n) "\x1B[%dL",n /* 插入行 将 <n> 行插入光标位置的缓冲区。 光标所在的行及其下方的行将向下移动。*/
|
||||
#define DL(n) "\x1B[%dM",n /* 删除行 从缓冲区中删除 <n> 行,从光标所在的行开始。*/
|
||||
#define DL(n) "\x1B[%dM\r",n /* 删除行 从缓冲区中删除 <n> 行,从光标所在的行开始。*/
|
||||
|
||||
/* 打印字体颜色设置 */
|
||||
#define TX_DEF "\x1b[0m"
|
||||
|
|
|
@ -364,13 +364,11 @@ char* xcmd_display_get(void)
|
|||
void xcmd_display_clear(void)
|
||||
{
|
||||
char *line = xcmd_display_get();
|
||||
xcmd_put_str("\x1B[0M");
|
||||
xcmd_print(DL(0));
|
||||
#ifndef XCMD_DEFAULT_PROMPT_CLOLR
|
||||
xcmd_put_str(xcmd_get_prompt());
|
||||
#else
|
||||
xcmd_put_str(XCMD_DEFAULT_PROMPT_CLOLR);
|
||||
xcmd_put_str(xcmd_get_prompt());
|
||||
xcmd_put_str(TX_DEF);
|
||||
xcmd_print(XCMD_DEFAULT_PROMPT_CLOLR "%s" TX_DEF, xcmd_get_prompt());
|
||||
#endif
|
||||
g_xcmder.parser.byte_num = 0;
|
||||
g_xcmder.parser.cursor = 0;
|
||||
|
|
|
@ -73,7 +73,6 @@ static int xcmd_history_dw(void *pv)
|
|||
xcmd_display_clear();
|
||||
if(line)
|
||||
{
|
||||
|
||||
xcmd_display_print(line);
|
||||
}
|
||||
return 0;
|
||||
|
|
Loading…
Reference in New Issue