diff --git a/lua/gopher/_utils/init.lua b/lua/gopher/_utils/init.lua index 0b54355..1ff0f28 100644 --- a/lua/gopher/_utils/init.lua +++ b/lua/gopher/_utils/init.lua @@ -30,4 +30,16 @@ function utils.readfile_joined(path) return table.concat(vim.fn.readfile(path), "\n") end +---@param t string[] +---@return string[] +function utils.remove_empty_lines(t) + local res = {} + for _, line in ipairs(t) do + if line ~= "" then + table.insert(res, line) + end + end + return res +end + return utils diff --git a/lua/gopher/iferr.lua b/lua/gopher/iferr.lua index a352969..3258bd8 100644 --- a/lua/gopher/iferr.lua +++ b/lua/gopher/iferr.lua @@ -30,7 +30,7 @@ function iferr.iferr() error("iferr failed: " .. rs.stderr) end - vim.fn.append(pos, vim.split(rs.stdout, "\n")) + vim.fn.append(pos, u.remove_empty_lines(vim.split(rs.stdout, "\n"))) vim.cmd [[silent normal! j=2j]] vim.fn.setpos(".", pos) end diff --git a/lua/gopher/impl.lua b/lua/gopher/impl.lua index 3e96166..5c7edc5 100644 --- a/lua/gopher/impl.lua +++ b/lua/gopher/impl.lua @@ -88,7 +88,7 @@ function impl.impl(...) end local pos = vim.fn.getcurpos()[2] - local output = vim.split(rs.stdout, "\n") + local output = u.remove_empty_lines(vim.split(rs.stdout, "\n")) table.insert(output, 1, "") vim.fn.append(pos, output) diff --git a/spec/fixtures/impl/closer_output.go b/spec/fixtures/impl/closer_output.go index 5e976f3..4f077f4 100644 --- a/spec/fixtures/impl/closer_output.go +++ b/spec/fixtures/impl/closer_output.go @@ -5,4 +5,3 @@ type CloserTest2 struct{} func (closertest *CloserTest2) Close() error { panic("not implemented") // TODO: Implement } - diff --git a/spec/fixtures/impl/reader_output.go b/spec/fixtures/impl/reader_output.go index 26df873..c384b23 100644 --- a/spec/fixtures/impl/reader_output.go +++ b/spec/fixtures/impl/reader_output.go @@ -4,5 +4,4 @@ func (r Read2) Read(p []byte) (n int, err error) { panic("not implemented") // TODO: Implement } - type Read2 struct{} diff --git a/spec/fixtures/impl/writer_output.go b/spec/fixtures/impl/writer_output.go index 19e8f6e..b69a70c 100644 --- a/spec/fixtures/impl/writer_output.go +++ b/spec/fixtures/impl/writer_output.go @@ -5,4 +5,3 @@ type WriterTest2 struct{} func (w *WriterTest2) Write(p []byte) (n int, err error) { panic("not implemented") // TODO: Implement } -