refactor: minimize amount of vimscript (#96)
* refactor: remove autoload * since nvim 0.9 health.lua files are threaded as checkhealth provider * prof of concept * fix(runner.gocmd)!: i forgot to update it when i was working on #85 * fix(plugin): now commands register properly * fix(plugin): fix command name for :GoIfErr * fix(plugin): respect `setup_commands` option * docs: update * refactor(plugin): use vim.schedule * docs: update CONTRIBUTING
This commit is contained in:
parent
c5cc5080fa
commit
9aa0038125
9 changed files with 108 additions and 50 deletions
74
plugin/gopher.lua
Normal file
74
plugin/gopher.lua
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
--- NOTE: runs in defer since this file before gopher.config
|
||||
--- I'm not sure if this is the best to do this
|
||||
vim.schedule(function()
|
||||
if require("gopher.config").should_setup_commands() then
|
||||
vim.api.nvim_create_user_command("GopherLog", function()
|
||||
vim.cmd("tabnew " .. require("gopher._utils.log").get_outfile())
|
||||
end, { nargs = 0 })
|
||||
|
||||
vim.api.nvim_create_user_command("GoIfErr", function()
|
||||
require("gopher").iferr()
|
||||
end, { nargs = 0 })
|
||||
|
||||
vim.api.nvim_create_user_command("GoCmt", function()
|
||||
require("gopher").comment()
|
||||
end, { nargs = 0 })
|
||||
|
||||
vim.api.nvim_create_user_command("GoImpl", function(args)
|
||||
require("gopher").impl(unpack(args.fargs))
|
||||
end, { nargs = "*" })
|
||||
|
||||
-- :GoInstall
|
||||
vim.api.nvim_create_user_command("GoInstallDeps", function()
|
||||
require("gopher").install_deps()
|
||||
end, { nargs = 0 })
|
||||
|
||||
vim.api.nvim_create_user_command("GoInstallDepsSync", function()
|
||||
require("gopher").install_deps { sync = true }
|
||||
end, { nargs = 0 })
|
||||
|
||||
--- :GoTag
|
||||
vim.api.nvim_create_user_command("GoTagAdd", function(opts)
|
||||
require("gopher").tags.add(unpack(opts.fargs))
|
||||
end, { nargs = "*" })
|
||||
|
||||
vim.api.nvim_create_user_command("GoTagRm", function(opts)
|
||||
require("gopher").tags.rm(unpack(opts.fargs))
|
||||
end, { nargs = "*" })
|
||||
|
||||
vim.api.nvim_create_user_command("GoTagClear", function()
|
||||
require("gopher").tags.clear()
|
||||
end, { nargs = 0 })
|
||||
|
||||
--- :GoTest
|
||||
vim.api.nvim_create_user_command("GoTestAdd", function()
|
||||
require("gopher").test.add()
|
||||
end, { nargs = 0 })
|
||||
|
||||
vim.api.nvim_create_user_command("GoTestsAll", function()
|
||||
require("gopher").test.all()
|
||||
end, { nargs = 0 })
|
||||
|
||||
vim.api.nvim_create_user_command("GoTestsExp", function()
|
||||
require("gopher").test.exported()
|
||||
end, { nargs = 0 })
|
||||
|
||||
-- :Go
|
||||
vim.api.nvim_create_user_command("GoMod", function(opts)
|
||||
require("gopher").mod(opts.fargs)
|
||||
end, { nargs = "*" })
|
||||
|
||||
vim.api.nvim_create_user_command("GoGet", function(opts)
|
||||
vim.print(opts)
|
||||
require("gopher").get(opts.fargs)
|
||||
end, { nargs = "*" })
|
||||
|
||||
vim.api.nvim_create_user_command("GoWork", function(opts)
|
||||
require("gopher").get(opts.fargs)
|
||||
end, { nargs = "*" })
|
||||
|
||||
vim.api.nvim_create_user_command("GoGenerate", function(opts)
|
||||
require("gopher").generate(opts.fargs or "")
|
||||
end, { nargs = "?" })
|
||||
end
|
||||
end)
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
command! -nargs=* GoTagAdd :lua require"gopher".tags.add(<f-args>)
|
||||
command! -nargs=* GoTagRm :lua require"gopher".tags.rm(<f-args>)
|
||||
command! GoTagClear :lua require"gopher".tags.clear()
|
||||
command! GoTestAdd :lua require"gopher".test.add()
|
||||
command! GoTestsAll :lua require"gopher".test.all()
|
||||
command! GoTestsExp :lua require"gopher".test.exported()
|
||||
command! -nargs=* GoMod :lua require"gopher".mod(<f-args>)
|
||||
command! -nargs=* GoGet :lua require"gopher".get(<f-args>)
|
||||
command! -nargs=* GoWork :lua require"gopher".work(<f-args>)
|
||||
command! -nargs=* GoImpl :lua require"gopher".impl(<f-args>)
|
||||
command! -nargs=* GoGenerate :lua require"gopher".generate(<f-args>)
|
||||
command! GoCmt :lua require"gopher".comment()
|
||||
command! GoIfErr :lua require"gopher".iferr()
|
||||
command! GoInstallDeps :lua require"gopher".install_deps()
|
||||
command! GoInstallDepsSync :lua require"gopher".install_deps({ sync = true })
|
||||
command! GopherLog :lua vim.cmd("tabnew " .. require("gopher._utils.log").get_outfile())
|
||||
Loading…
Add table
Add a link
Reference in a new issue