Table of Contents
从来没有踏进过写代码的世界,所以压根不知道文本编辑是个毛。之前对于文本编辑器的唯一认识也就是windows的记事本了。所以之前文本编辑器在我脑子里基本和txt是划等号的。(原谅我的无知吧)。前一阵子看聚类分析的文章,用word做笔记,被一哥们深深鄙视。于是乎甩给我一个便签,上面赫然写着几个英文单词 Emacas Org-mode ,之后说,自己去查查吧,笔记神器,还能做GTD。然后是长达5min的赞美之词以及功能的简介,对不起,我啥也没听懂,只得到了两点信息:1. 这东西太难学了。2. 这东西太好用了。然后就目送那位大神离去。
之后在知乎,google,baidu上查了一下这个东西,期间看过很多emacs和vim的圣战文,也了解了一下markdown。综合对比之后,我毅然决然,大义凌然的选择了Emacs。于是乎开始了我漫长的上手过程。其实只用了一天,今天是我用的第二天。
最后,额外说一句,使用了两天的emacs,我很少再用鼠标了。所以手不用在键盘和鼠标之间切换,所以手腕舒服了很多,所以Emacs还有保护身体健康的额外功效。
下面上正文。
选择Emacs的理由——Org-mode
在说选择理由之前,先说一下我学习的几个重要的观点:我现在文本编辑功能不足的现状,够用的学习理念,少走弯路的学习过程,自己哄着自己坚持下去的学习热情。
现状(基于本人现有软件的使用)
本人工作主要是企业管理,具体工作以对着电脑写各种报告为主。由于公司不是新兴的互联网企业(没有一个程序员之类的人),所以所有文字编辑必然都是强大的office旗下产品。同时,本人还在学习数据挖掘方面的东西。另外,出于兴趣原因,还偶尔兼职讲课(各种课,数学的、考研的……,好吧,我承认我是一个爱折腾,闲不下来的人)。换句话说,我的工作很杂,所以要求思维转换也很快。之前使用的全中国最普及的微软MSOffice套件(感谢盗版,但本人绝对使用公司的正版软件)是基于所见即所得的思路。有的时候打上去字,发现结构不是自己想要的,调完结构或者格式,思绪又被打乱了(本人脑子内存确实小,原谅了吧)。虽然,office的普遍兼容性(几乎在中国每台电脑,确切的说是装了windows的电脑都有office,再次感谢盗版)可以满足很多,但是我还是迫切需要一种可以做到 所想即所得 的强大工具。
理念(够用才好)
够用二字有两重含义:1. 要满足需求; 2. 不用贪多。
基于这样的理念,我从Emacs,VIM,和markdown中选择了Emacs。当然选的时候我三个都没有用过。
首先,从满足需求的角度。
- 选择Emacs要满足我现在使用的需求。根据我查询的结果显示Emacs的功能是三个里最强大的(不想再挑起圣战,相关的介绍到处都有)。而且我的需求目前来说只有两点:所想即所得的录入;GTD(本人重度GTD控,试过各种APP,以及用各种纸质本记录)。而Emacs的org-mode可以很好的做到这两点。当然VIM也有这个功能,但是可能我不习惯两种模式的切换,或者说从我查到的观点感觉VIM相对Emacs上手好一点,后面的路相对不是那么好。
- 选择Emacs的路更长远。虽说刚学的时候使用的功能很少,但我可不敢保证以后不会变身大神。但是真的要变身发现现在的工具不能满足,所以要换,要重新学一个新东西,我觉得有点浪费时间。因此选择了号称学习曲线最奇葩的Emacs,其实我也只是选择了org-mode。最后上一个经典的学习曲线图,让很多初学者直观一点我在絮叨什么。
- 最关键的问题是我看到了这句话“学会了Emacs,其他编辑器自然精通”。
学习过程(少走弯路)
看了上面的那个图,很多人可能会觉得这个东西太难学了。有时间学这个不如去干点更有意义的事。这里我想说,我从上手到发这个博文就一天时间。关键是选择了工具以后用起来,用什么学什么。这样进步很快。其次,我也不是要掌握Emacs的所有,只要能满足我的需要就行了。没准以后会用他写代码,但是现在用不到,先不学。
明确了这些,就可以开始了。
快速安装配置Emacs
安装Emacs(Windows系统)
学一个新工具,第一步肯定是安装。但是本人觉得Emacs最不友好的就是这一部分,安装很简单关键是配置。先说安装,直接到官网下载最新版本,里面就有我们要的org-mode了。本人用的是windows,不会linux等系统。上个链接,下载最新的,(看清日期)http://ftp.gnu.org/pub/gnu/emacs/
下载下来不用安装,解压到你想要装的目录就好了。启动文件在bin文件夹里,我一般用runemacs,并在桌面建了一个快捷方式。好了,安装完毕了。就这么简单。
配置Emacs
安装完以后,打开发现根本不会用。好了,这就到配置这一步了。这一部分比较麻烦,尤其对于我这种之前基本没怎么写过代码的人来说,更麻烦。所以果断采用别人的配置。虽然有人说不要一上来就用大神的配置,但是我想说,我得先用起来。参考了几个大神的的相关文章,最后我选择了这个。http://blog.csdn.net/redguardtoo/article/details/7222501/。
里面说的很清楚,这里不再赘述。作者开始也使用了大神的配置,最后用自己的配置,我用的就是他的配置,具体配置文件和方法https://github.com/redguardtoo/emacs.d
这里说下我遇到的问题,我有两个电脑,公司电脑上外网比较麻烦。第一次配置使用的是emacs.d那一个文件。用这个配置需要联网。但这个方法怎么也不能用于公司电脑,过不去。于是对于公司电脑。我选择配置文件中readme中所述的“Install stable version in easiest way (OPTIONAL)"。打开第二个链接往下拉网页就能看到。作者可能以前用VIM比较熟悉,所以开了一个叫Evil的东西(功能就是在Emacs下可以使用VIM的键位,简单理解成这样)。本人没有VIM基础,纯白纸,所以要关掉这个功能。作者文章里说的很明白怎么关了。但是我当时遇到了一点问题,所以我在啰嗦两句。方法如下:
- 在你的home路径下找到一个叫init.el的文件,用文本编辑器(记事本,或者emacs,或者notepad++,好吧,我们还没用过emacs,所以选其他吧)打开。
- 打开以后是一大堆看不懂的代码,好了不用管,往下找,大概在97行所在的位置找到”use evil mode (vi key binding)"它的下一行是(require ‘init-evil)。找这两行,在这两行前面输入分号(一定要在英文状态下输入),如果已经有分号了就不用输入了。
- 保存关闭你的文本编辑器就ok了。
- 打开你的emacs,这个时候他要墨迹一会,简单说就是把配置的文件执行了。等一会。就可以用了。
配置完成
如何使用
配置好以后进入emacs后就是一个黑色的屏幕了。打出的字是白色的,对视力保护很好的。关键是怎么用。本人现在只用org-mode。能够使用的功能是一点点TO DO功能。文本编辑里也只会标题段落的一点点设置,表格(竟然还可以做简单的计算!!),导出html(现在足够了,最不济导出html在粘贴进想要的地方,比如evernote),插图(写这个博文现场百度的)。但是已经足够我用的了。已经开始把所想到的写出来,做了一些笔记,思路和文字同步展示,没有卡克。太棒了。
这里我就不列具体怎么使用了,用什么功能自己百度或者google去(其实我是用百度的,懒得FQ。但是很多大神都不屑于百度,我就加上了或者google,防止被鄙视)。下面说一下入门的东西,看完这些,基本上就可以做到不会去搜索了(否则,搜到都不知道什么意思)
快捷键
emacs神器的地方主要是因为使用了快捷键,也就是说,基本不用鼠标了。所以首先要掌握emacs快捷键的表示方法。比如说你搜如何保存当前文件,快捷键是“C-x C-s”。第一次看到,明显炸锅,什么意思。意思就是让你先同时按住control和x,在同时按住control和s。就保存了。C-x u,表示,先同时按下control和x,再单独按u。这个功能是强大的撤销(undo),对于新手绝对重要的功能。同样的费解表示还有以下几个:
符号 | 按键 |
C | Control |
S | shift |
RET | Enter(回车) |
M | Alt(windows里) |
- | 表示同时按住,例如上面说的C-x |
TAB | 就是tab建,qwerty键盘Q左边的那个 |
所以打开文档C-x C-f表示同时按住control和x,再同时按住control和f,在最下面会出现一个find file,然后直接在里面输入你要打开的文件的地址就行了。比如d:\learnorg.org。如果没有这个名字默认为新建一个文件。这里补充一点,只要你打开或者新建的文件扩展名是*.org。目前的版本就会自动打开org-mode了。爽~!
常用的命令
- 换行:一个回车表示空格,2个回车才是换行,这里跟word不太一样。
- 星号(大键盘区8上面那个表示分级),最爽的功能。一个*表示一级标题,两个是二级,以此类推。我们用的这个配置默认生成的论文式的标题结构,就是1.一级标题,1.1是二级标题,1.2.1是三级标题。
- 表格:用竖线|,常规减排在回车上面那个键,需要配合shift。比如我在本文中的表,我在org-mode中录入是这个样的:
生成的就是上面的表格。
- 最常用的几个快捷键:做成下面的表了。
操作 | 功能 |
C-x C-f | 打开或者新建 |
C-x C-s | 保存当前文档,类似word中c-s |
C-x C-c | 关闭emacs |
C-c C-t | 打开TODO模式 |
C-c C-e h h/o | 导出html文件。我一般最后一个用o,可以直接打开生成的html |
C-x u | 神器撤销,就是word里的c-z |
C-w | 剪切 |
C-y | 粘贴 |
M-w | 复制,貌似windows下用不了,好像和QQ什么东西冲突了,所以用剪切代替了 |
M-y | 切换粘贴。emacs下你每次复制的东西都在,用这个可以粘贴之前复制的东西 |
C-@ | mark当前位置。比如选中一段话,我们一般用鼠标选中,用这个,在你要选的文字前mark一下,光标移到结尾。这段话被选中了。 |
C-x b | 切换buffer,类似windows下的M-TAB |
C-x C-b | list当前所有的buffer |
TAB | 展开或者收齐当前标题 |
这部分内容,我写成标签贴在了屏幕旁边,没写功能,只写了快捷键,用了半天基本就熟悉了。
另外大量的功能,我没有在这列出来,遇到现场搜,绝对可以实现一天上手。本文就是用org-mode写出来的。欢迎交流。