如何更轻松地在 Emacs 中的缓冲区之间切换?

2024-04-20

我最近开始使用 emacs,并且大部分时间我都很享受使用它。我唯一不喜欢的是在缓冲区之间切换。我经常打开一些缓冲区,并且我已经厌倦了使用C-x b and C-x C-b,是否有任何软件包可以使缓冲区之间的切换变得更容易?我调查过emacs wiki 关于切换缓冲区 http://www.emacswiki.org/emacs/SwitchingBuffers#toc1我很感激有关正在使用/享受的内容的见解/反馈。谢谢。


UPDATE: iswitchb-mode在 Emacs >= 24.4 中已过时,替换为ido.

的所有功能iswitchdb现在由ido。罗斯提供了一个链接文档 http://www.emacswiki.org/emacs/InteractivelyDoThings在他的回答中。您可以使用以下内容激活您的.emacs(或按照罗斯的建议使用自定义界面):

(require 'ido)
(ido-mode 'buffers) ;; only use this line to turn off ido for file names!
(setq ido-ignore-buffers '("^ " "*Completions*" "*Shell Command Output*"
               "*Messages*" "Async Shell Command"))

默认情况下,ido提供缓冲区名称和文件名的补全。如果您只想替换以下功能iswitchb,第二行关闭文件名的此功能。ido将忽略与中列出的正则表达式匹配的任何缓冲区ido-ignore-buffers.

下面描述的行为iswitchb-mode同样适用于ido用于切换缓冲区。

iswitchb 模式(Emacs

iswitchb-mode替换默认值C-x b具有非常直观的缓冲区切换完成系统的行为。还有更复杂的选项,但我从未需要过比这更多的选项。

当你击中之后C-x b,您将看到所有缓冲区的列表。开始输入所需缓冲区的名称(或其名称的一部分),列表就会缩小,直到只有一个缓冲区匹配。不过,您不需要填写名称,只要您想要的缓冲区突出显示,按 Enter 键即可将您移至该缓冲区。您还可以使用C-s and C-r按顺序浏览列表。

您可以在 .emacs 中默认打开它:

(iswitchb-mode 1)

您还可以告诉它忽略某些您从不(或很少)需要切换到的缓冲区:

(setq iswitchb-buffer-ignore '("^ " "*Completions*" "*Shell Command Output*"
               "*Messages*" "Async Shell Command"))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何更轻松地在 Emacs 中的缓冲区之间切换? 的相关文章

  • 如何使用 emacs/elisp 获取当前缓冲区信息的开始/结束?

    我有以下代码运行以范围输入的Figlet 如何修改此代码以检查 b 或 e 是否未指定 使 b 位于当前缓冲区的开头 e 位于当前缓冲区的结尾 defun figlet region optional b e interactive r s
  • 如何告诉 emacs 以 C++ 模式打开 .h 文件?

    我应该向 emacs 在 Windows 上 文件中添加哪些行 以使其以 C 模式打开 h 文件 默认为C模式 尝试这个 add to list auto mode alist h c mode 每当您打开 h 文件时 都会使用 C 模式
  • 自动替换在 emacs 中输入的某些文本字符串

    有一个小细节一直困扰着我一段时间 即我经常打字 inclued代替 include 如果不是很明显的话 我编写了大量 C 和 C 程序 这个拼写错误破坏了无数的构建并消耗了本来可以用来喝咖啡或冲浪的时间 当然 emacs 可以提供帮助并在我
  • 将 CSV 导入组织模式属性

    我想将 CSV 导入组织模式 其他人已经询问过如何将 CSV 导入组织模式表 这不是我想做的 我需要将 CSV 导入到组织模式属性 例如 像这样的 CSV Name Tel Mobile Fax John 11111 22222 33333
  • 更改组织模式新一天开始的时间

    我使用组织模式来计时我的工作 有时我会工作几个小时到午夜 例如 我记录的时间从 2013 年 6 月 3 日晚上 10 点开始 到 2013 年 6 月 4 日凌晨 2 点结束 组织模式在凌晨 0 点进行划分 开始新的一天 但如果将 0am
  • Emacs Windows 拼写检查 - aspell 或 hunspell

    我在Windows XP操作系统上使用emacs 23 1 50版本 我无法使用 emacs wiki 提供的示例将 hunspell 或 aspell 设置为 emacs 的一部分 任何人都有 Windows XP 的工作配置 请帮助我
  • 有没有办法使用 emacs 安装 R 包?

    我正在使用 ESS 但每次需要安装新软件包时 我都必须使用 R gui 有没有办法在不离开 emacs 的情况下做到这一点 From help Startup Example of Rprofile site local add MASS
  • ESS 在 Windows 上找不到 Rterm.exe

    我将 R 安装在名为 X alphaAndOmega R R 的目录中 所以Rterm exe 32位版本 位于 X alphaAndOmega R R bin i386 我知道它不是 标准 R 目录 并且 标准 R 目录 例如 R 3 0
  • Emacs 中的 C 注释 - Linux 内核风格

    我在用着 setq default comment style multi line and my region comments when doing M are void main int i int b printf format s
  • windows下无法用emacs + sbcl启动slime

    我想配置我的 emacs 以使用 SLIME 和 SBCL emacs 文件如下所示 add to list load path D app slime setq inferior lisp program sbcl require sli
  • Emacs 23.1.50.1 在 Windows XP 上随机挂起 6-8 秒

    我的 Windows XP 机器上有 EmacsW32 23 1 50 1 emacs 运行 它随机挂起 5 到 8 秒 非常令人沮丧 有人有解决办法吗 我什至尝试使用来自 gnu ftp 站点的 emacs win32 二进制文件 23
  • emacs 启动后更改 X11 窗口标题

    当我启动 emacs 时 我可以使用 title 选项来控制保存 emacs 应用程序的 x 窗口的标题 emacs从elisp启动后可以更改标题吗 M x set frame name NewName RET 和来自 elisp set
  • emacs中如何删除重复行

    我的文本有很多行 我的问题是如何删除 emacs 中的重复行 在没有外部实用程序的情况下使用 emacs 或 elisp 包中的命令 例如 this is line a this is line b this is line a 删除第三行
  • 如何在 ubuntu 上的 emacs 中运行 shell 命令,同时避免 bash 作业控制错误?

    我在 ubuntu 中安装了 emacs 使用 sudo apt get install emacs 我遇到的问题是 当我尝试从 emacs 中运行 shell 命令时 例如M ls 输出之前是这样的 bash cannot set ter
  • Emacs:调试Python的方法

    我把这个贴在程序员 stackexchange com https softwareengineering stackexchange com questions 29844 emacs methods for debugging pyth
  • Emacs:结合 isearch-forward 和 center-top-bottom

    预先非常感谢您的帮助 在 Emacs 中 我喜欢使用 iseach forward C s 但如果突出显示的字体单词位于屏幕中间而不是最底部的中心 我会更喜欢它 我发现自己不断地这样做 C s foo C s C s C s 哦 这就是我一
  • emacs 的最佳 java 工具 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 设置 Emacs 进行 Erlang 编程

    Emacs 是 Erlang 编程的首选 IDE 有很多好的模式 distel erlware mode 默认的 erlang 模式 但是您对设置 Emacs 进行专业 Erlang 开发有何建议 按照中所述设置 erlang mode自述
  • emacs 临时文件的 .gitignore 正则表达式

    我正在尝试 gitignore emacs 临时 自动保存文件 我在用着 在我的 gitignore 中 But git add A在子文件夹中运行仍然给我 new file make collections py new file nor
  • 在 Emacs 中,如何根据缓冲区名称自动启用次要模式?

    我有一个 Emacs 扩展 它创建一个名为 erl output 该缓冲区仅由以下内容创建fundamental mode默认情况下 有什么办法可以自动启用compilation minor mode在那个缓冲区上 要自动更改主要模式 您可

随机推荐