6,6 → 6,8 |
|
int i; |
|
if ('\0' == CMD[0]) return; |
|
for (i = 0; i < CMD_HISTORY_NUM_REAL; i++) |
if ( 0 == strcmp( CMD_HISTORY[i], CMD ) ) |
return; |
18,7 → 20,7 |
if (CMD_HISTORY_NUM_REAL < CMD_HISTORY_NUM-1) |
CMD_HISTORY_NUM_REAL++; |
|
CMD_NUM = 0; |
CMD_NUM = -1; |
|
} |
|
57,19 → 59,16 |
CMD[0] = '\0'; |
break; |
|
|
case 13: // ENTER |
printf("\n\r"); |
command_history_add(); |
return; |
|
|
case 8: // BACKSPACE |
if (cmdPos > 0) |
{ |
for (i = cmdPos-1; i < cmdLen; i++) |
CMD[i] = CMD[i+1]; |
|
for (i = 0; i < cmdLen-cmdPos; i++) |
printf (" "); |
|
102,7 → 101,7 |
if ((int)*(clipBuf+4)==0) // text? |
{ |
if ((int)*(clipBuf+8)==1) // 866 encoding? |
|
{ |
for (i = cmdPos; i < cmdLen; i++) |
printf(" "); |
for (i = cmdLen; i > 0; i--) |
130,6 → 129,7 |
} |
} |
} |
} |
break; |
|
|
204,7 → 204,6 |
|
cmdLen--; |
} |
|
break; |
|
case 75: // Left |
225,9 → 224,8 |
break; |
|
|
case 80: // Down |
|
if (CMD_HISTORY_NUM_REAL > 0) |
case 72: // Up |
if (CMD_HISTORY_NUM_REAL > 0 && CMD_NUM >= -1) |
{ |
|
for (i = cmdPos; i < cmdLen; i++) |
238,9 → 236,9 |
|
if (CMD_NUM < CMD_HISTORY_NUM_REAL-1) |
CMD_NUM++; |
else |
/* else |
CMD_NUM = 0; |
|
*/ |
printf( "%s", CMD_HISTORY[CMD_NUM] ); |
strcpy(CMD, CMD_HISTORY[CMD_NUM]); |
cmdLen = strlen(CMD); |
251,8 → 249,8 |
break; |
|
|
case 72: // Up |
if (CMD_HISTORY_NUM_REAL > 0) |
case 80: // Down |
if (CMD_HISTORY_NUM_REAL > 0 && CMD_NUM >= 0) |
{ |
|
for (i = cmdPos; i < cmdLen; i++) |
263,9 → 261,9 |
|
if (CMD_NUM > 0) |
CMD_NUM--; |
else |
/* else |
CMD_NUM = CMD_HISTORY_NUM_REAL-1; |
|
*/ |
printf( "%s", CMD_HISTORY[CMD_NUM] ); |
strcpy(CMD, CMD_HISTORY[CMD_NUM]); |
cmdLen = strlen(CMD); |