mfussenegger / nvim-lint

An asynchronous linter plugin for Neovim complementary to the built-in Language Server Protocol support.
GNU General Public License v3.0
1.76k stars 191 forks source link

nvim-lint can't find Mason installed pylint #614

Open MikeLemo1 opened 3 days ago

MikeLemo1 commented 3 days ago

Gives me the following error message using the following config, whats wrong?

E5108: Error executing lua: /home/pong/.local/share/nvim/lazy/nvim-lint/lua/lint.lua:240: Linter with name `pylint` not available
stack traceback:
        [C]: in function 'assert'
        /home/user/.local/share/nvim/lazy/nvim-lint/lua/lint.lua:240: in function 'lookup_linter'
        /home/user/.local/share/nvim/lazy/nvim-lint/lua/lint.lua:251: in function 'try_lint'
        /home/user/.config/nvim/lua/user/lint.lua:45: in function </home/pong/.config/nvim/lua/user/lint.lua:44>
local M = {

  "mfussenegger/nvim-lint",
  event = {
    "BufReadPre",
    "BufNewFile",
  },
  config = function()
    local lint = require("lint")

    -- fixes some warnings
    lint.linters = {
      eslint_d = {
        args = {
          '--no-warn-ignored', -- <-- this is the key argument
          '--format',
          'json',
          '--stdin',
          '--stdin-filename',
          function()
            return vim.api.nvim_buf_get_name(0)
          end,
        },
      },
    }

    lint.linters_by_ft = {
      javascript = { "eslint_d" },
      typescript = { "eslint_d" },
      javascriptreact = { "eslint_d" },
      typescriptreact = { "eslint_d" },
      svelte = { "eslint_d" },
      python = { "pylint" },
    }
    local lint_augroup = vim.api.nvim_create_augroup("lint", { clear = true })

    vim.api.nvim_create_autocmd({ "BufEnter", "BufWritePost", "InsertLeave" }, {
      group = lint_augroup,
      callback = function()
        lint.try_lint()
      end,
    })

    vim.keymap.set("n", "<leader>ll", function()
      lint.try_lint()
    end, { desc = "Trigger linting for current file" })
  end,
}

return M