首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在杀死Emacs中的临时缓冲区之前收到警告?

在Emacs中,当您尝试杀死临时缓冲区(也称为“临时缓冲区”)之前,可以通过以下方法收到警告:

  1. 使用kill-buffer命令并在其前面添加confirm-kill-processes前缀。这将在杀死缓冲区之前询问您是否确定。
代码语言:txt
复制
(defun confirm-kill-buffer-with-prompt (buffer)
  (let ((process (get-buffer-process buffer)))
    (if (and process (process-query-on-exit-flag process))
        (yes-or-no-p (format "Really kill buffer %s? " buffer))
      t)))

(advice-add 'kill-buffer :before 'confirm-kill-buffer-with-prompt)
  1. 使用kill-buffer-query-functions钩子,它允许您在杀死缓冲区之前执行任何操作。
代码语言:txt
复制
(defun confirm-kill-buffer-with-prompt (buffer)
  (let ((process (get-buffer-process buffer)))
    (if (and process (process-query-on-exit-flag process))
        (yes-or-no-p (format "Really kill buffer %s? " buffer))
      t)))

(add-hook 'kill-buffer-query-functions 'confirm-kill-buffer-with-prompt)

这两种方法都会在杀死临时缓冲区之前询问您是否确定。如果您选择继续杀死缓冲区,那么缓冲区将被杀死。如果您选择取消,那么缓冲区将保持打开状态。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Emacs 快捷键

C-x k kill-buffer 杀死一个缓冲区(缺省情况下为当前缓冲区)。 C-x C-q vc-toggle-read-only 切换当前缓冲区可读状态(如果适用还可以执行版本控制)。...B2 这一命令插入最近被杀死内容,并把光标移动到插入内容末尾。 B3 这一命令会设置并突出显示区域,然后无需删除就将其放在 kill 缓冲区。...Emacs 搜索和替换命令 绑定 命令或者函数 描述 C-s [字符串 ] [C-w ] [C-y ] isearch-forward 前向增量地在整个缓冲区搜索字符串(在缺省情况下,将搜索您上一次给出搜索字符串...当它在缓冲区处于打开状态时,将所有显示该缓冲区窗口连接为一个较大虚拟窗口。...enlarge-window C-x ^ 使当前窗口增加一行高度;在其之前使用一个负数,将使得当前窗口减少一行高度。

2K20

Emacs 29快到了!我们能期待什么

如果您不使用 Wayland,Emacs 将显示一条警告消息,因为如果您运行是 Xorg,它很可能会导致问题。...在我例子,当缓冲区内容更新时,我有时会看到一些幻影文本(尽管我仍然需要纯 GTK,因为我在 Xorg 和 Wayland 之间交替)。.../usr/bin/emacs -x,Emacs 不会读取它 init 文件( with -Q),而是会立即执行 Elisp 代码并将最后一个值返回给脚本调用者(很可能是您调用脚本 shell从)...现在说还为时过早,大多数合并到 master 稳定功能都去了 Emacs 29,而且只有feature/pkg和feature/improved-lock-narrowing分支似乎在写这篇文章前一周不到收到提交...,我不知道其他分支状态在过去几周内收到了提交,例如feature/package+vcor feature/eglot2emacs(我假设两者都已合并)。

2.5K20

网络编程(二).UDP

emacs@ubuntu:~/c$ 此时系统并没有开放9000端口 emacs@ubuntu:~/c$ netstat -anu | grep 9000 emacs@ubuntu:~/c$ 运行服务端...__fd 标识一个已连接套接口描述字 __buf 接收数据缓冲区 __n 缓冲区长度 __flags 调用操作方式 __addr (可选)指针,指向装有源地址缓冲区 __addr_len (可选)...数据包 __fd 一个标识套接口描述字 __buf 包含待发送数据缓冲区 __n buf缓冲区数据长度 __flags 调用方式标志位 __addr (可选)指针,指向目的套接口地址 __addr_len.../accept时确定 5.UDP:在sendto/recvfrom函数每次均 需指定地址信 6.UDP:shutdown函数无效 TCP与UDP区别总结 1.TCP面向连接(打电话要先拨号建立连接...);UDP是无连接,即发送数据之前不需要建立连接 2.TCP提供可靠服务。

62520

basler相机sdk开发例子说明——c++

缓冲区填充完毕后,可以从相机对象检索缓冲区进行处理.。在抓取结果收集缓冲区和附加图像数据。抓取结果由智能指针在检索后保持.。当显式释放或智能指针对象被销毁时,缓冲区将自动重复使用.。...可接收由PC前图像数据为成品曝光已完全转移。此示例说明如何在照相机事件消息数据时通知. 收到。 事件信息自动检索和处理instantcamera类。...* exposureendeventstreamchannelindex:表示图像数据数据流用来转移暴露框架。 事件溢出事件由照相机发送,作为事件正在被删除警告.。...Grab_ChunkImage Basler相机提供块特征:相机可以生成每个图像某些信息,帧计数器,时间戳,和CRC校验,这是附加到图像数据“块”。...这可以用来避免不必要延迟,例如在相关图像数据传输完成之前,成像对象被进一步移动.。

3.9K41

进程间通讯(三).signal

signal ) 信号量 ( semaphore ) 消息队列 ( message queues ) 共享内存 ( shared memory ) 套接字 ( socket ) 这里分享一下我在学习进程通讯过程笔记和心得...,其实就是第二个函数地址 void ( *signal( int sig, void (* handler)( int )))( int ); 这个定义的确看起来有点晕 ---- 预定义信号 系统也有一些预定义信号...if(0 == kill(ppid,sig)) //给父进程发送指定信号,在这里kill并不是杀死意义,而是发送信号意义 { printf("A:sent %d signal...40号信号后,执行trigger函数 pause(); //在收到信号之前,一直处于阻塞状态 if(0 == kill(cpid,sig)) //给子进程发送信号 {..., the signal is 40 B:sent 9 signal to 17082 emacs@ubuntu:~/c$ 编译执行过程没有报错,从结果来看,符合预期 ---- kill 在 signal.h

