是否有一个Emacs函数删除(向前或向后),直到第一个空白?例如,我有以下行,并且光标被插入符号标明:删除,直到Emacs中的空白
someword ?(&)!* morewords
^
我想删除的非字母数字字符向后的顺序,但不字someword
。使用backward-delete-word
也会消除这个词。奇怪的字符和kill-word
之前的游标是一样的。
是否有一个Emacs函数删除(向前或向后),直到第一个空白?例如,我有以下行,并且光标被插入符号标明:删除,直到Emacs中的空白
someword ?(&)!* morewords
^
我想删除的非字母数字字符向后的顺序,但不字someword
。使用backward-delete-word
也会消除这个词。奇怪的字符和kill-word
之前的游标是一样的。
我不知道有什么功能,但它是很容易使一个:
(defun my-delete-backward-to-ws()
(interactive)
(delete-region (point) (save-excursion (skip-syntax-backward "^ ") (point))))
截至我写这篇评论的时候,这并不涉及任何空白,只涉及空间。 – 2010-12-14 19:50:26
@Bryan Oakley:恩,适合我。制表符和换行符应该有空白语法......我不知道他们为什么不在某些特定模式下。 – scottfrazer 2010-12-14 20:19:47
我的错误。你是对的。我正在考虑正则表达式而不是语法类。 – 2010-12-14 21:59:14
emacs的功能zap-to-char
这将删除一切直到一个特定的字符。所以,这不适用于所有的空白,但如果你的具体问题是一个空间的一切,你可以使用这个功能。给该函数一个消极的参数来反击。
默认情况下绑定到'M-z'。 – Gilles 2010-12-14 20:18:52
你知道,你有同样的情况发生在几乎每一个文本区域,在这里尝试搜索栏上堆叠例如... – Patrick 2010-12-14 15:05:35
的确如此,但我并没有在搜索字段中写出数以千计的代码和散文。 – 2010-12-14 15:11:54
@小:不,我只是想指出。我认为这是一个有趣的问题。但问题是,如果emacs不符合“其他人所做的”,并且不提供逻辑的“杀词”功能。 :) – Patrick 2010-12-14 15:15:29