fatih / vim-go

logo vim-go

funkcje

ta wtyczka dodaje obsługę języka Go dla Vima, z następującymi głównymi cechami:

  • Skompiluj pakiet za pomocą :GoBuild, zainstaluj go za pomocą :GoInstall lub Przetestuj za pomocą :GoTest. Uruchom pojedynczy test z :GoTestFunc).
  • szybko wykonaj bieżące pliki za pomocą :GoRun.
  • ulepszone podświetlanie składni i składanie.
  • debugowanie programów ze zintegrowaną obsługą delve z :GoDebugStart.
  • Ukończenie i wiele innych funkcji obsługuje gopls.
  • formatowanie przy zapisie zachowuje pozycję kursora i historię cofania.
  • przejdź do symbolu / deklaracji za pomocą :GoDef.
  • sprawdź dokumentację za pomocą :GoDoc lub :GoDocBrowser.
  • łatwe importowanie pakietów przez :GoImport, usuwanie ich przez :GoDrop.
  • precyzyjna zmiana nazw identyfikatorów na :GoRename.
  • zobacz, który kod jest objęty testami z :GoCoverage.
  • Dodaj lub usuń tagi na polach struct z :GoAddTags i :GoRemoveTags.
  • zadzwoń golangci-lint z :GoMetaLinter, aby wywołać wszystkie możliwe lintery(golint, vet, errcheck, deadcode, itd.) i umieść wynik na liście QuickFix lub location.
  • Połącz kod z :GoLint, Uruchom Kod przez :GoVet, aby wykryć zakłócenia stateczne lub upewnij się, że błędy są sprawdzane za pomocą :GoErrCheck.
  • zaawansowane narzędzia analizy źródeł wykorzystujące guru, takie jak :GoImplements,:GoCalleesi :GoReferrers.
  • … i wiele innych! Zobacz doc / vim-go.txt więcej informacji.
  • instancja goplsmoże być współdzielona z innymi wtyczkami Vima.
  • użycie Vim-go z gopls może być wyłączone.

instalacja

vim-go wymaga co najmniej Vim 8.0.1453 lub Neovim 0.4.0.

najnowsza stabilna wersja jest zalecaną wersją do użycia. Jeśli zamiast tego zdecydujesz się użyć gałęzi master, postępuj ostrożnie; jest to gałąź deweloperska.

vim-go jest zgodny ze standardową strukturą ścieżki uruchomieniowej. Poniżej znajdują się linie pomocnicze dla popularnych menedżerów pakietów:

  • Pakiety Vim 8
    • git clone https://github.com/fatih/vim-go.git ~/.vim/pack/plugins/start/vim-go
  • patogen
    • git clone https://github.com/fatih/vim-go.git ~/.vim/bundle/vim-go
  • vim-plug
    • Plug 'fatih/vim-go', { 'do': ':GoUpdateBinaries' }
  • Vundle
    • Plugin 'fatih/vim-go'

będziesz także musiał zainstalować wszystkie niezbędne pliki binarne. vim-go ułatwia instalację wszystkich z nich, dostarczając polecenie :GoInstallBinaries, które spowodujego get wszystkie wymagane pliki binarne.

sprawdź sekcję Install w dokumentacji, aby uzyskać więcej szczegółowych instrukcji (:help go-install).

użycie

pełna dokumentacja znajduje się w doc/vim-go.txt. Możesz go odtworzyć z poziomu Vima za pomocą :help vim-go.

w zależności od metody instalacji, konieczne może być ręczne wygenerowanie wtyczki help tags(np. :helptags ALL).

mamy również oficjalny samouczek vim-go.

FAQ i rozwiązywanie problemów

FAQ i wskazówki dotyczące rozwiązywania problemów znajdują się w dokumentacji i można je szybko uzyskać za pomocą :help go-troubleshooting. Jeśli uważasz, że znalazłeś błąd lub błąd w vim-go, który nie został rozwiązany przez help ani w existingissues, otwórz problem z czystymi krokami reprodukcji. :GoReportGitHubIssue można użyć wstępnie zapełnić wiele informacji potrzebnych przy tworzeniu nowego problemu.

wszyscy PR-owcy są mile widziani. Jeśli planujesz dodać dużą łatkę lub zintegrować nowe narzędzie, najpierw Utwórz problem, aby najpierw uzyskać wstępne pytania lub decyzje projektowe.

możesz uruchomić testy lokalnie, uruchamiając make. To będzie lint VimL dla Ciebie, lint dokumentacji, i uruchomić testy przeciwko minimalnej wymaganej wersji Vim, inne wersje Vim, które mogą być krytyczne dla wsparcia, i Neovim.

Licencja

Licencja 3-Klauzulowa BSD-zobacz LICENSE po więcej szczegółów