howmの書式でメモをとるLisp

まえおき

今日やるのはhowmを使わずに、howmの書式でメモをとることです。これだけだと何いってるかちょっとわかんないですね(笑)

howmの書式

howmの書式というのは、

 = title

[2010-06-18 11:01] 

というやつです。
この書式で、メモファイルを作りたいなと。
そのために、まず次のlispファイルを作成。

my-howm-create.l

;;; -*- Mode: Lisp; Package: EDITOR -*-
;;; my-howm-create.l

(provide "my-howm-create")

(in-package "editor")

(export '(my-howm-create))


(defun my-howm-create()
  (interactive)
  (set-buffer (create-new-buffer (format-date-string "%Y-%m-%d-%H%M%S.howm")))
  (if si:*command-line-args*
    (setq dir (pop si:*command-line-args*))
    (setq dir "~"))
  (setq file (format-date-string "%Y-%m-%d-%H%M%S.howm"))
  (set-buffer-file-name (concat dir "/" file))
  (text-mode)
  (insert "= \n\n")
  (insert (format-date-string "[%Y-%m-%d %H:%M]"))
  (backward-line)
  (backward-char))

xyzzyでの準備

ディレクトリの引数があれば、それを親フォルダにしてメモを作成。なければ.xyzzyがあるフォルダにメモを親フォルダにしてメモを作成するlispです。ファイル名は日付と時間から自動でつけます。
これを、my-howm-create.lというファイル名でsite-lispに保存。
次いで、.xyzzyかsiteini.lに次の行を書き加える。

(require "my-howm-create")

これで、xyzzy側の準備はおkです。

PPxでの準備

次に、これをPPxから起動できるようにする。

 %Ob D:\bin\xyzzy\xyzzy.exe -e (my-howm-create) %1

これを、メニューか適当なキーかに登録。僕は、M_makefileという拡張子付きで空ファイルを作成するメニューに登録してます。


howmフォルダ以外でもhowmの書式で保存したい

何でこんなことをやっているのかというと、howmだとテキストファイルを保存できるフォルダが一意的に決まっているからです。これは、断片的なアイデアなどを保存するには最適だしこれ以外の選択肢はない。
けれど、ある程度煮詰まっていてすでにまとまった文書を書きかけている時には、不都合になるのです。そのときには、カテゴリーフォルダの中に直接このメモを作ってしまいたい。連続的に考察をしていて、それが今やっていること、今考察していることそのものについての時ですね。それだと、作ったメモは即閲覧したいし、一々howmフォルダからそのカテゴリーフォルダに移動するというのも手間。
けれども、これを普通のテキストファイルの形式で作ってしまうと、他のhowm形式のメモと整合性がとれなくなる。もっと簡潔に言えば、一行目のみを切り出してそれをコメントファイルとして表示するというのができなくなる。

想定している使い方

僕は、一度howmフォルダから別のカテゴリーフォルダに移動して、それを一つにまとめるようにしている、とか言ってた。そこで閲覧し、まとめる過程で利用します。
そこにおいて、新たに思いついたことがあったら、カテゴリーフォルダを開いてそこで、howm形式のメモを作成。思いついたことを書いたらセーブ、閉じてまた作業を開始する。


howm on PPx

僕の場合は、howmは閲覧にはあまり使わないしリンクとかもしないし、使う機能は限られている。そのうち、ここで作ったみたいな単純なものを組み合わせて、howm on PPxなりhowm on PPx & xyzzyなり作れたらいいかもしれない。

その他

この記事を書いてしまったあとで僕がやったのと同じことが既にやられてたのに気づいた\(=ω=.)/
WOMO - howm 用のファイルだけを作る on xyzzy
でもいいやどうせ書いちゃったしせっかく数時間これのために使ったんだし載せちゃえ(´・ω・`)