yaotti's diary

Software is Eating the World

EmacsでChangeLog

バイトでToDoやらバグやらいろいろメモしたい&紙媒体だと忘れた時にとても困るので,最近箇条書きでメモしてたんだけど,
どうにも面倒なのでEmacsChangeLogを使い始めることにした.


まずは以下の設定を~/.emacs.elに.

;; ChangeLog
(defun delete-insert-char(c)
  (interactive)
  (progn (delete-char 1 nil) (insert c) (backward-char 1)))

(defun swap-char-at-point(a b)
  (let ((c (char-to-string (char-after))))
    (cond
     ((string-equal c a) (delete-insert-char b))
     ((string-equal c b) (delete-insert-char a)))))
(add-hook 'change-log-mode-hook
    '(lambda()
       (define-key change-log-mode-map "\C-t" '(lambda () (interactive) (swap-char-at-point "□" "■")))))
(require 'clmemo)
(autoload 'clmemo "clmemo" "ChangeLog memo mode." t)
;; path to ChangeLog memo file
(setq clmemo-file-name "~/howm/clmemo.txt")
;; 好きなキーへバインド
(global-set-key "\C-xM" 'clmemo)
;;changelogタイトル補完
(setq clmemo-title-list '("log" "idea" "todo" "learn"))
(setq clmemo-time-string-with-weekday 't)

以上clmemoとChangeLogの設定.


swap関係はhigeponさんのところからいただいた.単純なんだけど,□から■に変えるのが楽しい.



clmemoはhowmみたいな,メモのためのものっぽい.
1つのファイルに集約されて溜っていくイメージ.
表記(使い方)は同じだけど,ChangeLogとはまた別物.

ChangeLogは,適当なファイルでC-x 4 aとやると,今いるファイル名,関数名が書かれた状態でChangeLogを書くことができる.

2008-10-19  Your Name  <mailaddress>

	* filename (func_name):

以上が自動的に挿入される.

いままで普通に箇条書きにしていたのが一気に楽になりそう.

  • 参考リンク

楽天が運営するポータルサイト : 【インフォシーク】Infoseek
楽天が運営するポータルサイト : 【インフォシーク】Infoseek