Emacs 重构组织文件(在不中断链接的情况下移动数据)?
我正在寻找一种工作流程,它可以让我在不破坏链接的情况下自由移动东西 由于我几乎总是使用Emacs 重构组织文件(在不中断链接的情况下移动数据)?,emacs,hyperlink,refactoring,org-mode,break,Emacs,Hyperlink,Refactoring,Org Mode,Break,我正在寻找一种工作流程,它可以让我在不破坏链接的情况下自由移动东西 由于我几乎总是使用org-store-link或org-capture链接到任何东西,因此我正在考虑这样的工作流: 每当从组织文件调用org-store-link或org-capture时,将存储/捕获的确切链接的副本插入当前标题的属性中。当然,我可能只是有一个包装器函数来进行插入,然后调用相应的org函数 每次保存时,在当前文件中搜索与当前位置不匹配的任何此类标识符。文件移动也会中断链接,因此脚本可能会定期在所有组织文件上运行
org-store-link
或org-capture
链接到任何东西,因此我正在考虑这样的工作流:
org-store-link
或org-capture
时,将存储/捕获的确切链接的副本插入当前标题的属性中。当然,我可能只是有一个包装器函数来进行插入,然后调用相应的org
函数在我开始之前,这听起来像是个好主意吗?如何改进,还有其他人已经做了吗?
org mode
有一个选项,可以为每个条目分配一个唯一的id,并在链接中使用该id。这使链接即使在目标移动时也能继续工作。将变量org id link设置为org use id
设置为t
,该id将被创建并存储在id
属性中<代码>组织插入链接将插入id:的链接谢谢。这会帮我找到我想要的东西<代码>组织id get create也会有帮助。我发现了一些奇怪的东西。调用org id get create
一次后,任何时候使用org store link
或org capture
,都会自动调用org id get create
。这正是我想要的功能,但我不明白为什么第一次必须手动调用它。有人知道吗?这是因为默认情况下,org id链接到org use id
是nil
。一旦在缓冲区中激活ID,不依赖它就没有意义了。