Emacs¶
- 目次
- Emacs
Emacsの導入¶
Windows OS上へEmacsを導入¶
見栄えの設定¶
テーマの指定¶
Emacs 24からはテーマ機能が標準搭載されたので、それを使います。標準で用意されているテーマは Emacs 25.3では次のディレクトリに含まれます。share/emacs/25.3/etc/themes/
次のように指定します(上述のテーマディレクトリにあるファイル名から-theme.elを抜いた名前を指定)。
以下は、misterioso-theme.el を指定する例です。
(load-theme 'misterioso t)
別途テーマを自分のディレクトリに用意して利用する場合は次のように指定します。
(setq custom-theme-directory "~/.emacs.d/themes/") (load-theme 'blackboard t)
背景透過¶
ウィンドウの背景を透過する設定です。アルファ値の値を100分率(要確認)で指定します。
(add-to-list 'default-frame-alist' (alpha . 90))
フォント設定¶
次は、基本フォントにConsolasを、日本語フォントにMeiryoを指定した例です。
(set-face-attribute 'default nil :family "Consolas" :height 80) (set-fontset-font nil 'japanese-jisx0208 (font-spec :family "Meiryo" :size 11))
操作関係の設定¶
マウスで領域選択するとコピーする¶
Emacs 24以降では、マウスで領域選択しても自動でコピーされなくなりました。
次の設定を記述すると、マウスで領域選択したときにコピーまでされるようになります。
(setq mouse-drag-copy-region t)
Emacsの拡張¶
パッケージ管理の導入¶
Emacsには、パッケージ管理機能が搭載されるようになっています。インターネットに接続できる環境であれば、パッケージ管理機能で欲しい拡張機能をインストールするのが簡単です。
以下は、パッケージ管理機能を有効にして、標準リポジトリに追加してMELPAリポジトリを利用する設定の記述例です。
(require 'package) (add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/") t) (package-initialize)
- 注1) Windows版のEmacsでは、melpaのURL指定でプロトコルhttpsでは繋がらないので、httpとしています。
- 注2) Emacs起動後、1回
M-x package-refresh-contents
を実行します。さもないと、melpaのパッケージ情報が反映されません。
SKKの設定¶
日本語入力機能です。IMEを使わずEmacsの機能だけで日本語入力ができます。
MELPAからのインストール¶
M-x package-install
を実行するとミニバッファ上でInstall package:を聞いてくるので ddskk
を実行します。
init.elに設定¶
(when (require 'skk nil t) (global-set-key (kbd "C-x j") 'skk-auto-fill-mode) (setq default-input-method "japanese-skk") (require 'skk-study))
- whenで始まる1行目は、skkが入っていない環境でemacsが起動時にエラー終了しないためのイディオムです。
- 4行目のskk-studyは学習機能の追加です。
groovy-modeの設定¶
プログラミング言語groovyの編集モードです。
MELPAからのインストール¶
M-x package-install
を実行するとミニバッファ上でInstall package:を聞いてくるので groovy-mode
を実行します。
特に設定を記述しなくても、拡張子.gradle のファイルを開くとgroovy-modeとなりました。
手動インストール¶
groovy-mode とそれが依存するemacs lispパッケージをインストールします。groovy-modeのバージョンにより必要なパッケージが異なります。
groovy-mode | s.el | dash.el |
---|---|---|
2.0 | 要 1.12.0以降 | 不要 |
master | 要 1.12.0以降 | 要 2.13.0以降 |
各パッケージの入手先は以下です。
いずれも GitHubで提供されているので、アーカイブファイルをダウンロードし、emacsのsite-lispディレクトリ下にコピーします。
以下の設定を、emacs設定ファイル(.emacsとかinit.elとか)に記述します。
;; groovy (autoload 'groovy-mode "groovy-mode" "Major mode for editing Groovy code." t) (add-to-list 'auto-mode-alist '("\\.groovy\\'" . groovy-mode)) (add-to-list 'auto-mode-alist '("\\.gradle\\'" . groovy-mode)) (add-hook 'groovy-mode-hook (lambda () (setq indent-tabs-mode nil) ) )
トラブル1¶
File mode specification error: (void-variable groovy-postfix-operator-regex)
- 仮説1)groovy-emacs-modes-2.0 に含まれるgroovy-mode.elには、groovy-postfix-operator-regexが未定義のため発生か?
groovy-emacs-modes のmasterをダウンロードしたところ、groovy-mode.elにはgroovy-postfix-operator-regexが記載あり。
→ 結果エラーは解消されず - 仮説2)古いgroovy-mode.elcがあるとgroovy-mode.elを読まず、古いgroovy-mode.elcが使われる
emacsインストールディレクトリ下にgroovyおよびelcのファイル名を探したが該当なし。
その後、ユーザー固有(HOME)の.eamcs.dの下にelcファイルがあることを発見(elpaディレクトリ下およびstraightディレクトリ下)
→ 削除したところエラー解消
kotlin-modeの設定¶
プログラミング言語kotlinの編集モードです。
手動インストール¶
https://github.com/Emacs-Kotlin-Mode-Maintainers/kotlin-mode
上述から kotlin-mode.elとkotlin-mode-lexer.elをダウンロードします。
.emacs等に設定
(autoload 'kotlin-mode "kotlin-mode" "Major mode for editing kotlin code." t) (add-to-list 'auto-mode-alist '("\\.kt\\'" . kotlin-mode)) (add-to-list 'auto-mode-alist '("\\.kts\\'" . kotlin-mode))