2011-11-02 12 views
8

Jedna rzecz mnie interesuje. Gdyby chcesz mapować mapowanie specyficzne dla jakiegoś bufora, można przejść w obu kierunkach
a) zrobić zLokalne mapowania buforów w Vim: <buffer> w porównaniu z <localleader>

nnoremap <buffer> d dd 

b) lub z

nnoremap <localleader>d dd 

które będą skutecznie, bo LocalLeader jest specyficzne dla tego bufora, spraw, aby mapowanie było specyficzne dla tego bufora.

To w pewnym sensie wydaje się być dwojgiem zachodzących na siebie sposobów zrobienia tego samego. Czy istnieje powód, by używać jednego sposobu zamiast drugiego? Czy z jakiegoś powodu jest jeden sposób preferowany przez innych?

Odpowiedz

10

O ile mogę powiedzieć, maplocalleader jest współdzielony między buforami. Oznacza to, że twoja druga mapa nie byłaby specyficzna dla bufora.

Naprawdę, jeśli definiujesz mapę, która jest specyficzna dla bufora (np. Mapa dotyczy tylko określonego rodzaju pliku), uważam, że konwencją jest użycie zarówno <buffer>, jak i <localleader>. Jeśli definiujesz mapę, która nie jest specyficzna dla bufora, powinieneś po prostu użyć <leader>.

+1

Ah, rozumiem. Tak więc nie jest specyficzny dla bufora, ale jego intencją jest użycie do odwzorowań specyficznych dla bufora ARE. Ponownie przeczytałem pomoc i nie mogli tego bardziej mylić. Czy może znowu się pomyliłem? – Rook

+1

Tak, rozumiesz to tak jak ja. "Maplocalleader" w ogóle nie jest udokumentowany, ale po kilku testach wydaje się, że jest to prawidłowe zachowanie. –