おかげでEmacsのフック機構、Emacsが外部コマンドの完了後に関数を呼び出すelispの設定することができます。 - ユルゲンHötzel
私がいつも使っ ESHELLを 、それがシームレスにEmacsと統合するためのオペレーティング・システムと対話するために、支援処理(リモート) TRAMPの、だけでなく、Windows上のファイルは非常にうまく機能することができます。
(そのような深刻な建物の時間のかかるタスクなど)シェルコマンドを起動した後、私は多くの場合、スイッチングによるバッファ状況追跡タスクに実行するのを忘れ。
Emacsのおかげ フック メカニズムは、Emacsが外部コマンドの完了後に関数を呼び出すelispの設定することができます。
私が使っ ジョンWiegleys 素晴らしい書かれた 警告の デスクトップ通知を送信するために、パッケージを:
(require 'alert)
(defun eshell-command-alert (process status)
"Send `alert' with severity based on STATUS when PROCESS finished."
(let* ((cmd (process-command process))
(buffer (process-buffer process))
(msg (format "%s: %s" (mapconcat 'identity cmd " ") status)))
(if (string-prefix-p "finished" status)
(alert msg :buffer buffer :severity 'normal)
(alert msg :buffer buffer :severity 'urgent))))
(add-hook 'eshell-kill-hook #'eshell-command-alert)
警告 ルールはプログラムによって設定することができます。対応するバッファが表示されていないとき、私はちょうど通知する必要があるこのような状況は、私にとっては:
(alert-add-rule :status '(buried) ;only send alert when buffer not visible
:mode 'eshell-mode
:style 'notifications)
これはさえのために TRAMP にも有効となります。次のスクリーンショットは、失敗を示す make
Gnomeデスクトップ通知がコマンドを生成しました。
経由: https://blog.hoetzel.info/post/eshell-notifications/
著者:ユルゲン・Hötzelの トピック:lujun9972の 翻訳は:lujun9972 校正:WXY
この記事 LCTT オリジナルのコンパイラは、Linuxの中国は 誇りに思っています