Co robi ruch podkreślenia w vimie?


11

Nie rozumiem ruchu podkreślenia w vimie, przynajmniej w kontekście yank (y). Mój ściągawka czyta

"soft" bol down

którego nie rozumiem. Jeśli użyję samego ruchu, wydaje się, że jest taki sam, ^co oznacza przejście do pierwszej niebiałej spacji w linii. Jeśli jednak yużyję tego ruchu, wówczas szarpnie on całą linię (jak yy lub Y), ale y^nie szarpnie całej linii, ale tylko do pierwszej spacji, wyłącznej, jak można się spodziewać.

Co dokładnie powinien robić podkreślnik?

Odpowiedzi:


14

Bez liczenia ^i _rzeczywiście są równoważne, ale te ostatnie obsługują liczenie:

  _  <underscore>         [count] - 1 lines downward, on the first non-blank
                          character |linewise|.

linewiseWyjaśnia swoją drugą obserwację: kiedy jest stosowany jako ruchu, nie obejmuje ona tylko tekst między poprzedniej pozycji i nowy, ale cały zestaw wierszy objętych.

Uważne czytanie :helpzapewnia te informacje. Zobaczysz także (według odległości), że _polecenie jest ściśle powiązane z +i -.


Hmmm, ok, jaka jest różnica między y2_ a y2 +?
Tyler Durden,

2
@TylerDurden Różnica wynosi 1 (linia), podobnie jak różnica między [count] - 1i [count]dla dowolnej wartości [count]. Jak wspomniał Ingo, dobrze byłoby przeczytać wbudowaną pomoc vima, która jest całkiem jasna.
jw013,

4
Dlaczego _polecenie istnieje? Dlaczego ktoś wolałby to +?
Aaron Thoma

Nie kłócić się, ale pomoc jest nieco myląca w tym przypadku. [count] - 1 lines downward- dla mnie brzmiał on „count: 1 linie w dół” zamiast poprawnej interpretacji. Wiem, nawet nie ma to większego sensu, ale jest tam trochę miejsca na zamieszanie.
André Chalella,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.