feat: correct my lvim config

This commit is contained in:
2024-09-02 23:36:54 +04:00
parent 0da8243d12
commit b767beebd0
10 changed files with 178 additions and 21 deletions

View File

@@ -0,0 +1,5 @@
require'cmp'.setup {
sources = {
{ name = 'nvim_lsp' }
}
}

View File

@@ -0,0 +1,8 @@
require('nvim-ts-autotag').setup({
opts = {
-- Defaults
enable_close = true, -- Auto close tags
enable_rename = true, -- Auto rename pairs of tags
enable_close_on_slash = false -- Auto close on trailing </
},
})

View File

@@ -0,0 +1,19 @@
require("colorizer").setup {
filetypes = { "scss", "sass", "css", "html", "jsx", "tsx" },
user_default_options = {
css = true, -- Enable all CSS features: rgb_fn, hsl_fn, names, RGB, RRGGBB
css_fn = true, -- Enable all CSS *functions*: rgb_fn, hsl_fn
-- Available modes for `mode`: foreground, background, virtualtext
mode = "background", -- Set the display mode.
-- Available methods are false / true / "normal" / "lsp" / "both"
-- True is same as normal
tailwind = true, -- Enable tailwind colors
-- parsers can contain values used in |user_default_options|
sass = { enable = true, parsers = { "css" }, }, -- Enable sass colors
-- update color values even if buffer is not focused
-- example use: cmp_menu, cmp_docs
always_update = false
},
-- all the sub-options of filetypes apply to buftypes
buftypes = {},
}

View File

@@ -32,8 +32,8 @@ dap.adapters["pwa-node"] = {
port = "${port}",
executable = {
command = "node",
-- 💀 Make sure to update this path to point to your installation
args = {"/.local/share/lvim/mason/packages/js-debug-adapter/js-debug/src/dapDebugServer.js", "${port}"},
-- 💀 make sure to update this path to point to your installation
args = {os.getenv("HOME") .. "/.local/share/lvim/mason/packages/js-debug-adapter/js-debug/src/dapDebugServer.js", "${port}"},
}
}
@@ -61,11 +61,12 @@ dap.adapters.firefox = {
dap.configurations.typescriptreact = { -- change to typescript if needed
{
name = "Next.js: debug server-side",
type = "node-terminal",
name = 'Next.js: debug server-side',
type = "pwa-node",
request = "launch",
command = "npm run dev",
sourceMaps= true,
runtimeExecutable = "npm",
runtimeArgs = { "run", "dev" },
cwd = "${workspaceFolder}",
},
{
name = "Next.js: debug client-side with chrome",
@@ -90,3 +91,14 @@ dap.configurations.typescriptreact = { -- change to typescript if needed
}
dap.configurations.javascriptreact = dap.configurations.typescriptreact;
require("dapui").setup()
local dap, dapui = require("dap"), require("dapui")
dap.listeners.after.event_initialized["dapui_config"] = function()
dapui.open({})
end
vim.keymap.set('n', '<leader>ui', require 'dapui'.toggle)

View File

@@ -0,0 +1,22 @@
-- vscode format
require("luasnip.loaders.from_vscode").lazy_load { exclude = vim.g.vscode_snippets_exclude or {} }
require("luasnip.loaders.from_vscode").lazy_load { paths = vim.g.vscode_snippets_path or "" }
-- snipmate format
require("luasnip.loaders.from_snipmate").load()
require("luasnip.loaders.from_snipmate").lazy_load { paths = vim.g.snipmate_snippets_path or "" }
-- lua format
require("luasnip.loaders.from_lua").load()
require("luasnip.loaders.from_lua").lazy_load { paths = vim.g.lua_snippets_path or "" }
vim.api.nvim_create_autocmd("InsertLeave", {
callback = function()
if
require("luasnip").session.current_nodes[vim.api.nvim_get_current_buf()]
and not require("luasnip").session.jump_active
then
require("luasnip").unlink_current()
end
end,
})

View File

@@ -0,0 +1,19 @@
vim.o.foldcolumn = '1' -- '0' is not bad
vim.o.foldlevel = 99 -- Using ufo provider need a large value, feel free to decrease the value
vim.o.foldlevelstart = 99
vim.o.foldenable = true
vim.o.fillchars = [[eob: ,fold: ,foldopen:󰅀,foldsep:╎,foldclose:󰅂]]
-- Using ufo provider need remap `zR` and `zM`. If Neovim is 0.6.1, remap yourself
vim.keymap.set('n', 'zR', require('ufo').openAllFolds)
vim.keymap.set('n', 'zM', require('ufo').closeAllFolds)
-- Option 3: treesitter as a main provider instead
-- (Note: the `nvim-treesitter` plugin is *not* needed.)
-- ufo uses the same query files for folding (queries/<lang>/folds.scm)
-- performance and stability are better than `foldmethod=nvim_treesitter#foldexpr()`
require('ufo').setup({
provider_selector = function(bufnr, filetype, buftype)
return {'treesitter', 'indent'}
end
})

View File

@@ -0,0 +1,19 @@
local prettier = require("prettier")
prettier.setup({
bin = 'prettier', -- or `'prettierd'` (v0.23.3+)
filetypes = {
"css",
"graphql",
"html",
"javascript",
"javascriptreact",
"json",
"less",
"markdown",
"scss",
"typescript",
"typescriptreact",
"yaml",
},
})