1.5K10

IDE 太重了,所以迁到了 Emacs

我注意到,有更多“开箱即用” Emacs 发行版, Spacemacs 和 Doom Emacs,对于那些想要一个现代编辑器而不必手动配置一切的人来说,会感觉更舒服。...几年来,我已经成功地将 Emacs 配置为最基本现代快捷键,这些快捷键在 90 年代后大多数其他应用程序中都能使用(比如 Cmd+S 保存,Ctrl+Tab 切换缓冲区等等)。...,它会警告你,这点非常好。...Emacs 还忽略了 IntelliJ 会给出其他一些重要、更高级警告。...在早上使用 IntelliJ 情况,你可以看到充满电后,电量被“凶猛吞噬”,在我晚上回到 Emacs 之前,电量就恢复了正常使用模式。 并不是说我需要这个才知道 IntelliJ 真的非常耗电!

1.1K10

史上最轻量 IDE……

我注意到,有更多“开箱即用” Emacs 发行版, Spacemacs 和 Doom Emacs,对于那些想要一个现代编辑器而不必手动配置一切的人来说,会感觉更舒服。...几年来,我已经成功地将 Emacs 配置为最基本现代快捷键,这些快捷键在 90 年代后大多数其他应用程序中都能使用(比如 Cmd+S 保存,Ctrl+Tab 切换缓冲区等等)。...,它会警告你,这点非常好。...Emacs 还忽略了 IntelliJ 会给出其他一些重要、更高级警告。...在早上使用 IntelliJ 情况,你可以看到充满电后,电量被“凶猛吞噬”,在我晚上回到 Emacs 之前,电量就恢复了正常使用模式。 并不是说我需要这个才知道 IntelliJ 真的非常耗电!

21610

史上最轻量 IDE……

