スパム対策として書込み時にID/PWを要求されますが、ローマ字で ほげ/ホゲ で書き込めるようになります。

C/C++関数を強調表示

メッセージ

サクラエディタ wiki
http://sakura.qp.land.to/?%C0%B5%B5%AC%C9%BD%B8%BD%2F%C5%EA%B9%C6#w02a741e
にある「C/C++関数を強調表示」を Vim の正規表現に翻訳してみました。

シンプル版

syntax match CFunction /[a-zA-Z_]\+\w*\s*(\@=/ 
hi CFunction guifg=#ff0000 guibg=#ffff00 

単純な形の関数名に色がつきます。
ただし 1, 2 の場合、「void 」「int 」の部分に色がついてしまいます。

1.    void (*aaa)(int bbb, int ccc);
2.    int (*pfunc[])(int, int);

次のように、関数名と括弧の間の空白を許さないようにした方がいいかもしれません。

syntax match CFunction /[a-zA-Z_]\w*(\@=/

関数ポインタ対応版

syntax match CFunction /[a-zA-Z_]\w*\s*\(\(\[[^]]*\]\s*\)\?(\s*[^\*]\)\@=/
syntax match CFunction /\*\s*[a-zA-Z_]\w*\s*\(\(\[\]\s*\)\?)\s*(\)\@=/
hi CFunction guifg=#ff0000 guibg=#ffff00 

1番目の :syntax により 3, 4, 6 に、 2番目の :syntax により 1, 2, 5 に色がつきます。

1.    void (*aaa)(int bbb, int ccc);
2.    int (*pfunc[])(int, int);
3.    pfunc[0](a,b);
4.    pfunc[MAX](a,b);
5.    (*pfunc)(5,2); 
6.    hogera(a,b);




トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2014-10-14 (火) 01:13:17 (1467d)