python - 从 Gtk3 应用程序中的 VteTerminal 读取 Python 文本缓冲区中的文本

标签 python linux gtk3 gnome vte

所以我正在制作一个类似 Matlab 的应用程序,并将其开源。现在我只有一个功能性的源代码编辑器和 gnome 终端,https://github.com/3LP/M.O.B 。它不是很华丽,但我会添加功能,直到六月毕业。我希望能够扫描在终端中执行的命令。应用程序中的这段代码:

  terminal = Vte.Terminal()
  term = terminal.get_text()
  print(term)

给出官方的输出:('\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n', [, , , , , , , , , , , , , , , , , , , , , , , ])

我想从用户命令中获取文本,并扫描它们以查找某些命令执行的实例。就像用户执行“Python”时一样。对可能的解决方案有什么建议吗?我昨晚研究了方法,但没有成功。

最佳答案

你可以拦截'commit'信号;这是 C 引用,我认为有 python 的绑定(bind)。 https://developer.gnome.org/vte/unstable/VteTerminal.html#VteTerminal-commit

关于python - 从 Gtk3 应用程序中的 VteTerminal 读取 Python 文本缓冲区中的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28460277/

相关文章:

c - 段错误(核心已转储)。堆排序

c - 从内核中的用户空间获取输入

linux - Azure 应用服务 (Linux Nginx) 文件上传错误 413(有效负载太大)

c - 如何在菜单项上捕获 gtk 滚动事件

gtk - 如何过滤使用 TreeStore(而不是 ListStore)的 GTK TreeView ?

python - 如何在 jinja 标签内使用 jinja 标签

python - 根据预定义的数组值填充 numpy 数组

python - gtk-builder-错误-夸克 : invalid object type 'WebKitWebView'

android - 使用 MultiPartEntityBuilder 从 Android 发送 JSON 数据时,无法在 Flask 服务器中使用 get_json()

python - 有没有办法让装饰函数引用装饰器创建的对象?