This commit is contained in:
asep komarudin 2023-02-26 06:42:57 +07:00
parent da02b7279c
commit ba79f479ef
8 changed files with 202 additions and 2 deletions

View file

@ -0,0 +1,16 @@
return {
"p00f/clangd_extensions.nvim",
dependencies = { "mason-lspconfig.nvim" },
event = "BufRead",
config = function()
require("clangd_extensions").setup({
server = {
on_attach = require("user.lsp.handlers").on_attach,
capabilities = {
offsetEncoding = "utf-8",
require("user.lsp.handlers").capabilities,
},
},
})
end,
}

View file

@ -0,0 +1,10 @@
return {
-- ini contoh override plugins
-- "rcarriga/nvim-dap-ui",
-- event = "BufWinEnter",
-- dependencies = "mfussenegger/nvim-dap",
-- enabled = vim.fn.has("win32") == 0,
-- config = function()
-- require("user.dapui")
-- end,
}

View file

@ -0,0 +1,13 @@
return {
"sigmasd/deno-nvim",
event = "BufRead",
dependencies = { "mason-lspconfig.nvim" },
config = function()
require("deno-nvim").setup({
server = {
on_attach = require("user.lsp.handlers").on_attach,
capabilities = require("user.lsp.handlers").capabilities,
},
})
end,
}

View file

@ -0,0 +1,22 @@
return {
"akinsho/flutter-tools.nvim",
dependencies = { "mason-lspconfig.nvim", "nvim-lua/plenary.nvim" },
event = "BufRead",
config = function()
require("flutter-tools").setup({
server = {
color = {
enabled = true,
},
settings = {
showTodos = true,
completeFunctionCalls = true,
},
on_attach = require("user.lsp.handlers").on_attach,
capabilities = {
require("user.lsp.handlers").capabilities,
},
},
})
end,
}

View file

@ -0,0 +1,14 @@
-- custom plugins disini
return {
{ "nvim-treesitter/nvim-treesitter" },
--- masukan plugin tambahan disini
{ "folke/trouble.nvim", enabled = false }, -- ini untuk disable plugin
-- contoh custom color scheme
-- {
-- "folke/tokyonight.nvim",
-- event = "BufWinEnter",
-- config = function()
-- vim.cmd([[colorscheme tokyonight-night]])
-- end,
-- },
}

View file

@ -0,0 +1,107 @@
return {
"simrat39/rust-tools.nvim",
event = "BufRead",
dependencies = {
"mason-lspconfig.nvim",
{
"saecki/crates.nvim",
tag = "v0.3.0",
dependencies = { "nvim-lua/plenary.nvim" },
config = function()
require("crates").setup({
null_ls = {
enabled = true,
name = "crates.nvim",
},
popup = {
border = "rounded",
},
})
end,
},
},
config = function()
local mason_path = vim.fn.glob(vim.fn.stdpath("data") .. "/mason/")
local codelldb_adapter = {
type = "server",
port = "${port}",
executable = {
command = mason_path .. "bin/codelldb",
args = { "--port", "${port}" },
-- On windows you may have to uncomment this:
-- detached = false,
},
}
local rt = require("rust-tools")
rt.setup({
tools = {
executor = require("rust-tools/executors").termopen, -- can be quickfix or termopen
reload_workspace_from_cargo_toml = true,
runnables = {
use_telescope = true,
},
inlay_hints = {
auto = true,
only_current_line = false,
show_parameter_hints = false,
parameter_hints_prefix = "<-",
other_hints_prefix = "=>",
max_len_align = false,
max_len_align_padding = 1,
right_align = false,
right_align_padding = 7,
highlight = "Comment",
},
hover_actions = {
border = "rounded",
},
on_initialized = function()
vim.api.nvim_create_autocmd({ "BufWritePost", "BufEnter", "CursorHold", "InsertLeave" }, {
pattern = { "*.rs" },
callback = function()
local _, _ = pcall(vim.lsp.codelens.refresh)
end,
})
end,
},
dap = {
adapter = codelldb_adapter,
},
server = {
on_attach = function(client, bufnr)
require("user.lsp.handlers").on_attach(client, bufnr)
local rt = require("rust-tools")
vim.keymap.set("n", "K", rt.hover_actions.hover_actions, { buffer = bufnr })
end,
capabilities = require("user.lsp.handlers").capabilities,
settings = {
["rust-analyzer"] = {
lens = {
enable = true,
},
checkOnSave = {
enable = true,
command = "clippy",
},
},
},
},
})
local dap = require("dap")
dap.adapters.codelldb = codelldb_adapter
dap.configurations.rust = {
{
name = "Launch file",
type = "codelldb",
request = "launch",
program = function()
return vim.fn.input("Path to executable: ", vim.fn.getcwd() .. "/", "file")
end,
cwd = "${workspaceFolder}",
stopOnEntry = false,
},
}
vim.api.nvim_set_keymap("n", "<m-d>", "<cmd>RustOpenExternalDocs<Cr>", { noremap = true, silent = true })
end,
}

View file

@ -0,0 +1,18 @@
return {
"jose-elias-alvarez/typescript.nvim",
event = "BufRead",
dependencies = { "mason-lspconfig.nvim" },
config = function()
require("typescript").setup({
disable_commands = false, -- prevent the plugin from creating Vim commands
debug = false, -- enable debug logging for commands
go_to_source_definition = {
fallback = true, -- fall back to standard LSP definition on failure
},
server = { -- pass options to lspconfig's setup method
on_attach = require("user.lsp.handlers").on_attach,
capabilities = require("user.lsp.handlers").capabilities,
},
})
end,
}