aboutsummaryrefslogtreecommitdiff
path: root/.config/nvim/lsp/remark_ls.lua
diff options
context:
space:
mode:
Diffstat (limited to '.config/nvim/lsp/remark_ls.lua')
-rw-r--r--.config/nvim/lsp/remark_ls.lua46
1 files changed, 46 insertions, 0 deletions
diff --git a/.config/nvim/lsp/remark_ls.lua b/.config/nvim/lsp/remark_ls.lua
new file mode 100644
index 0000000..97541d9
--- /dev/null
+++ b/.config/nvim/lsp/remark_ls.lua
@@ -0,0 +1,46 @@
+---@brief
+---
+--- https://github.com/remarkjs/remark-language-server
+---
+--- `remark-language-server` can be installed via `npm`:
+--- ```sh
+--- npm install -g remark-language-server
+--- ```
+---
+--- `remark-language-server` uses the same
+--- [configuration files](https://github.com/remarkjs/remark/tree/main/packages/remark-cli#example-config-files-json-yaml-js)
+--- as `remark-cli`.
+---
+--- This uses a plugin based system. Each plugin needs to be installed locally using `npm` or `yarn`.
+---
+--- For example, given the following `.remarkrc.json`:
+---
+--- ```json
+--- {
+--- "presets": [
+--- "remark-preset-lint-recommended"
+--- ]
+--- }
+--- ```
+---
+--- `remark-preset-lint-recommended` needs to be installed in the local project:
+---
+--- ```sh
+--- npm install remark-preset-lint-recommended
+--- ```
+
+---@type vim.lsp.Config
+return {
+ cmd = { 'remark-language-server', '--stdio' },
+ filetypes = { 'markdown' },
+ root_markers = {
+ '.remarkrc',
+ '.remarkrc.json',
+ '.remarkrc.js',
+ '.remarkrc.cjs',
+ '.remarkrc.mjs',
+ '.remarkrc.yml',
+ '.remarkrc.yaml',
+ '.remarkignore',
+ },
+}