2013-01-18 20 views
42

I googled i to, co mówi:Jaka jest różnica między b i B w Vim?

Aby wrócić słowo, b jest używany. Jeszcze raz B będzie zawierał więcej znaków w tym, co Vim uważa za słowo.

Nie rozumiem, co B robi inaczej niż b. Czy możesz podać mi przykład, który jasno dałby się zrozumieć? Dzięki.

[EDYCJA] Właściwie to się zastanawiam, ponieważ w internetowym vimie game próbowałem wrócić do WORDS! z b, ale to nie zadziałało. Jednak gdy próbowałem go z Vimem zainstalowanym w moim komputerze, zadziałało to z b. Czy to jest tylko po to, aby gracz używał B z pomocą wskazówki?

Oto obraz gry:

enter image description here

Odpowiedz

70

jak większość aktywowanych par ruchowych b przesuwa się słowa, ale B przesuwa się słowo. Różnica polega na tym, że vim uważa "słowo" za litery, cyfry i podkreślenia (i można to skonfigurować za pomocą ustawienia iskeyword), ale "WORD" jest zawsze czymś, co nie jest białymi znakami.

Więc biorąc pod uwagę to:

foo-bar-baz 

Jeśli kursor znajduje się na z i naciśnięciu b, kursor przesunie się z powrotem do początku baz, a następnie do łącznika, a następnie z powrotem do początku z bar i tak dalej. Każde z nich to inne "słowo" do vima: foo, -, bar, -, baz.

Ale jeśli naciśniesz B, kursor przeniesie całą drogę w lewo do f, ponieważ foo-bar-baz to wszystko bez spacji, a więc jednym słowem.

:help word wewnątrz vim wyjaśnia to również.


Odnośnie gry vim: Myślę, że gra traktuje głazy jako interpunkcję. Spróbuj wpisać go w vim tak:

not WORDS*! 

z kursorem na !, b przeniesie Cię z powrotem do *, ponieważ *! to wszystko znaki interpunkcyjne, a więc jedno słowo. Ale to * jest tak naprawdę głazem, więc nie możesz się tam przenieść, więc nic się nie dzieje. B, z drugiej strony, opuści cię z powrotem na wszystko, co nie jest przestrzenią.

+3

również zajrzyj do ': help iskeyword' – Conner

+0

Czy możesz odpowiedzieć na moje ostatnie pytanie w edytowanym powyżej? –

+1

na pewno; zmieniona odpowiedź – Eevee

5

B traktuje znaki interpunkcyjne jako część słowa, używając tylko spacji jako ograniczników słów; b nie traktuje interpunkcji jako części słowa.

7

Google nie jest tym, gdzie powinieneś pójść, gdy chcesz uzyskać wyjaśnienie funkcji Vima: naucz się korzystać z :help. Odpowiedzi na większość twoich pytań tam są.

Musisz także potrzebujesz, aby przejść przez $ vimtutor. Jest o wiele bardziej przydatna niż ta gra.

+4

Chociaż jesteś całkowicie poprawny, to nie odpowiada na pytanie. –

+0

Chłopaki, doceniam twoje obawy, ale a) jesteś trochę za późno na imprezę i b) jest to rozwiązanie problemu leżącego u podstaw PO. – romainl

Powiązane problemy