diff options
| author | Abouzar Parvan <[email protected]> | 2021-07-28 19:33:49 +0430 | 
|---|---|---|
| committer | GitHub <[email protected]> | 2021-07-28 11:03:49 -0400 | 
| commit | 21971cbed54905f38651f0484f9546d69dee9bc5 (patch) | |
| tree | e07f4f8144a43644f5b16d733631acb755307389 | |
| parent | 2ec446e21edd292acd4634837eee3abef5def9b5 (diff) | |
null-ls formatter name is different from its command (#1141)
* null-ls formatter name is different from it's command
* add more language support
* nil is unnecessary
| -rw-r--r-- | ftplugin/asm.lua | 1 | ||||
| -rw-r--r-- | ftplugin/beancount.lua | 1 | ||||
| -rw-r--r-- | ftplugin/crystal.lua | 1 | ||||
| -rw-r--r-- | ftplugin/d.lua | 1 | ||||
| -rw-r--r-- | ftplugin/perl.lua | 1 | ||||
| -rw-r--r-- | ftplugin/sql.lua | 1 | ||||
| -rw-r--r-- | lua/core/galaxyline.lua | 1 | ||||
| -rw-r--r-- | lua/default-config.lua | 122 | ||||
| -rw-r--r-- | lua/lsp/null-ls.lua | 2 | 
9 files changed, 114 insertions, 17 deletions
| diff --git a/ftplugin/asm.lua b/ftplugin/asm.lua new file mode 100644 index 00000000..4f135295 --- /dev/null +++ b/ftplugin/asm.lua @@ -0,0 +1 @@ +require("lsp").setup "asm" diff --git a/ftplugin/beancount.lua b/ftplugin/beancount.lua new file mode 100644 index 00000000..ac8aff33 --- /dev/null +++ b/ftplugin/beancount.lua @@ -0,0 +1 @@ +require("lsp").setup "beancount" diff --git a/ftplugin/crystal.lua b/ftplugin/crystal.lua new file mode 100644 index 00000000..38605db8 --- /dev/null +++ b/ftplugin/crystal.lua @@ -0,0 +1 @@ +require("lsp").setup "crystal" diff --git a/ftplugin/d.lua b/ftplugin/d.lua new file mode 100644 index 00000000..41a6433b --- /dev/null +++ b/ftplugin/d.lua @@ -0,0 +1 @@ +require("lsp").setup "d" diff --git a/ftplugin/perl.lua b/ftplugin/perl.lua new file mode 100644 index 00000000..f1d3b772 --- /dev/null +++ b/ftplugin/perl.lua @@ -0,0 +1 @@ +require("lsp").setup "perl" diff --git a/ftplugin/sql.lua b/ftplugin/sql.lua new file mode 100644 index 00000000..b4658023 --- /dev/null +++ b/ftplugin/sql.lua @@ -0,0 +1 @@ +require("lsp").setup "sql" diff --git a/lua/core/galaxyline.lua b/lua/core/galaxyline.lua index 1cc855ee..aafe99bc 100644 --- a/lua/core/galaxyline.lua +++ b/lua/core/galaxyline.lua @@ -212,6 +212,7 @@ local function get_attached_provider_name(msg)    for _, client in pairs(buf_clients) do      if client.name == "null-ls" then        table.insert(buf_client_names, lvim.lang[buf_ft].linters[1]) +      table.insert(buf_client_names, lvim.lang[buf_ft].formatter.exe)      else        table.insert(buf_client_names, client.name)      end diff --git a/lua/default-config.lua b/lua/default-config.lua index 77087fe5..54b041ca 100644 --- a/lua/default-config.lua +++ b/lua/default-config.lua @@ -66,6 +66,32 @@ end  -- TODO move all of this into lang specific files, only require when using  lvim.lang = { +  asm = { +    formatter = { +      exe = "asmfmt", +      args = {}, +    }, +    linters = {}, +    lsp = { +      provider = "", +      setup = {}, +    }, +  }, +  beancount = { +    formatter = { +      exe = "bean_format", +      args = {}, +    }, +    linters = {}, +    lsp = { +      provider = "beancount", +      setup = { +        cmd = { "beancount-langserver" }, +        on_attach = common_on_attach, +        capabilities = common_capabilities, +      }, +    }, +  },    c = {      formatter = {        exe = "clang_format", @@ -117,9 +143,24 @@ lvim.lang = {        },      },    }, +  crystal = { +    formatter = { +      exe = "crystal_format", +      args = {}, +    }, +    linters = {}, +    lsp = { +      provider = "crystalline", +      setup = { +        cmd = { "crystalline" }, +        on_attach = common_on_attach, +        capabilities = common_capabilities, +      }, +    }, +  },    cs = {      formatter = { -      exe = "", +      exe = "clang_format",        args = {},      },      linters = {}, @@ -139,7 +180,7 @@ lvim.lang = {    },    cmake = {      formatter = { -      exe = "clang_format", +      exe = "cmake_format",        args = {},      },      linters = {}, @@ -192,10 +233,25 @@ lvim.lang = {        },      },    }, +  d = { +    formatter = { +      exe = "dfmt", +      args = {}, +    }, +    linters = {}, +    lsp = { +      provider = "serve_d", +      setup = { +        cmd = { "serve-d" }, +        on_attach = common_on_attach, +        capabilities = common_capabilities, +      }, +    }, +  },    dart = {      formatter = { -      exe = "dart", -      args = { "format" }, +      exe = "dart_format", +      args = {},        stdin = true,      },      linters = {}, @@ -233,7 +289,7 @@ lvim.lang = {    elixir = {      formatter = {        exe = "mix", -      args = { "format" }, +      args = {},        stdin = true,      },      linters = {}, @@ -250,7 +306,7 @@ lvim.lang = {    },    elm = {      formatter = { -      exe = "", +      exe = "elm_format",        args = {},        stdin = true,      }, @@ -273,7 +329,7 @@ lvim.lang = {    },    erlang = {      formatter = { -      exe = "", +      exe = "erlfmt",        args = {},      },      linters = {}, @@ -291,7 +347,7 @@ lvim.lang = {    emmet = { active = false },    fish = {      formatter = { -      exe = "", +      exe = "fish_indent",        args = {},      },      linters = {}, @@ -384,8 +440,8 @@ lvim.lang = {    },    json = {      formatter = { -      exe = "python", -      args = { "-m", "json.tool" }, +      exe = "json_tool", +      args = {},        stdin = true,      },      linters = {}, @@ -515,10 +571,45 @@ lvim.lang = {        },      },    }, +  nginx = { +    formatter = { +      exe = "nginx_beautifier", +      args = { +        provider = "", +        setup = {}, +      }, +    }, +    linters = {}, +    lsp = {}, +  }, +  perl = { +    formatter = { +      exe = "perltidy", +      args = {}, +    }, +    linters = {}, +    lsp = { +      provider = "", +      setup = {}, +    }, +  }, +  sql = { +    formatter = { +      exe = "sqlformat", +      args = {}, +    }, +    linters = {}, +    lsp = { +      provider = "sqls", +      setup = { +        cmd = { "sqls" }, +      }, +    }, +  },    php = {      formatter = {        exe = "phpcbf", -      args = { "--standard=PSR12", vim.api.nvim_buf_get_name(0) }, +      args = {},      },      linters = {},      lsp = { @@ -625,7 +716,7 @@ lvim.lang = {    -- R -e 'install.packages("readr",repos = "http://cran.us.r-project.org")'    r = {      formatter = { -      exe = "", +      exe = "format_r",        args = {},      },      linters = {}, @@ -663,7 +754,7 @@ lvim.lang = {    },    rust = {      formatter = { -      exe = "", +      exe = "rustfmt",        args = {},      },      linters = {}, @@ -680,7 +771,7 @@ lvim.lang = {    },    scala = {      formatter = { -      exe = "", +      exe = "scalafmt",        args = {},      },      linters = { "" }, @@ -762,9 +853,8 @@ lvim.lang = {    },    terraform = {      formatter = { -      exe = "", +      exe = "terraform_fmt",        args = {}, -      stdin = false,      },      linters = {},      lsp = { diff --git a/lua/lsp/null-ls.lua b/lua/lsp/null-ls.lua index 48924be5..5008144f 100644 --- a/lua/lsp/null-ls.lua +++ b/lua/lsp/null-ls.lua @@ -43,7 +43,7 @@ local function setup_ls(exe, type)        end      end    else -    if vim.fn.executable(exe) == 1 then +    if null_ls.builtins[type][exe] and vim.fn.executable(null_ls.builtins[type][exe]._opts.command) then        table.insert(sources, null_ls.builtins[type][exe])      end    end | 
