Jun Araki’s Blog
随所に主となれば立処皆真なり

2009 年 2 月 27 日

.emacs の見直し

Filed under: Software — araki @ 11:41 PM

他人の .emacs を見るのは楽しいものです。その人の Emacs へのこだわりが分かったり、もっと早く知っておけば良かったと思う設定もあったりします。たまに自分の .emacs を振り返ってみるのも面白いです。以前は便利かも知れないと思って設定したものでも、後から見るとほとんど使っていなかったりします。

最近 .emacs を振り返る機会があったので、今の私にとって最低限必要な設定をメモしておきます。Emacs のバージョンは 22.1.50.1 です。

;; 起動時にスタートアップ画面を表示しない
(setq inhibit-startup-message t)

;; メニューバーを非表示にする
(menu-bar-mode -1)

;; ツールバーを非表示にする
(tool-bar-mode -1)

;; タイトルバーにファイル名を表示する
(setq frame-title-format (format "emacs@%s : %%f" (system-name)))

;; "yes or no" の代わりに "y or n" の省略形を使用する
(fset 'yes-or-no-p 'y-or-n-p)

;; 括弧を強調表示する
(show-paren-mode t)

;; カーソル位置の行番号を表示する
(line-number-mode t)

;; カーソル位置の列番号を表示する
(column-number-mode t)

;; 時刻を表示する
(setq display-time-day-and-date t)
(setq display-time-24hr-format t)
(display-time)

;; 1 行ずつスムーズにスクロールする
(setq scroll-step 1)

;; スクロールバーを右側に表示する
(set-scroll-bar-mode 'right)

;; バッファの末尾で新たな行を追加しない
(setq next-line-add-newlines nil)

;; 行頭で行削除 kill-line (C-k) したら改行も含めて行全体を削除する
(setq kill-whole-line t)

;; 行数を指定してジャンプする (goto-line)
(global-set-key "\C-l" 'goto-line)

;; タブを使用せず、スペースを使用する
(setq-default indent-tabs-mode nil)

;; リージョンをハイライト表示する
(setq transient-mark-mode t)

;; font-lock-mode (色の設定等) を有効にする
(global-font-lock-mode t)

;; 半角スペースや全角スペースなどを色付け表示する
(defface my-face-b-1 '((t (:background "medium aquamarine"))) nil)
(defface my-face-b-1 '((t (:background "dark turquoise"))) nil)
(defface my-face-b-2 '((t (:background "cyan"))) nil)
(defface my-face-b-2 '((t (:background "SeaGreen"))) nil)
(defface my-face-u-1 '((t (:foreground "SteelBlue" :underline t))) nil)
(defvar my-face-b-1 'my-face-b-1)
(defvar my-face-b-2 'my-face-b-2)
(defvar my-face-u-1 'my-face-u-1)
(defadvice font-lock-mode (before my-font-lock-mode ())
(font-lock-add-keywords
major-mode
'(
(" " 0 my-face-b-1 append)
("\t" 0 my-face-b-2 append)
("[ ]+$" 0 my-face-u-1 append)
)))
(ad-enable-advice 'font-lock-mode 'before 'my-font-lock-mode)
(ad-activate 'font-lock-mode)
(add-hook 'find-file-hooks '(lambda ()
(if font-lock-mode
nil
(font-lock-mode t))))

;; 圧縮されたファイルも編集できるようにする
(auto-compression-mode t)

;; クリップボードを他のアプリケーションと共用にする
(setq x-select-enable-clipboard t)

;; リージョンをコメントアウトする
(global-set-key "\C-co" 'comment-region)

;; リージョンのコメントアウトを解除する
(global-set-key "\C-cr" 'uncomment-region)

;; ファイル名を補完する時に大文字と小文字を区別しない
(setq read-file-name-completion-ignore-case t)

;; 文字コードを設定する
(set-terminal-coding-system 'utf-8)
(set-keyboard-coding-system 'utf-8)
(set-buffer-file-coding-system 'utf-8)
(setq default-buffer-file-coding-system 'utf-8)
(set-default-coding-systems 'utf-8)

[2014.1.21 追記] 文字コードに関する設定を追加
[2010.9.14 追記] タイトルバーに関する設定とファイル名の補完に関する設定を追加
[2009.11.29 追記] メニューバーとツールバーの非表示、クリップボード、リージョンのコメントアウトに関する設定を追加
[2009.10.17 追記] リージョンのハイライトに関する設定を追加
[2009.6.10 追記] global-font-lock-mode と auto-compression-mod に関する設定を追加

Powered by WordPress