【发布时间】:2011-07-24 15:44:49
【问题描述】:
这是我关于堆栈溢出的第一篇文章。多年来,我一直在这个网站上寻找信息,它总是很有帮助,所以我想我会发布我的第一个问题。
我一直在寻找一些类似的例子,但似乎找不到任何东西。
最终,我正在尝试编写一个简单的文本 ui,用于在文本提取程序中查找误报和误报。误报模块是一个简单的是/否选择,显示彩色文本和使用 getch() 很容易。然而,假阴性部分变得越来越困难。
所以这就是我想做的:
- 在屏幕上显示一个字符串(暂时忘记滚动......呃)它只会是一个没有换行符的字符串。
- 用户看到文本,然后按“h”进入突出显示模式。
- 然后,用户可以控制光标将其移动到文本的一部分(仍显示)上,然后选择“v”开始突出显示(我试图使其尽可能接近 vi)
- 然后用户使用控制键(箭头,hjkl)将光标从起点移动到终点,并在途中突出显示文本。这个突出显示的部分应该是一个误报
- 用户按下某个键(可能是“y”),选定的文本被着色或保持突出显示,突出显示的文本被保存到稍后我将处理的某个变量中。
- 用户退出突出显示模式并继续。
有什么想法可以开始吗?我正在尝试简单的事情,例如在屏幕上保留文本并移动光标,但无济于事。
我知道 curses.textpad.TextBox() 模块,但它执行插入和删除等编辑,我不想这样做。也许有一种方法可以禁用它。
我还有其他问题,但现在我会保持具体。
谢谢!!
尼尔
编辑:更具体地说,我不是在寻找编写整个程序的帮助,只是帮助将光标移动到显示的文本上,突出显示它,然后选择它并将其保存在变量中。
【问题讨论】: