Rewrite gofmt and goimports as plugins

This commit is contained in:
Zachary Yedidia
2016-04-25 12:48:43 -04:00
parent e05e993e25
commit eba820a9c7
12 changed files with 360 additions and 337 deletions

View File

@@ -1,5 +1,26 @@
go = {}
function onSave()
local handle = io.popen("goimports -w view.go")
if settings.GoImports then
messenger:Message("Running goimports...")
go.goimports()
elseif settings.GoFmt then
messenger:Message("Running gofmt...")
go.gofmt()
end
end
function go.gofmt()
local handle = io.popen("gofmt -w " .. view.Buf.Path)
local result = handle:read("*a")
handle:close()
view:ReOpen()
messenger:Message(result)
end
function go.goimports()
local handle = io.popen("goimports -w " .. view.Buf.Path)
local result = handle:read("*a")
handle:close()