diff options
author | christianchiarulli <[email protected]> | 2021-07-14 18:50:07 -0400 |
---|---|---|
committer | christianchiarulli <[email protected]> | 2021-07-14 18:50:07 -0400 |
commit | 2a7b3d4892605508d0b0328444d689e1c4922897 (patch) | |
tree | bc43127c8c01edbac4871813433f18d7d23942d6 /lua/lang/json.lua | |
parent | 81adc270dd674b2f3da19340f0c34d60d8667542 (diff) |
reformat most langs
Diffstat (limited to 'lua/lang/json.lua')
-rw-r--r-- | lua/lang/json.lua | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/lua/lang/json.lua b/lua/lang/json.lua new file mode 100644 index 00000000..22d87e22 --- /dev/null +++ b/lua/lang/json.lua @@ -0,0 +1,59 @@ +local M = {} + +M.config = function() + -- TODO: implement config for language + return "No config available!" +end + +M.format = function() + O.formatters.filetype["json"] = { + function() + return { + exe = O.lang.json.formatter.exe, + args = O.lang.json.formatter.args, + stdin = not (O.lang.json.formatter.stdin ~= nil), + } + end, + } + + require("formatter.config").set_defaults { + logging = false, + filetype = O.formatters.filetype, + } +end + +M.lint = function() + -- TODO: implement linters (if applicable) + return "No linters configured!" +end + +M.lsp = function() + if require("lv-utils").check_lsp_client_active "jsonls" then + return + end + + -- npm install -g vscode-json-languageserver + require("lspconfig").jsonls.setup { + cmd = { + "node", + DATA_PATH .. "/lspinstall/json/vscode-json/json-language-features/server/dist/node/jsonServerMain.js", + "--stdio", + }, + on_attach = require("lsp").common_on_attach, + + commands = { + Format = { + function() + vim.lsp.buf.range_formatting({}, { 0, 0 }, { vim.fn.line "$", 0 }) + end, + }, + }, + } +end + +M.dap = function() + -- TODO: implement dap + return "No DAP configured!" +end + +return M |