我不知道如何制作一个在输入文本时会捕获键盘事件的功能(示例)
catch_events(); // catch events will check if TAB or others keys are pressed while reading text from stdin
getline(cin, bash_command);
就像linux shell,当我们输入ec(按下TAB)时,它会显示所有以ec *开头的命令(例如:echo)
答案 0 :(得分:0)
您不必自己实现,此TAB功能由libreadline
或libeditline
之类的库实现。两者都有一个钩子,可告诉您按下TAB时光标的位置。