ぼくの.emacs 2014

こんにちはこんにちは、今年も2014年になりました。来年はきっと2015年です。昨日は @syohex さんの [Emacs - git-gutter.elの紹介](http://qiita.com/syohex/items/a669b35fbbfcdda0cbf2) でした。

さて、去年は [ぼくの.emacs 2013](http://qiita.com/tadsan/items/c4a80f46623ea266f5c5) といふ記事を書きました。今年はいままでに書いた `.emacs` を全部捨てて、新たに書き直してゐます。

* [dotfiles/init.el at master · zonuexe/dotfiles](https://github.com/zonuexe/dotfiles/blob/master/.emacs.d/init.el)

そんなわけで、 現在の `.emacs` を大雑把に紹介します。

カラーテーマ
-----------

いままでは [color-theme homepage](http://www.nongnu.org/color-theme/) の [Dark Laptop Theme](http://emacsthemes.caisah.info/dark-laptop-theme/) を使ってたのですが、わざわざインストールするのもめんどくさいよねー、って気分なので Emacs組み込みの [Custom Themes](http://www.gnu.org/software/emacs/manual/html_node/emacs/Custom-Themes.html) の `manoj-dark` に移行しました。

```el
;;; Color-theme:
(load-theme 'manoj-dark t)
```

Emacs 24.3以降を使ってるなら、これだけ。お手軽！

パッケージ管理
-------------

前回は `package.el` なんていまいちっすよー、[El-Get](https://github.com/dimitri/el-get) でまだまだ行けるっすよー、みたいなことを行ってた気がするんだけど、[Cask](http://cask.readthedocs.org/en/latest/) + [Pallet](https://github.com/rdallasgray/pallet) + [MELPA](http://melpa.org/) に移行しちゃいました。

use-package
-----------

[jwiegley/use-package](https://github.com/jwiegley/use-package) べんりっすねー。`(when (require 'hoge nil t) ...)` みたいなイディオムで書いてたのが簡潔になって、かなりの幸せみがあります。

きっと7日めの @kai2nenobu さんが書いてくれるのでは! (期待)

Markdown mode
-------------

去年の記事に書かなかったっけ? と思ったけど別に書いてなかった。

```init.el
;; Markdown Mode
(use-package markdown-mode
  :mode ("\\.md\\'" . gfm-mode))
```

(Qiitaをはじめとして)世間にある「Markdown」と呼ばれてる文書はだいたい元祖の `Markdown.pl` には全然従ってなくて、だいたいは GitHub Flavored Markdown (GFM) を多少なりとも取り入れてたりにするので、 `gfm-mode` を指定しておくと、ちょっぴり良いかもしれない。人によっては別に良く感じないかもしれない。

ちなみに [CommonMark](http://commonmark.org/) は現在のところあまり各方言の便利機能を積極的に取り入れる感じではないんですが、GFM型の Fenced code blocks ([PHP Markdown Extraとは異なる](https://michelf.ca/projects/php-markdown/extra/#fenced-code-blocks)) だけは入ってます。

term+
-----

term+ はEmacsで動作する端末エミュレータです。`term+mux` についてる `term+mux-remote-session` がべんり。

```init.el
;; term+
(use-package term+
  :config
  (progn
    (use-package term+key-intercept)
    (use-package term+mux)
    (require 'xterm-256color)))
```


smart-newline
-------------

* [ainame/smart-newline.el](https://github.com/ainame/smart-newline.el)
* [smart-newline.elという拡張 #emacs - ainameの日記](http://ainame.hateblo.jp/entry/2013/12/08/162032)

相変らずべんりな`smart-newline`。

```init.el
;; smart-newline
(use-package smart-newline
  :config
  (progn
    (bind-key "C-m" 'smart-newline)))
```

そのほかの今年書いたTips
-----------------------

### [Emacs - 指定したマイナーモードを表示しない - Qiita](http://qiita.com/tadsan/items/8b5976682b955788c262)

![mode-line-before](https://qiita-image-store.s3.amazonaws.com/0/4121/637159d6-7be8-f5fd-4d40-2853c5221dc7.png)
![mode-line-after](https://qiita-image-store.s3.amazonaws.com/0/4121/d59d0ebd-5360-1de7-8dee-d35c791f4b23.png)

モードラインがマイナーモードで短くなっちゃったらやだから、ちょっと短くしようみたいな話です。自分がどんなモードを使ってるのか自覚がないひとにはおすすめしにくい。

### [EmacsでF# - Qiita](http://qiita.com/tadsan/items/5189d445399414654b3c)

あのときは MELPA 経由で入れると自分の環境では上手く動かなかったんですが、いまやってみたらさくっと動きました。`package.el` でも El-Get でも好きな方でインストールできます。

### [Emacsでもアスキーアートが読める - Qiita](http://qiita.com/tadsan/items/4ed132f5d4372447090f)

みんな大好きだよね、やる夫シリーズ。

![navi2ch-mona-jetman](https://qiita-image-store.s3.amazonaws.com/0/4121/53a90840-b128-b14b-76ed-0d7c0a65a019.png)

> 宣伝: [やる夫達は鳥人戦隊のようです](http://yaruo.wikia.com/wiki/%E3%82%84%E3%82%8B%E5%A4%AB%E9%81%94%E3%81%AF%E9%B3%A5%E4%BA%BA%E6%88%A6%E9%9A%8A%E3%81%AE%E3%82%88%E3%81%86%E3%81%A7%E3%81%99) おもしろいよ！


あとがき
-------

今回の `.emacs` は、 @[kawabata](https://github.com/kawabata) さんの [dotfiles/init.el at master · kawabata/dotfiles](https://github.com/kawabata/dotfiles/blob/master/.emacs.d/init.el) の影響を **非常に強く** 受けてゐます。

それまでは初期化ファイルを分割するべきか、単一ファイルでまとめるべきか悩んでましたが、この巨大な `init.el` を見たときは殴られたような衝撃を受けました。

明日は @k1LoW さんです。サーバー運用にもEmacs!