**Emacs 的使用过程,就像是程序员的生涯一样——路漫漫其修远兮,吾将上下而求索。**

## 万物始于 Emacs

最早知道 _Emacs_ 是从编辑器的圣战开始的,即编辑器之神——Vi,和神的编辑器——Emacs。两个编辑器在经历了几十年的战争之后,仍然是编辑世界不可超越的高峰。

但在一开始,我选择的是 Vi,因为在 **\*nix** 中,基本都是有的,在服务器编辑文件——即使是很大的文件,Vi 也可以非常容易的使用,所以在一段时间内,我几乎是跪着使用 Vi 的。

后来随着想用的功能越来越多,而被一些大神安利,我就选择了使用 Emacs 来记笔记(装逼)。于是下载了当时正流行的 _Purcell_ 大神的配置,并开始尝试使用,不过没过多少就放弃了。

推荐内容:

- [《一年成为 Emacs 高手(像神一样使用编辑器)》](https://github.com/redguardtoo/mastering-emacs-in-one-year-guide/blob/master/guide-zh.org)
- [Prelude 入门级 Emacs 配置](https://github.com/bbatsov/prelude)
- [Purcell 大神的配置](https://github.com/purcell/emacs.d)

## Emacs 始于 Org

`Emacs` 学习的无疾而终,让我的装逼大计一度沉沦。直到我看到另外两个大神,利用 _Org-mode_ 进行博客写作日程管理,并详细阅读了他们的文章之后,才真正开始了 _Emacs_ 的学习苦旅。

如果说 _Emacs_ 是神的编辑器的话, `Org` 可能是神器之中的神器,随着对 _Org_ 的学习和使用,我从最初的装逼,到后来的逼格提升,都是因为 _Org-mode_ 。

推荐内容:

- [mudan 大神的 Org-mode 入门级手册](https://github.com/mudan/mudan.github.io/blob/master/Emacs/The%5FOrg%5FManual/The%5FOrg%5FManual.org)
- [mudan 大神的漂亮的文言文排版](https://github.com/mudan/mudan.github.io/blob/master/read/dx.org)
- [Tisoga 大神的 Org + GitHub 的博客教学](http://forrestchang.com/14824097554043.html)

## 终于 Spacemacs 的战争

从最开始的学习,到现在已经习惯于使用 Emacs 的人来说,Emacs 确实是可以提升工具效率的,当然这里要把配置他的时间拿走。虽然开始使用的原因有所不同,但是大家最后的目标却都是一样的——提高工作(学习)效率。

但是经过了 Emacs 几次配置之后,虽然说不上大神,也就知道了一些 Emacs 的坑是如何解决的。

后来加入了一个 Emacs 的微信群——毫不夸张的说,这是我加入过的群里面质量最高的,学习效果最好的,而且所有的成员都自发的维护群里的闲聊问题,每一次讨论都是提问解决和讨论的过程。

在偶然的一次机会,被安利了一把 Spacemacs,Vi 的操作加上 Emacs 的扩展,不要太吸引人!

推荐关注的大神:

- [Hick](https://github.com/hick) 高质量 _Emacs_ 微信群群主,应该也是发起人,水的人自觉加入闲聊群,是我所有技术相关微信群中质量最高的。
- [子龙山人](https://github.com/zilongshanren) _Spacemacs Rock_ 视频作者,我的配置里抄的最多的就是这位大神的。
- [DarkSun](https://github.com/lujun9972) 黑日大神,大神的文章非常好,多读读,可以找到一些自己需要的配置。
- [tumashu](https://github.com/tumashu) 天然二呆,呆神,之前看到呆神在闲聊群里水,后来又看到呆神在帮忙解决问题,好奇的关注了一下 _GitHub_ ,才发现,竟然这几个好用的 package
都是呆神写的,而且呆神竟然不是程序员!

大神太多了,不一一推荐,如果需要,可以联系 Hick 加一下群,就都有了。

再推荐一下中文的 Emacs 论坛,可以提问,也可以讨论:

- [Emacs China](https://emacs-china.org) 一堆大神在维护的论坛,经常看看,非常好用

## 语乱的 Spacemacs 配置

### 初始

为了更好管理配置,推荐使用 _.spacemacs.d_ 文件夹进行管理配置,而不是使用 _.spacemacs_ 文件。也为了方便后续的扩展。

### 可能会遇到的问题

如果是在 Windows 下使用,需要注意几个问题:

1. 推荐用编译版本,或者用官方网站加部分 _.dll_ 文件来解决
2. 使用过程中,为了配置的时候好用——更适合 Linux,我是使用在环境变量中增加默认的 _HOME_ 的方案,也可以使用其它方法
3. 直接下载就可以使用,维护的是 _develop_ 分支,后续会慢慢往 _master_
分支中合并

### 最终选择

在几经周折之后,最后还是选择自己从头开始配置一套 _.emacs.d_ 的内容,但是 _.spacemacs.d_ 的相关内容也没有清楚。

[我的 emacs 原生配置](https://github.com/AboutEmacs/.emacs.d)

## 我的博客地址

如果想看我的博客,可以访问:[我的博客地址](https://www.zucchiniy.cn)

Emacs 学习之旅的更多相关文章

  1. WCF学习之旅—第三个示例之四(三十)

           上接WCF学习之旅—第三个示例之一(二十七)               WCF学习之旅—第三个示例之二(二十八)              WCF学习之旅—第三个示例之三(二十九)   ...

  2. Hadoop学习之旅二:HDFS

    本文基于Hadoop1.X 概述 分布式文件系统主要用来解决如下几个问题: 读写大文件 加速运算 对于某些体积巨大的文件,比如其大小超过了计算机文件系统所能存放的最大限制或者是其大小甚至超过了计算机整 ...

  3. WCF学习之旅—第三个示例之二(二十八)

    上接WCF学习之旅—第三个示例之一(二十七) 五.在项目BookMgr.Model创建实体类数据 第一步,安装Entity Framework 1)  使用NuGet下载最新版的Entity Fram ...

  4. WCF学习之旅—第三个示例之三(二十九)

    上接WCF学习之旅—第三个示例之一(二十七) WCF学习之旅—第三个示例之二(二十八) 在上一篇文章中我们创建了实体对象与接口协定,在这一篇文章中我们来学习如何创建WCF的服务端代码.具体步骤见下面. ...

  5. WCF学习之旅—WCF服务部署到IIS7.5(九)

    上接   WCF学习之旅—WCF寄宿前的准备(八) 四.WCF服务部署到IIS7.5 我们把WCF寄宿在IIS之上,在IIS中宿主一个服务的主要优点是在发生客户端请求时宿主进程会被自动启动,并且你可以 ...

  6. WCF学习之旅—WCF服务部署到应用程序(十)

    上接  WCF学习之旅—WCF寄宿前的准备(八) WCF学习之旅—WCF服务部署到IIS7.5(九) 五.控制台应用程序宿主 (1) 在解决方案下新建控制台输出项目 ConsoleHosting.如下 ...

  7. WCF学习之旅—WCF服务的Windows 服务程序寄宿(十一)

    上接    WCF学习之旅—WCF服务部署到IIS7.5(九) WCF学习之旅—WCF服务部署到应用程序(十) 七 WCF服务的Windows 服务程序寄宿 这种方式的服务寄宿,和IIS一样有一个一样 ...

  8. WCF学习之旅—WCF服务的WAS寄宿(十二)

    上接    WCF学习之旅—WCF服务部署到IIS7.5(九) WCF学习之旅—WCF服务部署到应用程序(十) WCF学习之旅—WCF服务的Windows 服务程序寄宿(十一) 八.WAS宿主 IIS ...

  9. WCF学习之旅—WCF服务的批量寄宿(十三)

    上接    WCF学习之旅—WCF服务部署到IIS7.5(九) WCF学习之旅—WCF服务部署到应用程序(十) WCF学习之旅—WCF服务的Windows 服务程序寄宿(十一) WCF学习之旅—WCF ...

随机推荐

  1. 使用Espresso测试记录

    准备工作 建立测试项目 添加测试依赖 编写Espresso测试 运行测试并检查测试结果 建立测试项目 使用Android Studio建立测试项目,Activity模版使用 LoginActivity ...

  2. MongoDB的基本操作(增删改查)

    ​ 目录 概念整理 数据库:一个MongoDB中可以建立多个数据库. 集合:MongoDB的文档组. 文档:实际存放数据的地方. 常见的操作 数据库(新增,删除) 集合(新增,编辑,删除) 文档(增删 ...

  3. 事件--JavaScript

    事件概述 JavaScript 使我们有能力创建动态页面,而事件是可以被 JavaScript 侦测到的行为. 简单理解: 触发--- 响应机制. 网页中的每个元素都可以产生某些可以触发 JavaSc ...

  4. 又写了两个实用的微信小程序

    忙里偷闲,最近又写了两个小程序. 一个是手机壁纸小程序,名字叫[来搜图],特点是界面干净清爽,没有多余的东西.开发这个是因为讨厌市面上那些壁纸app那样那么多的广告,真的太影响体验了.而且小程序更加轻 ...

  5. Spring Boot 2.x基础教程:JSR-303实现请求参数校验

    请求参数的校验是很多新手开发非常容易犯错,或存在较多改进点的常见场景.比较常见的问题主要表现在以下几个方面: 仅依靠前端框架解决参数校验,缺失服务端的校验.这种情况常见于需要同时开发前后端的时候,虽然 ...

  6. 浅拷贝&深拷贝的对比

    js中两种数据类型 浅拷贝:拷贝就是拷贝指向对象的指针,意思就是说:拷贝出来的目标对象的指针和源对象的指针指向的内存空间是同一块空间,浅拷贝只是一种简单的拷贝,让几个对象公用一个内存,然而当内存销毁的 ...

  7. 快学Scala 第二十一课 (初始化trait的抽象字段)

    初始化trait的抽象字段: trait Logged { println("Logged constructor") def log(msg: String){ println( ...

  8. 控制器向视图传参ModelAndView、Model和Map

    ModelAndView类 ModelAndView在spring-webmvc-4.3.18.RELEASE.jar包下,当然其他版本也有,所在包如下 对于那些返回String等类型的处理方法,sp ...

  9. 04-09 XgBoost算法

    目录 XgBoost算法 一.XgBoost算法学习目标 二.XgBoost算法详解 2.1 XgBoost算法参数 2.2 XgBoost算法目标函数 2.3 XgBoost算法正则化项 2.4 X ...

  10. 06-01 DeepLearning-图像识别

    目录 深度学习-图像识别 一.人脸定位 二.手工提取特征的图像分类 2.1 识图认物 2.2 传统分类系统的特征提取 2.3 计算机眼中的图像 2.4 什么是图像特征? 2.5 卷积运算 2.6 利用 ...