Emacs。如何删除直至括号和包括括号的内容?

Emacs。如何删除直至括号和包括括号的内容?,emacs,Emacs,我曾经使用M-d删除行中的长子字符串,如: if ( aaaaa[dddd(d,s,d)] + bbbbbb[ssd] ) { 但是,我总是讨厌我需要删除最后一个括号。例如,要删除第一个术语aaaaa[dddd(d,s,d)]我需要按M-d 4次和C-d 2次 我想知道,是否有一个命令可以删除所有东西,直到一个结束括号,它对应于第一个开始括号 因此,如果光标停留在d,它应该删除整ddddd(d,s,d),如果从a开始,它应该删除整aaaaaaa[dddddd(d,s,d)],如果从行开始,它应

我曾经使用M-d删除行中的长子字符串,如:

if ( aaaaa[dddd(d,s,d)] + bbbbbb[ssd] ) {
但是,我总是讨厌我需要删除最后一个括号。例如,要删除第一个术语
aaaaa[dddd(d,s,d)]
我需要按M-d 4次和C-d 2次

我想知道,是否有一个命令可以删除所有东西,直到一个结束括号,它对应于第一个开始括号

因此,如果光标停留在
d
,它应该删除整
ddddd(d,s,d)
,如果从
a开始,它应该删除整
aaaaaaa[dddddd(d,s,d)]
,如果从行开始,它应该删除整
if(aaaaaaa[ddddd(d,s,d)]+bbbbbbbbbb[ssd])


原则上,一组命令
M-d C-space M-C-f C-w
可以完成这项工作,但我正在寻找一个标准的解决方案。

试试
M-C-k
kill sexp
),或者
M-z
zap to char
)。

试试
M-C-k
kill sexp
),或者
M-z
zap to char.

我正在使用 完成你描述的任务

它基本上是一种广义的杀戮性行为,它会杀戮人 任何包含点的列表。也适用于字符串。

我使用的代码来自 完成你描述的任务

它基本上是一种广义的杀戮性行为,它会杀戮人
任何包含点的列表。也适用于字符串。

smartparens模式(或MELPA)知道如何处理包含在各种括号/括号中的表达式。它的行为通常是特定于语言的。例如,如果您绑定

(定义键sp keymap(kbd“C-M-k”)“sp kill sexp)
然后,如果您位于表达式中的第一个
,C-M-k将杀死所有内容,包括最后一个
。或者看看这个。我意识到这不是您描述的确切行为,但是包有许多(特定于模式的)调整配置选项


或者,常规的
zap-up-to-char
zap-to-char
接受数字参数。我将
zap-up-char
绑定到M-z,因此,比方说C-u 2 M-z)杀死所有东西直到final

smartparens mode
(或MELPA)知道如何处理包含在各种括号/括号中的表达式。它的行为通常是特定于语言的。例如,如果您绑定

(定义键sp keymap(kbd“C-M-k”)“sp kill sexp)
然后,如果您位于表达式中的第一个
,C-M-k将杀死所有内容,包括最后一个
。或者看看这个。我意识到这不是您描述的确切行为,但是包有许多(特定于模式的)调整配置选项

或者,常规的
zap-up-to-char
zap-to-char
接受数字参数。我将
zap-up-char
绑定到M-z,所以,假设C-u 2 M-z)杀死所有东西,直到final