首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Emacs:如何使用GUI关闭按钮杀死(C-x40)帧的缓冲区?

Emacs:如何使用GUI关闭按钮杀死(C-x40)帧的缓冲区?
EN

Stack Overflow用户
提问于 2014-09-13 08:21:48
回答 1查看 533关注 0票数 1

我知道作为Emacs用户使用鼠标是一个坏习惯。然而,有时通过单击Finder左上角的红色"x“关闭按钮可以方便地关闭我的多个Emacs框架中的”一些“,而不是重复使用C-x40。

有没有办法重新绑定OS X GUI关闭按钮来删除(C-x 4 0)帧的缓冲区-即同时删除缓冲区和帧?如果缓冲区没有文件名,Emacs会要求我保存或丢弃缓冲区。

我的Emacs在OS X上是24.3.1。

EN

回答 1

Stack Overflow用户

发布于 2014-09-13 14:47:23

首先,在Emacs中使用鼠标并不是一个坏主意。恰恰相反。但这可能是一个坏习惯,正如你所说:任何过度的事情都可能是一个坏习惯。Emacs特别适合使用鼠标( Emacs鼠标比平时更强大),而且没有鼠标也可以很好地工作。使用鼠标的好处是:只需指向即可直接访问任何位置。

是的,当您单击窗口管理器X图标(或窗口管理器用来删除窗口的任何图标)时,您可以让Emacs执行一个命令(比如delete-frame)。您可以执行以下操作:

