Init updated
This commit is contained in:
parent
bddde0272b
commit
4d39e00dc4
@ -89,6 +89,7 @@ vim.opt.rtp:prepend(lazypath)
|
||||
-------------------------------------------------------------------
|
||||
require('lazy').setup({
|
||||
|
||||
-- Color scheme ------------------------------------------
|
||||
{
|
||||
dir = "~/code_server/nightly_cm.nvim",
|
||||
lazy = false,
|
||||
@ -98,8 +99,8 @@ require('lazy').setup({
|
||||
end,
|
||||
},
|
||||
|
||||
-- LSP ----------------------------------------------------
|
||||
{
|
||||
-- LSP Configuration & Plugins
|
||||
'neovim/nvim-lspconfig',
|
||||
event = { "BufReadPre", "BufNewFile" },
|
||||
dependencies = {
|
||||
@ -109,7 +110,6 @@ require('lazy').setup({
|
||||
},
|
||||
|
||||
{
|
||||
-- Autocompletion
|
||||
'hrsh7th/nvim-cmp',
|
||||
dependencies = {
|
||||
'onsails/lspkind.nvim',
|
||||
@ -123,10 +123,74 @@ require('lazy').setup({
|
||||
},
|
||||
},
|
||||
|
||||
-- "gc" to comment visual regions/lines
|
||||
{ 'numToStr/Comment.nvim', opts = {} },
|
||||
{
|
||||
'zbirenbaum/copilot-cmp',
|
||||
event = { 'BufRead', 'BufNewFile' },
|
||||
dependencies = {
|
||||
{
|
||||
'zbirenbaum/copilot.lua',
|
||||
config = function()
|
||||
require('copilot').setup {
|
||||
suggestion = { enabled = false },
|
||||
panel = { enabled = false },
|
||||
filetypes = { markdown = true },
|
||||
}
|
||||
end,
|
||||
},
|
||||
},
|
||||
config = function() require('copilot_cmp').setup() end,
|
||||
},
|
||||
|
||||
-- Fuzzy Finder (files, lsp, etc)
|
||||
{
|
||||
-- Highlight, edit, and navigate code
|
||||
'nvim-treesitter/nvim-treesitter',
|
||||
dependencies = {
|
||||
'nvim-treesitter/nvim-treesitter-textobjects',
|
||||
},
|
||||
build = ':TSUpdate',
|
||||
},
|
||||
|
||||
{
|
||||
"simrat39/rust-tools.nvim",
|
||||
},
|
||||
|
||||
-- {
|
||||
-- "ray-x/lsp_signature.nvim",
|
||||
-- config = function()
|
||||
-- require "lsp_signature".setup {
|
||||
-- bind = true, -- This is mandatory, otherwise border config won't get registered.
|
||||
-- handler_opts = {
|
||||
-- border = "solid"
|
||||
-- }
|
||||
-- }
|
||||
-- end
|
||||
-- },
|
||||
--
|
||||
{
|
||||
"jay-babu/mason-null-ls.nvim",
|
||||
event = { "BufReadPre", "BufNewFile" },
|
||||
dependencies = {
|
||||
"williamboman/mason.nvim",
|
||||
"jose-elias-alvarez/null-ls.nvim",
|
||||
},
|
||||
config = function()
|
||||
require("mason").setup()
|
||||
require("mason-null-ls").setup({
|
||||
ensure_installed = {
|
||||
-- Opt to list sources here, when available in mason.
|
||||
},
|
||||
automatic_installation = false,
|
||||
handlers = {},
|
||||
})
|
||||
require("null-ls").setup({
|
||||
sources = {
|
||||
-- Anything not supported by mason.
|
||||
}
|
||||
})
|
||||
end,
|
||||
},
|
||||
|
||||
-- File explorer -------------------------------------------
|
||||
{
|
||||
'nvim-telescope/telescope.nvim',
|
||||
branch = '0.1.x',
|
||||
@ -157,190 +221,12 @@ require('lazy').setup({
|
||||
|
||||
{
|
||||
"nvim-telescope/telescope-file-browser.nvim",
|
||||
dependencies = { "nvim-telescope/telescope.nvim", "nvim-lua/plenary.nvim" },
|
||||
},
|
||||
|
||||
{
|
||||
-- Highlight, edit, and navigate code
|
||||
'nvim-treesitter/nvim-treesitter',
|
||||
dependencies = {
|
||||
'nvim-treesitter/nvim-treesitter-textobjects',
|
||||
},
|
||||
build = ':TSUpdate',
|
||||
},
|
||||
|
||||
{
|
||||
"max397574/better-escape.nvim",
|
||||
opts = { timeout = 300 }
|
||||
},
|
||||
|
||||
-- Copilot plugin to autocomplete text
|
||||
{
|
||||
'zbirenbaum/copilot-cmp',
|
||||
event = { 'BufRead', 'BufNewFile' },
|
||||
dependencies = {
|
||||
{
|
||||
'zbirenbaum/copilot.lua',
|
||||
config = function()
|
||||
require('copilot').setup {
|
||||
suggestion = { enabled = false },
|
||||
panel = { enabled = false },
|
||||
filetypes = { markdown = true },
|
||||
}
|
||||
end,
|
||||
},
|
||||
},
|
||||
config = function() require('copilot_cmp').setup() end,
|
||||
},
|
||||
|
||||
{
|
||||
-- Set lualine as statusline
|
||||
'nvim-lualine/lualine.nvim',
|
||||
opts = {
|
||||
options = {
|
||||
icons_enabled = true,
|
||||
theme = 'nightly_cm',
|
||||
component_separators = '',
|
||||
section_separators = '',
|
||||
globalstatus = true,
|
||||
},
|
||||
sections = {
|
||||
lualine_a = { 'mode' },
|
||||
lualine_b = { 'branch', 'diff' },
|
||||
lualine_c = { 'filename' },
|
||||
lualine_x = {
|
||||
{
|
||||
-- Lsp server name .
|
||||
function()
|
||||
local msg = ''
|
||||
local clients = vim.lsp.get_active_clients({ bufnr = 0 })
|
||||
if next(clients) == nil then
|
||||
return msg
|
||||
end
|
||||
for _, client in ipairs(clients) do
|
||||
msg = msg .. client.name .. ", "
|
||||
end
|
||||
if msg == '' then
|
||||
return msg
|
||||
end
|
||||
return msg:sub(1, -3)
|
||||
end,
|
||||
color = { fg = '#c6c6c6' },
|
||||
},
|
||||
},
|
||||
lualine_y = { 'filetype' },
|
||||
lualine_z = { 'progress' }
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
{
|
||||
-- Adds git releated signs to the gutter, as well as utilities for managing changes
|
||||
'lewis6991/gitsigns.nvim',
|
||||
opts = {
|
||||
signs = {
|
||||
add = { text = "▎" },
|
||||
change = { text = "▎" },
|
||||
delete = { text = "▎" },
|
||||
topdelete = { text = "▎" },
|
||||
changedelete = { text = "▎" },
|
||||
untracked = { text = "▎" },
|
||||
},
|
||||
preview_config = {
|
||||
-- Options passed to nvim_open_win
|
||||
border = 'solid',
|
||||
style = 'minimal',
|
||||
relative = 'cursor',
|
||||
row = 0,
|
||||
col = 1
|
||||
},
|
||||
on_attach = function(bufnr)
|
||||
vim.keymap.set('n', '<leader>gp', require('gitsigns').prev_hunk,
|
||||
{ buffer = bufnr, desc = '[G]o to [P]revious Hunk' })
|
||||
vim.keymap.set('n', '<leader>gn', require('gitsigns').next_hunk,
|
||||
{ buffer = bufnr, desc = '[G]o to [N]ext Hunk' })
|
||||
vim.keymap.set('n', '<leader>ph', require('gitsigns').preview_hunk,
|
||||
{ buffer = bufnr, desc = '[P]review [H]unk' })
|
||||
end,
|
||||
},
|
||||
},
|
||||
|
||||
{
|
||||
-- Add indentation guides even on blank lines
|
||||
'lukas-reineke/indent-blankline.nvim',
|
||||
opts = {
|
||||
buftype_exclude = {
|
||||
"nofile",
|
||||
"terminal",
|
||||
},
|
||||
filetype_exclude = {
|
||||
"help",
|
||||
"startify",
|
||||
"aerial",
|
||||
"alpha",
|
||||
"dashboard",
|
||||
"lazy",
|
||||
"neogitstatus",
|
||||
"NvimTree",
|
||||
"neo-tree",
|
||||
"Trouble",
|
||||
},
|
||||
context_patterns = {
|
||||
"class",
|
||||
"return",
|
||||
"function",
|
||||
"method",
|
||||
"^if",
|
||||
"^while",
|
||||
"jsx_element",
|
||||
"^for",
|
||||
"^object",
|
||||
"^table",
|
||||
"block",
|
||||
"arguments",
|
||||
"if_statement",
|
||||
"else_clause",
|
||||
"jsx_element",
|
||||
"jsx_self_closing_element",
|
||||
"try_statement",
|
||||
"catch_clause",
|
||||
"import_statement",
|
||||
"operation_type",
|
||||
},
|
||||
show_trailing_blankline_indent = false,
|
||||
use_treesitter = true,
|
||||
char = "▏",
|
||||
context_char = "▏",
|
||||
show_current_context = true,
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
'mrjones2014/smart-splits.nvim',
|
||||
opts = {
|
||||
at_edge = 'stop',
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"folke/neodev.nvim",
|
||||
opts = {}
|
||||
},
|
||||
|
||||
{
|
||||
"kdheepak/lazygit.nvim",
|
||||
dependencies = {
|
||||
"nvim-telescope/telescope.nvim",
|
||||
"nvim-lua/plenary.nvim",
|
||||
},
|
||||
},
|
||||
|
||||
{
|
||||
"norcalli/nvim-colorizer.lua",
|
||||
config = function()
|
||||
require("colorizer").setup()
|
||||
end,
|
||||
},
|
||||
|
||||
{
|
||||
"nvim-neo-tree/neo-tree.nvim",
|
||||
branch = "v2.x",
|
||||
@ -425,6 +311,146 @@ require('lazy').setup({
|
||||
end,
|
||||
},
|
||||
|
||||
{
|
||||
"s1n7ax/nvim-window-picker",
|
||||
opts = {
|
||||
use_winbar = "smart",
|
||||
highlights = {
|
||||
statusline = {
|
||||
unfocused = {
|
||||
fg = '#d7af5f',
|
||||
bg = '#262626',
|
||||
bold = true,
|
||||
},
|
||||
focused = {
|
||||
fg = '#d7af5f',
|
||||
bg = '#262626',
|
||||
bold = true,
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
},
|
||||
|
||||
-- GUI ------------------------------------------------------
|
||||
{
|
||||
'mrjones2014/smart-splits.nvim',
|
||||
opts = {
|
||||
at_edge = 'stop',
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
-- Set lualine as statusline
|
||||
'nvim-lualine/lualine.nvim',
|
||||
opts = {
|
||||
options = {
|
||||
icons_enabled = true,
|
||||
theme = 'nightly_cm',
|
||||
component_separators = '',
|
||||
section_separators = '',
|
||||
globalstatus = true,
|
||||
},
|
||||
sections = {
|
||||
lualine_a = { 'mode' },
|
||||
lualine_b = { 'branch', 'diff' },
|
||||
lualine_c = { 'filename' },
|
||||
lualine_x = {
|
||||
{
|
||||
-- Lsp server name .
|
||||
function()
|
||||
local msg = ''
|
||||
local clients = vim.lsp.get_active_clients({ bufnr = 0 })
|
||||
if next(clients) == nil then
|
||||
return msg
|
||||
end
|
||||
for _, client in ipairs(clients) do
|
||||
msg = msg .. client.name .. ", "
|
||||
end
|
||||
if msg == '' then
|
||||
return msg
|
||||
end
|
||||
return msg:sub(1, -3)
|
||||
end,
|
||||
color = { fg = '#c6c6c6' },
|
||||
},
|
||||
},
|
||||
lualine_y = { 'filetype' },
|
||||
lualine_z = { 'progress' }
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
{
|
||||
-- Adds git releated signs to the gutter, as well as utilities for managing changes
|
||||
'lewis6991/gitsigns.nvim',
|
||||
opts = {
|
||||
signs = {
|
||||
add = { text = "▎" },
|
||||
change = { text = "▎" },
|
||||
delete = { text = "▎" },
|
||||
topdelete = { text = "▎" },
|
||||
changedelete = { text = "▎" },
|
||||
untracked = { text = "▎" },
|
||||
},
|
||||
preview_config = {
|
||||
-- Options passed to nvim_open_win
|
||||
border = 'solid',
|
||||
style = 'minimal',
|
||||
relative = 'cursor',
|
||||
row = 0,
|
||||
col = 1
|
||||
},
|
||||
on_attach = function(bufnr)
|
||||
vim.keymap.set('n', '<leader>gp', require('gitsigns').prev_hunk,
|
||||
{ buffer = bufnr, desc = '[G]o to [P]revious Hunk' })
|
||||
vim.keymap.set('n', '<leader>gn', require('gitsigns').next_hunk,
|
||||
{ buffer = bufnr, desc = '[G]o to [N]ext Hunk' })
|
||||
vim.keymap.set('n', '<leader>ph', require('gitsigns').preview_hunk,
|
||||
{ buffer = bufnr, desc = '[P]review [H]unk' })
|
||||
end,
|
||||
},
|
||||
},
|
||||
|
||||
{
|
||||
-- Add indentation guides even on blank lines
|
||||
'lukas-reineke/indent-blankline.nvim',
|
||||
opts = {
|
||||
show_trailing_blankline_indent = false,
|
||||
use_treesitter = true,
|
||||
char = "▏",
|
||||
context_char = "▏",
|
||||
show_current_context = true,
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"norcalli/nvim-colorizer.lua",
|
||||
config = function()
|
||||
require("colorizer").setup()
|
||||
end,
|
||||
},
|
||||
|
||||
{
|
||||
"folke/neodev.nvim",
|
||||
opts = {}
|
||||
},
|
||||
|
||||
-- Utils ---------------------------------------------------
|
||||
{
|
||||
"max397574/better-escape.nvim",
|
||||
opts = { timeout = 300 }
|
||||
},
|
||||
|
||||
{ 'numToStr/Comment.nvim', opts = {} },
|
||||
|
||||
{
|
||||
"kdheepak/lazygit.nvim",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
},
|
||||
},
|
||||
|
||||
{
|
||||
'akinsho/toggleterm.nvim',
|
||||
version = "*",
|
||||
@ -444,26 +470,6 @@ require('lazy').setup({
|
||||
end,
|
||||
},
|
||||
|
||||
{
|
||||
"s1n7ax/nvim-window-picker",
|
||||
opts = {
|
||||
use_winbar = "smart",
|
||||
highlights = {
|
||||
statusline = {
|
||||
unfocused = {
|
||||
fg = '#d7af5f',
|
||||
bg = '#262626',
|
||||
bold = true,
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
},
|
||||
|
||||
{
|
||||
"simrat39/rust-tools.nvim",
|
||||
},
|
||||
|
||||
{
|
||||
"folke/todo-comments.nvim",
|
||||
dependencies = { "nvim-lua/plenary.nvim" },
|
||||
@ -475,7 +481,6 @@ require('lazy').setup({
|
||||
'phaazon/hop.nvim',
|
||||
branch = 'v2', -- optional but strongly recommended
|
||||
config = function()
|
||||
-- you can configure Hop the way you like here; see :h hop-config
|
||||
require 'hop'.setup { keys = 'etovxqpdygfblzhckisuran' }
|
||||
end
|
||||
},
|
||||
@ -487,18 +492,6 @@ require('lazy').setup({
|
||||
},
|
||||
},
|
||||
|
||||
{
|
||||
"ray-x/lsp_signature.nvim",
|
||||
config = function()
|
||||
require "lsp_signature".setup {
|
||||
bind = true, -- This is mandatory, otherwise border config won't get registered.
|
||||
handler_opts = {
|
||||
border = "solid"
|
||||
}
|
||||
}
|
||||
end
|
||||
},
|
||||
|
||||
}, {})
|
||||
|
||||
-------------------------------------------------------------------
|
||||
@ -839,9 +832,9 @@ vim.keymap.set('n', '<leader>sh', require('telescope.builtin').help_tags, { desc
|
||||
vim.keymap.set('n', '<leader>sw', require('telescope.builtin').grep_string, { desc = 'Search current word' })
|
||||
vim.keymap.set('n', '<leader>sg', require('telescope.builtin').live_grep, { desc = 'Search by grep' })
|
||||
vim.keymap.set('n', '<leader>sd', require('telescope.builtin').diagnostics, { desc = 'Search diagnostics' })
|
||||
|
||||
--Other
|
||||
vim.keymap.set('n', '<tab>', ":tabNext<cr>", { desc = 'Next tab', silent = true })
|
||||
-- vim.keymap.set('n', '<A-f>', ":Format<cr>", { desc = 'Format code', silent = true })
|
||||
vim.keymap.set('n', '<A-f>', ":Format<cr>", { desc = 'Format code', silent = true })
|
||||
vim.keymap.set('n', '<leader>gg', ":LazyGitCurrentFile<cr>", { desc = 'Format code', silent = true })
|
||||
vim.keymap.set('n', '<C-m>', ":make<cr>", { desc = 'Format code', silent = true })
|
||||
vim.keymap.set('n', '<C-n>', ":make clean<cr>", { desc = 'Format code', silent = true })
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user