gpt4 book ai didi

Emacs, evil-mode : Replace only in visual selection/visual block?

转载 作者:行者123 更新时间:2023-12-05 00:24:05 24 4
gpt4 key购买 nike

默认情况下,:s/[search-term]/[replace-term] 作用于整行而不是视觉选择。例如,如果您在 c 和 e 之间进行选择,则:

a b |c d e| f g

并执行 :s/ //g ,结果是:
abcdefg

而不是
a b cde f g

同样,在视觉块选择中:
a b |c d e| f g
0 1 |2 3 4| 5 6
:s/ //g 产生
abcdefg
0123456

而不是
a b cde f g
0 1 234 5 6

有没有人有办法让 evil-mode 的 :s/ 只对选择起作用(最好是默认情况下,或者使用像 vim 的 \%V 这样的关键字)?

( :s/\%V //g 在这种情况下似乎不起作用;它导致 0 个匹配。)

先谢谢了。

最佳答案

您可以通过指定范围在视觉选择中进行替换。 '<,'>适用于选择的第一行到最后一行,以及 `<,`>适用于第一个字符到最后一个字符。所以在你的第一个例子中

a b |c d e| f g`, 

使用 :`<,`>s/ //g会给你
a b cde f g

不幸的是,Evil 目前似乎不支持 Visual Block 中的替换,因此没有简单的方法来进行替换。

关于Emacs, evil-mode : Replace only in visual selection/visual block?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27125661/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com