Vi i Vim pozwalają na naprawdę niesamowite dostosowanie, zazwyczaj przechowywane w .vimrc
pliku. Typowe funkcje dla programisty to podświetlanie składni, inteligentne wcięcia i tak dalej.
Jakie masz inne sztuczki do produktywnego programowania, ukryte w twoim .vimrc?
Najbardziej interesują mnie refaktoryzacje, klasy automatyczne i podobne makra produktywności, szczególnie dla C #.
vim
refactoring
Ktoś
źródło
źródło
Odpowiedzi:
Ty zapytałaś o to :-)
źródło
Nie ma tego w moim pliku .vimrc, ale wczoraj dowiedziałem się o
]p
poleceniu. Powoduje to wklejenie zawartości bufora tak samo jakp
robi, ale automatycznie dostosowuje wcięcie, aby pasowało do linii, na której znajduje się kursor! Jest to doskonałe do przenoszenia kodu.źródło
Używam następujących elementów, aby przechowywać wszystkie pliki tymczasowe i zapasowe w jednym miejscu:
Oszczędza bałagan w katalogach roboczych w każdym miejscu.
Będziesz musiał najpierw stworzyć te katalogi, vim nie stworzy ich za Ciebie.
źródło
Ktoś (tj. Pracownik), który opublikował powyżej, miał następującą linię:
„Automatycznie przejdź do katalogu, w którym znajduje się plik:”
Robiłem coś takiego, dopóki nie odkryłem, że to samo można osiągnąć za pomocą wbudowanych ustawień:
Myślę, że coś podobnego przytrafiło mi się kilka razy. Vim ma tak wiele różnych wbudowanych ustawień i opcji, że czasami jest to szybsze i łatwiejsze do zrobienia samodzielnie niż przeszukiwanie dokumentów w celu uzyskania wbudowanego sposobu.
źródło
autocmd BufEnter * silent! lcd %:p:h:gs/ /\\ /
którym robi to samo, ale nie uszkadza wiersza poleceń.Mój najnowszy dodatek służy do podświetlenia aktualnej linii
źródło
set cul
iset cursorline
zrobić dokładnie to samo.Aktualizacja 2012 : Naprawdę polecam teraz wypróbowanie vim-powerline, który zastąpił mój stary skrypt linii statusu, chociaż obecnie brakuje mi kilku funkcji, których brakuje.
Powiedziałbym, że rzeczy dotyczące linii statusu w moim vimrc były prawdopodobnie najbardziej interesujące / przydatne z całej masy (zgrane z vimrc autorów tutaj i odpowiadający im post na blogu tutaj ).
Zrzut ekranu:
linia stanu http://img34.imageshack.us/img34/849/statusline.png
Kod:
Między innymi informuje w linii stanu o zwykłych standardowych informacjach o pliku, ale zawiera również dodatkowe rzeczy, takie jak ostrzeżenia dla: ustaw wklejania, mieszane wcięcia, końcowe białe znaki itp. Całkiem przydatne, jeśli jesteś szczególnie zainteresowany formatowaniem kodu.
Ponadto, jak pokazano na zrzucie ekranu, połączenie go ze składnią pozwala na wyróżnienie wszelkich błędów składniowych (zakładając, że wybrany język ma dołączony moduł sprawdzania składni.
źródło
autocmd BufEnter *.py match OverLength /\%81v.\+/
.vimrc do podświetlania długich linii, ale twoje podejście może być mniej rozpraszające. Ponadto wynik sprawdzania składni na pasku stanu to naprawdę fajna rzecz!Moja mini wersja:
Wersja duża, zebrana z różnych miejsc:
źródło
Czasami najprostsze rzeczy są najcenniejsze. Dwie linie w moim .vimrc, które są całkowicie niezbędne:
źródło
nore \ ;
zamiast tego, ponieważ używam,
jako mojego<leader>
Różne ustawienia:
Wyłącz irytujące dzwonki błędów:
Spraw, aby kursor poruszał się zgodnie z oczekiwaniami z zawijanymi liniami:
Lookup
ctags
„tags” plik się w katalogu, dopóki jedna znajduje się:Wyświetl pliki SCons ze składnią Pythona:
źródło
j
/k
przeniesienie zgodnie z oczekiwaniami z zawiniętymi liniami? Nie chcę naciskać zag
każdym razem.Nie jestem najbardziej zaawansowanym vimerem na świecie, ale oto kilka, które wybrałem
Sprawia, że autouzupełnianie tabulatorów określa, czy chcesz umieścić tam słowo, czy faktyczną tabulator (4 spacje).
Usuń wszystkie otwierające się spacje od tego miejsca do końca pliku. Z jakiegoś powodu uważam to za bardzo przydatne.
Pokaż numery linii i nie twórz tych irytujących plików kopii zapasowych. I tak nigdy nie przywróciłem niczego ze starej kopii zapasowej.
Podczas wstawiania naciśnij dwukrotnie i, aby przejść do trybu poleceń. Nigdy nie natknąłem się na słowo lub zmienną z 2 i z rzędu, dzięki czemu nie muszę opuszczać palca głównego wiersza ani naciskać wielu klawiszy, aby przełączać się między nimi.
źródło
Mój mocno komentowany vimrc, ze skrótami klawiszowymi readline-esque (emacs):
źródło
źródło
Niektóre poprawki typowych literówek pozwoliły mi zaoszczędzić zaskakującą ilość czasu:
źródło
Nie zdawałem sobie sprawy, ile z moich 3200 wierszy .vimrc było tylko dla moich dziwacznych potrzeb i nie byłoby to dość inspirujące, aby je tutaj wymienić. Ale może dlatego Vim jest tak przydatny ...
źródło
Moja linia 242
.vimrc
nie jest tak interesująca, ale ponieważ nikt o niej nie wspomniał, czułem, że muszę udostępnić dwa najważniejsze mapowania, które ulepszyły mój przepływ pracy, oprócz domyślnych mapowań:Poważnie, przełączanie buforów jest rzeczą bardzo często. Okna, jasne, ale nie wszystko tak ładnie mieści się na ekranie.
Podobny zestaw map do szybkiego przeglądania błędów (zobacz quickfix) i wyników grep:
Proste, łatwe i wydajne.
źródło
źródło
Używam cscope z poziomu vima (świetnie wykorzystując wiele buforów). Używam control-K do inicjowania większości poleceń (skradzionych z ctagów, o ile pamiętam). Ponadto wygenerowałem już plik .cscope.out.
jeśli ma ("cscope")
endif
źródło
Trzymam plik vimrc na githubie. Znajdziesz go tutaj:
http://github.com/developernotes/vim-setup/tree/master
źródło
Jestem na OS X, więc niektóre z nich mogą mieć lepsze ustawienia domyślne na innych platformach, ale niezależnie:
źródło
softtabstop
i użyć tego zamiasttabstop
. Pozostawienietabstop
domyślnej wartości 8 pomoże podczas odczytywania plików utworzonych przez innych za pomocą zakładek.= służy do ponownego formatowania normalnych akapitów. + służy do ponownego formatowania akapitów w cytowanych wiadomościach e-mail. showmatch służy do flashowania pasującego nawiasu / nawiasu, gdy wpisuję nawias lub nawias zamykający.
źródło
Użyj pierwszego dostępnego pliku „tagów” w drzewie katalogów:
Lewy i prawy służą do przełączania buforów, bez przesuwania kursora:
Wyłącz podświetlanie wyszukiwania jednym naciśnięciem klawisza:
źródło
źródło
if has("gui_running")
i fajne mapy. Skopiowałem większość twojej konfiguracji do mojej. DZIĘKI!Umieść to w swoim vimrc:
i nigdy więcej nie myśl o wpisywaniu hashrocket. Tak, wiem, że nie musisz tego robić w Rubim 1.9. Ale nieważne.
Mój pełny vimrc jest tutaj .
źródło
autocmd FileType ruby imap <C-l> <Space>=><Space>
Cóż, będziesz musiał samodzielnie przeszukać moje konfiguracje . Baw się dobrze. Przeważnie jest to tylko moja pożądana konfiguracja, w tym mapowania i losowe elementy związane ze składnią, a także konfiguracja składania i konfiguracja wtyczek, parser kompilacji tex itp.
A tak przy okazji, coś, co uznałem za niezwykle przydatne, to „wyróżnij słowo pod kursorem”:
Zauważ, że tylko
cterm
itermfg
są używane, ponieważ nie używamgvim
. Jeśli chcesz, aby do pracy wgvim
zaledwie replac jegui
iguifg
odpowiednio.źródło
Starałem się, aby mój plik .vimrc był jak najbardziej użyteczny.
Poręczna sztuczka polega na obsłudze plików .gpg do bezpiecznej edycji:
źródło
1) Podoba mi się linia stanu (z nazwą pliku, wartością ascii (dziesiętną), wartością szesnastkową i standardowymi wierszami, kolumnami i%):
2) Lubię też mapowania dla podzielonych okien.
źródło
W moim .vimrc nie ma zbyt wiele (nawet jeśli ma 850 wierszy). Głównie ustawienia i kilka typowych i prostych mapowań, których byłem zbyt leniwy, aby wyodrębnić do wtyczek.
Jeśli masz na myśli "pliki-szablonów" przez "klasy automatyczne", używam wtyczki rozszerzającej szablony - na tej samej stronie znajdziesz wtyczki ftplugins, które zdefiniowałem do edycji C i C ++, niektóre mogą być dostosowane do C # chyba.
Jeśli chodzi o aspekt refaktoryzacji, na http://vim.wikia.com znajduje się wskazówka poświęcona temu tematowi ; IIRC przykładowy kod jest przeznaczony dla C #. Zainspirowało mnie to wtyczką do refaktoryzacji, która wciąż wymaga dużo pracy (właściwie wymaga refaktoryzacji).
Powinieneś rzucić okiem na archiwa listy dyskusyjnej vim, szczególnie tematy o używaniu vima jako efektywnego IDE. Nie zapomnij przyjrzeć się: marka, tagi, ...
HTH,
źródło
Mój .vimrc zawiera (między innymi, bardziej przydatne rzeczy) następujący wiersz:
Znudziło mi się, ucząc się do matury.
źródło
Oto mój plik .vimrc. Używam Gvima 7.2
źródło
Co jest w moim
.vimrc
?Prawdziwe pliki konfiguracyjne znajdują się pod
~/.vim/ :)
I większość rzeczy pasożytuje na wysiłkach innych ludzi, rażąco dostosowanych
vim.org
do mojej przewagi edytorskiej.źródło