如何更新org-mode

缘起

最近为了如何将org-mode导出为freemind思维导图,最终感觉要更新一下 org 。结果发现走了不少弯路。之前也想过要做这个事情,但是出现了问题就放弃了,这次坚持了一下。

以下是2022年7月的操作,大家未来看到这篇文字的时候请不要全信,要根据官方文档再确认一下。

具体操作

基本流程

  1. 删除原来的 org
  2. 安装最新的 org
  3. 安装 org-contrib 包(非必要)

看乎很简单。

删除原来的 org

这步最难的问题就是 org 是 emacs自带的,所以在 list-packages 未必有,如果有,直接在 list-packages 中删除。这种情况下 org 文件夹通常是在 HOME 目录下的 elpa 下面,直接去删除这个文件夹也是可以的。

如果 list-packages 中没有,那么就是在emacs目录的 share/emacs 下,直接去删除 org 文件夹。

也有可能是上述两个地方都有,那就都去删除。

另外还有一个办法,可以 M-x org-version 它会告诉你org在哪里,直接去删文件夹就好了。

安装最新的org和org-contrib包

这两个操作是很简单的,难就难在源上。我卡在这里很久就是因为源错了,在其它的源里也有同样的包,而且网上还有教程解决出现相关问题的解决方法,但其实不能解决。

正确的方法还是在官方文档中看到的,所以还是先要看官方,不要搜索引擎解决问题。官方文档的问题是,他没有把下面这两个源的正确内容写在 Install 的菜单下,而写在 Release 菜单下 https://orgmode.org/Changes.html

不贴错误的源了,直接说下正确的源。以下以清华大学的镜像为例。

装org的源: GNU ELPA http://mirrors.tuna.tsinghua.edu.cn/elpa/gnu/

装org-contrib的源:NonGNU ELPA http://mirrors.tuna.tsinghua.edu.cn/elpa/nongnu/ 这个要看你会不会用到 org-contrib 里的功能,正常情况下只装 org 包就够了,org-mode 的大多数功能都在 org 包里。

直接在 list-packages 里安装就可以了。

可能会遇到的问题

如果用了上面两个源的话,应该不会有问题了。在清华的镜像页面中,专门有一个 org 的源,我理所当然地以为,这里面一定是org最新版本的包,所以之前一直装的这个,但其实并不是。里面有一个 org 的包,还有一个 org-plus-contrib 的包。这两个装上后,都能用,但是会在每次打开一个org文件的时候都会给一个提示 :IMPORTANT: please install Org from GNU ELPA as Org ELPA will close before Org 9.6,并会卡个几秒。

现在看来,其实提示说得很明确了。

海上一民工

Related