UP | HOME

ITL/Emacs — 最強のエディタ

目次

1 源ノ角ゴシックのインストール

  • https://github.com/adobe-fonts/source-han-code-jp/tree/release へ行き,ソースにある /OTC/SourceHanCodeJP.ttc の RAW ファイルをダウンロードする.

    source-han-OTC.png

  • ダウンロードフォルダから該当ファイルをダブルクリックするとフォントウィンドウが開くので,右下の「フォントをインストール」をクリックする.

    SourceHan_install.png

2 Emacs のインストール方法

Homebrew で既にインストール済み.

3 長江研Emacs設定方針(2018年12月19日 大幅改訂)

Emacs は初期設定ファイル(~/.emacs.d/init.el)が極めて重要な役割を果たす[1].同じ Emacs を使っていても,初期設定ファイルが違うと全く違うアプリケーションのように感 じる.そのため,マシンごとに別々の初期設定ファイルを用いると,複数のマシンで作業 する(eg. 研究室の作業を自宅で引き継ぐ)際に作業効率が著しく低下する.そこで,以下 では,次のポリシーに従った設定方法を述べる:

  • 設定ファイルおよびパッケージは ~/.emacs.d/ 以下に置く
  • ELPA(Emacs Lisp Package Archives)を積極的に利用.インストールするパッケージは ~/.emacs.d/package.el に記載し, Emacs から M-x load-file RET ~/.emacs.d/package.el RET を実行することでインストールする.

[1] .emacs.d のように先頭に . のついたファイルやフォルダは隠しファイル/隠しフォ ルダであり,普段はFinder や ls コマンドで見ることはできない.これらを見るには, ターミナルから以下のように入力する:

$ ls -a ~/

4 設定ファイルのダウンロードとパッケージのインストール

もし ~/.emacs.d/ を作っていないなら,ターミナルから以下を実行する:

mkdir ~/.emacs.d

次に,ターミナルから以下を実行すれば,設定ファイルが ~/.emacs.d/ 以下に書き込まれる:

