QFixHowm - メモの強調(色分け)表示

QFixHowmのデフォルトではユーザが自由に変更可能なようにあまり強調(色分け)表示を設定していません。

必要ならメモに好みの色分けを追加設定してみてください。

Ver.3ではより簡単に設定可能になっていますので、強調表示を追加設定したい方はできるだけ Ver.3を使用してみてください。

howmメモのファイルタイプ指定

qfix_memoファイルタイプ

デフォルトはqfix_memoファイルタイプのシンタックスハイライトが有効です。

qfix_memoファイルタイプ

qfix_memoファイルタイプを明示的に設定するにはVimの設定ファイルに以下を追加してください。

" qfix_memoファイルタイプ
let QFixHowm_FileType = 'qfix_memo'

独自シンタックスを使いたい場合はファイルタイプを変更するだけで有効になります。

タイトル行やタイムスタンプ等はQFixHowm内部で設定されているので、きちんと表示されます。

既存のファイルタイプ

howmメモのファイルタイプは QFixHowm_FileTypeで好みのファイルタイプへ変更可能です。

たとえば markdown形式でメモを取りたい場合は以下のようにします。

" メモのファイルタイプ
let QFixHowm_FileType = 'markdown'

ファイルタイプは拡張子と異なる場合も多いので、set filetype? で確認してから設定して下さい。

python なら 拡張子が pyのファイルを開いてから :set filetype? で確認します。

:set filetype?

特定のファイルのみのファイルタイプ指定

特定のファイルにだけ特別な色分けを行いたいような事もあるかと思います。

たとえば pythonについてQFixHowmでコードの断片メモを書いていてpythonのシンタックスを適用したいなどです。

このような場合はVimのモードラインを使用して下さい。

デフォルトではファイルの先頭または最終行から5行以内に書いてあると有効になります。

howm_memoと pythonの両方の色分けを適用したい場合は、以下のように vim: と : で囲んで指定します。

= このhowmファイルにはpythonの色分けを使用する 
[2009-01-01 01:01]
vim: set syntax=qfix_memo.python :
  • modelineについては Vimの機能なのでヘルプ等を参照して下さい。

複数のファイルタイプ

Vimは複数のファイルタイプのシンタックスが適用可能です。

例えば howmに markdownのシンタックスも適用したい場合は . でつなげて指定します。

" howmファイルタイプ
let QFixHowm_FileType = 'markdown.qfix_memo'

シンタックスは後に指定した方がより優先して表示されます。

拡張子からの指定

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

" ファイルタイプは拡張子から設定
let QFixHowm_FileType = ''

この場合はhowm_filenameの拡張子のファイルタイプが適用されます。

" 拡張子がmkdなのでファイルタイプは'markdown'になります
let QFixHowm_FileType = ''
let howm_filename = '%Y/%m/%Y-%m-%d-%H%M%S.mkd'

タイトル記号まで含めた別形式

MarkdownとVimWiki」を参照してください。

qfix_memoファイルタイプ

デフォルトはqfix_memoファイルタイプのシンタックスハイライトが有効です。

qfix_memoファイルタイプを明示的に設定するにはVimの設定ファイルに以下を追加してください。

" qfix_memoファイルタイプ
let QFixHowm_FileType = 'qfix_memo'

qfix_memoファイルタイプではマークダウンのサブセットと独自拡張が有効になっています。

「qfix_memo.txt」をダウンロードして開くと主なハイライトが確認できます。

qfix_memoファイルタイプの主な記法は以下の通りです。

