【发布时间】:2017-10-30 10:56:16
【问题描述】:
我是julia-repl 包的作者,它在ansi-term 中运行了一个劣质的Julia REPL。由于颜色和终端交互,一个完整的终端是必要的。我需要一些帮助来扩展它以使错误位置“可点击”。
Julia 错误消息如下所示:
julia> Foo.foo()
ERROR: DomainError:
Stacktrace:
[1] foo() at /tmp/Foo.jl:2
我想将/tmp/Foo.jl:2 设为“可点击”,以便用户单击鼠标即可将2 与/tmp/Foo.jl 对齐。
我开始阅读the relevant section of the Emacs manual,但需要一些帮助来实现这一点。特别是,
- 使用正则表达式查找这些文本 sn-ps 的最佳方法是什么?
- 如何在每次缓冲区更改时运行它?
- 我可以只在新输出上运行它吗?
- 如何将文件的特定行指定为目标?
我很乐意阅读和研究现有示例,但不知道从哪里开始。一个最小的例子会有很大帮助。
【问题讨论】:
-
我建议查看执行此操作的模式的来源,例如 grep.el。
-
作为用户,我不确定是否需要基于完整终端仿真的解决方案。如果您的“终端交互”受到足够的限制,也许您应该考虑简单地添加对颜色的支持(它是单行的)以及对那些终端交互的comint(或替换)的支持。