Answers:
对于第1部分,我没有发现任何内置内容。以下函数将提供迷你缓冲区中断开链接的列表。我已经在一些简单的示例上对其进行了测试,但是还远远不够。
(defun check-bit-rot ()
"Searches current buffer for file: links, and reports the broken ones."
(interactive)
(save-excursion
(beginning-of-buffer)
(let (file-links)
(while (re-search-forward org-bracket-link-analytic-regexp nil t)
(if (string= "file:" (match-string-no-properties 1))
(if (not (file-exists-p (match-string-no-properties 3)))
(setq file-links
(cons (match-string-no-properties 0)
file-links)))))
(message
(concat "Warning: broken links in this file:\n"
(mapconcat #'identity file-links "\n"))))))
我写了一个Python脚本https://github.com/cashTangoTangoCash/orgFixLinks,尝试修复Ubuntu操作系统中本地驱动器上一个或多个组织文件中本地文件的断开链接。它当然是业余命令行脚本,但可能值得一玩。GitHub Wiki提供了一定程度的文档:https : //github.com/cashTangoTangoCash/orgFixLinks/wiki。请检查自述文件中的警告。
抱歉,该Python脚本不是Org的一部分,而是完全独立/独立的。我希望没有人会打扰我不直接回答OP的问题;我只是以为有人可能喜欢玩Python脚本。
org-bracket-link-analytic-regexp
会有助于挑选Org链接吗?似乎它是针对此类任务而创建的。