2009-04-17 6 views

Odpowiedz

33

w twojej .vimrc, dodać to:

set number 
nnoremap <F2> :set nonumber!<CR> 

następnie naciskając F2 włączy numeracji linii, jeśli jest wyłączony, i go wyłączyć, jeśli jest włączony.

+1

Działa to doskonale dla mnie, ale po prostu ciekawy, w jaki sposób "nonumber!" Realizuje funkcję przełączania? –

+0

W najnowszym vimie dodaj ': set nonumber! norelativenumber! 'jeśli użyjesz zarówno liczby jak i liczby względnej. – mtk

23

To właśnie używam (z innym wiążącym klucza): "Number"

nmap <f2> :set number! number?<cr> 

przełącza ustawienie i "numer?" zgłasza stan.

5

Jest to jedna metoda:

map <silent> <F2> :if &number <Bar> 
    \set nonumber <Bar> 
     \else <Bar> 
    \set number <Bar> 
     \endif<cr> 

(ten jest ładny bo zazwyczaj umieścić foldcolumn tam również)

To kolejny:

map <silent> <F2> :set invnumber<cr> 

(metoda bezpośrednia)

+0

Właśnie użyłem drugiej metody, którą nam udostępniłeś. To ten, który preferuję, dziękuję :) – lucapette

+1

Druga metoda jest o wiele bardziej poprawna i łatwa niż cokolwiek innego tutaj (do tej pory). Powinna to być osobna * i zaakceptowana * odpowiedź. –

7
nmap <silent> <F11> :exec &nu==&rnu? "se nu!" : "se rnu!"<CR> 

W nowym vim można ustawić zarówno liczbę względną i numer na raz, w ten sposób:

set nu rnu 

enter image description here

+2

Dzięki temu doskonale nadaje się do każdego rodzaju przełączania, a nie tylko do przełączania numerów. – Hassek

+0

nowy sposób 'nmap : exec & nu == & rnu? "se nu!" : "se rnu!" ' – SergioAraujo

0

używam tego, aby przełączać się między relativenumber (z obecnego absolutnym numerem linii) i numeracja ma linii

nnoremap <silent> <leader>l :set relativenumber! <bar> set nu!<CR> 
Powiązane problemy