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>cc
nadal wykonuje polecenie wtyczki.
Jak mogę zdefiniować moje mapowanie, aby zastąpiło to zdefiniowane przez wtyczkę?
vimrc
key-bindings
plugin-system
toro2k
źródło
źródło
Odpowiedzi:
Wtyczki są pobierane po Twojej,
vimrc
więc nie ma sposobu na zastąpienie mapowania wtyczek,vimrc
jeś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.źródło
map <C-l> something
w tam i to jeszcze dostaje nadpisane przez Pydocstring.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:
Od
:help VimEnter
: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
.źródło