如何解决无法解析链接而无法导出的问题

在之前使用 ox-hugo 时,经常会遇到一个问题,文章中如果有一个链接,而且这个链接如果无法访问的话,导出会报错,导致导出失败。

org-export-resolve-id-link: Unable to resolve link; aborting:

当然,你可以查到这个链接,然后解决链接的问题,再导出。这个问题最头痛的是,如果你是单文件形式组织文章的话,也就是所有的post都在一个org文件里的话,只要有一个链接出了问题,所有的文章都不能导出。

解决方案 (在org-roam模式下不可用)

官方说明: https://ox-hugo.scripter.co/test/issues/issue-587-subtree-based-export/

如果是每篇文章一个org形式的

在文件头中加入 #+OPTIONS: broken-links:t 。注意如果是刚加入的话,别忘记 C-c C-c 让它生效。

如果是单个org文件形式的

在 properties 中加入 :EXPORT_OPTIONS: broken-links:t

org-roam的解决方案

ox-hugo的说明:https://github.com/kaushalmodi/ox-hugo/discussions/632

所有使用org版本在9.30以后的,都需要设置 org-id-extra-files

(setq org-id-extra-files (directory-files-recursively default-directory "\\.org$"))

这个 default-directory 比使用 org-roam-directory 更好,因为如果是文件夹定义变量的话,用 org-roam-directory 就会有问题。但是其实现在这相情况还是是有问题的,因为只在打开当头org文件的情况下,才会识别到现在的 default-directory 。所以比较笨的办法是,找到需要的文件夹后,运行一下这个命令,然后把配置写死。

海上一民工

Related