<!-- vim: set filetype=qfix_memo: --> = [:manual] qfixmemoのマークアップ qfix_memoのハイライト表示は、基本的にmarkdownファイルタイプと同じです。 ただしタイトル行やチャプター表示等の独自拡張部分ハイライト追加と、画面が乱れや すいmarkdownの文字強調の無効化が行われています(文字強調は有効化も可能です) 他のファイルタイプとの違いを確認したい場合は、このファイル先頭のファイルタイプ 指定部分の`qfix_memo`を`markdown`等に書き換えて再読込してみてください。 # タイトル行 タイトルマーカーとして行頭に`=#.`が使えます(`=`はqfixmemo_titleでの定義) マーカーは個数で6段階のレベル分け可能です。 == [:qfixhowm] qfixmemo ### [:markdown] markdown .... [:structured] 階層化テキスト 各タイトル内で`[]`を使うとカテゴリタグとしてハイライトされます。 ## タイムスタンプ howm形式のタイムスタンプがハイライトされます。 [2000-09-13 12:34] # チャプター (数値付きサブタイトルリスト) タイトルとは別にチャプターも使えます。 文頭が「数字.」で始まるとmarkdownでは順序つきリストとして扱われますが、 qfixmemoではチャプターとしてハイライトします。 qfixmemoにはワイルドカードチャプターという記法があり、`*.*`や`1.2`のようにチャプターレ ベルを設定することができます。 1. チャプターとは 文頭が`数字.`または`*.`で始まるとチャプターになります。 *.* レベル チャプターレベルは`*`と「数値部分」の数で決まります。 *.*.* ,zコマンド 範囲選択して`,z`(実際のキータイプは`g,z`)を実行するとチャプターの`*`は数字に置 き換えられます。 こうすることによって、順序付きリストでは面倒な「章の入れ替え」等が簡単に行なえ ます。 編集時にはワイルドカードチャプターで行い、完成したら`,z`で数値に置き換えると便 利です。 *. 折りたたみ .vimrcに以下を設定すると`zc`での折りたたみで、ワイルドカードチャプターを認識し て折りたたみます。 let g:QFixHowm_WildCardChapter = 1 *.* チャプターレベルに応じた折りたたみ デフォルトでは全ての章、節が独立した折りたたみになりますが、 以下を設定すると、チャプターのレベルに応じた折りたたみが設定されます。 QFixHowm_FoldingMode = 1 4. チャプターの数値 チャプターレベルを数値指定する場合、特に連続している必要はありません。 # リスト ## markdown記法 - 文頭を`-+*`で始めると順序なしリストになります - 種類の違うリストは入れ子になります + りんご * つがる * ふじ * 王林 + ゴリラ - ローランドゴリラ - マウンテンゴリラ + らっぱ ## hatena記法 hatena記法もサポートするため`-`と`+`については繰り返しも許容しています。 + 文頭を`-`で始めると順序なしリストになります + 文頭を`+`で始めると数値付きリストになります + 文頭を`-`または`+`の繰り返しで始めると階層化されます。 - りんご -- 王林 -- つがる -- ふじ - ゴリラ ++ ローランドゴリラ ++ マウンテンゴリラ - ラッパ なお`-`については3回以上の繰り返しで罫線のハイライトが有効になります。 # 定義リスト 以下の独自定義リストのハイライトが有効です。 :定義 :説明 markdownに定義リストはありません。 HTMLの<dl>タグをそのまま使うことで実現できます。 <dl> <dt>定義</dt> <dd>説明</dd> </dl> # 引用 > これは引用です > > > 以下を実行すると引用部本体がハイライトされます > > hi link qfixmemoBlockQuote Comment > > > > `.virmc`か`after/syntax/qfix_memo.vim`を作成して、 > > 追加するなどしてみてくださ # URLとファイル 文中のURIは独自にハイライトされます。 http://www.google.com http://example.com:8080 file://c:/example.txt 日本語や空白を含む場合は以下の独自記法であればハイライトされます。 [:c:\temp\ほげ.txt:] ## markdownのURL表記 [リンクテキスト](https://www.example.com) ![画像リンクテキスト](https://www.example.com/hoge.jpg) [リンクテキスト](https://www.example.com/foo.html "タイトル") ![画像リンクテキスト](https://www.example.com/fuga.jpg "タイトル") タイトルはHTMLではホバーテキスト等で表示されます。 ### markdownの定義参照リンク markdownのURL表記 [ほげ][example] [ふが][example] [example][] 上記3個のいずれも同じリンク先を参照する定義参照リンクです。 参照リンク先は次のように定義します [example]:http://example.com/anonymous # コードスニペット ## markdown ```cpp print("hello world.\n"); ``` ## はてな >|cpp| print("hello again.\n"); ||< ## 文中の`コード`表示 文中の`コード`もハイライト可能です 以下を実行すると、`コード表示`自体もハイライトされます。 :hi link qfixmemoCode Define `.virmc`か`after/syntax/qfix_memo.vim`を作成して、追加するなどしてみてくださ い。 ## コード引用 行頭がタブか、4文字以上の半角スペースで始まるとコード引用となります。 行頭がタブ1個またはスペース4個以上ならコード引用 `コード引用`の場合ハイライトは<b>無効化</b>される 行頭がタブ1個またはスペース4個以上ならコード引用 `コード引用`の場合ハイライトは<b>無効化</b>される # 罫線 * * * - - - --------------------------------------- # 強調表示 htmlタグを利用して、文字の強調表示が可能です。 これは<em>強調表示</em>です。 これは<strong>強い強調表示</strong>です。 これは<b>強い強調表示</b>です。 これは<b><em>強い強調表示</em></b>です。

使用可能なタグはVimのmarkdown(html)ファイルタイプでハイライトされるものと同じで す。 markdownにも文字強調表示のマークアップが存在します。 _これは強調表示です_ __これは強い強調表示です__ *これも強調表示です* **これも強い強調表示です** ただしqfix_memoファイルタイプのデフォルトでは無効化されています。 これは画面が乱れる場合があることと、 3*3=9 のように文中に強調表示記号が強調記号 でない形で存在する場合でも、意図しない強調表示が行われる場合があるためです。 (\によるエスケープは可能ですが当然意図しない文になります) 以上を理解した上で強調記号を有効にしたい場合は、以下を実行して再読込してみてください。 let g:qfixmemo_markdown_emphasis = 1 特に問題ない場合は.vimrcに追加すると起動時から有効になります。* ## markdownファイルタイプ読み込みの無効化 以下を設定するとmarkdownファイルタイプの読み込みを行ないません。 let g:qfixmemo_markdown_syntax = 0 読み込みを行なわない場合htmlタグはハイライトされなくなりますが、このファイルで

使用されているマークアップはmarkdownタグを含めほぼそのままハイライトされます。

実際に`qfixmemo_markdown_syntax`を設定してから再読込して確認してみてください。