这可能是一个xy问题,但我正在尝试构建一个基于内核的文本编辑器,类似于
我也简要尝试了
请注意,
vim
或nano
,我知道如何使用转义字符来清除屏幕,然后重新打印输出。我可以使其接受字符输入,但我不确定如何让它接受箭头输入以用于导航。我认为它们有ASCII值,但显然没有。是否有一种方法可以使用箭头键,或者我必须像vim
那样制作导航模式和插入模式?我也简要尝试了
curses
,但由于我所理解的原因,这是不可行的,需要为其打开一个全新的窗口,并且与我所想象的单个终端窗口不兼容。请注意,
curses
无法正常工作,因为它会清除窗口,而这并不是我想要的。
curses
中窗口的含义。它是在终端屏幕中打印的窗口。因此,如果您已经打开了一个终端并运行了curses
程序,它将显示在同一个终端中,就像 Vim 一样。 - user764357curses
运行某些内容时,它必须打开一个终端才能使其工作。但是,如果您已经打开了终端,则会使用该终端。 - Bakuriu