Merge branch 'main' of https://github.com/RokasPuzonas/neovim-config into main
This commit is contained in:
commit
a2166790ff
2
init.lua
2
init.lua
@ -22,10 +22,10 @@ for _, name in ipairs(disabled_built_ins) do
|
|||||||
g['loaded_' .. name] = 1
|
g['loaded_' .. name] = 1
|
||||||
end
|
end
|
||||||
|
|
||||||
require("impatient")
|
|
||||||
require("plugins")
|
require("plugins")
|
||||||
require("options")
|
require("options")
|
||||||
require("bindings")
|
require("bindings")
|
||||||
|
require("pludin-dev")
|
||||||
|
|
||||||
-- Misc features
|
-- Misc features
|
||||||
require("highlight-yank")
|
require("highlight-yank")
|
||||||
|
@ -5,12 +5,12 @@ local silent = {silent = true}
|
|||||||
-- Disable Ex mode
|
-- Disable Ex mode
|
||||||
map('n', 'Q', '<nop>')
|
map('n', 'Q', '<nop>')
|
||||||
|
|
||||||
-- Escape from terminal easier
|
|
||||||
map('t', '<Esc>', '<C-\\><C-n>')
|
|
||||||
|
|
||||||
-- Save file
|
-- Save file
|
||||||
map('n', '<C-s>', ':w<cr>')
|
map('n', '<C-s>', ':w<cr>')
|
||||||
|
|
||||||
|
-- Paste from register and not replace it
|
||||||
|
-- map('x', '<leader>p', '"_dP')
|
||||||
|
|
||||||
-- Window movement
|
-- Window movement
|
||||||
map('n', '<c-h>', '<c-w>h')
|
map('n', '<c-h>', '<c-w>h')
|
||||||
map('n', '<c-j>', '<c-w>j')
|
map('n', '<c-j>', '<c-w>j')
|
||||||
@ -37,3 +37,23 @@ map('n', '<A-j>', ':m .+1<CR>==', silent)
|
|||||||
map('n', '<A-k>', ':m .-2<CR>==', silent)
|
map('n', '<A-k>', ':m .-2<CR>==', silent)
|
||||||
map('v', '<A-j>', ":m '>+1<CR>gv=gv", silent)
|
map('v', '<A-j>', ":m '>+1<CR>gv=gv", silent)
|
||||||
map('v', '<A-k>', ":m '<-2<CR>gv=gv", silent)
|
map('v', '<A-k>', ":m '<-2<CR>gv=gv", silent)
|
||||||
|
|
||||||
|
-- Move between windows easier in terminal windows
|
||||||
|
function _G.set_terminal_keymaps()
|
||||||
|
local opts = {buffer = 0}
|
||||||
|
vim.keymap.set('t', '<C-w>', [[<C-\><C-n>]], opts)
|
||||||
|
vim.keymap.set('t', '<C-h>', [[<Cmd>wincmd h<CR>]], opts)
|
||||||
|
vim.keymap.set('t', '<C-j>', [[<Cmd>wincmd j<CR>]], opts)
|
||||||
|
vim.keymap.set('t', '<C-k>', [[<Cmd>wincmd k<CR>]], opts)
|
||||||
|
vim.keymap.set('t', '<C-l>', [[<Cmd>wincmd l<CR>]], opts)
|
||||||
|
end
|
||||||
|
vim.cmd('autocmd! TermOpen term://* lua set_terminal_keymaps()')
|
||||||
|
|
||||||
|
-- Add abbreviation for != => ~= in lua files
|
||||||
|
vim.api.nvim_create_autocmd("BufEnter", {
|
||||||
|
group = vim.api.nvim_create_augroup("MyTermOpen", { clear = true }),
|
||||||
|
pattern = "*.lua",
|
||||||
|
callback = function()
|
||||||
|
vim.api.nvim_cmd({ cmd = "abb", args = {"!=", "~="}}, {})
|
||||||
|
end
|
||||||
|
})
|
||||||
|
36
lua/config/dap.lua
Normal file
36
lua/config/dap.lua
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
local dap = require('dap')
|
||||||
|
dap.adapters.lldb = {
|
||||||
|
type = 'executable',
|
||||||
|
command = '/usr/bin/lldb-vscode',
|
||||||
|
name = 'lldb'
|
||||||
|
}
|
||||||
|
|
||||||
|
dap.configurations.cpp = {
|
||||||
|
{
|
||||||
|
name = 'Launch',
|
||||||
|
type = 'lldb',
|
||||||
|
request = 'launch',
|
||||||
|
program = function()
|
||||||
|
return vim.fn.input('Path to executable: ', vim.fn.getcwd() .. '/', 'file')
|
||||||
|
end,
|
||||||
|
cwd = '${workspaceFolder}',
|
||||||
|
stopOnEntry = false,
|
||||||
|
args = {},
|
||||||
|
|
||||||
|
-- 💀
|
||||||
|
-- if you change `runInTerminal` to true, you might need to change the yama/ptrace_scope setting:
|
||||||
|
--
|
||||||
|
-- echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
|
||||||
|
--
|
||||||
|
-- Otherwise you might get the following error:
|
||||||
|
--
|
||||||
|
-- Error on launch: Failed to attach to the target process
|
||||||
|
--
|
||||||
|
-- But you should be aware of the implications:
|
||||||
|
-- https://www.kernel.org/doc/html/latest/admin-guide/LSM/Yama.html
|
||||||
|
-- runInTerminal = false,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
dap.configurations.c = dap.configurations.cpp
|
||||||
|
dap.configurations.rust = dap.configurations.cpp
|
@ -127,7 +127,7 @@ function M.get_capabilities()
|
|||||||
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
||||||
|
|
||||||
if packer_plugins['cmp-nvim-lsp'] and packer_plugins['cmp-nvim-lsp'].loaded then
|
if packer_plugins['cmp-nvim-lsp'] and packer_plugins['cmp-nvim-lsp'].loaded then
|
||||||
capabilities = require('cmp_nvim_lsp').update_capabilities(capabilities)
|
capabilities = require('cmp_nvim_lsp').default_capabilities(capabilities)
|
||||||
end
|
end
|
||||||
|
|
||||||
return capabilities
|
return capabilities
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
local lspconfig_config = require 'config.lspconfig'
|
local lspconfig_config = require 'config.lspconfig'
|
||||||
local lsp_instller = require 'nvim-lsp-installer'
|
local lsp_installer = require 'nvim-lsp-installer'
|
||||||
local lsp_installer_servers = require'nvim-lsp-installer.servers'
|
local lsp_installer_servers = require'nvim-lsp-installer.servers'
|
||||||
local M = {}
|
local M = {}
|
||||||
|
|
||||||
@ -14,12 +14,8 @@ end
|
|||||||
|
|
||||||
local capabilities = lspconfig_config.get_capabilities()
|
local capabilities = lspconfig_config.get_capabilities()
|
||||||
|
|
||||||
lsp_instller.on_server_ready(function(server)
|
for _, server in ipairs(lsp_installer.get_installed_servers()) do
|
||||||
|
local opts = {
|
||||||
-- print(server.name)
|
|
||||||
-- print(vim.inspect(lspconfig_config.get_server_settings(server.name)))
|
|
||||||
|
|
||||||
server:setup{
|
|
||||||
root_dir = function()
|
root_dir = function()
|
||||||
return vim.fn.getcwd()
|
return vim.fn.getcwd()
|
||||||
end,
|
end,
|
||||||
@ -30,18 +26,17 @@ lsp_instller.on_server_ready(function(server)
|
|||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
settings = lspconfig_config.get_server_settings(server.name)
|
settings = lspconfig_config.get_server_settings(server.name)
|
||||||
}
|
}
|
||||||
end)
|
|
||||||
|
|
||||||
require("lspconfig").gdscript.setup{
|
if server.name == "rust_analyzer" then
|
||||||
root_dir = function()
|
local has_rust_tools, rust_tools = pcall(require, "rust-tools")
|
||||||
return vim.fn.getcwd()
|
if has_rust_tools then
|
||||||
end,
|
rust_tools.setup({ server = opts })
|
||||||
init_options = lspconfig_config.get_server_init_options("godot"),
|
goto continue
|
||||||
on_attach = lspconfig_config.on_attach,
|
end
|
||||||
on_init = lspconfig_config.on_init,
|
end
|
||||||
flags = lspconfig_config.flags,
|
|
||||||
capabilities = capabilities,
|
server:setup(opts)
|
||||||
settings = lspconfig_config.get_server_settings("godot")
|
::continue::
|
||||||
}
|
end
|
||||||
|
|
||||||
return M
|
return M
|
||||||
|
@ -2,10 +2,11 @@ local ls = require("luasnip")
|
|||||||
local capture = require("utils.capture")
|
local capture = require("utils.capture")
|
||||||
local s = ls.snippet
|
local s = ls.snippet
|
||||||
local sn = ls.snippet_node
|
local sn = ls.snippet_node
|
||||||
|
local fmt = require("luasnip.extras.fmt").fmt
|
||||||
local t = ls.text_node
|
local t = ls.text_node
|
||||||
local i = ls.insert_node
|
local i = ls.insert_node
|
||||||
local f = ls.function_node
|
local f = ls.function_node
|
||||||
local choice = ls.choice_node
|
local c = ls.choice_node
|
||||||
local d = ls.dynamic_node
|
local d = ls.dynamic_node
|
||||||
|
|
||||||
local function getCurrentYear()
|
local function getCurrentYear()
|
||||||
@ -20,6 +21,18 @@ local function getGitUsername()
|
|||||||
return stdout
|
return stdout
|
||||||
end
|
end
|
||||||
|
|
||||||
|
ls.config.set_config {
|
||||||
|
history = true,
|
||||||
|
updateevents = "TextChanged,TextChangedI",
|
||||||
|
enable_autosnippets = true
|
||||||
|
}
|
||||||
|
|
||||||
|
vim.keymap.set({"i"}, "<c-l>", function()
|
||||||
|
if ls.choice_active() then
|
||||||
|
ls.change_choice(1)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
|
||||||
ls.add_snippets("all", {
|
ls.add_snippets("all", {
|
||||||
s("MIT", {
|
s("MIT", {
|
||||||
t({"The MIT License (MIT)", "Copyright © "}),
|
t({"The MIT License (MIT)", "Copyright © "}),
|
||||||
@ -53,3 +66,15 @@ ls.add_snippets("all", {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
|
ls.add_snippets("lua", {
|
||||||
|
s("req",
|
||||||
|
fmt([[local {} = require("{}")]], {
|
||||||
|
f(function(module_name)
|
||||||
|
local parts = vim.split(module_name[1][1], ".", true)
|
||||||
|
return (parts[#parts] or ""):gsub("-", "_")
|
||||||
|
end, { 1 }),
|
||||||
|
i(1)
|
||||||
|
})
|
||||||
|
)
|
||||||
|
})
|
||||||
|
@ -50,6 +50,9 @@ map('n', '<leader>fw', [[:lua require('telescope.builtin').live_grep()<cr>]], si
|
|||||||
-- Change colorscheme
|
-- Change colorscheme
|
||||||
map('n', '<leader>cs', [[:lua require('telescope.builtin').colorscheme()<cr>]], silent)
|
map('n', '<leader>cs', [[:lua require('telescope.builtin').colorscheme()<cr>]], silent)
|
||||||
|
|
||||||
|
-- See help tags
|
||||||
|
map('n', '<leader>fh', [[:lua require('telescope.builtin').help_tags()<cr>]], silent)
|
||||||
|
|
||||||
telescope.setup{
|
telescope.setup{
|
||||||
defaults = {
|
defaults = {
|
||||||
buffer_previewer_maker = sizelimit_maker,
|
buffer_previewer_maker = sizelimit_maker,
|
||||||
@ -66,6 +69,9 @@ telescope.setup{
|
|||||||
theme = "dropdown",
|
theme = "dropdown",
|
||||||
},
|
},
|
||||||
marks = {
|
marks = {
|
||||||
|
theme = "dropdown",
|
||||||
|
},
|
||||||
|
help_tags = {
|
||||||
theme = "dropdown",
|
theme = "dropdown",
|
||||||
},
|
},
|
||||||
oldfiles = {
|
oldfiles = {
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
local treesitter = require("nvim-treesitter.configs")
|
local treesitter = require("nvim-treesitter.configs")
|
||||||
|
|
||||||
treesitter.setup{
|
treesitter.setup{
|
||||||
ensure_installed = "maintained",
|
highlight = { enable = true },
|
||||||
highlight = { enable = true }
|
auto_install = true
|
||||||
}
|
}
|
||||||
|
2
lua/config/vimspector.lua
Normal file
2
lua/config/vimspector.lua
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
local g = vim.g
|
||||||
|
g['vimspector_enable_mappings']="HUMAN"
|
@ -1,4 +1,5 @@
|
|||||||
local opt = require 'utils.opt'
|
local opt = require 'utils.opt'
|
||||||
|
local autocmd = require 'utils.autocmd'
|
||||||
local o, wo, bo = vim.o, vim.wo, vim.bo
|
local o, wo, bo = vim.o, vim.wo, vim.bo
|
||||||
local cmd = vim.cmd
|
local cmd = vim.cmd
|
||||||
|
|
||||||
@ -9,6 +10,13 @@ cmd [[filetype plugin on]]
|
|||||||
local buffer = { o, bo }
|
local buffer = { o, bo }
|
||||||
local window = { o, wo }
|
local window = { o, wo }
|
||||||
|
|
||||||
|
-- Enable auto reload of changed files
|
||||||
|
opt('autoread', true)
|
||||||
|
autocmd("auto-reload", {
|
||||||
|
[[FocusGained,BufEnter,CursorHold,CursorHoldI * if mode() != 'c' | checktime | endif]],
|
||||||
|
[[FileChangedShellPost * echohl WarningMsg | echo "File changed on disk. Buffer reloaded." | echohl None]]
|
||||||
|
}, true)
|
||||||
|
|
||||||
-- List of possible completion options
|
-- List of possible completion options
|
||||||
opt('completeopt', 'menu,menuone,noselect')
|
opt('completeopt', 'menu,menuone,noselect')
|
||||||
|
|
||||||
|
7
lua/pludin-dev.lua
Normal file
7
lua/pludin-dev.lua
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
local map = require 'utils.map'
|
||||||
|
|
||||||
|
map("n", "<leader><leader>x", ":w<cr>:source %<cr>")
|
||||||
|
|
||||||
|
function P(...)
|
||||||
|
print(vim.inspect(...))
|
||||||
|
end
|
258
lua/plugins.lua
258
lua/plugins.lua
@ -3,139 +3,25 @@
|
|||||||
|
|
||||||
---@diagnostic disable-next-line: unused-local
|
---@diagnostic disable-next-line: unused-local
|
||||||
local function usePlugins(use, use_rocks)
|
local function usePlugins(use, use_rocks)
|
||||||
-- Packer can manage itself
|
-- Toggle terminal
|
||||||
use 'wbthomason/packer.nvim'
|
use {'akinsho/toggleterm.nvim', tag = '*', config=[[require('toggleterm').setup()]]}
|
||||||
|
|
||||||
-- Debugger
|
-- Debugger
|
||||||
-- TODO: setup vimspector
|
use { 'mfussenegger/nvim-dap', config=[[require('config.dap')]]}
|
||||||
-- use 'puremourning/vimspector'
|
use { "rcarriga/nvim-dap-ui", requires = "mfussenegger/nvim-dap", config=[[require('dapui').setup()]] }
|
||||||
|
use 'simrat39/rust-tools.nvim'
|
||||||
-- Markdown previewer
|
use {
|
||||||
-- TODO: setup markdown previewer
|
'theHamsta/nvim-dap-virtual-text',
|
||||||
|
requires = {"mfussenegger/nvim-dap", "nvim-treesitter/nvim-treesitter"},
|
||||||
|
config=[[require('nvim-dap-virtual-text')]]
|
||||||
|
}
|
||||||
|
|
||||||
-- Seemless pane switching betwen tmux and vim
|
-- Seemless pane switching betwen tmux and vim
|
||||||
use 'christoomey/vim-tmux-navigator'
|
use 'christoomey/vim-tmux-navigator'
|
||||||
|
|
||||||
-- Git blame
|
|
||||||
use {
|
|
||||||
'f-person/git-blame.nvim',
|
|
||||||
config = [[require 'config.gitblame']]
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Ansible file syntax highlighting
|
|
||||||
use 'pearofducks/ansible-vim'
|
|
||||||
|
|
||||||
-- Zen mode
|
|
||||||
use { 'folke/zen-mode.nvim', config = [[require 'config.zen-mode']] }
|
|
||||||
use {
|
|
||||||
'folke/twilight.nvim',
|
|
||||||
requires = 'folke/zen-mode.nvim',
|
|
||||||
config = [[require 'config.twilight']]
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Text object target
|
|
||||||
use 'wellle/targets.vim'
|
|
||||||
|
|
||||||
-- Align characters vertically
|
|
||||||
use 'godlygeek/tabular'
|
|
||||||
|
|
||||||
-- Used for loading project specific code styles
|
|
||||||
use 'editorconfig/editorconfig-vim'
|
|
||||||
|
|
||||||
-- Improve startup time when loading lua files.
|
|
||||||
-- Temporary solution before PR gets merges. https://github.com/neovim/neovim/pull/15436
|
|
||||||
use 'lewis6991/impatient.nvim'
|
|
||||||
|
|
||||||
-- Reload lua configs
|
|
||||||
use {
|
|
||||||
'famiu/nvim-reload',
|
|
||||||
requires = 'nvim-lua/plenary.nvim',
|
|
||||||
config = [[require 'config.reload']]
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Provides mappings for working with symbols like (), {}, [], etc.
|
|
||||||
use 'tpope/vim-surround'
|
|
||||||
|
|
||||||
-- Allow repeating
|
|
||||||
use 'tpope/vim-repeat'
|
|
||||||
|
|
||||||
-- GLSL language support
|
|
||||||
use 'tikhomirov/vim-glsl'
|
|
||||||
|
|
||||||
-- Treesitter
|
|
||||||
use {
|
|
||||||
'nvim-treesitter/nvim-treesitter',
|
|
||||||
config = [[require 'config.treesitter']],
|
|
||||||
branch = '0.5-compat',
|
|
||||||
run = ':TSUpdate'
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'nvim-treesitter/playground',
|
|
||||||
requires = 'nvim-treesitter/nvim-treesitter',
|
|
||||||
cmd = "TSPlaygroundToggle"
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Dev icons
|
|
||||||
use {'kyazdani42/nvim-web-devicons', config = [[require('nvim-web-devicons').setup()]]}
|
|
||||||
|
|
||||||
-- Fuzzy file finder
|
|
||||||
use {
|
|
||||||
'nvim-telescope/telescope.nvim',
|
|
||||||
config = [[require 'config.telescope']],
|
|
||||||
requires = {
|
|
||||||
'nvim-lua/plenary.nvim',
|
|
||||||
'nvim-treesitter/nvim-treesitter',
|
|
||||||
'kyazdani42/nvim-web-devicons',
|
|
||||||
{'nvim-telescope/telescope-fzf-native.nvim', run = 'make'}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Smooth smooth scrolling
|
|
||||||
-- use { 'karb94/neoscroll.nvim', config = [[require('neoscroll').setup()]] }
|
|
||||||
use 'psliwka/vim-smoothie'
|
|
||||||
|
|
||||||
-- Commenting
|
|
||||||
use {
|
|
||||||
'terrortylor/nvim-comment',
|
|
||||||
config = [[require 'config.comment']],
|
|
||||||
requires = 'JoosepAlviste/nvim-ts-context-commentstring'
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Color code colorizer
|
|
||||||
use { 'norcalli/nvim-colorizer.lua', config = [[require 'config.colorizer']] }
|
|
||||||
|
|
||||||
-- Quick movement
|
|
||||||
use { 'justinmk/vim-sneak', config = [[require 'config.sneak']] }
|
|
||||||
use { 'unblevable/quick-scope', config = [[require 'config.quickscope']] }
|
|
||||||
use 'michaeljsmith/vim-indent-object'
|
|
||||||
|
|
||||||
-- File browser
|
|
||||||
use {
|
|
||||||
'kyazdani42/nvim-tree.lua',
|
|
||||||
requires = 'kyazdani42/nvim-web-devicons',
|
|
||||||
config = [[require 'config.nvim-tree']]
|
|
||||||
}
|
|
||||||
-- use {
|
|
||||||
-- 'lambdalisue/fern.vim',
|
|
||||||
-- config = [[require 'config.fern']],
|
|
||||||
-- requires = {
|
|
||||||
-- 'antoinemadec/FixCursorHold.nvim',
|
|
||||||
-- 'lambdalisue/fern-hijack.vim',
|
|
||||||
-- {'lambdalisue/fern-renderer-nerdfont.vim', config = [[vim.g["fern#renderer"] = "nerdfont"]]},
|
|
||||||
-- 'lambdalisue/nerdfont.vim'
|
|
||||||
-- }
|
|
||||||
-- }
|
|
||||||
-- alternatives:
|
|
||||||
-- use 'kyazdani42/nvim-tree.lua'
|
|
||||||
-- use 'zgpio/tree.nvim'
|
|
||||||
-- use 'tpope/vim-vinegar'
|
|
||||||
|
|
||||||
-- UNIX commands
|
-- UNIX commands
|
||||||
use 'tpope/vim-eunuch'
|
use 'tpope/vim-eunuch'
|
||||||
|
|
||||||
-- Snippets
|
|
||||||
use { 'L3MON4D3/LuaSnip', after = 'nvim-cmp', config = [[require 'config.luasnip']] }
|
|
||||||
|
|
||||||
-- Movement utilities
|
-- Movement utilities
|
||||||
use 'tpope/vim-unimpaired'
|
use 'tpope/vim-unimpaired'
|
||||||
|
|
||||||
@ -150,9 +36,6 @@ local function usePlugins(use, use_rocks)
|
|||||||
config = [[require 'config.lspinstaller']]
|
config = [[require 'config.lspinstaller']]
|
||||||
}
|
}
|
||||||
|
|
||||||
-- Godot support
|
|
||||||
use 'habamax/vim-godot'
|
|
||||||
|
|
||||||
-- LSP utils
|
-- LSP utils
|
||||||
use {"ray-x/lsp_signature.nvim", config = [[require 'config.lspsignature']]}
|
use {"ray-x/lsp_signature.nvim", config = [[require 'config.lspsignature']]}
|
||||||
use {
|
use {
|
||||||
@ -161,6 +44,9 @@ local function usePlugins(use, use_rocks)
|
|||||||
requires = 'RishabhRD/popfix'
|
requires = 'RishabhRD/popfix'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
-- Snippets
|
||||||
|
use { 'L3MON4D3/LuaSnip', config = [[require 'config.luasnip']] }
|
||||||
|
|
||||||
-- Completion
|
-- Completion
|
||||||
use { 'onsails/lspkind-nvim' }
|
use { 'onsails/lspkind-nvim' }
|
||||||
use {
|
use {
|
||||||
@ -168,8 +54,7 @@ local function usePlugins(use, use_rocks)
|
|||||||
-- requires = 'onsails/lspkind-nvim', -- For some reason breaks with this line
|
-- requires = 'onsails/lspkind-nvim', -- For some reason breaks with this line
|
||||||
requires = {'saadparwaiz1/cmp_luasnip'},
|
requires = {'saadparwaiz1/cmp_luasnip'},
|
||||||
after = 'lspkind-nvim',
|
after = 'lspkind-nvim',
|
||||||
config = [[require 'config.cmp']],
|
config = [[require 'config.cmp']]
|
||||||
event = 'InsertEnter *'
|
|
||||||
}
|
}
|
||||||
use {'tzachar/cmp-tabnine', after = 'nvim-cmp', run='./install.sh', requires = 'hrsh7th/nvim-cmp', config = [[require 'config.tabnine']]}
|
use {'tzachar/cmp-tabnine', after = 'nvim-cmp', run='./install.sh', requires = 'hrsh7th/nvim-cmp', config = [[require 'config.tabnine']]}
|
||||||
use {'hrsh7th/cmp-nvim-lsp', requires = {'hrsh7th/nvim-cmp', 'nvim-lspconfig'}}
|
use {'hrsh7th/cmp-nvim-lsp', requires = {'hrsh7th/nvim-cmp', 'nvim-lspconfig'}}
|
||||||
@ -198,6 +83,9 @@ local function usePlugins(use, use_rocks)
|
|||||||
-- use 'squarefrog/tomorrow-night.vim'
|
-- use 'squarefrog/tomorrow-night.vim'
|
||||||
-- use 'fnune/base16-vim'
|
-- use 'fnune/base16-vim'
|
||||||
|
|
||||||
|
-- Text object target
|
||||||
|
use 'wellle/targets.vim'
|
||||||
|
|
||||||
-- Git integration
|
-- Git integration
|
||||||
use { 'tpope/vim-fugitive', config = [[require 'config.fugitive']] }
|
use { 'tpope/vim-fugitive', config = [[require 'config.fugitive']] }
|
||||||
use {
|
use {
|
||||||
@ -208,15 +96,15 @@ local function usePlugins(use, use_rocks)
|
|||||||
}
|
}
|
||||||
|
|
||||||
-- Refactoring
|
-- Refactoring
|
||||||
use {
|
-- use {
|
||||||
"ThePrimeagen/refactoring.nvim",
|
-- "ThePrimeagen/refactoring.nvim",
|
||||||
requires = {
|
-- requires = {
|
||||||
"nvim-lua/plenary.nvim",
|
-- "nvim-lua/plenary.nvim",
|
||||||
"nvim-treesitter/nvim-treesitter"
|
-- "nvim-treesitter/nvim-treesitter"
|
||||||
},
|
-- },
|
||||||
disable = true,
|
-- disable = true,
|
||||||
config = [[require 'config.refactoring']]
|
-- config = [[require 'config.refactoring']]
|
||||||
}
|
-- }
|
||||||
|
|
||||||
-- Analyze startup time
|
-- Analyze startup time
|
||||||
use 'tweekmonster/startuptime.vim'
|
use 'tweekmonster/startuptime.vim'
|
||||||
@ -233,6 +121,97 @@ local function usePlugins(use, use_rocks)
|
|||||||
-- Training plugins
|
-- Training plugins
|
||||||
-- use 'tjdevries/train.nvim'
|
-- use 'tjdevries/train.nvim'
|
||||||
-- use 'ThePrimeagen/vim-be-good'
|
-- use 'ThePrimeagen/vim-be-good'
|
||||||
|
|
||||||
|
-- Quick movement
|
||||||
|
-- use { 'justinmk/vim-sneak', config = [[require 'config.sneak']] }
|
||||||
|
use { 'unblevable/quick-scope', config = [[require 'config.quickscope']] }
|
||||||
|
use 'michaeljsmith/vim-indent-object'
|
||||||
|
use { 'ggandor/leap.nvim', config=[[require('leap').add_default_mappings()]]}
|
||||||
|
|
||||||
|
-- Smooth smooth scrolling
|
||||||
|
-- use { 'karb94/neoscroll.nvim', config = [[require('neoscroll').setup()]] }
|
||||||
|
use 'psliwka/vim-smoothie'
|
||||||
|
|
||||||
|
-- Commenting
|
||||||
|
use {
|
||||||
|
'terrortylor/nvim-comment',
|
||||||
|
config = [[require 'config.comment']],
|
||||||
|
requires = 'JoosepAlviste/nvim-ts-context-commentstring'
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Color code colorizer
|
||||||
|
use { 'norcalli/nvim-colorizer.lua', config = [[require 'config.colorizer']] }
|
||||||
|
|
||||||
|
-- Fuzzy file finder
|
||||||
|
use {
|
||||||
|
'nvim-telescope/telescope.nvim',
|
||||||
|
config = [[require 'config.telescope']],
|
||||||
|
requires = {
|
||||||
|
'nvim-lua/plenary.nvim',
|
||||||
|
'nvim-treesitter/nvim-treesitter',
|
||||||
|
'kyazdani42/nvim-web-devicons',
|
||||||
|
{'nvim-telescope/telescope-fzf-native.nvim', run = 'make'}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Align characters vertically
|
||||||
|
use 'godlygeek/tabular'
|
||||||
|
|
||||||
|
-- Used for loading project specific code styles
|
||||||
|
use 'editorconfig/editorconfig-vim'
|
||||||
|
|
||||||
|
-- Provides mappings for working with symbols like (), {}, [], etc.
|
||||||
|
use 'tpope/vim-surround'
|
||||||
|
|
||||||
|
-- Allow repeating
|
||||||
|
use 'tpope/vim-repeat'
|
||||||
|
|
||||||
|
-- GLSL language support
|
||||||
|
use 'tikhomirov/vim-glsl'
|
||||||
|
|
||||||
|
-- Treesitter
|
||||||
|
use {
|
||||||
|
'nvim-treesitter/nvim-treesitter',
|
||||||
|
config = [[require 'config.treesitter']],
|
||||||
|
run = function() require('nvim-treesitter.install').update{ with_sync = true } end
|
||||||
|
}
|
||||||
|
use {
|
||||||
|
'nvim-treesitter/playground',
|
||||||
|
requires = 'nvim-treesitter/nvim-treesitter',
|
||||||
|
cmd = "TSPlaygroundToggle"
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Dev icons
|
||||||
|
use {'kyazdani42/nvim-web-devicons', config = [[require('nvim-web-devicons').setup()]]}
|
||||||
|
|
||||||
|
-- Zen mode
|
||||||
|
use { 'folke/zen-mode.nvim', config = [[require 'config.zen-mode']] }
|
||||||
|
use {
|
||||||
|
'folke/twilight.nvim',
|
||||||
|
requires = 'folke/zen-mode.nvim',
|
||||||
|
config = [[require 'config.twilight']]
|
||||||
|
}
|
||||||
|
|
||||||
|
-- File browser
|
||||||
|
use {
|
||||||
|
'kyazdani42/nvim-tree.lua',
|
||||||
|
requires = 'kyazdani42/nvim-web-devicons',
|
||||||
|
config = [[require 'config.nvim-tree']]
|
||||||
|
}
|
||||||
|
-- use {
|
||||||
|
-- 'lambdalisue/fern.vim',
|
||||||
|
-- config = [[require 'config.fern']],
|
||||||
|
-- requires = {
|
||||||
|
-- 'antoinemadec/FixCursorHold.nvim',
|
||||||
|
-- 'lambdalisue/fern-hijack.vim',
|
||||||
|
-- {'lambdalisue/fern-renderer-nerdfont.vim', config = [[vim.g["fern#renderer"] = "nerdfont"]]},
|
||||||
|
-- 'lambdalisue/nerdfont.vim'
|
||||||
|
-- }
|
||||||
|
-- }
|
||||||
|
-- alternatives:
|
||||||
|
-- use 'kyazdani42/nvim-tree.lua'
|
||||||
|
-- use 'zgpio/tree.nvim'
|
||||||
|
-- use 'tpope/vim-vinegar'
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Register custom commands for plugin manager
|
-- Register custom commands for plugin manager
|
||||||
@ -270,6 +249,9 @@ local function init()
|
|||||||
-- Reset plugins if already loaded
|
-- Reset plugins if already loaded
|
||||||
packer.reset()
|
packer.reset()
|
||||||
|
|
||||||
|
-- Packer can manage itself
|
||||||
|
packer.use 'wbthomason/packer.nvim'
|
||||||
|
|
||||||
-- Use plugins
|
-- Use plugins
|
||||||
usePlugins(packer.use, packer.use_rocks)
|
usePlugins(packer.use, packer.use_rocks)
|
||||||
|
|
||||||
|
17
plugins/lldb-vscode.json
Normal file
17
plugins/lldb-vscode.json
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
{
|
||||||
|
"adapters": {
|
||||||
|
"lldb-vscode": {
|
||||||
|
"attach": {
|
||||||
|
"pidProperty": "pid",
|
||||||
|
"pidSelect": "none"
|
||||||
|
},
|
||||||
|
"command": [
|
||||||
|
"lldb-vscode"
|
||||||
|
],
|
||||||
|
"env": {
|
||||||
|
"LLDB_LAUNCH_FLAG_LAUNCH_IN_TTY": "YES"
|
||||||
|
},
|
||||||
|
"name": "lldb"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user