代码语言:javascript
运行
AI代码解释
复制
(define-key special-event-map [delete-frame] 'delete-frame)

参见(elisp) Special Events

(在库thumb-frm.el中,我使用最小化图标(可选)缩略化框架,这是另一个例子。)

更具体地回答你的评论问题。此代码提示要终止的缓冲区(默认值:当前缓冲区)。如果只有一个帧,则退出Emacs。否则,它将仅删除选定的帧。

代码语言:javascript
运行
AI代码解释
复制
(defun foo (&optional buffer)
  (interactive (list (read-buffer "Buffer: " (current-buffer))))
  (if (not (cadr (frame-list)))
      (save-buffers-kill-terminal) ; Kill Emacs, if last frame
    (kill-buffer buffer)
    (delete-frame (selected-frame) 'FORCE)))

(define-key special-event-map [delete-frame] 'foo)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25821272

复制
相关文章
DistributtedShell的container在所有节点上仅执行一次
博客将主要介绍过程2的实现过程,主要思路是首先获取节点列表,再在申请container时,指定节点。具体过程如下:
jiewuyou
2022/09/29
4550
带有-i选项的sed命令在Linux上执行成功,但在MacOS上失败
就地编辑文件(如果提供了后缀,则进行备份),可见参数后缀 SUFFIX 是可选的,即带或者不带这个参数都可以执行。
程序熵
2023/09/25
3880
带有-i选项的sed命令在Linux上执行成功,但在MacOS上失败
在Windows上运行单节点的Cassandra
Cassandra可以安裝在很多系统上, 我是安装在windows server 2008 R2上,安装相当简单,只要把下载下来的压缩包解压缩放到一个目录下就可以了,这里主要是记录下使用体验: Cassandra官网: http://cassandra.apache.org/,下载页面 http://cassandra.apache.org/download/ Cassandra用java开发的,要求安装JVM 1.6以上,推荐 Version 6 Update 23  到Java官网下载 http://w
张善友
2018/01/19
2.4K0
在Windows上运行单节点的Cassandra
在 Docker 上建立多节点的 Hadoop 集群
在上篇文章中你已经看到了在你的devbox创建一个单点Hadoop 集群是多么简单。
星哥玩云
2022/07/01
1.1K0
BackgroundWorker在单独的线程上执行操作
直接使用多线程有时候会带来莫名其妙的错误,不定时的发生,有时候会让程序直接崩溃,其实BackgroundWorker 类允许您在单独的专用线程上运行操作。可以通过编程方式创建 BackgroundWorker,也可以将它从“工具箱”的“组件”选项卡中拖到窗体上。如果在 Windows 窗体设计器中创建 BackgroundWorker,则它会出现在组件栏中,而且它的属性会显示在“属性”窗口中。
张果
2022/05/09
1.2K0
BackgroundWorker在单独的线程上执行操作
js插入节点appendChild和insertBefore
首先 从定义来理解 这两个方法:  appendChild() 方法:可向节点的子节点列表的末尾添加新的子节点。语法:appendChild(newchild)  insertBefore() 方法:可在已有的子节点前插入一个新的子节点。语法 :insertBefore(newchild,refchild)  相同之处:插入子节点  不同之处:实现原理方法不同。       appendChild方法是在父级节点中的子节点的末尾添加新的节点(相对于父级节点 来说)。       insertBefore 方
蓓蕾心晴
2018/04/12
3K0
在元素上写事件和addEventListener()的区别[通俗易懂]
语法: element.addEventListener( type , listener , useCapture ) – – 添加事件监听 – – type: 事件类型字符串,不使用“on”前缀 – – callback:事件处理程序(回调函数) – – useCapture:可选参数,是否使用事件捕获的方式处理事件。不传递时,默认为false,表示不使用事件捕获(使用事件冒泡),如果需要显示事件捕获,则显示传递true。
全栈程序员站长
2022/09/18
1.2K0
怎样在windows上定时执行python
作为一个需要在电脑上工作和学习的人,一件十分困扰我的事情就是怎样不受互联网中其他内容的干扰而专注于自己想要做的事情,有的时候真的是沉浸于微博上的消息,忘了自己本来想要做的事。不过我有一件神器,自己爱豆的音频激励,所以决定写一个python脚本,让电脑每小时定时播放,提醒自己专注学习。
py3study
2020/01/19
1.6K0
git+jenkins在windows机器上新建一个slave节点
前言 我们在跑自动化项目的时候,希望有单独的测试机能跑自动化项目,并且能集成到jenkins上构建任务。如果公司已经有jenkins环境了,那无需重新搭建。 只需在现有的平台基础上,新增一个slave
上海-悠悠
2018/04/08
2.9K2
git+jenkins在windows机器上新建一个slave节点
Kafka在Zookeeper上的节点信息和查看方式
/usr/local/kafka/bin/kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties
子润先生
2021/07/06
3.6K0
HTML-JavaScript动态添加元素appendChild
开始自学一下前端的基础知识,这里记录一下知识点,毕竟不熟,不记录很容易就忘记了。前端最佳的学习资料就是在MDN,没有之一。
傅_hc
2020/02/18
1.9K0
HTML-JavaScript动态添加元素appendChild
TKE中在节点上获取容器资源配置
从本质上,容器其实就是一种沙盒技术。就好像把应用隔离在一个盒子内,使其运行。因为有了盒子边界的存在,应用于应用之间不会相互干扰。并且像集装箱一样,拿来就走,随处运行。其实这就是 PaaS 的理想状态。
聂伟星
2020/07/31
1K0
python smtplib在linux上发送邮件失败解决方式
之后放在linux上却 /usr/local/python3/lib/python3.7/socket.py
陈灬大灬海
2020/07/03
2K0
OpenProcess在某些XP系统上打开进程失败的原因
最近用AAU写游戏外挂代码,结果几个客户的电脑上打开游戏进程失败,通过远程协助在客户电脑上鼓捣了好久都没有找到原因。最后想到以前用AU3写的同样功能的软件没有遇到过这种问题,所以就去分析这2个语言打开外部进程时有什么区别。通过对比,发现这两种语言打开外部进程都是调用的kernel32.dll的OpenProcess函数,新说这就好办了,如果他们两个的机制不同,就无法下手。再仔细对比,发现AU3调用OpenProcess时,参数DesiredAccess参数使用的0x1F0FFF,而AAU的process库调
用户2135432
2018/06/04
2.1K0
在腾讯云容器服务Node上执行 kubectl
默认 容器服务 的 Node 上无法执行 kubectl ,需要配置集群访问凭证,如果你开启了内网访问 按照官方教程很好解决,这里介绍下在不开启内网访问的情况下,如何在 Node 上执行 kubectl。
SRE扫地僧
2022/07/03
1.3K0
在腾讯云容器服务Node上执行 kubectl
在Linux上如何查看Python3自带的帮助文档?
俩个步骤: 在Linux终端下输入: ortonwu@ubuntu:~$ pydoc -p 8000 pydoc server ready at http://localhost:8000/ 打开浏览
Tencent JCoder
2018/07/02
1.4K0
在navicat上设置定时计划执行存储过程
有一个存储过程,需要每天定时执行一次。所以在navicat上使用事件处理,当然还有其他的方法,这只是一种。作为参考
Java架构师历程
2019/03/08
2.2K0
在navicat上设置定时计划执行存储过程
腾讯文档品牌升级 (上)
未来已经在那儿了,只不过若隐若现而已。 ——威廉·吉布森 《重来2∶更为简单高效的工作方式》[美] 贾森·弗里德(Jason Fried)[丹]戴维·海涅迈尔·汉森(David Heine 著,李瑜偶秦昊译),中信出版社2018 为什么要做品牌升级? “效率一直是公共舆论中的一个重要话题:在古希腊人眼中,它是政治和社会运转的方式;工业革命早期,亚当·斯密将其视作提升生产力的强劲动力。”时至今日,它被奉为公共生活的首要目标,效率升级实质是广义世界里生产力的一次革新。 科技和物联网以看不见的方式正重塑这个
腾讯ISUX
2020/10/21
1.3K0
在RenderTransform上叠加一个ScaleAt
代码很简单,就是在缩放时,获取鼠标对元素的相对坐标,调用ScaleAt,然后添加到它现有的RenderTransform中
黄腾霄
2020/06/10
5480
如何实现文档检索(上)
MongoDB提供了一个名为db.collection.find()的函数,该函数用于从MongoDB数据库中检索文档。
MongoDB中文社区
2020/03/27
1.7K0

相似问题

具有SpringBoot CLI属性的jCommander

14

Groovy测试groovy.sql.Sql

11

无法加载类groovy.sql.Sql

10

Gradle CLI构建在JarWriter上从SpringBoot失败

32

无法在gcp cli中运行SpringBoot映像,而在本地Intellij中运行

211
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文