我注意到,有更多“开箱即用” Emacs 发行版, Spacemacs 和 Doom Emacs,对于那些想要一个现代编辑器而不必手动配置一切的人来说,会感觉更舒服。...几年来,我已经成功地将 Emacs 配置为最基本现代快捷键,这些快捷键在 90 年代后大多数其他应用程序中都能使用(比如 Cmd+S 保存,Ctrl+Tab 切换缓冲区等等)。...,它会警告你,这点非常好。...Emacs 还忽略了 IntelliJ 会给出其他一些重要、更高级警告。...在早上使用 IntelliJ 情况,你可以看到充满电后,电量被“凶猛吞噬”,在我晚上回到 Emacs 之前,电量就恢复了正常使用模式。 并不是说我需要这个才知道 IntelliJ 真的非常耗电!

25410

编辑器你只知道VIM?

缓冲区两个格式:隐藏和活动列出两个缓冲区命令: :buffers和:ls第一个文件 第二个文件 第一个缓冲区入口标志%a表示文件file_A缓冲区当前处于打开状态。...其他一些标志: 符号 含义 % 当前缓冲区 # 置换缓冲区 a 正在使用并处于显示缓冲区 h 正在使用隐藏缓冲区 = 只读缓冲区 - 缓冲区不可修改或可修改模式被关闭 + 缓冲区已经被修改 正在处于打开状态缓存区间正在切换用...Emacs Emacs是著名集成开发环境与文本编辑器。 Emacs被公认为是最受专业程序员喜爱代码编辑器之一常年与vim程度程序员最喜爱代码编辑器称号。...Emacs其实是个整合环境, 这些功能让使用者置身于全功能操作系统,在基于编辑器功能基础上,Emacs自行开发了一个"bourne-shell-like"shell: EShell。...Emacs还可以:收发电子邮件、上新闻组、登陆IRC和朋友交流、查看日历、撰写文章大纲、对多种编程语言编辑、玩游戏、计算器、记日记、个人信息管理、目录管理、文件比较、浏览网站、 …… 你看Emacs像不像伪装成编辑器操作系统

54220

10 个让你进入 Emacs 世界技巧

例如,如果你不知道如何在 Emacs 只用键盘快捷键复制一个单词,编辑菜单复制、剪切和粘贴选择提供了最轻松路径。没有理由因为选择了 Emacs 而惩罚自己。...使用它菜单,用鼠标选择区域,点击缓冲区按钮,不要让陌生感阻碍你工作效率。 image.png 这些功能被内置到 Emacs ,是因为用户在使用它们。...在 Emacs ,“框架”就是现代计算机所说“窗口”。 缓冲区(Buffer):“缓冲区”是 Emacs 一个通信通道。...它可以作为 Emacs 进程命令行,也可以作为 shell,或者只是一个文件内容。 窗口(Window):“窗口”是你进入一个缓冲区视角。 迷你缓冲区(Mini-buffer)。...所有的函数都可以从迷你缓冲区Emacs 框架底部命令行)执行。

79420

对 Mastering Emacs作者 Mickey Petersen 采访

一些 Emacs 用户学习它是因为这是一种“税”,他们必须支付才能在某些学术界或商业环境工作,在这些环境,它是唯一可用或广泛使用。当我们讲师挥手回答诸如“我们应该用什么来编辑 Prolog?”...Emacs 选择用非常高技能上限(异常强大键绑定、可编程性等)替换低技能上限(以及贫乏键绑定和功能),因为如果你坚持不懈,那么你最终会学到足够多知识,从而从编辑器受益这不会妨碍其用户。...为此,我编写了几行代码将 Emacs 各个部分粘合在一起。我按下一个按钮,Emacs 使用 TRAMP 连接到远程服务器并调用它需要调用程序,然后将结果显示在 Emacs 缓冲区。...M-o而不是C-x o; C-x C-k杀死当前缓冲区;F1 打开Mx外壳;和其他一些小事。 对于与生产力相关东西,我经常使用 Helm 来完成特定任务。...我还将 IDO 用于文件和缓冲区,将 Selectrum 用于通用完成。 除了 Emacs,您还使用什么工具和装备(硬件、软件或想到任何其他东西)?

70110

