1
特定の行のカスタムインデント?
私は現在、バッファの残りのインデントをめちゃくちゃにすることなく、具体的にいくつかの行を処理する方法を理解しようとしています。MyFunc例として次の関数を考えてください: void MyFunc() { unsigned y = 0; DONOTINDENT; unsigned int x = 5 + 2; return x + 12; } ここでは、行DONOTINDENT;を列0までインデントしますが、関数の残りの部分は通常インデントする必要があります。私は次のカスタムを使用してこれを解決しようとしましたc-special-indent-hook: (defun my-c-mode-indent-hook () (let (p1 p2 myline) (setq p1 (line-beginning-position)) (setq p2 (line-end-position)) (setq myLine (buffer-substring-no-properties p1 p2)) (if (string-match-p "DONOTINDENT" myLine) (save-excursion (indent-line-to 0)) ) ) ) …