Spacemacs简介

Reading time ~1 minute

Why Spacemacs

Compare to Emacs?

Spacemacs作为Emacs的一个扩展,Spacemacs相对于其他的Emacs配置来说,文档的详细程度绝对完胜其他配置。从头开始折腾Emacs是不太明智的行为,而采用各路大神的配置又会有些摸不清头脑不知道如何入手。 这时候,Spacemacs详细的文档和清晰的分层可以作为想转向Emacs的人入门非常好的版本。

Compare to Vim?

Spacemacs最突出的特点就是与Vim极高的相似性,以空格键作为leader键,甚至文档中专门为有兴趣转入Emacs的Vim党提供了专门的内容。安装过程中选择Vim布局,可以完全采用Vim的编辑方式享受Emacs的各种优势。

Compaire to other IDE?

如果写Java,目前可能没有工具能超过Intellij Idea,但是做轻量级一些的编码工作,一个庞大的IDE可能有些太过重量级。而且Emacs高度的可扩展性给了Geek们无限的空间,其写文档、Latex的能力也是其他IDE不能相比的。

Spacemacs introduction

官网

Spacemacs.org

项目结构

Spacemacs 以layer来进行功能的分割,通过.spacemacs文件来进行配置管理,具体内容在仍然在.emacs.d目录下。某个layer的具体配置可以到layer目录下查看文档。

目录结构

  • assets: 图标等内容,不需要关注。
  • core: Spacemacs 配置的核心内容,最好不要修改其内容。
  • doc: Spacemacs 的各类相关文档。
  • layers: 其他开发者贡献的代码,用于扩展Spacemacs
  • private: 本地个人目录,用于存放自己写的一些EL和keybinding等
  • tests: 测试目录,不需要关注。

Using spacemacs

安装(Mac OS X)

  • 安装Emacs24.4以上的版本

    brew tap railwaycat/homebrew-emacsmacport
    brew install emacs-mac --with-spacemacs-icon
    brew linkapps
    
  • 下载配置文件

    git clone https://github.com/syl20bnr/spacemacs ~/.emacs.d
    
  • 以非安全模式启动emacs以保证成功下载插件

    emacs --insecure
    
  • 选择编辑模式、待安装完成后重启

配置.spacemacs

  • 打开 ~.spacemacs
  • 在layers中打开需要用的注释掉的layer,并添加osx以使emacs能正常使用Max OS x的快捷键。
  • 最下面 (defun dotspacemacs/user-config () 中添加自己的配置。(若配置有明显分类,应参考官方文档创建自己的layer并进行引用管理)
  • SPC f e R 刷新配置

开始使用

  • 与Emacs不同,采用SPC作为Leader键可以减少很多组合型快捷键的使用,在Normal Mode(Vim基本常识)中按下空格键会有大量功能键提示,多看文档多尝试。

    b buffer
    f file
    w window
    m mode
    s search
    h help
    c comment/compile
    p project
    l layout
  • 通过查看layout的文档、根据个人需求定制自己的Emacs

Hadoop-事件处理机制

- TOC{:toc}# Hadoop中的事件总线之前的文章[Hadoop状态机介绍](http://frankweapon.github.io/Hadoop-MapReduce状态机分析/)提到整个Hadoop的调度由状态机来控制,而驱动状态机变迁的则是事件。这里给出Ha...… Continue reading

Hadoop-MapReduce状态机分析

Published on March 17, 2017

Actor Model (参与者模式)思想与实例

Published on March 15, 2017