2012-09-06

clmemo 及び blgrep を github に置いた

Infoseek のウェブサービスがなくなって以来、ソースコードの提供が止まっていた clmemo.el と blgrep を github に置いた。

clmemo は「ChangeLog メモ」の略称。ChangeLog という UNIX の開発現場で使われる変更履歴を保存するフォーマットを「メモ取り」に拡張するアイデア。プログラマーとして一日中 Emacs を開いている様な人間には、いつでもメモが取れる点がメリットとなる。

blgrep は BLock grep の略で、コンテキスト grep を行なう。通常、grep はマッチした「行」を出力する。一方、コンテキスト grep はマッチしたキーワードを含むブロックを出力する。blgrep には clgrep.el という ChangeLog メモ専用のコンテキスト grep が入っており、ChangeLog メモの効率的な検索が可能になる。

ドキュメント

Infoseek で公開していたドキュメントを Blogger のページに公開した。まだテキストに手を入れていないので、ダウンロード元が infoseek のままだったりする。閑を見つけて修正するので、少々お待ち下さい。

最低限のインストール方法

github からプロジェクトを clone して、el ファイルを site-lisp 下に置けば OK。

ぼくの ChangeLog メモ用の設定を書いておく。

;;
;; New clmemo
;;
(autoload 'clmemo "clmemo" "ChangeLog MEMO mode." t)
(define-key ctl-x-map "M" 'clmemo)
(setq clmemo-file-name "~/documents/clmemo.txt")
(setq add-log-mailing-address "masayuki.ataka@gmail.com")
(setq add-log-full-name "Masayuki Ataka")

;;
;; blgrep (clgrep.el)
;;
(add-hook 'clmemo-mode-hook
   '(lambda ()
      (define-key clmemo-mode-map "\C-c\C-g" 'clgrep)
      (define-key clmemo-mode-map "\C-c," 'quasi-howm)))

(add-hook 'change-log-mode-hook
   '(lambda ()
      (define-key change-log-mode-map "\C-c\C-g" 'blg-changelog)
      (define-key change-log-mode-map "\C-c\C-i" 'blg-changelog-item-heading)
      (define-key change-log-mode-map "\C-c\C-d" 'blg-changelog-date)))

(add-hook 'outline-mode-hook
   '(lambda ()
      (define-key outline-mode-map "\C-c\C-g" 'blg-outline)
      (define-key outline-mode-map "\C-c1" 'blg-outline-line)))
(add-hook 'outline-minor-mode-hook
   '(lambda ()
      (define-key outline-minor-mode-map "\C-c\C-g" 'blg-outline)
      (define-key outline-minor-mode-map "\C-c1" 'blg-outline-line)))

(require 'blg-autoloads)

;;
;; quasi-howm (first edit: [2004-09-28])
;;
(setq quasi-howm-dir "~/personal/memo/howm/")
(setq quasi-howm-file-name-format "%Y-%m/%Y%m%d-%H%M%S")

quasi-howm の説明は過去記事をどうぞ (今の clmemo.el には quasi-howm 関連のコードは最初から入っている)。

No comments:

Post a Comment