У Vim, я хотів би повернути слово. Протилежність `w`


207

Коли ви використовуєте vim, ви можете рухатись вперед слово за словом за допомогою w. Як мені рухатись назад?


8
viemu.com/vi-vim-cheat-sheet.gif У ньому багато клавіш vim у простому графічному форматі. Я настійно рекомендую роздрукувати його та мати його поруч із комп’ютером, якщо ви збираєтесь багато використовувати vim.
Сем Брінк


1
Також дивіться: stackoverflow.com/questions/5125270/… якщо ви зацікавлені перейти назад до кінця попереднього слова - використовуючи ge та gE
arcseldon

Відповіді:


283

Використовуйте bдля повернення слова.

Ви також можете перевірити Wта Bпросунути / повернути назад WORD(який складається з послідовності непорожніх символів, розділених пробілом, згідно :h WORD).


42
Для повноти ради geпіде назад до кінця слова. gEпіде назад до кінцяWORD
Пітер Рінкер

4
@Peter Rincker: і eта Eйтимуть вперед.
Бенуа

1
Яка різниця між b і B? Або ш і ш? Поведінка здається однаковою.
Кейсі Паттон

@CaseyPatton: великі версії розглядають будь-яку послідовність непробільного простору як слова; нижній регістр схожий на \w|\S. Дивіться :help wordта :help WORDдля отримання більш детальної інформації.
rninty

Також варто врахувати ge та gE для того, щоб повернутися назад до кінця попереднього слова. Крім того , див stackoverflow.com/questions/5125270 / ...
arcseldon

79

Це допомагає мені думати про це як:

b перейти до початку поточного чи попереднього слова

w перейти до початку наступного слова

e щоб перейти до кінця поточного чи наступного слова

ge перейти до кінця попереднього слова

Спробуйте :h word-motionsотримати детальнішу інформацію та як їх поєднувати з операціями.



2

З іншого боку , якщо ви використовуєте w, b, W, і Bдля навігації ліній перестрибуючи через слова, розглянути наступні альтернативні варіанти , які можуть бути швидше , якщо вони використовуються правильно.

f<char>    # jump to next occurrence of <char> to right (inclusive)

або

F<char>    # jump back to next occurrence of <char> to left (inclusive)

Якщо ваші слова розділені пробілами

Якщо ваші слова розділені, <space>ви можете переходити через слова пробілами:

f<space>;;;;де ;повторюється попередня команда, тож ви переходите через пробіли

F<space>;; скакати назад по простору

Якщо ваші слова розділені розділовими знаками, а не пробілами

просто замініть <char>розділові знаки, наприклад.

Метод пунктуації не є ефективним для прокрутки, але якщо ви знаєте, куди ви хочете стрибнути, він зазвичай може потрапити туди у стрибку чи два

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.