读:emacs chat 技巧拾遗——从 bandali 的配置里捡到的那些技巧

💡 原文中文,约10600字,阅读约需26分钟。
📝

内容提要

本文介绍了Amin Bandali在Emacs配置中的实用技巧,包括缓冲区边界指示、预填充命令、自动加载目录、快捷键管理和EXWM窗口管理器的使用。Bandali的配置风格极简,强调手动管理包和使用literate编程,同时提到了一些小工具和功能,如幻灯片工具和SSH配置补全,以帮助用户更好地使用Emacs。

🎯

关键要点

  • Amin Bandali 在 Emacs 配置中使用极简风格,手动管理包,使用 literate 编程。
  • 使用 indicate-buffer-boundaries 设置,能够一行看出 buffer 边界和末尾换行符。
  • minibuffer-with-setup-hook 预填充 M-x,省去记忆多个快捷键的麻烦。
  • user-lisp-directory 使 Emacs 启动时自动加载指定目录下的 .el 文件。
  • repeat-mode 允许用户按一次前缀后只需按最后一个键,简化快捷键操作。
  • EXWM 作为窗口管理器,支持将 Emacs 快捷键带入其他应用。
  • 通过 prefix map 减少 EXWM 全局键注册,加速启动。
  • 浮动窗口功能通过 instance name 自动识别,简化窗口管理。
  • EXWM 支持按需创建工作区,减少启动负担。
  • exwm-xsettings 允许动态调整 DPI 和屏幕设置,适应显示器热插拔。
  • 使用 auto-revert 和 undo 结合,方便查看文件变化并撤销不喜欢的修改。
  • display-fill-column-indicator 提醒用户代码和文本不要写得太长。
  • bandali-define-keys 宏支持一次定义多个快捷键,提高配置效率。
  • 通过设置门禁机制,避免误触命令带来的不便。
  • 全局字体缩放功能增强了 Emacs 的可用性,适合投屏分享。
  • init-file-debug 允许在不重启 Emacs 的情况下调试配置错误。
  • package-review-policy 在更新包前展示新旧版本的 diff,帮助用户做出决策。
  • ffs(Form Feed Slides)是一个简单的幻灯片工具,支持双屏演示。
  • TRAMP 配置补全功能简化了 SSH 主机名的输入。

延伸问答

Amin Bandali 在 Emacs 配置中使用了哪些技巧?

Bandali 使用了缓冲区边界指示、预填充命令、自动加载目录、快捷键管理和 EXWM 窗口管理器等技巧。

如何使用 indicate-buffer-boundaries 设置缓冲区边界指示?

可以通过设置 (setq-default indicate-buffer-boundaries 'left) 来在每个 buffer 的左边 fringe 区域显示小箭头,指示内容是否可以继续翻页。

EXWM 窗口管理器的主要功能是什么?

EXWM 允许用户将 Emacs 快捷键带入其他应用,并支持按需创建工作区,简化窗口管理。

如何在 Emacs 中实现快捷键的预填充?

可以使用 minibuffer-with-setup-hook 函数,在打开 M-x 时自动填充指定的前缀,从而简化命令输入。

Bandali 的配置中如何处理包管理?

Bandali 采用极简风格,手动管理包,使用 git submodule,并将配置写成 literate Org 文件。

如何使用 auto-revert 和 undo 功能查看文件变化?

通过启用 global-auto-revert-mode,Emacs 会自动刷新 buffer,用户可以按 C-/ 撤销不喜欢的修改。

➡️

继续阅读