假设我有一个这样的文本文件:
this is some test `more test`
this is some test (more test)
如果我在第一行的开头并输入ci`,光标将跳转到反引号,替换里面的内容,让我编辑。
但是,如果我在第二行的开头,我输入ci(什么都不会发生。
这种行为的原因是什么?是否有可能改变它的设置?
答案 0 :(得分:2)
关于vim 7.4的内部行为:
()
,{}
,[]
,<>
:Vim向后搜索,然后从当前位置开始向前搜索以匹配开始和结束角色。
""
,''
,``:Vim跨越光标所在的整行,直到找到引号。
以下是光标下没有quotechar的最后一种情况:
/* Search backward for a starting quote. */
col_start = find_prev_quote(line, col_start, quotechar, curbuf->b_p_qe);
if (line[col_start] != quotechar)
{
/* No quote before the cursor, look after the cursor. */
col_start = find_next_quote(line, col_start, quotechar, NULL);
if (col_start < 0)
return FALSE;
}
/* Find close quote character. */
col_end = find_next_quote(line, col_start + 1, quotechar,curbuf->b_p_qe);