Мне было трудно понять эти движения текстовых объектов:
*]]*
]] [count] sections forward or to the next '{' in the
first column. When used after an operator, then also
stops below a '}' in the first column. |exclusive|
Note that |exclusive-linewise| often applies.
*][*
][ [count] sections forward or to the next '}' in the
first column. |exclusive|
Note that |exclusive-linewise| often applies.
*[[*
[[ [count] sections backward or to the previous '{' in
the first column. |exclusive|
Note that |exclusive-linewise| often applies.
*[]*
[] [count] sections backward or to the previous '}' in
the first column. |exclusive|
Note that |exclusive-linewise| often applies.
Я могу понять, что «]» означает «вперед», как и «]}« перейти к следующему непревзойденному «}», а вторая часть «}» описывает цель, которая имеет смысл.
Но что означают вторые скобки в "]]", "] [", "[[", "[]"? Если второе «]» в «]]» означает «{в первом столбце», то как насчет второго «]» в «[]», что означает «}», а не «{». Я просто не могу понять смысл этих 4 движений текстовых объектов.
cursor-motions
Лейра Хуа
источник
источник
]
всегда должен соответствовать a}
. Это, как указывает ОП, не так. Они просят разъяснений по этому вопросу, а не определения раздела.Ответы:
Это помогает проверить это на файле. Вы можете думать об этом как «вперед» и «назад», «X» для начала »и« до конца »
Попробуйте использовать четыре движения для этого блока текста:
Я не знаю, как сделать эти часто полезные движения GIF, но в основном, например,
]]
]]
]]
будет двигаться с позиций # 1-> 3-> 5, и[[
наоборот; аналогично перемещаться между # 2 <-> 4 <-> 6 с помощью][
и[]
движений.Вот картинка:
источник
Они предназначены для перемещения вверх и вниз функций, где предполагается, что открывающая и закрывающая скобки функций всегда находятся в первом столбце. (От редакции: в наши дни такое случается не часто, поэтому для многих пользователей эти движения будут рудиментарными.)
Ведущий
[
или]
укажите направление, в котором вы собираетесь идти в файле, соответственно вверх или вниз. Затем второе[
или]
означает перейти к открытой скобке в прологе функции или закрытой скобке в эпилоге функции; если он соответствует лидирующему символу, вы переходите к открытой скобке, если он отличается от лидирующего символа, вы переходите к закрывающей скобке.Я использую
[[
и]]
довольно регулярно, хотя обычно предпочитаю, чтобы меня определили с определением функции. Для меня[]
и не][
являются интуитивно понятными при редактировании, и я никогда не использую их; Хотелось бы мне понять, как заставить их работать в моем мозгу, потому что это операция, которую я часто выполняю другими способами (например,a}
движение часто покрывает меня).источник