LeftBlank 是一款基于 Typst 的免费开源 macOS 写作应用,适用于文章、技术笔记和长文档。它受 Emacs 启发,提供命令面板、大纲和源码预览联动,支持中英文界面,已发布开发预览版。
作者发布开源 macOS 写作工具“留白”,基于 Typst,适用于文章、技术笔记和长文档,免费并提供开发预览版。它借鉴 Spacemacs 命令提示、Org-mode 大纲和 nano-emacs 界面,支持实时预览、源文与页面互跳及本地历史,需 macOS 14 和 Apple silicon。
作者尝试NixOS,欣赏其可完全控制系统、轻松回滚和用home-manager管理dotfiles。但配置Emacs时每次改动都需重建系统,造成心理负担,还因网络问题构建卡住,需加镜像才成功。最终无法忍受,放弃迁移Arch Linux配置。作者认为NixOS虽新,但暂未产生持久兴趣,未来或许再用。
作者尝试 NixOS,看重其完全可控、易回滚和用 home-manager 迁移 dotfiles 的优势,但配置 Emacs 时每次修改都需重建系统,心智负担大,还曾因网络问题卡住,最终放弃,认为目前缺乏持续兴趣,未来或许会再用。
CPerl模式现已通过GNU ELPA提供,用户无需等待新版Emacs即可安装最新版本(需Emacs 27+)。该模式支持Perl 5.44语法,可通过M-x list-packages安装。问题反馈可使用M-x report-emacs-bug(主题注明cperl-mode)或GitHub镜像,开发在GNU Emacs仓库进行。
Emacs 31.1发布,虽无重大新功能但值得升级。终端支持child frame和真彩色,tree-sitter实现零配置自动安装,补全系统更现代,新增窗口布局命令和user-lisp目录。移除unexec技术,多项小改进简化配置。升级需注意废弃变量和ctags移除。
EMCP是一个在Emacs中运行的MCP服务器,允许AI代理通过标准接口与Emacs交互。它提供三种能力配置文件:inspect(只读)、develop(可读写)和full-control(完全控制)。用户可以自定义工具和资源,支持异步操作,并通过确认机制确保安全。EMCP利用Emacs的自省能力,提升工作流效率。
本文讨论了 Emacs 中 minibuffer 的递归使用问题。Omar Antolin Camarena 和 Daniel Mendler 提出了通过定义函数 minibuffer-replace-input 来解决该问题,该函数可以将内层 minibuffer 的输入内容插入到外层 minibuffer,支持追加和替换功能,并在插入后短暂高亮显示。
本文讨论了Emacs的最新特性,作者使用了开发版Emacs 32,并分享了一些相关资源。
本文介绍了如何在 Emacs 中使用 Denote 写邮件。Denote 是一个管理长期笔记的工具,用户可以将邮件主题作为标题、收件人作为关键词,方便创建和管理邮件草稿。每封邮件都是独立文件,便于排序和查找,用户还可以将邮件导出为 HTML 格式,或使用 Emacs 的 SMTP 功能直接发送邮件。
Emacs中的=M-z=(zap-to-char)命令可以反向删除字符,默认从光标向后删除到指定字符。使用=M--=可以从光标向前删除到指定字符,适用于处理重复字符的情况。
本文介绍了如何在 Emacs 中集中管理缓存文件。通过定义一个 alist,将缓存文件路径映射到统一的根目录,用户可以轻松清理和备份这些文件。使用 defcustom 定义可配置选项,并结合辅助函数自动创建目录,确保缓存文件有序存放。与 no-littering 包相比,自定义方案提供更高的灵活性和控制力。
Harper 是一个开源的英语语法检查器,使用 Rust 编写,通过 LSP 提供服务。与 Grammarly 不同,Harper 在本地运行,保护用户隐私。推荐使用 Cargo 安装,以确保获取最新版。Emacs 可通过 eglot 集成 Harper,配置选项可定制检查内容。
本文介绍了如何通过一个 alist 管理 Emacs 的缓存文件,集中存放所有状态文件。首先定义缓存文件的根目录,然后使用 alist 将变量名映射到相对路径,最后通过辅助函数确保目录存在。此方案不依赖外部包,便于管理和备份缓存文件,提供了更高的灵活性和控制力。
本文讨论了Emacs用户对字体设计的看法,特别是商业化平台的字体美观。同时,评论了2024年拜登的表现,认为其并不如外界所描述的糟糕。
文章讨论了AI对开源社区,特别是Emacs社区的影响。Matei Candea和Sacha Chua探讨了AI如何改变学习和参与的方式。虽然AI为新手提供便利,但也可能削弱知识共享和社区精神。社区的核心在于人际互动和公开学习,AI的使用方式决定了其对社区的影响。正确使用AI可以促进社区发展,而错误使用则可能破坏其基础。
space-tree 是一个 Emacs 的树形工作区管理工具,旨在解决现有工具的扁平结构问题。它支持任意深度的嵌套,用户可以自由创建和管理工作区,避免强制命名和持久化。研究表明,层次化结构有助于提升记忆效果,符合认知心理学原理。space-tree 通过三张哈希表实现高效管理,提供灵活的窗口布局,适合复杂任务的需求。
本文列出了编写 Elisp 时常见的错误及其解决方案,包括 cl-defstruct 的 copy-* 函数不支持关键字参数、字符串直接使用 aref 索引、旧版 Emacs 中缺少 string<= 函数等。建议在编写代码前检查这些问题,以避免运行时错误,并强调数学公式测试期望值应从参考实现提取,以避免心算错误。
Amin Bandali 和 Protesilaos 讨论了 Emacs 的深度定制功能,涵盖窗口管理、搜索和日程管理。他们展示了如何利用 display-buffer-alist、isearch 和 Diary 进行个性化配置,并强调了这些功能的可扩展性和实用性。两人认为,Diary 和 Org Agenda 可以结合使用,以满足不同的日程管理需求。
本文介绍了在 Emacs 中使用 minibuffer 的实用技巧。通过设置 `enable-recursive-minibuffers`,用户可以在 minibuffer 激活时使用 C-x o 切换到其他窗口,进行其他操作而无需取消命令。文中提到 map-y-or-n-p 提示和 transient 菜单不支持此功能。
完成下面两步后,将自动完成登录并继续当前操作。