zap-to-char
现在我们已经看到了search-forward
和progn
的工作原理,我们可以看到zap-to-char
函数是如何整体工作的。
kill-region
的第一个参数是在给定zap-to-char
命令时光标的位置——即那个时刻的点的值。在progn
内,搜索函数然后将点移动到刚刚删除的字符之后,并且point
返回此位置的值。kill-region
函数将这两个点的值组合在一起,第一个作为区域的起始,第二个作为区域的结束,然后删除该区域。
progn
特殊形式是必需的,因为kill-region
命令接受两个参数;如果search-forward
和point
表达式被顺序写为两个额外的参数,它将失败。progn
表达式是kill-region
的单个参数,并返回kill-region
所需的唯一值作为其第二个参数。