在Ncurses中添加一行

时间:2018-03-21 01:32:17

标签: c ncurses

ncurses中是否有一个函数添加一行并将光标后的文本移动到该新行?我现在正在使用insertln()并且将整个当前行向下移动,但是当我在一行中间点击时,我希望行为更接近vi。

谢谢!

1 个答案:

答案 0 :(得分:2)

您可以使用instr阅读当前窗口中的文字,然后使用clrtoeoladdstr将其删除,以将文字放入新位置。 (根据需要添加w和/或mv前缀。

请注意,真正的文本编辑器执行"插入换行符"不仅仅是在屏幕线上运行。它将在文件缓冲区中的逻辑行上运行,可能会影响多个屏幕行(如果文件中的行足够大以进行换行)。如果您不将自己的逻辑行结构与您在屏幕上显示的内容分开,那么您就不会做类似文本编辑的工作。