如何让Emacs shell命令发送桌面通知
发表于:2024-11-11 作者:千家信息网编辑
千家信息网最后更新 2024年11月11日,小编给大家分享一下如何让Emacs shell命令发送桌面通知,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!我总是使用 E
千家信息网最后更新 2024年11月11日如何让Emacs shell命令发送桌面通知
小编给大家分享一下如何让Emacs shell命令发送桌面通知,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
我总是使用 Eshell 来与操作系统进行交互,因为它与 Emacs 无缝整合、支持处理 (远程) TRAMP 文件,而且在 Windows 上也能工作得很好。
启动 shell 命令后 (比如耗时严重的构建任务) 我经常会由于切换缓冲区而忘了追踪任务的运行状态。
多亏了 Emacs 的 钩子 机制,你可以配置 Emacs 在某个外部命令完成后调用一个 elisp 函数。
我使用 John Wiegleys 所编写的超棒的 alert 包来发送桌面通知:
(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 的规则可以用程序来设置。就我这个情况来看,我只需要当对应的缓冲区不可见时得到通知:
(alert-add-rule :status '(buried) ;only send alert when buffer not visible :mode 'eshell-mode :style 'notifications)
这甚至对于 TRAMP 也一样生效。下面这个截屏展示了失败的 make
命令产生的 Gnome 桌面通知。
以上是"如何让Emacs shell命令发送桌面通知"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
命令
桌面
篇文章
任务
内容
缓冲区
缓冲
操作系统
不怎么
函数
大部分
常会
情况
文件
无缝
更多
机制
状态
知识
程序
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
安徽戴尔r750服务器价格
金融行业对网络安全的需求
支付软件开发报价
tmgm找不到服务器
数据库建模实验原理
通信网络技术论述
信息网络安全风险评估
地球末日 服务器
数据中心服务器供应公司
鼎捷如何连接服务器
服务器断电后开机不启动
穿越火线有没有自己的服务器
exp导出整个数据库
hlsw服务器管理
软件开发类论文大纲
软件开发易程模板算量软件
商务星软件开发
软件开发培训得多钱
涉及网络安全的案件
2022新世界最新服务器
excel整百数据库
云服务器数据安全技巧
以最大力度保障网络安全畅通
cmd里数据库登录
外卖服务器出租
乐麦网 软件开发
原360云盘数据库
三级计算机网络技术培训
软件开发方法范文
数据库恢复模型