1

(EMACS 24.2)関数呼び出しをハイライトする必要があります。私はこれをインターネットで見つけました

(add-hook 'c-mode-hook (lambda ()
   (font-lock-add-keywords nil '(
      ("\\<\\(\\sw+\\) ?(" . 'font-lock-function-name-face))t)))

動作しますが、次の開き括弧も強調表示されます。正規表現に自信がありません。括弧が強調表示されないように一致文字列を変更するにはどうすればよいですか?

ここに画像の説明を入力してください

4

1 に答える 1

10

正規表現は問題ありません。試合全体ではなく、試合の最初のグループを強調表示する必要があります。に置き換え. 'font-lock-function-name-faceます1 'font-lock-function-name-face

変更するもう1つのことは、単なる推奨事項ですがfont-lock-add-keywords、最初の引数としてモード名を受け入れることです。したがって、フックを使用する必要はありません。

結果:

(font-lock-add-keywords
 'c-mode
 '(("\\<\\(\\sw+\\) ?(" 1 'font-lock-function-name-face)))
于 2013-02-05T20:21:35.890 に答える