![在 Vim 中,为什么 `2ci"` 会删除周围的引号?](https://linux22.com/image/58861/%E5%9C%A8%20Vim%20%E4%B8%AD%EF%BC%8C%E4%B8%BA%E4%BB%80%E4%B9%88%20%602ci%22%60%20%E4%BC%9A%E5%88%A0%E9%99%A4%E5%91%A8%E5%9B%B4%E7%9A%84%E5%BC%95%E5%8F%B7%EF%BC%9F.png)
ci"
(和1ci"
) 保持"
s 完好无损;为什么2ci"
(以及具有任何更高数字的相同公式)删除它们?
答案1
首先,您需要知道ci"
中的含义vim
:
c
方法改变i
方法里面"
表示双引号文字文本对象。
所以,ci"
意味着change a string inside quotes
.添加2
应用改变对引号的命令2
。
答案2
我建议你阅读 doc/motion.txt。它指出,计数 2 时包含引号,因此 i" 的工作方式有点像 a",只是不添加额外的空格。
编辑:为了明确起见,严格来说我并没有提供答案。我将这种行为视为作者的设计决定,由于他没有在手册中提供基本原理,你只能问他,为什么他决定这样做,而不是完全不同的事情。