QFixHowm - クイックスタートガイド
始めに
とりあえずこれだけ覚えれば十分に使えるであろうというコマンドと解説をまとめました。
howmの使い方は理解しているという方もQFixHowm特有の部分があるので一応目を通してみて下さい。
最初に覚えるのは ,c と ,m だけでかまいませんので、とにかく実際にメモ取りをしてみてください。
作者自身も普段のメモ取りには ,u ,m ,c のコマンドぐらいしか使用していません。
QFixHowm_Keyに 'g' を指定した(デフォルトの)場合、 ,c の「メモを作成する」の実際のコマンドは g,c になります。
g,cを入力します。
=
[2009-01-01 01:01]
というようにタイトル行とhowmタイムスタンプが挿入された内容のファイルが作成されます。
ファイル名は作成時刻になっています。
行頭が = と空白の行がタイトル行です。適当なタイトルを入力してください。
タイトルを考えるのが面倒な場合はとりあえず改行を入力して本文から始めて下さい。
タイトルを入力しなければ、本文から適当に設定されます。
基本的にフリーフォーマットなので後は自由に入力してください。
タイムスタンプの前に本文を書いても、後ろに書いてもフリーフォーマットなので問題有りません。
一つのファイルに複数のメモを書きたい場合は、行頭に = を書けばそれが新エントリのタイトル行として扱われ保存時にタイトルとタイムスタンプが付加されます。
g,n などの補助コマンドを使用して複数のメモを一つのファイルに書くこともできます。
何度かg,cで新規メモを作成して適当に入力して普通のファイルと同様の方法で保存してみて下さい。
urlやファイルアドレスは自動的にリンク化され、<CR>を押すことでブラウザで開くことが出来ます。
エントリの削除
消したいエントリは g,x を使用すると一度で削除する事が出来ます。
一ファイル複数エントリの場合便利です。
ファイルの削除
消したいファイルがある場合はファイルの中身を全て削除してから保存するとファイル自体も削除されます。
エントリ一覧表示
g,m を使用するとQuickfixウィンドウが開いて、最近「作成/更新/閲覧」したエントリの一覧(MRUリスト)が表示されます。
j k などで移動するとプレビュー表示されるので編集したいエントリに合わせてから<CR>でを選択して下さい。
エントリ一覧のコマンドにはいくつか種類がありますが、最初に覚えるコマンドは ,m だけでかまいません。
エントリの数が20(MRUのデフォルト表示数)を超えるようになったら ,l ,L ,a を使用してみて下さい。
,l はファイルの更新時間を元にエントリ一覧を作成して、,Lはエントリのタイムスタンプを元にして最近のエントリ一覧を作成します。
全エントリ一覧を表示する場合は基本的に g,a を使用し、最新の状態に更新したい場合のみ g,raを使用してください。
最初のうちはそうでもないですが数千件のエントリを扱う場合では10倍以上の速度差があります。
全エントリ/ファイル一覧について詳しいことは以下にあります。
「MRUリスト」
Quickfixウィンドウ
QuickfixウィンドウのON/OFFにはlopen,lclose等のコマンドが使えますが、QFixHowmでは基本的に以下のコマンドを使用して下さい。
<C-w>,
<C-w>.
QuickfixウィンドウのON/OFF
Quickfixウィンドウへ移動
多数のウィンドウを開いていても、一度でQuickfixウィンドウに移動出来ます。
<C-w>, を使用すると前回のカーソル位置、ソート結果なども保存されますし、起動時のQuickfixウィンドウの高さなども指定できます。
Quickfixウィンドウのコマンド
Quickfixウィンドウに大量の検索結果が表示されている場合、絞り込み検索などが行えます。
以下にQuickfixウィンドウ上で使用可能なコマンドを抜粋して解説します。
ソートと絞り込み検索
検索結果が表示されている場合、絞り込み検索が出来ます。
Quickfixウィンドウ上のほとんどのコマンドは u Uでアンドゥが可能です。
エントリフィルタ(カテゴリ検索)と連結表示
howmには様々なジャンルのエントリを書きためると思います。
そんな時、特定の事柄についての一覧が必要になる事も良くあるはずです。
きちんとカテゴリ分けしておけばカテゴリで抽出するという方法が使えますが、howmではメモを書き殴っている時にいちいちカテゴリ分けをするのは面倒だということでカテゴリ分けに頼らず必要に応じて検索して表示するという方法を主に使う事になります。
たとえば「映画」について検索して、 Quickfixウィンドウに検索結果が表示されているとします。(全文検索は g,s です)
Quickfixウィンドウには「映画」が含まれる行が全て表示されているはずです。
この時 # を押すと同じエントリ内の行は一つにまとめられて「映画」を含むエントリ一覧が表示されます。
つまり「映画」に関するエントリ一覧表示のように使用できるわけです。
また @ を押すとQuickfixウィンドウに表示されている全エントリの内容を一ファイルにまとめて別バッファで表示します。
クイックメモと日記
g,c では現在時刻がファイル名になるので、エントリを新規作成した場合は全て別のファイルになります。
しかし日記や日報のように同じファイルにメモを書きたい時もあるかと思います。
そのような時は g,<Space>で今日の日付を元にしたファイルが開かれるので日記として使用して下さい。
また、一日ごとではなく常に同じファイルに書き込みたい事もあるかもしれません。
そのような時には g,uを入力するとクイックメモファイルを開きます。
常に同じファイルが開かれるので、一時的なメモなどを書くのに使用してください。
「クイックメモ」
クイックメモや日記で複数のエントリを作成したい場合は、行頭に = を書くだけで別エントリのタイトルとして扱われ、保存時にはタイムスタンプも付加されます。
一ファイル複数エントリで使用する場合に便利なコマンドも用意されています。
クイックメモに特定の機能や制限はないのでどのように使用しても問題有りませんが、想定している使用例としては以下のようなものがあります。
- 何か思いついたらクイックメモをとりあえず開いて、 ,p や ,nでアイディアメモのエントリを追加する。
- エントリを編集する。
- ある程度アイディアがまとまって独立したエントリファイルにしたくなったら、 ,X や ,W コマンドで別ファイルに独立させる。
またアウトラインモードを使用するとエントリ単位で折りたたみが可能です。
特定のファイルに関連づけたメモ
「ペアファイル」
特定のファイルと対になるメモファイルを書きたい時もあるかもしれません。
例えば現在 public.cppというソースファイルを開いていてコメントなりTODOなりを書き込みたいのだけれど、ソース自体は公開されるものなので個人的なメモを書き込みにくいというような場合です。
このような時 g,j で現バッファとリンクされた howmファイルを開いてメモしておくことが出来ます。
開かれるファイルは現バッファのファイル名に .howm の拡張子を付加した howmファイルです。
例えば現在 public.cpp を編集していたとしたら g,j で (howm_dir)/pairlink/public.cpp.howm がメモ用として開かれる事になります。
文字列検索
エントリに含まれる文字列で検索したい場合もあるかと思います。
ノーマルモードで g,s を入力するとデフォルトでカーソル下の文字列が検索文字列に設定された文字列入力画面になります。
<CR>で確定すると固定文字列検索(正規表現を使用しない検索)が実行されます。
形式:ハイツレギスタ社製Tauri 34
↑ここにカーソルがあった場合ノーマルモードでg,sを実行すると"ハイツレギスタ"が検索文字列に設定されます。
(let MyGrep_DefaultSearchWord = 0でカーソル位置の単語を拾わないように設定することもできます)
デフォルトの検索文字列は<C-u>や<C-w>で削除して変更できます。
<CR>を押すと入力した文字列で、全てのhowmファイルを検索して更新時間順に表示します。
g,g では正規表現で検索が出来ますが、日本語をgrepする場合「ダメ文字」などの問題が起きる事があります。
QFixHowm, QFixGrepでは対処されていますが、日本語検索では固定文字列検索を基本に使用して下さい。
なお、QFixHowmは howm専用でない汎用のプレビュー付きGrepとして扱う事が出来ます。
おすすめの設定など
テンプレート
デフォルトでは 本家Emacs版準拠で、howmタイムスタンプが付加された状態で新規ファイルが作成されます。
「コマンドで挿入されるテンプレートのカスタマイズ」を利用すると、新規ファイルの内容を自由に設定可能です。
テンプレートのカスタマイズを使用して、新規エントリはタイトル記号だけで作成するようにする事も出来ます。
タイトルを付けたい時はタイトルから、とにかくメモしたい場合は<CR>を入力してからメモすると便利です。
タイトルやタイムスタンプは保存時に自動で付加されます。
アウトラインモード
一ファイル複数エントリで使用しているならg,o のアウトラインモードを使用してみて下さい。
クイックメモでは一ファイル複数エントリで使用する事も多いかと思いますが、エントリ数が多い場合は便利です。
,o
アウトライン用のコマンド QFixHowmOutlineを呼び出す。
デフォルトでは zi コマンドで折りたたみがON/OFFされます。
実態は折りたたみコマンドなので、通常の折りたたみコマンド(zi、zc、zrなど)で折りたたみをON/OFFしてみてください。
詳しい事はvimのヘルプ等で折りたたみコマンドを参照して下さい。
日記として使用する
日記として使用したい場合、カレンダー表示と併用する事も出来ます。
- 今日は2011年11月11日で、 11月3日と11月23日が休日のためハイライトされています。
- その他赤く表示されているのが休日です。
- +記号がついてハイライトされている日が日記が存在する日で、23日は日記も存在している休日なので#記号で表示されハイライトされています。
カレンダーの日付上で <CR>を押すと日記を書くことができます。
未来の日記を書くこともできるカレンダー表示した日記を簡単な予定・TODO機能として使うことができるかもしれません。
日記のみ一覧表示させたい場合は、 g,Aを使用します。
「ファイルリスト」
とりあえずQFixHowmを使えるようになったら
本文中のURLやファイル名
URLやファイル名を書くと<CR>でvimかブラウザで開けるようにリンク化されます。
http://www.example.com
https://www.example.com
ftp://www.example.com
file://c:/temp/hoge.txt
http://...
c:/temp/fuga.txt
~/puyo/piyo.txt
ただしマルチバイト文字や空白を含むパスなどは扱えません。
その場合は [c:/temp/ほげ ふが.jpg:] のように [ と :] で囲むとマルチバイト文字や空白を含むパスも扱えます。
Vimで開きたいファイルは [ と :vim] でくくることも可能です。
[c:/temp/ほげ ふが.tcl:vim]
ローカルファイルへのリンクは howm_dir を移動しても無効にならないように howm://を使用してリンクを張ると良いかもしれません。
「基準ディレクトリを使用してローカルファイルにリンクを張る」
画像のリンクを多用している場合、QFixHowmのエントリをHTML変換表示してblogのように画像と同時に表示する事も出来ます。
画像はサムネイル表示が行われ、一部のはてな記法はテーブルやリスト、引用部分などのHTMLタグに変換可能です。
「howmファイルをHTML変換してローカルblogのように使用する」
こういうエントリが
このように 変換されます。
メモに好みの色分けを行う
デフォルトではタイトル行とタイムスタンプぐらいしか強調(色分け)表示されません
デフォルトファイルタイプは howm_memo なので好みのシンタックスを定義すれば良いのですが面倒な場合は既存のファイルタイプを適用することが可能です。
ファイルタイプに qfix_memo を指定すると「文書構造とユーザ独自のシンタックスファイル」と同様の強調表示が有効になります。
" howmのファイルタイプ
let QFixHowm_FileType = 'qfix_memo'
バッファに markdownを使用する場合は以下のようになります。
" howmのファイルタイプ
let QFixHowm_FileType = 'markdown'
任意のファイルタイプでメモを取りたい場合は以下を参考にしてください。
キーワードリンク
[[キーワード]] のように [[ と ]] でくくるとキーワードがリンク化され、リンク化されたキーワード上で <CR>を押すとキーワードの検索を始めます。
これは Emacs版のhowmがそうなっているからですが、個人的にはキーワードに対応したファイルを開くようにしたほうが便利に思いますのでお好みで設定してみてください。
" キーワードはファイルを開く
let QFixHowm_Wiki = 1
" キーワードファイルの保存場所
let QFixHowm_WikiDir = 'wiki'
その他にもリンクがありますので詳しくは「リンクとアクションロック」を参照してみてください。
その他
「快適な使用のために」を参照してみてください。
より詳しい使い方やコマンド