【问题标题】:Get browse-url-at-point to behave like browse-url in Emacs / Org Mode links在 Emacs / Org Mode 链接中获取 browse-url-at-point 的行为类似于 browse-url
【发布时间】:2016-04-25 21:30:29
【问题描述】:

我正在尝试研究如何让 org 模式打开(作为可点击链接)链接到另一个名为 ConnectedText 的软件的 URL。 ConnectedText 允许其他应用程序通过如下所示的 URL 链接到其文件:ct://Welcome/Welcome

如果我通过M-x browse-url 调用browse-url,然后粘贴其中一个链接,则链接会正常打开。但是,如果我在 org 模式下将它们添加为可点击链接,它们将不起作用(我得到“不匹配 - 将其创建为新标题?”对话)。

根据 org-mode 手册,可点击链接由 browse-url-at-point 函数处理。当我尝试使用 browse-url-at-point 打开这些 URL 之一(通过M-x browse-url-at-point)时,它也不起作用,而是尝试在我的网络浏览器中打开链接。

所以我试图弄清楚如何让browse-url-at-point 以与browse-url 相同的方式与这些URL 相关。

Browse-url,如果在点位于这些 URL 之一上时调用,则默认为 URL(根据文档;“如果点位于合理的 URL 附近,则使用该 URL 作为默认值。”)但是,当它执行此操作时,它会插入http://,因此生成的 URL 如下所示:http://ct://Welcome/Welcome。我认为这是无法正常工作的原因。

有没有办法让browse-url-at-point 不插入这个http:// 前缀?

或者我是不是走错了路?

感谢您的任何建议!

大卫

【问题讨论】:

  • 考虑报告一个错误:M-x report-emacs-bug。听起来browse-url-at-point 在无法识别协议时强制使用前缀http://(例如ct:)。最多,“dwim”应该是可选的,而不是强制的。 (也许它是可选的 - 您可能想查看文档并寻找这样的选项。)
  • 谢谢,如果我没有发现任何其他东西来解释这种行为,我会这样做。
  • 如果您报告该问题,Emacs 开发人员可能还会对可能解释该行为的内容有话要说。 ;-)
  • Cheers Drew,你就在那儿,在下面发布开发响应; adding "ct://" to thing-at-point-uri-schemes solves your issue. (require 'thingatpt) (push "ct://" thing-at-point-uri-schemes)
  • 请考虑将其发布为答案并接受它。 (您可以接受自己的答案。)

标签: emacs org-mode


【解决方案1】:

Emacs 开发人员为我提供了这个问题的解决方案。如果将ct:// 添加到thing-at-point,则browse-url-at-point 的工作方式与问题中描述的场景中的M-x browse-url 相同。以下添加到 init 文件的内容是:

(require 'thingatpt) 
(push "ct://" thing-at-point-uri-schemes)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-08
    • 2011-07-10
    • 1970-01-01
    相关资源
    最近更新 更多