1. emacs 配置整理

配置使用emacs也有一段时间了,随着插件的增加和对emacs的更深入理解,有必要对现在的配置做一个更新了。

先说说问题:

  1. 目前插件与依赖关系很混乱,都集中在.emacs这个文件中,需要整理

  2. 目前对于跨平台的支持不是很好,只有最大化函数,以及工作目录设置做了跨平台

  3. 目前对于插件的整理不是很好,插件有放在elpa中的,也有放在plugin中的

  4. 一些插件配置了,但是未生效或者与其他插件的快捷键冲突。如:hlem, smex等等。

整理准则

  • 依赖单一化

  • 插件集中化

  • 去平台化

具体解释下:

  1. 什么是依赖单一化,即一个插件需要有一个插件的init_xxx.el文件,里面用于做该插件的相关配置。

  2. 什么是插件集中化,这个首先针对的是emacs24以上的版本。通过package包管理器对插件进行管理,分为三大类插件:功能性插件(如:主题显示,hlem,smex),UI类插件(如:主题包,tabbar-mode),模式类插件(如:php-mode, web-mode)。

  3. 去平台化,顾名思义,可以在mac,linux, windows下运行。 因为package中安装的包绝大多数都是支持各个平台的,所以唯一需要做区分的,就是自己用emacs lisp实现的一些代码,以及对工作环境的私人定制等等。

Ok, 废话说了不少了,直接上步骤。

安装

关于这个不在赘述,各位看官可以看上一篇博文或者自行google。
此处唯一需要注意的点,就是.emacs, .emacs.d 文件与目录所在的路径,以及~所代表的路径是什么。(恩,主要是针对windows)。

引用规则设定

首先,在.emacs中,引入一行代码:


至此,关于.emacs的文件更改就已经结束,剩下的就需要在init.el文件中完成。

在init.el中,只load所需模块或者插件的init-xxx.el文件,不做任何配置或者设置,配置与设置,均在init-xxx.el文件中处理。

包管理器

emacs的特色就是丰富的插件,而emacs24版本之前,需要依赖第三方插件和el-get来下载各种插件,或者自己下载插件的源码进行编译,安装或者直接配置。而emacs24集成了包管理器,只需要M-x package-install,然后输入所需的包名即可。(那个谁,说sublime有包管理器而emacs没有的,速速去领50大板。题外话,sublime的package manager还需要先进行安装,而非集成。)

当然,因为地域以及天朝原因,一些资源包的获取不是非常方便,所以此处我们需要配置下包管理器的下载源。代码如下:


init-package.el

基本配置

最初的emacs带有菜单栏,滚动条,以及工具栏等等,而且一打开的时候也不是最大化,和以前的习惯还是有较大出入的,怎么办呢?莫慌,基本配置修改下即可:

;;不显示工具栏
(tool-bar-mode 0)

;;不现实菜单栏
(menu-bar-mode 0)

;;不显示滚动条
(scroll-bar-mode 0)

;;显示行号与列号
(global-linum-mode 1)
(column-number-mode 1)

;;关闭启动动画
(setq inhibit-startup-message 1)

;;设置初始工作目录
(if (string-equal system-type "windows-nt")
    (setq default-directory "G:\\projects")
  (setq default-directory "~/work"))

;;设置问答提示为 y-or-n,而不是yes-or-no
(fset 'yes-or-no-p 'y-or-n-p)

;;不生成备份文件,即 xxx.xx~ 类文件
(setq make-backup-files nil)

插件

  • ido

ido 插件用于在mini buffer中显示最近使用的命令或者文件,与smex, hlem的功能类似,不过打开文件时,个人比较习惯 ido。
emacs内置ido,要开启这个模式,只需要:

(ido-mode 1)
  • wakatime
    wakatime 是用来统计编程时间以及使用的编程语言的,支持的编辑器和IDE比较多,直接 package-install 然后输入 wakatime-mode,下载完成直接,引入,并设置好自己的api key,。

另外,他需要python支持,wakatime官方提供了wakatime-cli的程序,用于向wakatime推送数据,使用python的 pip install完成安装,并在emacs中设置好路径即可。

;;加载wakatime mode
(load "~/.emacs.d/elpa/mode/wakatime-mode.el")

;;设定wakatime api key
(custom-set-variables
 '(wakatime-api-key "api key")
 '(wakatime-cli-path "wakatime-cli 的路径"))

;;全局开启wakatime-mode
(global-wakatime-mode 1)
  • helm
    快速补全的一个插件,非常好用,提供了 imenu, buffers-list 以及 helm-tags 等操作,很多操作仍在摸索中,不过已经感觉非常实用了。

  • smex
    也是快速补全的一个插件,在提示命令时异常好用,helm中也有提供,不过暂时还没开始摸索,先配置上去。等待日后再去除

  • unicad
    在emacs下面,有时候会出现编码无法识别的情况。而这个插件非常要用,可以自动识别文件编码,目前的缺陷是 utf8mb4的支持不是很好,寻找替代品种。

  • git-emacs
    使用git-emacs作为git库的支持,使用了一段时间,感觉还是挺好用的,除了没找到如何git push之外。

mode

所谓的mode,就是根据文件类型做出不同类型的提示,比如打开.cpp文件,就会自动匹配为c++ mode,然后所有在c++ mode中的操作均为生效,而不影响其他mode,非常赞的一个功能,也是我喜欢emacs的原因之一。

目前配置的mode比较少,大概有如下几种 cmake-mode, markdown-mode, php-mode

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 157,198评论 4 359
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,663评论 1 290
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 106,985评论 0 237
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,673评论 0 202
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 51,994评论 3 285
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,399评论 1 211
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,717评论 2 310
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,407评论 0 194
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,112评论 1 239
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,371评论 2 241
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,891评论 1 256
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,255评论 2 250
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,881评论 3 233
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,010评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,764评论 0 192
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,412评论 2 269
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,299评论 2 260

推荐阅读更多精彩内容