'smart-operator'マイナーモードは非常に興味深いようです。.elは、cプログラマーが「a+b」を「a+b」に変えるなど、ある種の演算子を含むスペースを追加するのに役立ちます。私はちょうどそれにショットを与えました。次の問題を除いて、それはうまくいきます。これが状況です。
'-'演算子に関しては、'a --b'と'-1'、'-ENOMEM'の両方の場合に使用できます。Smart-operatorは、最初のユースケースをカバーしています。ただし、後者では機能しません。この部分に関連するコードは次のとおりです。
(defun smart-operator-- ()
"See `smart-operator-insert'."
(interactive)
(cond ((and c-buffer-is-cc-mode (looking-back "\\- *"))
(when (looking-back "[a-zA-Z0-9_] +\\- *")
(save-excursion
(backward-char 2)
(delete-horizontal-space)))
(smart-operator-insert "-" 'middle)
(indent-according-to-mode))
(t
(smart-operator-insert "-"))))
'-ENOMEM'の場合に機能するようにコードを変更するにはどうすればよいですか?