Emacsの最低限の初期設定!
こんにちは!若葉のマフィンです!
最近、気温の変化が激しくて体調を崩しがちです💦みなさんもお気をつけくださいね!
というわけで、今回はタイトルにもある通り、Emacsの初期設定について執筆したいと思います! というのも以前、chromebookにEmacsを導入する記事
にて、最近のChromebook(crostiniが使える機種)では簡単に汎用テキストエディタEmacsを導入することができますよという記事を書かせていただきました!
しかしながら、うっかり導入方法だけしかご紹介していなかったので、非常に使いにくいまま放置してありました💦このままでは折角導入したEmacsさんを不便だからという理由でアンインストールされてしまうかもしれない...と思って、今回は導入したEmacsを最低限使いやすいようにする初期設定をみなさんと共有したいと思います!
(※この記事の内容をご自身で試す場合は自己責任でお願いします)
Emacsにおけるデフォルト設定の問題点
デフォルトの基本設定のまま、Emacsさんを使うとどんな不便な点があるのでしょうか?まずはそれを見ていきましょう!
デフォルトのEmacsの不便な点
文字の消去にctrl+hが使えない
Macでもおなじみのキーバインド"ctrl+h"でカーソルの左の文字を消去するということができません。もちろん、字を消すためにはdeleteキーを使えば問題ないのですが、わざわざ右手の小指でここを押すのは非常に不便です。
カッコの対応関係がわからない
開発などコーディングをされる方はコードの中のカッコの対応関係を知りたくなるときが多々あります。例えば、Pythonコードの
lst = [[k for k in range(10)] j for j in range(10)]
のように、複数のカッコが入り組む場合などはなおさらです。しかしながら、デフォルトのEmacsでは括弧をハイライトする機能は利用できません。
スクロールが見にくい...
スクロールが見づらいというのもデフォルトの基本設定の不便な点の1つです。Emacsではctrl+nのキーバインドでカーソルを一行下に進めることができるのですが、もしEmacsがデフォルトの設定のままだと、ページが切り替わる際には一行ずつページが進むのではなく、ある塊でページが切り替わることになります。これでは自分のカーソルがどこに行ってしまったのかわかりにくくなってしまい、僅かではありますが時間をロスしてしまいます。
行数が表示されていない
現在自分がファイルの何行目を編集しているのかすぐにはわからないというのも問題の1つです。もちろん、モードラインと呼ばれる図の赤丸で囲った部分 を見れば一応現在カーソルが存在する行数はわかるのですが、やはり行のすぐ左に行番号が欲しいというのが本音です
ごく一部ではありますが、Emacsを導入してデフォルトの基本設定のまま扱う場合に生じる不便な点をいくつか挙げさせていただきました!
というわけで、これらの不便な点を解消する、つまり最低限の基本設定を設定していきましょう!
Emacsの基本設定を変更するには
Emacsの基本設定を変更するには、Emacsの設定ファイルを使いやすいように編集すればOKです!そして、Emacsの設定ファイルは次の4つのうち、上から順に優先的に読み込まれます(ただし、読み込まれるのは1つだけ)
このうち、どれを編集してもいいのですが、今回は私がよく使っている~/emacs.d/init.elを編集することでEmacsさんを少し便利にしてみましょう!
Emacsの最低限の基本設定
さて、Emacsを使って、~/.emacs.d/init.elを編集しましょう! 早速
emacs -nw ~/.emacs.d/init.el
(-nwはターミナル内でEmacsを開くオプションです。ここは省いてもらってもOKです)として、まずは言語の設定
; ---- ; language ; ---- ;; set language as Japanese (set-language-environment 'Japanese) ;; coding UTF8 (set-language-environment 'utf-8) (prefer-coding-system 'utf-8)
を書き込んでもらえれば日本語の設定に変更できます。そして、キーバインド(ショートカット)の設定
; ---------------- ; key bind ; ---------------- ;; C-h (global-set-key "\C-h" 'delete-backward-char) ;; help (global-set-key "\C-c\C-h" 'help-command) ;; comment out (global-set-key "\C-c;" 'comment-dwim) ;; window operation (global-set-key "\C-t" 'other-window)
上から順に、
"ctrl+h"で左の文字の消去
"ctrl+c ctrl+h"でヘルプの表示
"ctrl+c ;"で行のコメントアウト
"ctrl+t"でタブの切り替え
です。そして、さらに使いやすくするための設定
; ---- ; preferences ; ---- ; 括弧を自動で補完する (electric-pair-mode 1) ;; tabにスペース4つを利用 (setq-default tab-width 4 indent-tabs-mode nil) ;; デフォルトの起動時のメッセージを表示しない (setq inhibit-startup-message t) ;; 列の番号 (column-number-mode t) ;; 行番号の表示 (global-linum-mode t) ;; 1行ごとの改ページ (setq scroll-conservatively 1) ;; 対応する括弧を光らせる (show-paren-mode 1) ;; メニューバーの非表示 (menu-bar-mode -1) ;; ツールバーの非表示 (tool-bar-mode -1)
これで行数や列数がわかったり、括弧がどこにあるかわからなくなったり、ほとんど使うことのない部分を非表示にすることができます♪
まとめ
さて、今回はEmacsのデフォルトの基本設定の不便な点を改良する最低限の基本設定について書かせていただきました。Emacsの基本設定は誰でも簡単に設定ファイルを触ることによってできますので、ぜひお好みのEmacsさんにカスタマイズしてみてください!
間違いのご指摘やご意見などございましたら、ぜひコメントの方よろしくお願いします!
ではでは、今回はこの辺りで!次回以降もよろしくお願いします!