VIM - jak pracować z BOTH supertab.vim z snipMate.vim?


4

Wybieram vima i znalazłem 2 wtyczki, które działają świetnie - snipMate , to naśladuje zachowanie fragmentu partnera tekstowego i supertab , to przełącza i uzupełnia słowa za pomocą klawisza tab na podstawie wychodzących słów w bieżących / innych buforach. Wszystkie wtyczki zostały włączone w moim pliku .vimrc za pomocą :filetype plugin on, ale mogę tylko dostać supertab do pracy. Podejrzewam, że ponieważ klawisz TAB jest używany dla obu, to są one nadrzędne względem siebie. Czy ktoś napotkał to i znalazł poprawkę? Nie jestem jeszcze ekspertem w edycji mojego pliku .vimrc, kluczy do mapowania itp. Dzięki.

EDYTOWAĆ

Gdy próbuję wymusić ładowanie samego snipMate.vim, otrzymuję następujące błędy:

Error detected while processing /home/sa125/.vim/plugin/snipMate.vim:
line   15:
E122: Function <SNR>18_RemoveSnippet already exists, add ! to replace it
line   73:
E122: Function snipMate#expandSnip already exists, add ! to replace it
line  112:
E122: Function <SNR>18_ProcessSnippet already exists, add ! to replace it
line  123:
E122: Function <SNR>18_Count already exists, add ! to replace it
line  169:
E122: Function <SNR>18_BuildTabStops already exists, add ! to replace it
line  211:
E122: Function snipMate#jumpTabStop already exists, add ! to replace it
line  258:
E122: Function <SNR>18_UpdatePlaceholderTabStops already exists, add ! to replace it
line  302:
E122: Function <SNR>18_UpdateTabStops already exists, add ! to replace it
line  321:
E122: Function <SNR>18_SelectWord already exists, add ! to replace it
line  385:
E122: Function <SNR>18_UpdateChangedSnip already exists, add ! to replace it
line  434:
E122: Function <SNR>18_UpdateVars already exists, add ! to replace it  

Czy robię to źle? ...


mam ten sam problem, ale na odwrót. dostaję tylko snipmate do pracy, ale nie supertab. oba działają niezależnie
— matthias krull

jakiej wersji vima używasz? jaki system operacyjny? Z jakich innych wtyczek korzystasz?
— matthias krull

Odpowiedzi:


4

Ok, to działa z skryptami powiązanymi z pierwotnym pytaniem.

Okazało się, że użyłem supersnipmate, snipmate fork, który niestety usunął wbudowaną obsługę supertab snipmate.

Użyłem również oryginalnego supertabu hostowanego na vim.org, który również nie działał z snipmate. Połączony skrypt na github okazał się następcą (lub kontynuacją) starego supertabu.


6

Oboje dobrze ze sobą współpracujemy.

Jedyną istotną linią w moim .vimrc jest:

let g:SuperTabDefaultCompletionType = "context"
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.