Мы все знаем, что ci"
ci'
ci(
ci[
.... Очень удобно в повседневном редактировании. Я нашел что-то странное и проверил помощь, не понял почему.
скажем, у меня есть файл:
foo "target"
foo 'target'
foo (target)
foo {target}
foo [target]
foo <target>
если мой указатель на начало каждой строки (на 'f
'), тогда я набираю ci ", ci ', ci (...
cix
работает только с кавычками (одиночными или двойными), не работает для скобок. почему они ведут себя по-другому?
(dix
, vix
то же самое)
проверено с помощью --noplugin, vim 7.3
спасибо.
Обновление
Спасибо @romainl за ответ. У меня все еще есть сомнения относительно "обработки пар в vim"
проверьте этот пример:
foo "targ\"eti\" some\"thing else "
Если у меня есть строка, как указано выше, я набираю ci"
, независимо от того, что курсор находится в начале или между кавычками, он отлично работает, кажется, что у vim есть идея "пары"?
и это может быть, что вы имели в виду о спаривании?
foo "target x some"thing else "
foo (target x some(thing else )
У меня выше двух строк, если (курсор в x
) я набираю ci"
и ci(
, ничего не произошло со 2-й строкой, но первая строка была изменена на:
foo "I"thing else " (I is cursor)