Emacs 绘图纯文本流程图
Table of Contents
平时做笔记时偶尔会画画流程图,但自己比较懒,很少专门用绘图软件去画,靠 -+|/\<>^v
几个字符组合起来就能满足日常需求了。
Emacs 有 picture-mode 和 artist-mode 两个插件可以很好地完成工作,前者倾向于键盘,后者倾向于使用鼠标绘图,这两个我都在用。
1. picture-mode
M-x picture-mode 进入绘图模式。
在绘图模式中,需要依据方向来插入字符,例如,我要从光标当前位置向右斜下方每行插入“\”,并保持对齐来表达箭头,就先键入快捷键 C-c \,然后按“\”插入字符即可。
每个方向对应的快捷键如下:
+-------+ +-------+ +-------+ | C-c ` | | C-c ^ | | C-c ' | +-------+ +-------+ +-------+ ^ ^ ^ \ | / \ | / \ | / \ | / +-------+ \ | / +-------+ | C-c < |<-------------------->| C-c > | +-------+ / | \ +-------+ / | \ / | \ / | \ / | \ v v v +-------+ +-------+ +-------+ | C-c / | | C-c . | | C-c \ | +-------+ +-------+ +-------+
上图就是用 picture-mode 绘制的。要自动做出上图中的方框,只需要 C-空格,然后选取要包围的文字,插件会依据 Mark 的起始位置和结束位置来判断绘制的区域的,但是要注意预留空格,比如我要将下面的“hello”放入方框中,就要事先预留好空格位置(为了直观呈现出空格区域,下面我用“.”来代替空格):
............ ......hello. ............
然后 C-空格,Mark 的起始位置和结束位置如下,第一行的“|”字符表示起始位置,最后行的“|”字符表示结束位置:
.....|...... ......hello. ...........|
最后按 C-c r 即可:
+-----+ |hello| +-----+
C-c C-c 退出绘图模式。更多功能请查看帮助 C-h m。
2. artist-mode
1、M-x artist-mode,进入绘图模式。
2、按住鼠标左键,就能从当前可置放光标的任意位置开始绘图;单击鼠标中键可以选择图形、线条等等。
3、C-c C-c 退出绘图模式。
更多功能请查看帮助 C-h m。