FAQ
Issues
Neovim Version
0.10.0
Dev Version?
Operating System
WSL2 Ubuntu 22.04
Minimal Config
-- this template is borrowed from nvim-lspconfig
local on_windows = vim.loop.os_uname().version:match("Windows")
local function join_paths(...)
local path_sep = on_windows and "\\" or "/"
local result = table.concat({ ... }, path_sep)
return result
end
vim.g.loaded_remote_plugins = ""
vim.cmd([[set runtimepath=$VIMRUNTIME]])
local temp_dir = vim.loop.os_getenv("TEMP") or "/tmp"
vim.cmd("set packpath=" .. join_paths(temp_dir, "nvim", "site"))
local package_root = join_paths(temp_dir, "nvim", "site", "pack")
local install_path = join_paths(package_root, "packer", "start", "packer.nvim")
local compile_path = join_paths(install_path, "plugin", "packer_compiled.lua")
local null_ls_config = function()
local null_ls = require("null-ls")
-- add only what you need to reproduce your issue
null_ls.setup({
sources = {
null_ls.builtins.diagnostics.codespell.with({extra_args = { "--count" }}),
-- null_ls.builtins.diagnostics.codespell.with({extra_args = { }}),
},
debug = true,
})
end
local function load_plugins()
-- only add other plugins if they are necessary to reproduce the issue
require("packer").startup({
{
"wbthomason/packer.nvim",
{
"nvimtools/none-ls.nvim",
requires = { "nvim-lua/plenary.nvim" },
config = null_ls_config,
},
},
config = {
package_root = package_root,
compile_path = compile_path,
},
})
end
if vim.fn.isdirectory(install_path) == 0 then
vim.fn.system({ "git", "clone", "https://github.com/wbthomason/packer.nvim", install_path })
load_plugins()
require("packer").sync()
else
load_plugins()
require("packer").sync()
end
Steps to Reproduce
- Create a file with a spell error, like
foo.py
-
Ensure codespell is available in you PATH and start neovim with nvim --clean -u minimal_init.lua foo.py.
-
No diagnostics are shown
-
Remove the "--count" argument from codespell. Re-run the steps above and the diagnostics is displayed.
Reproducibility Check
Expected Behavior
Diagnostics from codespell should show up in Neovim.
codespell picks configuration up from pyproject.toml, so even when --count is not listed in extra_args, but it is active in pyproject.toml the unexpected behaviour also takes place.
Actual Behavior
No diagnostic is shown.
Debug Log
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/client.lua:114: starting null-ls client
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/rpc.lua:106: received LSP request for method initialize
[DEBUG Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/client.lua:182: unable to notify client for method textDocument/didOpen (client not active): {
textDocument = {
uri = "file:///home/user/tmp/foo.py"
}
}
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/rpc.lua:131: received LSP notification for method initialized
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/rpc.lua:131: received LSP notification for method textDocument/didOpen
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/generators.lua:21: running generators for method NULL_LS_DIAGNOSTICS_ON_OPEN
[DEBUG Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/helpers/generator_factory.lua:329: spawning command "codespell" at /home/gzagatti/tmp with args { "--count", "-" }
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/helpers/generator_factory.lua:207: error output: 1
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/helpers/generator_factory.lua:208: output: 1: # adn
adn ==> and
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/diagnostics.lua:181: received diagnostics from source 1
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/diagnostics.lua:182: {}
[TRACE Tue Jun 18 11:15:40 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/rpc.lua:106: received LSP request for method shutdown
[TRACE Tue Jun 18 11:15:40 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/rpc.lua:131: received LSP notification for method exit
Help
Yes, but I don't know how to start. I would need guidance
Implementation Help
Null-ls should take all the output from codespell but it only takes the last line of codespell which contains the error count. To fix this issue I would need help with collecting all the program output to then pass it to the diagnostics function.
Requirements
FAQ
Issues
Neovim Version
0.10.0
Dev Version?
Operating System
WSL2 Ubuntu 22.04
Minimal Config
Steps to Reproduce
foo.pyEnsure codespell is available in you PATH and start neovim with
nvim --clean -u minimal_init.lua foo.py.No diagnostics are shown
Remove the "--count" argument from codespell. Re-run the steps above and the diagnostics is displayed.
Reproducibility Check
minimal_init.luatemplate and that my issue is reproducible by runningnvim --clean -u minimal_init.luaand following the steps above.Expected Behavior
Diagnostics from codespell should show up in Neovim.
codespellpicks configuration up frompyproject.toml, so even when--countis not listed inextra_args, but it is active inpyproject.tomlthe unexpected behaviour also takes place.Actual Behavior
No diagnostic is shown.
Debug Log
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/client.lua:114: starting null-ls client
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/rpc.lua:106: received LSP request for method initialize
[DEBUG Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/client.lua:182: unable to notify client for method textDocument/didOpen (client not active): {
textDocument = {
uri = "file:///home/user/tmp/foo.py"
}
}
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/rpc.lua:131: received LSP notification for method initialized
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/rpc.lua:131: received LSP notification for method textDocument/didOpen
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/generators.lua:21: running generators for method NULL_LS_DIAGNOSTICS_ON_OPEN
[DEBUG Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/helpers/generator_factory.lua:329: spawning command "codespell" at /home/gzagatti/tmp with args { "--count", "-" }
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/helpers/generator_factory.lua:207: error output: 1
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/helpers/generator_factory.lua:208: output: 1: # adn
adn ==> and
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/diagnostics.lua:181: received diagnostics from source 1
[TRACE Tue Jun 18 11:15:00 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/diagnostics.lua:182: {}
[TRACE Tue Jun 18 11:15:40 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/rpc.lua:106: received LSP request for method shutdown
[TRACE Tue Jun 18 11:15:40 2024] /tmp/nvim/site/pack/packer/start/none-ls.nvim/lua/null-ls/rpc.lua:131: received LSP notification for method exit
Help
Yes, but I don't know how to start. I would need guidance
Implementation Help
Null-ls should take all the output from
codespellbut it only takes the last line ofcodespellwhich contains the error count. To fix this issue I would need help with collecting all the program output to then pass it to the diagnostics function.Requirements