Emacsのメモ

文字コード・改行コードを変えてファイルを再読みこむには

C-x C-m r utf-8 C-m

以下の方法もある。(以下の手順を順番に実行)

  1. C-x C-m c
  2. 文字コード・改行コードを入力 C-m
  3. M-x revert-buffer C-m

文字コード・改行コードは以下のような文字列が使える。

euc-jpeuc-japan はたぶん同じ。

文字コードを変更して保存するには

C-x C-m f utf-8

タブ文字を1ストロークで入力できるようにするには

タブ文字そのものは C-q TAB で入力できるが、2ストロークが面倒なので、以下の設定を .emacs に書いて、C-i で入力できるようにする。ただ、これだとTABでも C-i と同じ扱いでタブ文字そのものの入力になってしまう。

;; C-i でタブを入力できるように
(global-set-key "\C-i" '(lambda ()
  (interactive)
  (insert "\t")))

ちなみにシェル環境では Ctrl-v TAB でタブ文字を入力できる。

タブと全角スペースを表示させるには

ソースコード中に全角スペースが混ざっていてハマってしまうのを防ぐために、全角文字を可視化したい。そして、インデントにスペースを使うかタブを使うかのルールがプロジェクトごとに違っていたりしてエディタの設定でなんとかするのが難しいので、タブ文字も可視化したい。以下は、そういう場合の設定。

以下の設定で、タブは黄色のアンダースコア、全角スペースはアンダースコア+赤で塗りつぶしで表示される。

(global-whitespace-mode 1)
(setq whitespace-space-regexp "\\(\u3000\\)")
(setq whitespace-style '(face tabs tab-mark spaces space-mark))
(setq whitespace-display-mappings ())
(set-face-foreground 'whitespace-tab "yellow")
(set-face-underline  'whitespace-tab t)
(set-face-foreground 'whitespace-space "yellow")
(set-face-background 'whitespace-space "red")
(set-face-underline  'whitespace-space t)

カーソル位置にある文字のコード(コードポイント)を調べるには

C-u C-x = と押すと、カーソル位置のいろいろな情報が表示される。ファイルがUTF-8であれば、Unicodeのコードポイントを16進数で確認でき、 Unicodeで定められている文字の名前なども確認できる。

選択範囲にあるひらがなをまとめて全部カタカナに変換するには

変換対象範囲の先頭に移動してから、 C-SPACE 押して、変換対象範囲の最後にカーソル移動して、 japanese-katakana-region コマンドを実行(M-x japanese-katakana-region C-m と押す)と、範囲の中にあるひらがなを全部まとめてカタカナに変換してくれる。

以下のようなコマンドがあるみたい。

このサイトは筆者(hydrocul)の個人メモの集合です。すべてのページは永遠に未完成です。