W VIM w trybie wiersza poleceń "%" oznacza bieżący plik, "cword" oznacza bieżące słowo pod kursorem. Chcę utworzyć skrót, w którym potrzebuję bieżącego numeru linii. Jaki jest symbol oznaczający to?W trybie wiersza komend VIM jaki jest znak specjalny/symbol dla bieżącej linii?
Odpowiedz
Jeśli chcesz przekazać bieżący numer linii do linii poleceń, można zrobić
:exe "!echo " . line(".")
. (kropka) oznacza bieżącą linię.
Dla wyjaśnienia: ta jest przeznaczona na rzeczy, jak :1,.s/foo/bar/g
które zmienią każdy foo
do bar
od początku pliku do bieżącej linii.
Nie wiem, znam sposób, aby uzyskać bieżący numer wiersza rozszerzony na polecenie powłoki, która jest, co chce zrobić, wykonując :!echo .
można dowiedzieć się o ekspansji, które są zrobione (na przykład %
i #
) w :he cmdline-special
.
To nie działa. Kiedy wydaję polecenie :! Echo. Dane wyjściowe to tylko "." zamiast oczekiwanego numeru linii. – akshat
Nie, to nie działa, zobacz moje wyjaśnienie. Może, jeśli zadasz kolejne pytanie, w którym szczegółowo wyjaśnisz swój planowany skrót, możemy Ci pomóc w inny sposób osiągnięcia tego, co zamierzasz. – WMR
dzięki WMR. patrząc wstecz na moje pytanie zdaję sobie sprawę, że nie wyjaśniłem poprawnie mojego wymogu. PS: Spojrzałem na cmdline-special, ale nie znalazłem tego. Miałem nadzieję, że jest coś, o czym nie wspomniano. – akshat
poleceń w vim działa na bieżącej linii tak:
:s/foo/bar/g
przekształci każdy foo w pasku na linii jesteś obecnie.
Myślę, że "g" spowoduje, że będzie on zastępował globalnie w całym pliku. –
Nie, w tym przypadku "g" spowoduje, że wyrażenie regularne zostanie zastosowane globalnie do bieżącego wiersza. – Tomalak
Aby to zrobić globalnie, musisz umieścić:% s/foo/bar/g LUB: 1, $ s/foo/bar/g –
Aby powrócić numer wiersza bieżącej linii w dolnej części ekranu, należy:
:.=
- 1. vim: cofnąć znak nowej linii w trybie wstawiania?
- 2. Klawisze komend Vim comma
- 3. Czy jest jakiś klucz domyślny w vim, aby utworzyć nową linię po bieżącej linii i pozostać w trybie normalnym?
- 4. przetwarzanie wiersza komend przez introspekcję
- 5. Numer wiersza editekstu i pozycja kursora w bieżącej linii.
- 6. Jak przesunąć kursor do określonego słowa w bieżącej linii w vim
- 7. Wywołanie klawiszy hjkl z wiersza komend vima:
- 8. Przesuń kursor x linie od bieżącej pozycji w vi/vim
- 9. Jak uzyskać numer bieżącej linii?
- 10. Jaki jest najlepszy sposób w Vim do operowania na względnych zakresach w trybie wizualnym?
- 11. Wstawianie nowej linii bez wchodzenia w trybie wstawiania, vim
- 12. pg_dump: zbyt wiele argumenty linii komend
- 13. wzór wyszukiwania vim dla fragmentu linii tekstowej wyszarpany w trybie wizualnym
- 14. Jaki jest znak @ przed parametrów
- 15. Ustawienia kolorów wiersza polecenia Vim
- 16. VIM nawigacja w trybie wstawiania
- 17. Usuń znak nowej linii z pierwszego wiersza polecenia NSString
- 18. Skopiuj linie w trybie wizualnym w vim
- 19. Parser wiersza komend z wzajemnie wykluczającymi się wymaganymi parametrami
- 20. jak określić wiele transformacji przekształcających w linii komend?
- 21. fscanf i znak nowej linii
- 22. Jak zmienić znak, którego Vim używa do numerowania pustych linii w buforze?
- 23. Znak nowego wiersza w C#
- 24. Zmiana rozmiaru wiersza poleceń za pomocą komend
- 25. Wstaw znak powrotu karetki do vim
- 26. Vim przesuwanie kursora na początek następnej linii
- 27. Vim: Podświetl pojedynczy znak w kolumnie 80
- 28. Komendy komend Vima
- 29. Znak dolara na końcu każdej linii
- 30. UNIX: Wymień znak nowej linii w/Colon, zachowując znak nowej linii przed EOF
Witam, To jest niesamowita odpowiedź. dokładnie to, czego szukałem. – akshat
Dzięki za brakujący składnik dla mojej linii i dołącz wyjście ": exe" r! " . getline (".") ' – bsb