note63

事情

Emacs設定経過メモ(1)

init.elを書き換えるたびに記憶用にこういう記事を書いていこうと思う。

主にやったこと

  • markdown-modeを入れる
  • undo-treeを入れる

markdown-modeを入れる

普段はStackEditを使って書いてるけどEmacsでかけたらいいよね☆ってことで入れた。 markdown-modeはEmacsのパッケージインストーラから入れた。

M-x list-package

一緒にmarkdown-mode+ってのがあったけど入れてない。なんかmarkdown-modeにない機能があるんだとか。markdown-modeに慣れたら使ってみる。

一緒にmarkdownコマンドを使えるようにしなきゃいけないからあわせてインストールする。

#Mac
$ brew install markdown
# Ubuntu(linux)
$ sudo apt-get install markdown

init.elに以下を追加

;; markdown-modeを読み込む
(require 'markdown-mode)
;; .md拡張子のファイルをmarkdown-modeで開くようにする
(setq auto-mode-alist (cond '("\\.md".markdown-mode) auto-mode-alist))

これで動くはず。

undo-treeを入れる

個人的にredo機能をワリと頻繁に使うから最初はredo+を入れようとしたけどなんかこっちのほうが便利そうだったから入れた。
こいつもEmacsのパッケージインストーラから入れた。 パッケージインストーラ便利や。

M-x list-package

init.elに以下を追加

(require 'undo-tree)
(global-undo-tree-mode t)
;; Ctrl-Shift-zにredoコマンドの割り当て
(global-set-key [?\C-\S-Z] 'undo-tree-redo)

僕の環境だとCtrl-Shift-zになぜかundoが割り当てられてるのはないしょの話

その他

行番号を表示

;; 行番号を表示
(global-linum-mode t)
;; 数字の列を揃える
(setq linum-format "%4d " )
;; linumエリアの背景を変更(失敗)
;; (set-face-attribute 'linum nil :background "")

MacとUbuntuで設定を分ける

;; Mac用の設定
(when (eq system-type 'darwin)
  (setq ns-command-modifier (quote meta))
  (global-set-key (kbd "M-z") 'undo)
  ;; C-hをバックスペースにする(MacだとHelp)
  (global-set-key"\C-h" 'backward-delete-char)
)
;; linux用の設定
(when (eq system-type 'gnu/linux)
  (setq ns-alt-modifier (quote meta))
  (globel-set-key (kbd "C-z") 'undo)
)

キー入力の表現方法

キー入力の割り当て方をいくらか調べてみたのでメモ

;; 修飾キー(CtrlとかShiftとか)が1つの場合
(global-set-key "\C-h" 'backward-delete-char)
(global-set-key [?\C-h] 'backward-delete-char)
(global-set-key (kbd "C-h") 'backward-delete-char)

;; 修飾キーが複数
(global-set-key [?\C-\M-h] 'backward-delete-char)
(global-set-key (kbd "C-M-h") 'backward-delete-char)

;; キーシーケンス(いわゆるC-xとかM-xみたいなやつ)を使う場合
(global-set-key "\C-xh" 'backward-delete-char)
(global-set-key [?\C-x \h] 'backward-delete-char)
(global-set-key (kbd "C-x a") 'backward-delte-char)

;; ダメな例
(global-set-key "\C-\M-h" 'backward-delete-char)

;; キーバインドを無効にする
(global-unset-key "\C-h")
(global-set-key "\C-h" nil)

だそうな。

参考

これからは参考にした記事も書くことにする。