cd ~/Downloads
curl -L -O https://codeload.github.com/nagae/itl/zip/resource
unzip resource
mkdir -p ~/.emacs.d/
cp itl-resource/emacs.d/*.el ~/.emacs.d/
rm -rf itl-resource
rm -f resource
# 以下は aspell の実行に必要
echo "lang en_US" > ~/.aspell.conf

Emacs を起動し, M-x load-file RET ~/.emacs.d/package.el RET を実行すれば,必要なパッケージが自動的にインストールされる. ここで, M-xEsc キーを押しながら x.

インストールが終わったら Emacs を再起動すれば長江研用にカスタマイズされた Emacs が利用可能になる.

5 SKK / AquaSKK — シンプル漢字かな入力

長江は「ことえり」や「IME」のような形態素解析をベースとした入力メソッドが苦手なので,SKK(Simple Kana to Kanji conversion program)を利用している. SKK は品詞解析を行なわないため,漢字にする箇所や送り仮名を自分で指定する必要がある.しかし,ひとたび慣れれば高速かつ直感的な入力が可能となる———上述のような入力メソッドが使えなくなるほど. Macの標準入力方式に代替できる AquaSKK (旧サイト)と Emacs 上で動く DDSKK (Daredevil SKK) とがあり,両方併用するのが吉.

5.1 DDSKK / AquaSKK のインストール

Homebrew および 上記の手順により自動的にインストールされているはず.

5.2 AquaSKKの設定

  1. 言語環境に AquaSKK を登録
    • 画面左上のリンゴマーク→システム環境設定→言語とテキスト setting_language_text.png
    • 入力ソースで Aqua SKK 統合にチェック Aqua_SKK-setting.png
  2. AquaSKK の環境設定 右上の入力方式から AquaSKK 統合を選択した上で「環境設定」を選択 Aqua_SKK-env.png
    1. 辞書ファイル
      • ユーザー辞書: ~/Dropbox/.skk-aquaskk.skk-jisyo
      • SKK辞書: ~/Dropbox/.skk-ddskk.skk-jisyo Aqua_SKK-dictionary.png
    2. その他
      • かな規則:「読点をカンマ(,)にする」「句点をピリオド(.)にする」にそれぞれ チェック. Aqua_SKK-Kana.png
      • skkserv:「有効にする」にチェック,ポート番号:1178 Aqua_SKK-skkserv.png

6 基本的な操作方法

6.1 特殊キー

上記の設定の下では,Emacs で用いる特殊キーは以下のように割当てられる.

特殊キー名 省略表記 キーボード上のキー
Control C- caps lock
Meta M- command (⌘)
Super s- option (alt)
Return RET return (enter)
Tab TAB tab
Delete DEL delete
Esc ESC esc

Control_Meta_Super.png

以降では,caps lock を「Control キー」,command (⌘) を「Meta キー」,option(alt) を「super キー」と呼ぶことにする.

6.2 同時押しと順次押し

Emacs では,特殊キーとそれ以外のキーの組み合わせ(キーバインド)によって多彩な操作が可能である. 全てのキー操作は「同時押し」と「順次押し」で構成される.

同時押し
特殊キーとそれ以外のキーを 同時 に押すこと.ハイフン(-)で表現される.
C-g
Control と g を同時に押す
M-x
Meta と x を同時に押す
C-x-n
Control と Meta と n を同時に押す
順次押し
あるキーや同時押しの 後で, 別のキーや同時押しを入力すること.空白記号で区切って表現される.
C-x C-s
C-x の後で C-s を入力する
M-x info
M-x の後で「info」と入力する
C-x RET f
C-x, リターンキー, f の順に入力する

特殊キーと

6.3 まずはパニック対応(ESC, C-g)

操作中に予期せぬ画面になってしまった時は,=ESC= か C-g (Control と g の同時押し)を押すことで,大抵,元の画面に戻ってこれる.

  1. Emacs を起動すると,最初はこのような画面(eshell)が現れるはずだ.

    initial_window.png

  2. C-h C-h (Controlキー と h の同時押しを2回)を入力する.
  3. こんな画面になってしまう

    C-h_C-h_window.png

  4. 慌てずに ESC を押せば,元の画面に戻る.
  5. 今度は C-x C-u (Control キーと x の同時押しの後,Control と u の同時押し)を入力する.
  6. こんな画面になるはずだ

    C-x_C-u_window.png

  7. この画面は ESC を入力しても消えてくれない.そんな時も慌てず C-g を入力すれば,元の画面に戻る.

6.4 カーソルの操作

Emacs では,十字キーではなく,キーバインドでもカーソルを操作できる.最初は十字キーの方が楽なように思うだろうが,慣れてくると十字キーに手を伸ばすのが億劫になってくるはずだ.最初の画面(eshell)で色々試してみよう.

キーバインド 動作
C-f カーソルを右(前)へ
C-b カーソルを左(後)へ
C-n カーソルを下(次の行)へ
C-p カーソルを上(前の行)へ
C-a カーソルを行の先頭へ
C-e カーソルを行の末尾へ
M-f カーソルを1単語右(前)へ
M-b カーソルを1単語左(後)へ
C-v カーソルを1画面下(次の画面)へ
M-v カーソルを1画面上(前の画面)へ
M-< カーソルをバッファの先頭へ
M-> カーソルをバッファの末尾へ
DEL カーソルの の1文字を消去
C-d カーソルの の1文字を消去

7 参考資料

とても書ききれないので,まずは Emacs 実践入門 の§2.3以降を読みながら各自で慣れていって下さい.

8 独自設定

https://bitbucket.org/nagae/.emacs.d で公開している設定ファイルでは, Emacs 実践入門 に記載されていないような独自のキーバインドがいくつかある.

8.1 基本操作

ウィンドウの切り替え(C-;)
C-x o だけでなく C-; でもウィンドウが切り替えられる.
指定行への移動(M-g)
M-x goto-lineM-g だけで起動できる
前後のバッファへの瞬時切り替え(C-<, C->)
バッファ切り替えを立ち上げなくても C-< で前のバッファ, C-> で後のバッファに切り替えられる

8.2 もっとある

便利な独自機能はまだ沢山あるが鋭意執筆中.

著者: Takeshi Nagae

Created: 2019-04-18 Thu 16:44

Emacs 24.3.1 (Org mode 8.2.5h)

Validate