1つまたは複数の訪問済みファイルが他の場所から変更されたという事実をemacsに通知するにはどうすればよいですか?ここでは、この機能がGeditの中に実装されている方法は次のとおりです。EmacsWikiで"Revert Buffer"文書で説明し、回避策(私の個人的な好みのために少し修正された)のようなものを見つけEmacs - ファイルが外部で変更されたときに通知する
私はアプローチを見て撮影しました。
(global-set-key (kbd "<f5>") (lambda()
(interactive)
(if (string= (buffer-name) ecb-directories-buffer-name)
(refresh-ecb)
(if (buffer-modified-p)
(revert-buffer) ; ask for confirmation
(revert-buffer t t))))) ; don't ask for confirmation - it's unnecessary, since the buffer hasn't been modified
これは素晴らしいですが、私が望むのは自動解決策です。たぶん、ある種のノイズの多いメッセージがバッファーにインライン展開されているかもしれません(スクリーンショットのように)。たぶん、Visual Studioで実装されているようなモーダルダイアログ(迷惑ですが、やっぱりやってみましょう)。あなたの提案は何ですか?
バッファはEmacsの外で変更されたとき、Emacsは、質問と警告を表示しませんか?騒々しいほどではないですか? – Tom
ええ、そうですが、バッファが汚れていないときと、入力を開始したときだけですが、バッファに切り替えると即座には効かなくなります。 –
可能であれば、画像を更新してください –