$Id: README-j.html,v 1.107.2.8 2011-12-28 09:21:41 hira Exp $
Emacs で断片的なメモをどんどんとるための環境です. 分類機能はあえてつけません. かわりに, 全文検索とメモ間リンクが手軽にできるようにしました. 自由書式なので改宗も不要 :-)
(howm-mode)
こんなテンプレートが表示される
= ■ ←(タイトル欄) [2002-09-16 20:08] >>> /home/hira/elisp/howm/howm-mode.el ↑(作成日 & その前に見てたファイル)
次のように書くと, foo と bar がタイトル
= foo (… ほげほげ …) = bar (… ふがふが …)
正確な書式は,
(行頭)=(空白)(タイトル)(行末)
タイトルなしで, 単にメモの区切りとして使うだけでも OK
(… ほげほげ …) = (… ふがふが …) = (… へろへろ …)
goto リンク: ファイル(ディレクトリ)名 or 含まれる文字列
>>> ~/.emacs >>> /usr/src >>> ほげほげ
come-from リンク: 他のメモで「ふがふが」という文字列が出てきたら, ぜんぶこのメモへのリンクに
<<< ふがふが
Wiki 風リンク: goto と同じ. ただし「<<< へろへろ」がもしなければ作る.
[[へろへろ]]
たとえば, 「>>> emacs」ならこんな一覧
<<< emacs ← ずばりの come-from 宣言をしたメモ <<< emacs lisp ← 「emacs」を含む come-from を宣言したメモ <<< 自作 emacs lisp grep, ruby, emacs の regexp の違い ← 本文中に「emacs」を含むメモ emacs 用検索ツール?[2001-08-13] (新しい順) …
browse-url を使用. 必要なら適当に設定.
(setq browse-url-browser-function 'browse-url-mozilla)
(一覧モード)
Dired-X の使い方は, info dired-x 等を参照
v → 中身を見る (q → 戻る) d → 「消すぞ」マーク x → マークしたファイルたちを本当に消す
(予定表・todo)
メモ中に
[2002-10-20]+ ハイウェイ惑星 買おう
のように書いておくと, 一覧で見ることができます
覚書 (-)
[2002-10-20]- ハイウェイ惑星 買おう
沈むのを遅くするには, 猶予日数で指定(デフォルト 1 日)
[2002-10-20]-14 ハイウェイ惑星 買おう → 14 日間ぐらいは気にかけよう
todo (+)
[2002-10-20]+ ハイウェイ惑星 買うべし
浮きあがる速さは, 猶予日数で指定(デフォルト 7 日)
[2002-10-20]+14 ハイウェイ惑星 買うべし → 14 日間ぐらいのうちに
〆切 (!)
[2002-10-20]! ハイウェイ惑星 〆切
何日前から浮きはじめるかは, 猶予日数で指定(デフォルト 7 日)
[2002-10-20]!14 ハイウェイ惑星 〆切 → 14 日前ぐらいからぼちぼち
保留 (~)
[2002-10-20]~ ハイウェイ惑星 買おうか
何日周期で浮き沈みするかは, 猶予日数で指定(デフォルト 30 日)
[2002-10-20]!14 ハイウェイ惑星 買おうか → 14 日周期
予定 (@)
[2002-10-20]@ ハイウェイ惑星
済 (.)
[2002-10-20]. ハイウェイ惑星
例
[2002-10-20]+9 ほげほげ
の「+9」にカーソル置いてリターンたたくと, ミニバッファにメニューが出て…
そのままリターン → 「済」
[2002-10-20]. [2002-10-20]:+9 ほげほげ
x を入力 → 「cancel」
[2002-10-20]. cancel [2002-10-20]:+9 ほげほげ
- を入力 → 種類を覚書に変更
[2002-10-20]-9 ほげほげ
14 を入力 → 猶予日数を 14 日に変更
[2002-10-20]+14 ほげほげ
後ろめたければ, 猶予日数の長い「覚書」に
[2002-11-10]-10 ハイウェイ惑星
緊急ではないが重要なこと
[2002-11-10]-999 ●ハイウェイ惑星
目立たせたいこと
[2002-11-10]! ★★ハイウェイ惑星
xemacs の場合
./configure --with-xemacs
インストール先の変更例
./configure --with-howmdir=$HOME/elisp --prefix=$HOME
case 1: emacs 起動時に読み込む
(setq howm-menu-lang 'ja) (require 'howm)
case 2: はじめて C-c , , した時に読み込む
(setq howm-menu-lang 'ja) (global-set-key "\C-c,," 'howm-menu) (autoload 'howm-menu "howm" "Hitori Otegaru Wiki Modoki" t)
いずれも, もし「Cannot open load file」とかエラーが出るなら, 上記の前にこれを追加
(add-to-list 'load-path "/usr/share/emacs/site-lisp/howm/")
置き場に応じて, ↓のように記述
(add-to-list 'load-path "~/elisp/howm/")
お好みで, バイトコンパイル
cd ~/elisp/howm \emacs -batch -q --no-site-file --eval '(progn (add-to-list (quote load-path) ".") (byte-recompile-directory "." 0))'
お好みで, ~/.emacs に設定を追加 (→カスタマイズ)
;; 設定例 (define-key global-map [katakana] 'howm-menu) ; [カタカナ] キーでメニュー (setq howm-file-name-format "%Y/%m/%Y_%m_%d.howm") ; 1 日 1 ファイル (setq howm-keyword-case-fold-search t) ; <<< で大文字小文字を区別しない (setq howm-list-title nil) ; 一覧時にタイトルを表示しない (setq howm-menu-refresh-after-save nil) ; save 時にメニューを自動更新せず (setq howm-refresh-after-save nil) ; save 時に下線を引き直さない (setq howm-menu-expiry-hours 2) ; メニューを 2 時間キャッシュ (add-to-list 'auto-mode-alist '("\\.howm$" . rd-mode)) ; メモは rd-mode に
区別する場合
find ~/howm -name '*.howm' -print | xargs ruby -ne '$_ =~ /<<<\s+(.+)$/ and puts $1.split(/\s*<<<\s*/).join "\t"' | sort -u > ~/.howm-keys
区別しない場合
find ~/howm -name '*.howm' -print | xargs ruby -ne '$_ =~ /<<<\s+(.+)$/ and puts $1.downcase.split(/\s*<<<\s*/).join "\t"' | sort -u > ~/.howm-keys
~/.emacs(.emacs.el かも) で↓のように
(setq howm-directory "c:/cygwin/home/howm/")
font-lock のメッセージを抑制すると速くなるそう. thx > 笠原さん
(setq font-lock-verbose nil)
.emacs に以下を書いておかないと, Dired-X に C-x C-j を奪われます
(setq dired-bind-jump nil)
下線が表示されない端末なら
(set-face-foreground 'action-lock-face "blue") ;; 下線のかわりに色つけ
リンク記号を変更する
;; 例: .emacs (howm ロードより前)に (setq howm-ref-header "==>") ; goto リンク (setq howm-keyword-header "<==") ; come-from リンク
基本的には M-x customize → [Applications] → [Howm] で. ぴんとこない項目も, [Show] でありがちな既定値から選択可能.
そこにない設定については, ~/.emacs (~/.emacs.el かも)へ, 以下のように直接書く. (もっと網羅的だが古い解説は, <URL:OLD.rd>を参照)
内容バッファに rd-mode な色をつける
;; rd-mode.el が読み込まれているという前提で (setq howm-view-contents-font-lock-keywords rd-font-lock-keywords)
「カタカナ」でメニュー, 「Ctrl-カタカナ」で新規メモ
(define-key global-map [katakana] 'howm-menu) (define-key global-map [(control katakana)] 'howm-create)
[tab]([alt]-[tab])で次(前)のリンクに移動
(define-key howm-mode-map [tab] 'action-lock-goto-next-link) (define-key howm-mode-map [(meta tab)] 'action-lock-goto-previous-link)
メモ置き場/年/年月日-時分秒.howm に
(setq howm-file-name-format "%Y/%Y%m%d-%H%M%S.howm")
1 日 1 ファイル (メモ置き場/年/月/年_月_日.howm に)
(setq howm-file-name-format "%Y/%m/%Y_%m_%d.howm")
キーワード一覧を ~/howm/.howm-keys に置く
(setq howm-keyword-file "~/howm/.howm-keys") ;; デフォルトは ~/.howm-keys
一覧で「!」したときの初期コマンドを変更
(setq howm-view-summary-shell-last-file "_FILE_") (setq howm-view-summary-shell-hist '("mv _FILE_ ~/gomi" "touch _FILE_" "ls -l _FILE_"))
一覧バッファの色つけ例
(setq howm-view-summary-font-lock-keywords '(("^2003" . 'highlight)))
カスタマイズ
(setq howm-menu-recent-num 20) ;; 表示する個数
ただし, 登録した関数しか使えません (おっかないから)
(setq howm-menu-allow (append '(foo bar) howm-menu-allow)) ;; foo と bar を許可
メニューをメモ扱いしない (メモ一覧・検索の対象外に)
;; mv ~/howm/0000-00-00-000000.howm ~/hoge/fuga/menu.howm しといて… (setq howm-menu-file "~/hoge/fuga/menu.howm")
Tips: gc-cons-threshold の値を増やすと速くなる場合がある. ref > 220,234-236
(setq gc-cons-threshold (* 4000 10000))
全文検索のとき, メモに加えて指定ディレクトリ以下も再帰的に探す
(setq howm-search-path '("~/Mail" "~/News")) (setq howm-search-other-dir t) ;; 下記のトグルの初期値 (t か nil)
物騒なので, ↓を書いとかないと無効
(setq howm-kill-all-enable-force t)
こんなふうに
Subject: タイトルバーに時計を表示 ←直前のリージョンの内容 Date: Thu, 12 Sep 2002 15:45:59 +0900 In-Reply-To: </home/hira/sawfish/rich-title/rich-title.jl> ←直前ファイル ■ ← カーソル
~/.emacs に
(setq howm-template "Subject: %title\nDate: %date\n%file\n%cursor") (setq howm-template-date-format "%a, %d %b %Y %H:%M:%S %z") (setq howm-template-file-format "In-Reply-To: <%s>\n")
テンプレートを複数指定
;; C-u 2 C-c , c → 2 番目のテンプレートで新規メモ ;; メニューから C-u 2 c でも同様 (setq howm-template '("= %title%cursor\n%date %file\n\n" "%date: %title%cursor"))
タイトル(メモ区切り) @@@ …
(setq howm-view-title-header "@@@")
goto リンク ==>…, come-from リンク <==…
(setq howm-ref-header "==>") (setq howm-keyword-header "<==")
goto リンク ((<…>)), come-from リンク ((:…:))
;; <>:は半角に直してください (setq howm-ref-regexp "((<\\([^>\r\n]+\\)>))") (setq howm-ref-regexp-pos 1) (setq howm-keyword-format "((:%s:))") (setq howm-keyword-regexp "\\(((:\\)\\([^:\r\n]+\\):))") (setq howm-keyword-regexp-hilit-pos 1) ;; 「関連キーワード」用 (setq howm-keyword-regexp-pos 2) (setq howm-keyword-regexp-format "%s") ;; M-x describe-variable 参照
「<<< hoge」の作成後は, 「hoge」にも下線
(setq howm-wiki-regexp "\\[\\[\\([^]\r\n]+\\)\\(\\]\\]\\)") (setq howm-wiki-regexp-hilit-pos 2) (setq howm-wiki-regexp-pos 1)
日付入力(C-c , d または [日↓])で年や月を略したら, 「未来」と解釈
(setq howm-insert-date-future t)
「http://」でリターン押したら, URL を kill-ring へ
(setq action-lock-no-browser t)
リマインダ記号(!+-~@.)から RET 一発で「済」に
(setq howm-action-lock-reminder-done-default "")
予定表・todo 一覧からリマインダ記号上で直接 RET したとき, 叩かれ先バッファを自動 save
(setq howm-action-lock-forward-save-buffer t)
保留の浮沈範囲
(setq howm-todo-priority-defer-init -14) ;; 初期値 = 下限 (setq howm-todo-priority-defer-peak 0) ;; 上限
例: メニューで, 「潜伏中は非表示」「済は表示」
(setq howm-menu-todo-priority -50000) (setq howm-todo-priority-done-bottom -44444)
{ } (トグルスイッチ)の変更
;; howm の load 前に (setq action-lock-switch-default '("{ }" "{*}" "{-}")) ;; 何個でも
{_} (未処理)の変更
(setq howm-dtime-format "[%a %b %d %H:%M:%S %Y]") ;; {_} (setq howm-template-date-format "[%Y-%m-%d %H:%M]") ;; テンプレート
「file://…」や「http://…」の変更 (ましな設定募集) thx > 945
;; howm (正確には action-lock.el) のロードより前に. ;; ・file://… (setq action-lock-open-regexp "\\<file://\\(localhost\\)?\\([-!@#$%^&*()_+|=:~/?a-zA-Z0-9.,;]*[-!@#$%^&*()_+|=:~/?a-zA-Z0-9]+\\)\\>") (setq action-lock-open-regexp-pos 2) ;; 2 個目の「\\(…\\)」がファイル名 ;; ・http://… (setq action-lock-browse-regexp "\\<\\([htp]\\{3,5\\}s?\\|ftp\\)://\\([-!@#$%^&*()_+|=:~/?a-zA-Z0-9.,;]*[-!@#$%^&*()_+|=:~/?a-zA-Z0-9]+\\)\\>" (setq action-lock-browse-regexp-pos 0) ;; マッチした全体が URL
action-lock 追加例: 「Message-ID: …」でリターン押したら, 該当メールを namazu で検索
;; howm を load した後に (defun my-howm-search-message-id (id) (message "Searching...") (let* ((query (format "+message-id:%s" id)) (args `("-l" "-n" "1" ,query "/home/hoge/NMZ/Mail")) (found (car (howm-call-process "namazu" args)))) (if found (progn (find-file found) (re-search-forward "^$" nil t) (message "Done.")) (message "No match.")))) (setq action-lock-default-rules (cons (action-lock-general 'my-howm-search-message-id "Message-[Ii][Dd]: \\(.*\\)$" 1) action-lock-default-rules))
メニューを更新するたびに, カレンダーへの export も更新 (→外部ツール)
(defun my-howm-menu-hook () (shell-command "tag2plan ~/howm/*/*/*.howm > ~/.dayplan_tag &") (switch-to-buffer howm-menu-name)) (add-hook 'howm-menu-hook 'my-howm-menu-hook)
おまけ
(setq howm-congrats-format '( "(´・ω・`) %s" "(`・ω・´) %s" ;; …以下略… ))
(同梱ツールは ext/ に)
メモディレクトリ ~/howm/ を変換して ~/converted/ に吐く
./howm2 ~/howm/ ~/converted/
<<< の大文字小文字を無視
./howm2 -i ~/howm/ ~/converted/
リンク書式の指定
./howm2 -comefrom='<<<' -goto='>>>' ~/howm/ ~/converted/
「ほげ」を含むファイルだけ HTML 化
grep -rl 'ほげ' ~/howm/ | howm2 -list ~/converted/
カレンダー(予定・〆切・済みの一覧)を出力
hcal.rb -schedule_mark='○' -deadline_mark='●' -done_mark='/' ~/howm/*/*/*.howm
こんな感じでずらずら
----------------<6>---------------- 2003 01 Sun 02 Mon ●田中先生に連絡 ○B4輪講 小林 ○工学基礎実験 12:40 <<<<##>>>> …
こんな感じで alias しとくと便利
alias hcal="hcal.rb -schedule_mark='○' -deadline_mark='●' -done_mark='/' ~/howm/*/*/*.howm | less '+/<<<<#'"
コマンドラインで
hcal.rb -l memo.txt
emacs から M-x grep して
Run grep (like this): hcal.rb -l ~/memo/*.txt
キーワードを決めて, 日記中に書いておく
$食費$ 500円 ラーメン
(バグの指摘をくださる方へ)
できるだけ make test をお願いします
cd howm-○.○.○ make test
元ネタ参照. 特に, Q-pocket・HashedWiki・ChangeLog メモからいっぱいまねしてます. 感謝.
thx > patch・改良案・指摘をくださった皆様
いまどきの GNU grep を使っているなら↓もしておくと無駄な検索を省けます.
(setq howm-view-grep-option "-Hnr --exclude-dir=_darcs")
さらに, *.howm だけ検索するようにしたければ…
(setq howm-view-grep-option "-Hnr --exclude-dir=_darcs --include=*.howm")
.emacs 等で (setq howm-list-normalizer 'howm-view-sort-by-○○) と設定していたなら, 次のように書きかえる
(setq howm-normalizer 'howm-sort-items-by-○○)
前のように戻したければ…
;; 今日と明日の日付は, [YYYY-MM-DD] の形式だけ着色 (setq howm-highlight-date-regexp-format (regexp-quote "[%Y-%m-%d]"))
メニューの曜日表記をリストで指定するよう変更. 英語表記のデフォルトも "Sun" 等に直した. thx
(setq howm-day-of-week-ja '("日" "月" "火" "水" "木" "金" "土")) (setq howm-day-of-week-en '("Sun" "Mon" "Tue" "Wed" "Thu" "Fri" "Sat"))
howm-view-grep-option に複数のオプションを書けるように. thx
(setq howm-view-grep-option "-Hnr --include=*.howm") ;; *.howm のみ検索
単語の途中がたまたま come-from キーワードに一致しても下線を引かない設定. thx > Mielke-san (peter.mielke at gmail.com)
;; ASCII 文字のみのキーワードは, 単語途中にマッチしても下線を引かない (setq howm-check-word-break "^[[:ascii:]]+$")
ソースの編集が可能なら, howm.el の末尾に以下のコードを加えるのが確実です. バイトコンパイルのしなおしもお忘れなく.
;; howm-1.2.2 以降用. howm 関連の全シンボルに risky-local-variable 属性. (mapcar (lambda (symbol) (put symbol 'risky-local-variable t)) (howm-symbols))
それが困難な場合は .emacs に以下を加えてください.
(eval-after-load "howm" ; ← autoload/load/require の記述にあわせて ;; howm-1.2.2 以降用. howm 関連の全シンボルに risky-local-variable 属性. '(mapcar (lambda (symbol) (put symbol 'risky-local-variable t)) (howm-symbols)))
以下を *scratch* バッファに貼り, 閉じ括弧の後にカーソルを置いて C-j を 押す
(get 'howm-version 'risky-local-variable)
以下のように変数ごとに解禁してください.
;; 例: 変数 howm-auto-narrow はファイルごとの自動設定を許可 (put 'howm-auto-narrow 'risky-local-variable nil)
.emacs に以下を加えてください. ただし emacs のバージョンによっては不完全かもしれません. ref
;; ローカル変数の自動設定をオフ (setq enable-local-variables nil)
一覧時の内容バッファにファイル全体を表示させる
(setq howm-view-preview-narrow nil)
リマインダのカスタマイズ thx
;; 新しい型のリマインダ「*」を定義する例: ;; 「[2004-07-11]* ほげ」は, 指定日まで上昇し, そのあと下降. ;; (旬度 = - |遅れ / 猶予日数|. 猶予日数のデフォルトは 3) ;; 1. 旬度関数を準備 (遅れと猶予日数(とアイテム)を食って旬度を吐く) ;; 遅れ: 指定日から今日までの日数. まだならマイナス. ;; 猶予: 「[2004-07-11]*8」なら 8. 「[2004-07-11]*」だけなら nil. ;; 旬度: 大きいほど上. 「覚書」なら初日が 0 で毎日 1 ずつ減る. ;; (アイテム: ふつうは使わないけどついでに. howm-backend.el 参照) (defun my-priority (late lazy item) (let ((r (howm-todo-relative-late late lazy 3))) ;; r = late / lazy. 無指定時は lazy = 3. (- (abs r)))) ;; 2. face を準備 (defface my-face '((t (:foreground "cyan"))) "my face") (setq my-face 'my-face) ;; 3. 記号, 旬度関数, face を登録. ;; 残りの引数二つは, 「予定表に表示するか」「todo リストに表示するか」. (howm-define-reminder "*" #'my-priority 'my-face nil t)
[2004-07-16 10:15]@ 会議
日付上で RET×2 してから…
-, + → 前日, 翌日 (, ) → 前日, 翌日 {, } → 前月, 翌月 [, ] → 前年, 翌年
ヒットしなかったらその先の日付を順に探す
(setq howm-date-forward-ymd-limit 90) ;; 90日先で give up
日付入力「C-c , d」したときの動作をさらに小賢しく
(setq howm-insert-date-pass-through t)
おまけ
(setq howm-congrats-command '("play" "~/sound/level.wav"))
一覧表示にいちいち戻ることなく, 一覧の次項目を直接開く:
(defun my-howm-next-hit (n) (interactive "p") (let ((buf (save-window-excursion (howm-return-to-list) (when (not (eq major-mode 'howm-view-summary-mode)) (error "Sorry. This case is not cared.")) (forward-line n) (let ((howm-view-summary-keep-cursor nil)) (howm-view-summary-open)) (current-buffer)))) (switch-to-buffer buf))) (defun my-howm-previous-hit (n) (interactive "p") (my-howm-next-hit (- n)))
除外するバッファ名の設定
(setq howm-list-buffers-exclude '("*Messages*" ".howm-keys" ".howm-history"))
howm-search-path に, 通常の「ディレクトリ」以外も書ける
;; namazu folder と rot13 folder を検索対象に追加 ;; (M-x howm-toggle-search-other-dir で有効・無効を切りかえ) (let* ((nd "~/PATH/NMZ/Mail") ;; namazu インデックスのあるディレクトリ (rd "~/g/r13") ;; このディレクトリ以下のファイルは rot13 される (nf (howm-make-folder:namazu nd)) (rf (howm-make-folder:rot13dir rd))) (setq howm-search-path (list nf rf))) (howm-toggle-search-other-dir 1) ;; 0 なら初期状態は「無効」
一ファイル複数メモのときも, 絞り込み等をファイル単位じゃなくメモ単位に. ただし, date での絞り込みはファイル単位のまま.
(setq howm-view-search-in-result-correctly t)
メニューの %reminder 中に仕切り
(setq howm-menu-reminder-separators '( (-1 . "━━━━━━━今日↓↑超過━━━━━━━") (0 . "━━━━━━━予定↓━━━━━━━") (3 . "━━━━━━━もっと先↓↑3日後まで━━━━━━━") (nil . "━━━━━━━todo↓━━━━━━━") ;予定とtodoの境 ))
howm 関連の全バッファに共通の色設定
;; 「ほげ」と「[ふが]」に着色 ;; ・設定法の詳細は, 変数 font-lock-keywords のヘルプを参照 ;; ・face の一覧は M-x list-faces-display (setq howm-user-font-lock-keywords '( ("ほげ" . (0 'highlight prepend)) ("\\[ふが\\]" . (0 'font-lock-doc-face prepend)) ))
今日の日付として, [2005-05-19] でなく 2005-05-19 をハイライト thx
(setq howm-highlight-date-regexp-format (regexp-quote howm-date-format))
[2005-05-15 21:37]@ のような書式の予定は, 時刻順にソート thx
(setq howm-schedule-sort-by-time t)
howm-directory を rast で検索する場合
;; rast データベースの位置と, メモが実際にあるディレクトリとを指定 (setq howm-directory (howm-make-folder:rast "/tmp/rastdb" (expand-file-name "~/howm/"))) ;; メニューファイルを陽に指定する必要あり (setq howm-menu-file (expand-file-name "~/howm/0000-00-00-000000.howm")) ;; お望みなら, ファイル保存時にデータベースを自動更新 ;; (更新失敗したときのことなんかは考えてない) ;(setq howm-rast-register-command ; (expand-file-name "~/elisp/howm/ext/howm-rast-register.rb")) ;(add-hook 'howm-after-save-hook ; (lambda () (howm-rast-register-current-buffer "/tmp/rastdb")))
howm-directory に加えて, 別のどこかを rast で検索する場合
;; rast データベースの位置 (setq howm-search-path (list (howm-make-folder:rast "/tmp/rastdb"))) ;; 正 = howm-search-path も探す (howm-toggle-search-other-dir 1)
両者共通で…
(setq howm-rast-search-command (expand-file-name "~/elisp/howm/ext/howm-rast-search.rb"))
タイトルが空のときは本文の一行目をタイトルに. 重さが心配.
;; タイトル欄がこれにマッチしたときは, マッチしない最初の行を ;; 代替タイトルとする (setq howm-view-title-skip-regexp "\\(^=? *$\\)\\|\\(^\\[[-: 0-9]+\\]\\)") ;; ↓も設定しておかないと↑は機能しない (setq howm-view-search-in-result-correctly t)
grep 使用時の coding system 指定 thx
(setq howm-process-coding-system 'euc-japan-unix)
一行目を howm-template の %title に, 残りを %cursor に, としたければ
(setq howm-remember-first-line-to-title t)
新規メモ作成をすべて howm-remember にするには…
;; howm-create をすべて howm-remember にすりかえる (defadvice howm-create (around remember activate) (if (interactive-p) (howm-remember) ad-do-it)) (setcdr (assoc "[新規]" howm-menu-command-table-ja) '(howm-remember current)) ;; [2006-05-15] 修正
メニューにこう書くと, 「foo」「bar」「baz」を含む todo を 分類して表示
%here%(howm-menu-categorized-reminder ("foo" "bar" "baz"))
さらに, 各行の「foo」「bar」「baz」を消したければ
%here%(howm-menu-categorized-reminder ("foo" "bar" "baz") nil t)
「misc.」を非表示にしたければ
%here%(howm-menu-categorized-reminder ("foo" "bar" "baz") nil nil t)
一覧バッファのマッチ内容の左にタイトルを表示. ちなみに従来のは, 「マッチ内容のかわりにタイトルを表示」. thx > Highfly さん
(setq howm-view-list-title-type 2) ;; マッチ内容の左にタイトルを表示 (setq howm-view-summary-format "") ;; ファイル名を消したければ
メモのどこかに下のように書いておくと, 今日の位置にそれが表示される
[2004-11-01]_0 ━━━━━━━━━━━━━
メニューからリマインダを直叩きしたときに, 対応バッファの行数が多少ずれていても許す. thx
(setq howm-action-lock-forward-fuzziness 5) ;; 何行までずれても許すか
一覧時にウィンドウ分割を壊さない設定. thx
(setq riffle-keep-window t) (setq riffle-window-initializer nil)
todo 一覧(M-x howm-list-todo)にも仕切りを表示
(setq howm-todo-separators '( (0 . "━━━━━━━↑超過━━━━━━━") (nil . "━━━━━━━潜伏中↓━━━━━━━") ))
バッファ名を, ファイル名ではなくタイトルにする. thx > Mielke-san (peter at exegenix.com), thx
;; emacs 上でのバッファ名を, ファイル名ではなくタイトルに. ;; (ファイル名自体は変更しない) (add-hook 'howm-mode-hook 'howm-mode-set-buffer-name) (add-hook 'after-save-hook 'howm-mode-set-buffer-name)
タイトル「ほげ」のメモのバッファ名を「=ほげ」に thx
;; タイトルが AAA ならバッファ名を =AAA に. ;; 下の howm-mode-set-buffer-name を設定した上で… (setq howm-buffer-name-format "=%s")
howm-occur の grep 設定
;; M-x howm-occur 時は外部コマンドの grep を使わないよう設定. ;; ○ grep でなく emacs の正規表現を使用 ;; ○ 正規表現検索もハイライトされる ;; × 極端に巨大なバッファだと遅いかも (setq howm-occur-force-fake-grep t)