Emacs Org mode作为实施GTD方法的任务与项目管理工具是极为强大和有效的。尽管如此,我在使用过程中亦发现了一个因Emacs文本操作模式而难以解决的情况,即对于具有复杂结构与大量细节的项目,在Org mode中只能进行单个或数个细节任务的查看而无法与此同时进行整体架构浏览以及呈现不同子任务间的复杂关系,也就是陷入了我们常说的“只见树森不见林”的状态。在刚创建项目任务时这个问题还不那么明显。随着任务复杂度与数量的增加,很容易导致不少(尤其是不那么重要的)任务虽然被如实地记录下来,但最终还是被尘封在了Org mode文件的某个子树上。

针对这个情况,想到思维导图是用于整理与规纳具有复杂结构信息的利器,将Emacs Org mode任务导出到Freeplane中用思维导图的方式进行管理便很有必要的了。具体的做法详述如下。

首先,在~/.emacs中加入下面两行,从而将Freemind文档格式加入到Emacs Org mode文档导出后台列表中:

(require 'ox-freemind)
(setq org-export-backends '(freemind odt latex icalendar html ascii))

然后,在Org mode文件中选中要导出的任务树,按快捷键Ctrl+c, e导出,然后选择:

[f] Export to Freemind Mindmap
[f] As Freemind Mindmap file [o] As Freemind Mindmap file and open

由于Emacs编辑器默认使用的是utf-8编码,

(prefer-coding-system 'utf-8)

所以,导出的*.mm思维导图文件也是该编码格式。然而,在默认条件下(至少是Windows下)启动Freeplane时采用的并非utf-8编码,从而导致如果在从Emacs Org mode导出的思维导图中含有中文字符的话,就会在Freeplane中显示为乱码。为此,需要使Freeplane的默认编码为utf-8。然而,找遍了Freeplane的所有对话框设置,并没有相关设置项。通过搜索,由这里发现,可以通过加入JVM环境变量选项-Dfile.encoding=UTF8来解决。

对于GNU/Linux来说,一如继往地可以将其加入到~/.bashrc中:

export _JAVA_OPTIONS="-Dawt.useSystemAAFontSettings=on -Dswing.aatext=true -Dsun.java2d.xrender=true -Dfile.encoding=UTF8 $_JAVA_OPTIONS"

对于Windows版本,需要找到Freeplane的安装路径(我的为D:\Program Files\Freeplane),将其加入到启动配置文件freeplane.l4j.ini中。当然,也可以加入到freeplane.bat中。但这样一来,双击图标执行Freeplane时,该文件编码设置就无法生效了。

最后,就可以用Freeplane打开导出的*.mm文件,进行进一步的编辑与组织了。效果如下图所示。

将Emacs Org任务树导出至Freeplane思维导图的更多相关文章

  1. 在Emacs中画思维导图

    是的,你没有看错.其实,不只画思维导图,画结构图.流程图等,都可以.那怎么办呢?就是借助 Graphviz . Graphviz 可以方便地表达概念之间的联系,因此用它画思维导图是可行的,再加上它是个 ...

  2. 可以把思维导图导出为word文档方便其他人查看吗?

    MindManager除了强大的大纲视图编辑功能外,还拥有多种导出格式,方便大家迅速导出文件,在团队中分享自己的观点,提高团队的工作效率,本次小编使用的思维导图软件版本是MindManager 202 ...

  3. MindManager使用教程:如何导出HTML5交互式导图

    Mindmanager思维导图软件有着友好的用户界面以及丰富的思维导图制作功能.再搭配与Microsoft 软件的无缝集成功能,使得这款思维导图软件越来越受到职场人士的喜爱. 不仅是作为制作思维导图的 ...

  4. [数据结构]ODT(珂朵莉树)实现及其应用,带图

    [数据结构]ODT(珂朵莉树)实现及其应用,带图 本文只发布于博客园,其他地方若出现本文均是盗版 算法引入 需要一种这样的数据结构,需要支持区间的修改,区间不同值的分别操作. 一般的,我们会想到用线段 ...

  5. HDU 4000 Fruit Ninja (树状数组+反向思维)

    题意:给你一串数且每个数都不同,问你(x,y,z)出现 x<z<y 的总次数 首先我们直接想的话不能使用O(n*log2 n)解决,所以可以正难则反 可以求得x<(y,z)的值,减去 ...

  6. 模拟赛 提米树 题解 (DP+思维)

    题意: 有一棵棵提米树,满足这样的性质: 每个点上长了一定数量的Temmie 薄片,薄片数量记为这个点的权值,这些点被标记为 1 到 n 的整数,其 中 1 号点是树的根,没有孩子的点是树上的叶子. ...

  7. hdu 5792 树状数组+离散化+思维

    题目大意: Given a sequence A with length n,count how many quadruple (a,b,c,d) satisfies: a≠b≠c≠d,1≤a< ...

  8. 浅谈可持久化Trie与线段树的原理以及实现(带图)

    浅谈可持久化Trie与线段树的原理以及实现 引言 当我们需要保存一个数据结构不同时间的每个版本,最朴素的方法就是每个时间都创建一个独立的数据结构,单独储存. 但是这种方法不仅每次复制新的数据结构需要时 ...

  9. BZOJ - 3489 KD树 范围计数 空间思维转换

    题意:给定数列\(a[1...n]\),\(Q\)次查询\([L,R]\)中只出现一次的最大值 这道题的做法比较劲.. 对每个元素构造三维空间的点\((i,pre[i],next[i])\),查询\( ...

随机推荐

  1. Python——字符转换(int , bool ,str)

    while True: pass while 1: pass #效果相同,后者 效果更快 s = 1 y = bool (s) #结果为True,int只要不是0,就为真 s = 'abc' y = ...

  2. Civil 3D .NET二次开发第11章代码升级至2018版注意事项

    原来涉及2017的,均需要改为2018 原来的21改为22 代码中AeccXUiLand.AeccApplication.11.0"改为AeccXUiLand.AeccApplication ...

  3. SpringMVC中使用Interceptor拦截器顺序

    一.简介 SpringMVC 中的Interceptor 拦截器也是相当重要和相当有用的,它的主要作用是拦截用户的请求并进行相应的处理.比如通过它来进行权限验 证,或者是来判断用户是否登陆,或者是像1 ...

  4. Maze HDU - 4035(期望dp)

    When wake up, lxhgww find himself in a huge maze. The maze consisted by N rooms and tunnels connecti ...

  5. Ubuntu最常见的包问题

    工作环境换成Ubuntu18.04小记:https://www.cnblogs.com/dunitian/p/9773214.html Ubuntu不得不说的就是这个apt出问题的处理 :(换源就不说 ...

  6. iView页面Modal中内嵌Tabs,重新显示Modal时默认选中Tabs的第一项

    文档中说激活面板的name用value,页面第一次加载的时候可以,放在modal里就不好使了,每次打开的时候总显示上一次离开时的界面. 真正能用的是 this.$refs.tabs.activeKey ...

  7. 在 Angular6 中使用 HTTP 请求服务端数据

    第一步 准备好api接口地址, 例如 https://api.example.com/api/ 第二步 在根组件 app.module.ts 中引入 HttpClientModule 模块. // a ...

  8. Lightning Conductor 洛谷P3515 决策单调性优化DP

    遇见的第一道决策单调性优化DP,虽然看了题解,但是新技能√,很开森. 先%FlashHu大佬,反正我是看了他的题解和精美的配图才明白的,%%%巨佬. 废话不多说,看题: 题目大意 已知一个长度为n的序 ...

  9. javascript: Element.getBoundingClientRect() 获取元素在网页上的坐标位置

    来自:https://blog.csdn.net/weixin_42895400/article/details/81811095?utm_source=blogxgwz1 Element.getBo ...

  10. 百度在职 iOS 架构师的成长笔记,送给还在迷茫的你!

    前言 我们经常在网上会看到这样的文章,你的同龄人正在如何如何.......这是典型的贩卖焦虑的文章.的确,现阶段,刚毕业几年的年轻人,面临车,房子等,有时候压力挺大的. 但你过度焦虑的话,每天生活在恐 ...