QFixHowm Ver.3

QFixHowm Ver.3

QFixHowm Ver.3 は大幅なリファクタリングを行ったバージョンですが、機能やオプションはほぼ変わりありません。

Ver.2までは特定用途向けの処理が多かったのですが、Ver.3ではより汎用的に扱えるように必要最小限の処理のみ行うように変更されています。

変更のあったオプションは主にファイルタイプ指定ですが、ファイルタイプや拡張子指定については直感的に扱えるようになっています。

QFixHowm Ver.3で変更された設定について

インストール

QFixHowm Ver.3

インストール方法は Ver.2と変わりありません。

インストール

QFixHowm Ver.3で変更された設定について

QFixHowm(Ver.3)の設定は Ver.2のものがそのまま使えますが、一部変更されたものがあります。

特にファイルタイプ指定などはより簡単で直感的に扱えるように変更されています。また howm以外のファイルタイプを使用する場合はタイトル行の検索用正規表現を自由に設定することもできるようになりました。

ファイルタイプの設定

Ver.3でのファイルタイプ切替は QFixHowm_FileTypeのみで変更可能です。ファイルタイプを変更してもタイトル行等は色分け表示されます。

" ファイルタイプをmarkdownにする

let QFixHowm_FileType = 'markdown'

ファイルタイプは明示的に指定することも可能ですが、拡張子から自動設定させることも出来ます。

" 拡張子が'mkd'ならファイルタイプは'markdown'になります

let QFixHowm_FileType = ''

これでファイルタイプの設定は終わりですが、markdownの場合はタイトル記号を # に設定するとQFixHowmのバッファを完全にmarkdownバッファとして扱えるようになります。

" タイトル記号を # に変更する

let QFixHowm_Title = '#'

Markdownを使用する

qfix_memoファイルタイプ

let QFixHowm_FileType = 'qfix_memo' を設定すると以下とほぼ同等のシンタックスハイライトが有効になります。

http://sites.google.com/site/fudist/Home/qfixhowm/option/outline-mode#user-syntaxfile

予定・TODO等のシンタックスハイライトはsyntax/howm_schedule.vimとしてビルトインになっています。

独自処理の付加

キーマップを変更したり、読み込み時や保存時に独自処理を加えたい場合は misc/user-func.vimを参照してください。

イベントについては K のヘルプで参照可能です。

BufWritePreイベントは自動整形に使用するため env-cnv.vimでも定義されていますが、user-func.vimの方が優先されますので気をつけて下さい。

その他

基本的に問題はないと思いますが、howm-chenv.vimで問題があるようならhowm-chenv.vimをアップデートしてください。

QFixHowm Ver.3の概要

Ver.3では各機能を独立したプラグインとして実装しています。

QFixHowm(Ver.2)は howm-mode.vimへのパッチの寄せ集めから開発を始めた関係で構造が煩雑になっています。

また Ver.2には実験的なオプションやコマンドも多いため、設定がわかりにくいところもあります。

Ver.3の基本的な使用方法は Ver.2と同じですが、できるだけシンプルに、またhowm形式べったりではなく自由な書式を扱えるようにリファクタリングを行っています。

内部的には「QFixMemo」という独立したメモ取りプラグインが動作していて、QFixHowmのオプションを変換して使用するという形です。

QFixMemoは書式とメモ取りのためのシステムが完全に独立していて、独自の書式を使用することが非常に簡単に行えます。

QFixHowmのオプションは env-cnv.vimで変換されますが、変換を無効にして QFixMemoとして使用する事もできます。

QFixMemoについて

もともと作者は他のエディタで自作のメモ取りツールを使用していたのですが、諸事情からエディタをVimに一本化することにしました。

そこでVimでメモ取りを行うためにhowm-mode.vimを使ったのですが、色々と不満があったのでパッチや改変を経て暫定的に出来たのがVer.2です。

これとは別に並行して自作のメモ取りツールの移植として作っていたライブラリ(QFixMemo)にhowmのインターフェイスを被せたのがVer.3ということになります。

Ver.3はQFixHowmをhowm以外のメモ形式で使いたいとか、予定・TODOは不要なのでメモ部分だけを使いたいという要望を受けてQFixMemoをQFixHowmとして使えるようにしたもので、将来的にQFixMemoをオプションコンバート抜きでQFixHowmの後継として配布する予定は今のところありません。

ただしQFixMemoをQFixHowm互換にするためコマンド実行時にオプションのコピーが毎回行われるので、気になる方はenv-cnv.vimを無効化して使用する方が良いかもしれません。

" QFixMemoとして使用する

let QFixHowm_Convert = 0

QFixMemo自体についてのドキュメントは doc/qfixmemo.jaxを参照してください。

オプションの対応関係については env-cnv.vimを参照すると良いかもしれません。

なおVer.2とVer.3(QFixMemo)の内部構造は異なりますが現状では外から見た場合ほぼオプション名が異なるだけとなっていますので、さほど問題なく移行できるかと思います。

予定・TODOに関しては前述のとおり howm-schedule.vimとして独立したプラグインを使用していますので QFixMemoとしてのオプションは存在しません。