ブログ記事からの転載です。
他人の書いた C/C++ のコードを見ているとあまりにも予約済み識別子を無視してコードを書いているものが多いので、ついカッとなってつくった。
プラグイン
NeoBundle 'osyo-manga/vim-cpp-syntax-reserved_identifiers'
また、デフォルトでは WarningMsg
のハイライトを使用します。
任意のハイライト色にしたい場合は、
" ErrorMsg を任意のグループに置き換えるhighlight link cReservedIdentifiers ErrorMsg
みたいな設定で変更できます。
『グローバルスコープを持ち、_ で始まる名前』のハイライトを無効にする
予約済み識別子の条件の一つに
- グローバルスコープを持ち、_ で始まる名前
というのがあるんですが Vim で『グローバルスコープ』という条件付けを行うのは無理なので単純に
- _ で始まる名前
をハイライトするようにしています。
なので以下のようなコードもハイライトされます。
こういうコードをハイライトしてほしくない場合は、予め
letg:c_no_reserved_identifiers_start_underbar_lower_case=1
と、いうような設定をしておくことで
- _ + 小文字で始まる名前
のハイライトを無効にできます。
何気に syntax 系のプラグインをつくったのは初めてなので問題や要望があれば Issues までお願いします。
[おまけ]
ちなみに当然ではありますが、予約済み識別子をガシガシ使ってる標準ライブラリのコードももちろんハイライトされます。
まぁこれはしょうがないか…。