Emacs の初期化用ファイル

Emacs の設定ファイルのディレクトリパスを設定する

Emacs 23.1 以上では、 user-emacs-directory が用意されているのでそれを利用します。

(unless (boundp 'user-emacs-directory)
  (defvar user-emacs-directory (expand-file-name "~/.emacs.d/")))

ユーザーのプロフィールを設定する

まずはユーザーのプロフィールを設定するファイルを読み込みます。
プロフィールは private/profile.el に書いておきます。

(let ((profile-filename (expand-file-name (concat user-emacs-directory "private/profile.el"))))
  (when (file-exists-p profile-filename)
    (load profile-filename)))

profile.el に書くこと

ユーザーの名前とメールアドレスを書くといいでしょう。

  (setq user-full-name "alice riddle")

  (setq user-mail-address "alice.riddle@example.com")

当ファイルをタングル*1することで、private/profile.el が作成されますので、ご自分のお名前を記入してください。

load-path に色々と追加する

まずは便利関数 add-to-load-path を定義する

  • `dolist{ は Emacs 21 からの標準関数です。
  • normal-top-level-add-subdirs-to-load-path はディレクトリ内で ^[A-Za-z] なものだけ追加します。
(defun add-to-load-path (&rest paths)
  (let (path)
    (dolist (path paths paths)
      (let ((default-directory (expand-file-name (concat user-emacs-directory path))))
        (add-to-list 'load-path default-directory)
        (when (fboundp 'normal-top-level-add-subdirs-to-load-path)
          (normal-top-level-add-subdirs-to-load-path))))))

追加する

site-lisp と site-started.d を load-path に追加します。

(add-to-load-path "site-lisp" "site-started.d")

init-environment.el を require する

環境判定や、文字コードを設定する init-environment.el を require します。

(require 'init-environment)

*1:Org Mode では C-c C-v t でタングルすることができる。ブログ記事ではコピペすることによりだいたい同じようなことができる。