#include
#include "cli.h"
/**
* 模拟linux终端
*
* 功能:
* 1.支持history
* 1.history 显示所有执行成功过的命令 (编号命令)
* 2.history -i 执行第i个命令
* 3.up 上一个命令
* 4.down 下一个命令
* 2.支持backspace,左方向键,右方向键
* 1.backspace 删一个字
* 2.左方向键 光标向左移动一个字
* 3.右方向键 光标向右移动一个字
* 3.组合键
* 1.ctrl+a home键 光标移到行首
* 2.ctrl+e end 键 光标移到行未
* 4.ctrl+d(delete) 删除当前行
* 4.enter 命令输入完毕
* 5.退出 esc ctrl+c
*
*/
/**API
*void loadHistoryCmd(char *history_file_path);
*int appendCommandToHistory(char *cmd);
*char *line(const char*prompt);
*/
int main(int argc,char **argv){
loadHistoryCmd("./history.txt"); /*加载历史命令*/
char *lineText;
char *prompt = "redis >"; /*提示字符串*/
while(lineText=line(prompt)){
if(lineText[0]!='\\0'){
printf("\\n%s\\n",lineText);
appendCommandToHistory(lineText); /*添加一条命令*/
}else{
printf("\\n");
}
}
return 0;
}