简单 Python 终端 (TUI) 多行编辑器
项目描述
特征:
简单的多行编辑器
不是整个屏幕,但只有接下来的 N 行
状态栏(支持多行):显示交互反馈。例如标记编辑,显示编辑数量,在单独的平面上显示差异等
这只是终端 (VT100) 的简单多行编辑器。它有点像 输入(doc),但支持多行并且表现得更像一个简单的编辑器。它与其他编辑器和其他 TUI 框架的不同之处在于它不会全屏,而只会使用终端的最后 N 行。它旨在简单、灵活和可破解,即可以更改行为,可以处理键入事件等。处理终端大小调整需要格外小心。它还支持显示状态栏(可能是多行)。
主页:https ://github.com/albertz/py-tui-editor
安装
该项目在 PyPI 上: https ://pypi.org/project/tui-editor/
因此,您可以这样做:
pip install tui-editor
用法
简单的空编辑器:
>>> from tui_editor import TuiEditor
>>> editor = TuiEditor()
>>> editor.edit()
>>> editor.get_text()
'Hello World!'
预定义的可编辑文本:
>>> from tui_editor import TuiEditor
>>> editor = TuiEditor()
>>> editor.set_text('Hello World!')
>>> editor.edit()
>>> editor.get_text()
'Hello World!'
截屏
截屏
这显示了demo-prompt.py和demo-editor.py。
这使用了一个非常自定义的小应用程序,我用它来将带注释的 PDF 编辑接管到我的 Latex 文件中,在那里我得到了编辑器,它在编辑器的状态栏中向我显示了实时差异。
执照
麻省理工学院许可证
历史
2015 Paul Sokolovsky: picotui 项目 seditor.py 示例。2022 Albert Zeyer:扩展和重新设计并将文本编辑器打包为这个库。
参考
https://en.wikipedia.org/wiki/ANSI_escape_code https://invisible-island.net/xterm/ctlseqs/ctlseqs.html