8.1.5 zap-to-char 总结

现在我们已经了解了 search-forwardprogn 的工作方式, 就可以完整理解 zap-to-char 函数的整体运行逻辑。

kill-region 的第一个参数是执行 zap-to-char 命令时 的光标初始位置,也就是当时的光标值。在 progn 内部, 搜索函数会将光标移动到目标字符的紧后方,再由 point 返回该位置。 kill-region 函数会使用这两个光标位置,前者作为区域起点, 后者作为区域终点,并将该区域文本删除。

progn 特殊形式是必需的,因为 kill-region 命令只接受两个参数; 如果直接将 search-forwardpoint 表达式依次作为额外参数传入, 函数将无法正常工作。progn 表达式整体作为 kill-region 的单个参数,并返回其第二个参数所需的唯一值。