如何在emacs中将非org-mode缓冲区链接化

3
可能重复:
如何使任何emacs缓冲区中的org语法链接看起来像在org-mode中一样? 我不介意使用org-mode,但需要使用非星号标题。 我在如何在org-mode中使用其他标题样式,如twiki --- +或mediawiki == h2 ==? 中提出了这个问题。
但是我想要的主要功能是将缓冲区“链接化” - 可能是非org-mode缓冲区。
例如,使诸如[[file:/some/long/path][display name]]之类的链接仅显示为“display name”并可点击。 或者只是[[file:/some/path]],或其他org-mode支持的链接类型。
问:是否有一种方法可以在org-mode之外的emacs中获取此类链接功能?

实际上,我知道一定有的,因为我已经能够在不使用org-mode的情况下,将iimage-mode与outline-mode一起使用。嗯... - Krazy Glew
2个回答

4

我认为您正在寻找文本属性。Elisp信息文件甚至包括有关“可点击文本”的条目,文本->文本属性->可点击文本。该部分实际上包括一个非常详细的示例,演示了如何实现您所提到的类似功能。


谢谢。自从昨天发布以来,我一直在处理文本属性。取得了一些进展,但还没有达到目标。与其他包有许多交互。例如,在非org缓冲区(如大纲模式)中,org-open-at-point-global运行良好,但当您自己定义属性时,它会停止工作。我仍然希望有人能以通用的方式解决这个问题。 - Krazy Glew
现在我正在使用org-open-link-from-string,所以我在慢慢取得进展。 - Krazy Glew
好的,我已经基本解决了链接问题。与字体锁定的交互是一个难点 - 它会阻止颜色等被看到。首先我禁用了字体锁定,然后我“借用”了org-link的面孔,并使用它。我还没有使链接的丑陋部分不可见,但我正在给链接着色,并在鼠标悬停时进行高亮显示。鼠标-1和鼠标-2键绑定存在问题。// 但是,基本上,我已经走得很远了。 - Krazy Glew
我正在前往一个名为“linkify-region”的函数,它接受一个匹配函数(例如正则表达式)的alist,以及相应的函数来生成链接目标和显示名称。隐藏丑陋的部分;在情况不是缓冲区中的文本时,犹豫要显示什么。//使用org-open-link-from-string,尽可能利用org-mode关于链接处理的好处,尽管它也有一些缺点。 - Krazy Glew
虽然我更愿意找到一些已经存在的代码来完成这个任务,而不是从头开始编写自己的代码(预计会干扰其他包),但我将其标记为已回答。// 但如果有人想说“嘿,白痴Glew,你没看到FOOBAR包吗?它完全可以满足你的需求?”请告诉我。 - Krazy Glew
嘿,自私的Glew,你介意分享你的工作吗?:) 我非常非常非常感兴趣。谢谢! - Ehvince

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接