Emacs Lisp2

Emacs: (在windows可以双击emacs图标,在Linux可以输入% emacs & ),;; 然后在键盘上键入q 跳过系统欢迎信息,;; 先观察在Emacs屏幕底部,会给出一堆关于当前工作情况信息...;; 缓冲区也叫做工作区,在Emacs打开一个文件,实际只是在Emacs构造该文件一个副本,放到缓冲区,;; 在Emacs对该文件编辑也是针对该副本编辑,唯有保存改动时,Emacs才会把缓冲区内容在复制到原文件中去...;; 为了实验本教程lisp命令,我们要让Emacs工作在lisp-interaction-mode工作模式下,;; 这个模式可以让我们在缓冲区中和Emacs进行互动,并且直接执行Lisp命令,得到结果...C-j);; C-j是一个快捷命令,在后台,该快捷键将调用求值命令,并且把计算结果;; 插入到当前缓冲区;; 如果不希望Emacs缓冲区插入计算结果,我们还可以在表达式末尾使用C-x C-e...组合键;; C-x C-e意思是: 先按下Ctrl-x 再按下Ctrl-e ;; 这个命令会让Emacs在辅助缓冲区,也就是Emacs窗口最底部那行显示计算结果;; ELisp赋值函数是是setq

96740

Emacs Lisp

; 第一步首先启动Emacs: (在windows可以双击emacs图标,在Linux可以输入% emacs & ), ;; 然后在键盘上键入q 跳过系统欢迎信息, ;; 先观察在Emacs屏幕底部...;; 缓冲区也叫做工作区,在Emacs打开一个文件,实际只是在Emacs构造该文件一个副本,放到缓冲区, ;; 在Emacs对该文件编辑也是针对该副本编辑,唯有保存改动时,Emacs才会把缓冲区内容在复制到原文件中去...;; 为了实验本教程lisp命令,我们要让Emacs工作在lisp-interaction-mode工作模式下, ;; 这个模式可以让我们在缓冲区中和Emacs进行互动,并且直接执行Lisp命令,得到结果...,并且键入Ctrl-j (之后将简写成C-j) ;; C-j是一个快捷命令,在后台,该快捷键将调用求值命令,并且把计算结果 ;; 插入到当前缓冲区 ;; 如果不希望Emacs缓冲区插入计算结果...,我们还可以在表达式末尾使用C-x C-e组合键 ;; C-x C-e意思是: 先按下Ctrl-x 再按下Ctrl-e ;; 这个命令会让Emacs在辅助缓冲区,也就是Emacs窗口最底部那行显示计算结果

2.3K40

进程间通讯(一).pipe

消息队列( message queue ) : 消息队列是消息链表,存放在内核并由消息队列标识符标识。消息队列克服了信号传递信息少、管道只能承载无格式字节流以及缓冲区大小受限等缺点。...共享内存是最快 IPC 方式,它是针对其他进程间通信方式运行效率低而专门设计。它往往与其他通信机制,信号量,配合使用,来实现进程间同步和通信。...,即管道文件描述符 char buf[MAX]; //用于临时存放数据 memset(buf,0,sizeof(buf)); //置空缓存 if(0 > pipe(fd)) //创建管道...buf,并且写入一段信息 if (0 > (wb=write(fd[1],buf,MAX))) //将buf内容写到管道 { perror("write");...@ubuntu:~/c$ 编译执行过程没有报错,从结果来看,符合预期 Note: 有时子进程输出显示父进程为1,原因是父进程先于子进程退出,这样子进程就变成了孤儿进程,孤儿进程会被init进程收养

67930

Emacs Lisp

