fill-paragraph
特定のモード(LaTeX-mode
によって提供されるなどAucTeX
)の動作を変更したいと思います。
キーを再バインドすることもできますがM-q
、usesのevil-mode
実装もevil-fill-and-move
使用していfill-region
ます。理想的には、カスタム塗りつぶし関数をfill-paragraph
使用して(ので機能するM-q
)とfill-region
(ので機能する)の両方の関数をオーバーライドしますevil
。
をformat
介してLaTeXコードを取り込み、stdin
フォーマットされたコードを出力するスタンドアロンプログラムがあるとするとstdout
、上記の2つのfill関数をオーバーライドして使用するにはどうすればよいformat
でしょうか。
(注:これはvim
のformatprg
オプションに似ています。)
私は試したことはありませんが、信じていません。悪の通常モードで
—
ケビン
evil-fill-and-move
キーシーケンスgq
にバインドされています。再バインドM-q
はこのキーバインドに影響を与えるべきではありません。ある意味で、私の質問は本当に2つの質問です:1)2つの関数を置き換える方法は?2)外部プログラムの使用方法は?2)の理由は、外部の非Elispソリューションをすでに持っているためです。
その場合、あなたはして、問題の一部を解決することができる
—
Vamsi 2014
(add-hook 'LaTeX-mode-hook (lambda () local-set-key (kbd "M-q") 'your-fill-function))
場所をyour-fill-function
カスタムのelispの関数定義があります。これにより、Auctexでのみそのキーコンボが設定されます。おそらくshell-command-on-region
、REPLACE引数を使用して定義することができますyour-fill-function
。
M-q
影響evil-fill-and-move
しますか?悪を使わないので好奇心旺盛です。とにかく、リージョンがアクティブな場合はfill-paragraph
呼び出しfill-region
ます。ですから、アドバイスしたりfill-region
、自分の機能に置き換えたりすることができます。