fatih / vim-go

vim-go logo

funktioner

denna plugin lägger Go språkstöd för Vim, med följande huvudfunktioner:

  • kompilera ditt paket med :GoBuild, installera det med :GoInstalleller testa det med :GoTest. Kör ett enda test med :GoTestFunc).
  • kör snabbt din nuvarande fil(er) med :GoRun.
  • förbättrad syntaxmarkering och vikning.
  • felsöka program med integrerad delve stöd med :GoDebugStart.
  • slutförande och många andra funktioner stöd via gopls.
  • formatering på Spara håller markörens position och ångra historiken.
  • gå till symbol / deklaration med :GoDef.
  • slå upp dokumentation med :GoDoc eller :GoDocBrowser.
  • importera enkelt paket via :GoImport, ta bort dem via :GoDrop.
  • exakt typsäker namnbyte av identifierare med :GoRename.
  • se vilken kod som omfattas av tester med :GoCoverage.
  • Lägg till eller ta bort taggar på strukturfält med :GoAddTags och :GoRemoveTags.
  • Ring golangci-lint med :GoMetaLinter för att åberopa alla möjliga linters(golint, vet, errcheck, deadcode, osv.) och sätt resultatet iquickfix eller platslista.
  • Lint din kod med :GoLint, kör din kod genom :GoVetför att fånga staticerrors, eller se till att fel kontrolleras med :GoErrCheck.
  • avancerade källanalysverktyg som använder guru, till exempel :GoImplements,:GoCalleesoch :GoReferrers.
  • … och många fler! Se doc / vim-go.txt för mer information.
  • gopls instansen kan delas med andra vim-plugins.
  • vim-gos användning av gopls kan inaktiveras.

installera

vim-go kräver minst vim 8.0.1453 eller Neovim 0.4.0.

den senaste stabila versionen är den rekommenderade versionen att använda. Om du väljer att använda huvudgrenen istället, gör det med försiktighet; det är en utvecklingsgren.

vim-go följer den vanliga runtime path-strukturen. Nedan följer några hjälparinjerför populära pakethanterare:

  • vim 8 paket
    • 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'

du måste också installera alla nödvändiga binärer. vim-go gör det enkeltatt installera dem alla genom att tillhandahålla ett kommando, :GoInstallBinaries, vilket kommer attgo get alla nödvändiga binärer.

kolla in Installationsavsnittet i dokumentationen för mer detaljerade instruktioner (:help go-install).

användning

den fullständiga dokumentationen finns på doc/vim-go.txt. Du kanvisa det inifrån Vim med :help vim-go.

beroende på din installationsmetod kan du behöva generera insticksprogrammetshelp tagsmanuellt (t.ex. :helptags ALL).

vi har också en officiell vim-go handledning.

FAQ och felsökning

FAQ och felsökningstips finns i dokumentationen och kan snabbt nås med :help go-troubleshooting. Om du tror att du har hittat en bugg eller en ankomst i vim-go som varken behandlas av hjälp eller i existerande problem, vänligen öppna ett problem medklara reproduktionssteg. :GoReportGitHubIssue kan användas för att fylla i mycketav den information som behövs när du skapar en ny fråga.

bidragande

alla PRs är välkomna. Om du planerar att bidra med en stor patch eller att integrera ett nytt verktyg, skapa ett problem först för att få några inledande frågor eller designbeslut ur vägen först.

du kan köra testerna lokalt genom att köra make. Det kommer att lint VimL för dig, lint dokumentationen och köra testen mot den minsta nödvändiga versionen av Vim, andra versioner av Vim som kan vara kritiska för support och Neovim.

licens

BSD 3-Klausul licens-se LICENSE för mer information