Jak mogę ponownie zdefiniować mapowanie klawiszy wtyczek?


21

Zainstalowałem wtyczkę, która nie zapewnia mechanizmu wyłączania definiowanych mapowań klawiszy. Chcę przedefiniować jedno z mapowań ( <leader>cc) zdefiniowanych przez wtyczkę dla własnego celu, próbowałem umieścić w moim wierszu następujący wiersz .vimrc:

noremap <leader>cc echo "my purpose"

Ale to nie działa, <leader>ccnadal wykonuje polecenie wtyczki.

Jak mogę zdefiniować moje mapowanie, aby zastąpiło to zdefiniowane przez wtyczkę?


jeden (co prawda nie wielki) opcją jest po prostu wejść i edytować źródła i usunąć mapowanie przestępstwa bezpośrednio
— JonnyRaa

Odpowiedzi:


20

Wtyczki są pobierane po Twojej, vimrcwięc nie ma sposobu na zastąpienie mapowania wtyczek, vimrcjeśli wtyczka nie pozwala na to.

Umieszczenie niestandardowego mapowania w ~/.vim/after/plugin/mystuff.vim(nazwa pliku nie ma znaczenia) powinno pozwolić na zastąpienie mapowania wtyczek.


1
Robienie tego nie działa dla mnie. I miejsce map <C-l> somethingw tam i to jeszcze dostaje nadpisane przez Pydocstring.
— wiosłowa

Czy istnieje sposób, aby to zrobić, który jest specyficzny dla typu pliku (np. Ftplugin)?
— Steven Lu

Zgadzam się, to nawet nie działa.
— Steven Lu

20

Jak wspomniano w innych odpowiedziach, wtyczki są pobierane po zakończeniu vimrc.

Jeśli chcesz zachować swoje przesłonięcia w vimrc zamiast plugin po, możesz użyć tej „sztuczki” w dowolnym miejscu pliku vimrc:

autocmd VimEnter * noremap <leader>cc echo "my purpose"

Od :help VimEnter:

VimEnter: Po wykonaniu wszystkich czynności związanych z uruchomieniem, w tym załadowaniu plików .vimrc, wykonaniu argumentów „-c cmd”, utworzeniu wszystkich okien i załadowaniu w nich buforów.

Tak więc wszystko, co umieścisz w poleceniu automatycznym VimEnter, zostanie uruchomione, gdy Vim będzie gotowy. Korzystanie VimEnter ten sposób pozwala zachować wszystkie mapowania z innymi ustawieniami, gdzie wykorzystywane są do utrzymania ich: vimrc.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.