Added nvim dap and blink completion.
This commit is contained in:
parent
0bd0090ae8
commit
4eb88a2417
3 changed files with 91 additions and 3 deletions
32
init.lua
32
init.lua
|
|
@ -9,16 +9,22 @@ require("mason-lspconfig").setup({
|
||||||
"clangd",
|
"clangd",
|
||||||
"ols",
|
"ols",
|
||||||
"ts_ls",
|
"ts_ls",
|
||||||
"vue_ls"
|
"vue_ls",
|
||||||
|
"phpactor",
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
require("mason-nvim-dap").setup({
|
||||||
|
ensure_installed = { "php" },
|
||||||
|
automatic_setup = true,
|
||||||
|
handlers = {},
|
||||||
|
})
|
||||||
|
|
||||||
-- My user settings:
|
-- My user settings:
|
||||||
vim.opt.number = true
|
vim.opt.number = true
|
||||||
vim.opt.relativenumber = true
|
vim.opt.relativenumber = true
|
||||||
vim.opt.shiftwidth = 4
|
vim.opt.shiftwidth = 4
|
||||||
vim.opt.tabstop = 4
|
vim.opt.tabstop = 4
|
||||||
--vim.opt.expandtab = true
|
vim.opt.expandtab = true
|
||||||
vim.opt.autoindent = true
|
vim.opt.autoindent = true
|
||||||
vim.opt.foldmethod = "indent"
|
vim.opt.foldmethod = "indent"
|
||||||
vim.opt.foldenable = false
|
vim.opt.foldenable = false
|
||||||
|
|
@ -47,10 +53,30 @@ vim.keymap.set("n", "<Leader>;", function() harpoon:list():select(4) end)
|
||||||
local lspconfig = vim.lsp.config
|
local lspconfig = vim.lsp.config
|
||||||
local lspenable = vim.lsp.enable
|
local lspenable = vim.lsp.enable
|
||||||
lspconfig("ts_ls", {
|
lspconfig("ts_ls", {
|
||||||
filetypes = {'js', 'ts', 'vue'},
|
filetypes = {'javascript', 'typescript', 'vue', 'typescriptreact', 'javascriptreact'},
|
||||||
|
})
|
||||||
|
lspconfig("phpactor", {
|
||||||
|
cmd = {'phpactor', 'language-server'},
|
||||||
|
filetypes = {'php'},
|
||||||
})
|
})
|
||||||
lspenable("pylsp")
|
lspenable("pylsp")
|
||||||
lspenable("clangd")
|
lspenable("clangd")
|
||||||
lspenable("ols")
|
lspenable("ols")
|
||||||
lspenable("ts_ls")
|
lspenable("ts_ls")
|
||||||
lspenable("vue_ls")
|
lspenable("vue_ls")
|
||||||
|
lspenable("glsl_analyzer")
|
||||||
|
lspenable("phpactor")
|
||||||
|
|
||||||
|
|
||||||
|
local dap = require('dap')
|
||||||
|
dap.configurations.php = {
|
||||||
|
{
|
||||||
|
type = 'php',
|
||||||
|
request = 'launch',
|
||||||
|
name = 'Listen for Apache Prestashop',
|
||||||
|
port = 9003,
|
||||||
|
pathMappings = {
|
||||||
|
["/home/bnilsen/var/www/html/prestashop"] = vim.fn.getcwd()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
||||||
59
lua/plugins/completion.lua
Normal file
59
lua/plugins/completion.lua
Normal file
|
|
@ -0,0 +1,59 @@
|
||||||
|
return {
|
||||||
|
{
|
||||||
|
'saghen/blink.cmp',
|
||||||
|
-- optional: provides snippets for the snippet source
|
||||||
|
dependencies = { 'rafamadriz/friendly-snippets' },
|
||||||
|
|
||||||
|
-- use a release tag to download pre-built binaries
|
||||||
|
version = '1.*',
|
||||||
|
-- AND/OR build from source, requires nightly: https://rust-lang.github.io/rustup/concepts/channels.html#working-with-nightly-rust
|
||||||
|
-- build = 'cargo build --release',
|
||||||
|
-- If you use nix, you can build from source using latest nightly rust with:
|
||||||
|
-- build = 'nix run .#build-plugin',
|
||||||
|
|
||||||
|
---@module 'blink.cmp'
|
||||||
|
---@type blink.cmp.Config
|
||||||
|
opts = {
|
||||||
|
-- 'default' (recommended) for mappings similar to built-in completions (C-y to accept)
|
||||||
|
-- 'super-tab' for mappings similar to vscode (tab to accept)
|
||||||
|
-- 'enter' for enter to accept
|
||||||
|
-- 'none' for no mappings
|
||||||
|
--
|
||||||
|
-- All presets have the following mappings:
|
||||||
|
-- C-space: Open menu or open docs if already open
|
||||||
|
-- C-n/C-p or Up/Down: Select next/previous item
|
||||||
|
-- C-e: Hide menu
|
||||||
|
-- C-k: Toggle signature help (if signature.enabled = true)
|
||||||
|
--
|
||||||
|
-- See :h blink-cmp-config-keymap for defining your own keymap
|
||||||
|
keymap = { preset = 'default' },
|
||||||
|
|
||||||
|
appearance = {
|
||||||
|
-- 'mono' (default) for 'Nerd Font Mono' or 'normal' for 'Nerd Font'
|
||||||
|
-- Adjusts spacing to ensure icons are aligned
|
||||||
|
nerd_font_variant = 'mono'
|
||||||
|
},
|
||||||
|
|
||||||
|
enabled = function() return not vim.tbl_contains({"markdown"}, vim.bo.filetype) end,
|
||||||
|
|
||||||
|
-- (Default) Only show the documentation popup when manually triggered
|
||||||
|
completion = { documentation = { auto_show = false } },
|
||||||
|
|
||||||
|
signature = { enabled = true },
|
||||||
|
|
||||||
|
-- Default list of enabled providers defined so that you can extend it
|
||||||
|
-- elsewhere in your config, without redefining it, due to `opts_extend`
|
||||||
|
sources = {
|
||||||
|
default = { 'lsp', 'path', 'snippets', 'buffer' },
|
||||||
|
},
|
||||||
|
|
||||||
|
-- (Default) Rust fuzzy matcher for typo resistance and significantly better performance
|
||||||
|
-- You may use a lua implementation instead by using `implementation = "lua"` or fallback to the lua implementation,
|
||||||
|
-- when the Rust fuzzy matcher is not available, by using `implementation = "prefer_rust"`
|
||||||
|
--
|
||||||
|
-- See the fuzzy documentation for more information
|
||||||
|
fuzzy = { implementation = "prefer_rust_with_warning" }
|
||||||
|
},
|
||||||
|
opts_extend = { "sources.default" }
|
||||||
|
}
|
||||||
|
}
|
||||||
3
lua/plugins/mason-nvim-dap.lua
Normal file
3
lua/plugins/mason-nvim-dap.lua
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
return {{
|
||||||
|
"jay-babu/mason-nvim-dap.nvim",
|
||||||
|
}}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue