fatih / vim-go

vim-go logo

Features

deze plugin voegt ondersteuning voor Go-talen voor Vim toe, met de volgende hoofdfuncties:

  • compileer uw pakket met :GoBuild, installeer het met :GoInstall of test het met :GoTest. Voer één test uit met :GoTestFunc).
  • Voer snel uw huidige bestand (en) uit met :GoRun.
  • verbeterde syntaxismarkering en vouwen.
  • Debugprogramma ‘ s met geïntegreerde delve ondersteuning met :GoDebugStart.
  • voltooiing en vele andere functies ondersteunen via gopls.
  • opmaak bij opslaan behoudt de cursorpositie en de bewerkingsgeschiedenis.
  • Ga naar symbool/declaratie met :GoDef.
  • zoek documentatie op met :GoDoc of :GoDocBrowser.
  • importeer eenvoudig pakketten via :GoImport, verwijder ze via :GoDrop.
  • nauwkeurige typeveilige hernoeming van identifiers met :GoRename.
  • zie welke code door tests met :GoCoveragewordt bestreken.
  • tags toevoegen of verwijderen op struct-velden met :GoAddTags en :GoRemoveTags.
  • aanroep golangci-lint met :GoMetaLinter om alle mogelijke linters aan te roepen(golint, vet, errcheck, deadcode, enz.) en zet het resultaat in de QuickFix of locatie Lijst.
  • pluis uw code met :GoLint, voer uw code door :GoVet om fouten van de staticer op te vangen, of zorg ervoor dat fouten worden gecontroleerd met :GoErrCheck.
  • geavanceerde bronanalysetools die guru gebruiken, zoals :GoImplements,:GoCallees en :GoReferrers.
  • … en nog veel meer! Zie doc / vim-go.txt voor meer informatie.
  • het gopls exemplaar kan gedeeld worden met andere vim plugins.
  • Vim-go ‘ s gebruik van gopls kan worden uitgeschakeld.

Install

vim-go vereist ten minste Vim 8.0.1453 of Neovim 0.4.0.

de laatste stabiele release is de aanbevolen versie om te gebruiken. Als je ervoor kiest om in plaats daarvan de master branch te gebruiken,doe dit dan voorzichtig; het is een development branch.

vim-go volgt de standaard structuur van het runtime-pad. Hieronder zijn enkele helperlijnen voor populaire pakketbeheerders:

  • Vim 8 pakketten
    • git clone https://github.com/fatih/vim-go.git ~/.vim/pack/plugins/start/vim-go
  • Pathogeen
    • 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'

U zult ook moeten installeren, alle benodigde bestanden. vim-go maakt het eenvoudig om ze allemaal te installeren door een commando te geven, :GoInstallBinaries, datgo get alle benodigde binaire bestanden zal bevatten.

bekijk de sectie installeren in de documentatie voor meer gedetailleerde instructies (:help go-install).

gebruik

de volledige documentatie is te vinden op doc / vim-go.txt. Je kunt het vanuit Vim weergeven met :help vim-go.

afhankelijk van uw installatie methode, moet u de pluginhelp tagshandmatig aanmaken (bijvoorbeeld :helptags ALL).

we hebben ook een officiële vim-go tutorial.

FAQ en probleemoplossing

de tips voor veelgestelde vragen en probleemoplossing staan in de documentatie en kunnen snel worden opgevraagd met :help go-troubleshooting. Als u denkt dat u een bug of kortsluiting in vim-go hebt gevonden die niet door hulp of in existingissues wordt aangepakt, open dan een probleem metclear reproduction steps. :GoReportGitHubIssue kan veel van de informatie die nodig is bij het aanmaken van een nieuw probleem vooraf invullen.

bijdragende

alle PRs zijn welkom. Als u van plan bent om een grote patch bij te dragen of om een nieuwe tool te integreren, maak dan eerst een probleem om eventuele upfront vragen of ontwerpbeslissingen uit de weg te krijgen.

u kunt de tests lokaal uitvoeren door makeuit te voeren. Het zal de VimL voor u pluizen, de documentatie pluizen en de tests uitvoeren tegen de minimaal vereiste versie van Vim, andere versies van Vim die van cruciaal belang kunnen zijn voor ondersteuning, en Neovim.

Licentie

the BSD 3-Clause License-see LICENSE for more details