Jak wybrać całą zawartość pliku w Vimie i VsVimie? Podobnie jak w innych edytorach ctrl+A wykonuje zadanie dla zaznaczenia wszystkich.
Komentarze
Odpowiedź
ggVG zaznacza całą zawartość. gg przechodzi do pierwszej linii. V uruchamia tryb wizualny. G przeskakuje do ostatniej linii, wybierając tym samym od pierwszej do ostatniej linii
Komentarze
- Ciągle otrzymuję nie polecenie vim dla ggVG i gg, nawet G
- 77 głosów za i oznaczonych jako zaakceptowana odpowiedź, ale ' jest źle? Nawet zgodnie z treścią samej odpowiedzi kombinacją będzie VggG.
Odpowiedź
Wraz z SibiCoder ” Jeśli masz jasne wyobrażenie o tym, co chcesz zrobić, możesz użyć następującego:
:%X
Gdzie X to polecenie, na przykład:
:%d -> delete every line :%y -> yank every line :%normal! >> -> indent every line
Masz również globalne polecenie :g, które wraz z wzorzec wyszukiwania ^, może zrobić to samo:
:g/^/d -> delete every line :g/^/y -> yank every line :g/^/normal! >> -> indent every line
Jeśli chcesz zaznaczyć tekst, wtedy ggVG jest w porządku, ale pamiętaj o tej metodzie, jeśli już wiesz, jaki jest następny krok. Pamiętaj, że nie pozostawi on kursora w trybie wizualnym.
Zobacz: :h :% i :h :g w celach informacyjnych.
Pamiętaj, że mimo mapowanie C-A jest używane w vimie (patrz :h CTRL-A), możesz je zamapować na zrób to, co robią inni redaktorzy:
nnoremap <C-A> ggVG
Odpowiedź
Pozostałe odpowiedzi są dobre . Oto kolejna alternatywa.
Ponieważ wspomniałeś, że używasz VsVim, możesz zmienić, które klawisze są obsługiwane przez Visual Studio, a które z vsvim. Idź do
Narzędzia -> Opcje -> VsVim -> Klawiatura
Stamtąd możesz ustawić Ctrl-a na być obsługiwane przez Visual Studio, a nie VsVim.
Chociaż nie polecam tego, ponieważ nie będziesz mógł używać <C-a> vima, co uważam za być istotną cechą. Chociaż to zależy od Ciebie.
Odpowiedź
możesz użyć dużej liczby, na przykład 99999yy aby zaznaczyć całą zawartość pliku
Komentarze
- Pliki większe niż
100000linie są możliwe, choć rzadkie. Ponadto użycieyyspowoduje ich szarpnięcie , a nie wybierz je. - tak, na pewno masz rację, ale wybierając coś, ' s w większości przypadków do wycinania, kopiowania lub usuwania 🙂
- To ' jest tym, czego potrzebowałem. Zaznacz wszystko i szarpnij.
- Po prostu
:%ywystarczy. Lub:%y +, aby wyszarpnąć wszystko w rejestrze+.
Odpowiedź
Jak wspomniał @SibiCoder ggVG załatwia sprawę , ale lubię coś bliższego Ctrl+A.
Dlatego dodałem tę linię do mojego .vimrc
nnoremap <leader>a ggVG
Teraz naciśnięcie <leader>a spowoduje zaznaczenie wszystkiego, w moim przypadku „s \a.
Komentarze
- Witamy w Vi i Vimie ! Teoretycznie możesz map control a (
<C-a>), ale zdarza się, że ma użyteczną domyślną funkcjonalność - Tak, że ' s dlaczego wolę
<leader>a
Odpowiedź
Jeśli „d jak szybszy / bardziej intuicyjny sposób na zrobienie tego i nie przejmuj się dodawaniem wtyczki, wygląda to poręcznie: https://github.com/kana/vim-textobj-entire
ctrl+aw innych edytorach wizualnie podświetla cały plik .:chat!, ale nie ' nie byłeś ostatnio w tym pokoju, więc nie ' nie pozwól mi)vsvimjest jakvimperatori tego rodzaju wtyczek do innych programów, więc nie było to tematem, więc je usunąłem, potem miałem wątpliwości, więc sprawdziłem meta i zobaczyłem, że to na temat , więc zatwierdziłem edycję tagu, ale zapomniałem zmienić ponownie pytania. ' zmieniam to teraz, przepraszam za to.