Relatywna liczba ustawień Vima i wiele buforów

6

Podoba mi się ustawienie liczby względnej. Obecnie refaktoryzuję kod (tłumaczenie: eksplodowanie 5-letnich okropnych metod i zastępowanie ich ładnym kodem) i uważam, że warto mieć aktywne ustawienie plików podczas ich otwierania

Często albo otwieram wiele buforów, albo używam vima klienta / serwera, aby pomieścić wszystkie moje otwarte bufory / pliki i zauważyłem, że względna liczba wydaje się dotyczyć tylko pierwszego bufora (a nie pozostałych buforów, gdy mam go set rnuw pliku .vimrc .)

Czy oczekiwane zachowanie rnu będzie miało zastosowanie tylko do pierwszego bufora, dopóki nie zostanie ustawione ręcznie?

Connrs
źródło

Odpowiedzi:

3

Tak, jest to oczekiwane zachowanie, chyba że ustawisz to globalnie za pomocą „: setglobal”:

:setglobal relativenumber

Zobacz „ :help :setglobal” i „ :help 'relativenumber'” (z pojedynczymi cudzysłowami jako częścią polecenia).

Heptyt
źródło
Ach, to ma sens, dziękuję. Nigdy nie zastanawiałem się nad setglobal
Connrs
Próbowałeś? Nie tak mówią doktorzy i nie tak się tutaj zachowuje.
peth
6

Nie jestem pewien, czy chcesz, aby to samo zachowanie jak ja ... aby wszystkie bufory relativenumberbyły domyślnie używane. Jeśli tak jest, to można by pomyśleć set relativenumberw .vimrcbędzie działać, ale tak nie jest. Zamiast tego użyłem autocmd BufEnter * set relativenumber.

Nnutter
źródło
+1. Pracował dla mnie z VIM na Windowsie. Przyjęta odpowiedź nie działała dla mnie.
Lord Tydus,
Ten plus autocmd BufLeave * set number(przywrócony do normalnej numeracji przy opuszczaniu bufora) również działał dla mnie.
alxndr
2

Zwykle dzieje się tak, gdy w vimrc jest włączona zarówno numeracja, jak i numeracja względna:

set nu
" maybe lots more configuration here or in other sourced config files
set rnu

Z jakiegoś powodu działa to w pierwszym buforze / karcie, ale nie w kolejnych buforach / kartach, więc rozwiązaniem jest po prostu ustawienie jednego lub drugiego zestawu, ale nie obu:

" turn on line numbering (either relative (rnu) or traditional (nu))
set rnu

Inne odpowiedzi rozwiązują problem z plikiem vimrc, ale go nie naprawiają, ale działają również.

Jaymon
źródło
To było rozwiązanie mojego problemu. Dzięki!
Jessie A. Morris