; 第一步首先启动Emacs: (在windows可以双击emacs图标,在Linux可以输入% emacs & ), ;; 然后在键盘上键入q 跳过系统欢迎信息, ;; 先观察在Emacs屏幕底部...;; 缓冲区也叫做工作区,在Emacs打开一个文件,实际只是在Emacs构造该文件一个副本,放到缓冲区, ;; 在Emacs对该文件编辑也是针对该副本编辑,唯有保存改动时,Emacs才会把缓冲区内容在复制到原文件中去...;; 为了实验本教程lisp命令,我们要让Emacs工作在lisp-interaction-mode工作模式下, ;; 这个模式可以让我们在缓冲区中和Emacs进行互动,并且直接执行Lisp命令,得到结果...,并且键入Ctrl-j (之后将简写成C-j) ;; C-j是一个快捷命令,在后台,该快捷键将调用求值命令,并且把计算结果 ;; 插入到当前缓冲区 ;; 如果不希望Emacs缓冲区插入计算结果...,我们还可以在表达式末尾使用C-x C-e组合键 ;; C-x C-e意思是: 先按下Ctrl-x 再按下Ctrl-e ;; 这个命令会让Emacs在辅助缓冲区,也就是Emacs窗口最底部那行显示计算结果

2.2K30

Emacs Verilog mode 简单使用指南

基本核心概念 安装与激活 首先,确保你Emacs安装了Verilog mode。通常,Emacs可以通过包管理器(ELPA、MELPA)来安装额外模式。...尝试更换主题或手动调整.emacs配色设置。 3. 自动缩进不理想 问题描述:自动缩进不符合个人编码习惯。 解决策略:Emacs高度可定制性允许你修改缩进规则。...当你Verilog代码存在语法错误或警告时,它能够自动高亮显示这些问题区域,这对于调试代码非常有帮助。不过,要注意是,这种静态分析虽然强大,但并不能替代综合工具或仿真器全面检查。...通过修改或新增模板,可以让Emacs在你需要时候快速插入这些结构,进一步提高编码效率。 整合版本控制系统 在团队协作环境,版本控制系统(Git)是必不可少工具。...而利用Emacs正则表达式搜索和替换功能,以及专门重构工具(xref和lsp-mode),可以安全地进行大规模代码重构,保证代码质量同时,也提高了开发效率。

17910

用了VS Code、IDEA等十几款编辑器后,我总结出优秀编辑器特质

它有几种模式,具体取决于你要执行移动类型: 按行:此模式允许你跳至当前(或所有打开缓冲区任何行。 按单词:此模式允许你跳转到当前(或所有打开缓冲区任何“单词”。...按字符:如果单词模式无法跳转到特殊运算符或字符(因为无法识别为单词),则可以使用此模式跳转到当前缓冲区(或所有打开缓冲区任何字符。...2 其他模态技巧 对模态编辑而言,以下是我希望编辑器具备功能列表,当然不止这些: C-i和C-o:这些使我可以跳转到缓冲区某个文件 / 某个位置,然后返回到C-o之前我所在位置,或者输入C-i...宏和寄存器:我可以指定单个按键将内容粘贴到不同寄存器(剪贴板)。...所有基本 vim 移动方法,例如d(删除)、y(复制)、c(更改),t(转到要搜索字符之前字符),%(转到另一个定界符),等等。

1.8K10

Oracle-Oracle数据库结构

临时表空间也可以对应一个或者多个临时文件(Tempfile) oracle9i后,Oracle将临时表空间所对应临时数据文件与一般数据文件分开, dba_temp_files数据字典可以查询临时表空间和临时数据文件信息...Oracle实例在运行中产生日志信息,首先被记录在SGA日志缓冲区, 当发出commit命令后(或者日志缓冲区信息满1/3或者3S过去)时,LGWR进程将日志信息从日志缓冲区读出并写到日志文件组序列号小文件...SPFILE参数由oracle系统自动维护,过要修改某些参数,不能对SPFILE进行直接编辑, 需要通过alter system命令来修改。...---- 系统全局区(SGA) 之前博客 Oracle-内存管理解读 SGA = 数据高速缓冲区+ 重做日志缓冲区+ 共享池+ 大池+ Java 池+ 流池 系统全局区是动态,由参数SGA_MAX_SIZE...,用于一些大型进程Oracle备份恢复操作、IO服务器进程等 Java 池 该程序缓冲区就是为Java 程序保留

1.9K31
领券