yay
This commit is contained in:
commit
9d3d05066f
80 changed files with 7776 additions and 0 deletions
69
lua/config/commands.lua
Normal file
69
lua/config/commands.lua
Normal file
|
@ -0,0 +1,69 @@
|
|||
local pickers = require "telescope.pickers"
|
||||
local finders = require "telescope.finders"
|
||||
local conf = require("telescope.config").values
|
||||
local actions = require "telescope.actions"
|
||||
local action_state = require "telescope.actions.state"
|
||||
|
||||
vim.api.nvim_create_user_command("OP", function ()
|
||||
local folders = vim.fn.systemlist("\\ls -d $HOME/projects/*/")
|
||||
for i, folder in ipairs(folders) do
|
||||
folders[i] = string.match(string.match(folder, "[^/]*/$"), "^[^/]*")
|
||||
end
|
||||
pickers.new({}, {
|
||||
prompt_title = "Open project",
|
||||
finder = finders.new_table {
|
||||
results = folders
|
||||
},
|
||||
sorter = conf.generic_sorter({}),
|
||||
attach_mappings = function (prompt_bufnr, map)
|
||||
actions.select_default:replace(function ()
|
||||
actions.close(prompt_bufnr)
|
||||
local selection = action_state.get_selected_entry()
|
||||
selection = selection[1]
|
||||
vim.cmd("cd $HOME/projects/" .. selection)
|
||||
vim.cmd("Alpha")
|
||||
vim.cmd("BWipeout other")
|
||||
end)
|
||||
return true
|
||||
end
|
||||
}):find()
|
||||
end, {})
|
||||
|
||||
vim.api.nvim_create_user_command("OD", function ()
|
||||
local folders = vim.fn.systemlist("\\ls -d */")
|
||||
for i, folder in ipairs(folders) do
|
||||
folders[i] = string.match(string.match(folder, "[^/]*/$"), "^[^/]*")
|
||||
end
|
||||
pickers.new({}, {
|
||||
prompt_title = "Open directory",
|
||||
finder = finders.new_table {
|
||||
results = folders
|
||||
},
|
||||
sorter = conf.generic_sorter({}),
|
||||
attach_mappings = function (prompt_bufnr, map)
|
||||
actions.select_default:replace(function ()
|
||||
actions.close(prompt_bufnr)
|
||||
local selection = action_state.get_selected_entry()
|
||||
selection = selection[1]
|
||||
vim.cmd("cd " .. selection)
|
||||
vim.cmd("Alpha")
|
||||
vim.cmd("BWipeout other")
|
||||
end)
|
||||
return true
|
||||
end
|
||||
}):find()
|
||||
end, {})
|
||||
|
||||
vim.api.nvim_create_user_command("Config", function ()
|
||||
vim.cmd("cd $HOME/.config/nvim")
|
||||
vim.cmd("Alpha")
|
||||
vim.cmd("BWipeout other")
|
||||
end, {})
|
||||
|
||||
vim.api.nvim_create_user_command("O", function ()
|
||||
require("oil").open_float(vim.fn.getcwd())
|
||||
end, {})
|
||||
|
||||
vim.api.nvim_create_user_command("RetabFile", function ()
|
||||
vim.cmd(":set ts=2 sts=2 noet | retab! | set ts=4 sts=4 et | retab!")
|
||||
end, {})
|
4
lua/config/init.lua
Normal file
4
lua/config/init.lua
Normal file
|
@ -0,0 +1,4 @@
|
|||
require("config.pmstrap")
|
||||
require("config.sets")
|
||||
require("config.keymap")
|
||||
require("config.commands")
|
171
lua/config/keymap.lua
Normal file
171
lua/config/keymap.lua
Normal file
|
@ -0,0 +1,171 @@
|
|||
local wk = require("which-key")
|
||||
|
||||
local keys = {
|
||||
e = {
|
||||
name = "Toggle",
|
||||
e = {"<cmd>NeoTreeFloatToggle<CR>", "NeoTree"},
|
||||
w = {vim.cmd.Ex, "netrw"},
|
||||
g = {"<cmd>NeoTreeFloatToggle git_status<CR>", "Git Status"},
|
||||
b = {"<cmd>NeoTreeFloatToggle buffers<CR>", "Buffers"},
|
||||
c = {"<cmd>NeoTreeClose<CR>" , "Close"},
|
||||
u = {vim.cmd.UndotreeToggle, "UndoTree"},
|
||||
o = {function () require("oil").open_float(vim.fn.getcwd()) end, "Oil"},
|
||||
},
|
||||
c = {
|
||||
name = "LSP",
|
||||
S = {vim.cmd.AerialToggle, "Symbol sidebar"},
|
||||
w = {function () vim.lsp.buf.workspace_symbol("") end, "workspace symbol"},
|
||||
d = {function () vim.diagnostic.open_float() end, "diagnostic"},
|
||||
a = {function () vim.lsp.buf.code_action() end, "code actions"},
|
||||
R = {function () vim.lsp.buf.references() end, "references"},
|
||||
r = {function () vim.lsp.buf.rename() end, "rename"},
|
||||
h = {function () vim.lsp.buf.hover() end, "Hover"},
|
||||
t = {function () vim.lsp.buf.type_definition() end,"Type Definition"},
|
||||
s = {"<cmd>Navbuddy<cr>", "Navbuddy"},
|
||||
-- s = {require("telescope.builtin").lsp_document_symbols, "Document Symbols"},
|
||||
g = {
|
||||
name = "Goto Preview",
|
||||
d = {function () require('goto-preview').goto_preview_definition() end, "Definition"},
|
||||
r = {function () require('goto-preview').goto_preview_references() end, "References"},
|
||||
t = {function () require("goto-preview").goto_preview_type_definitions() end, "Type"},
|
||||
i = {function () require("goto-preview").goto_preview_implementation() end, "Implementation"},
|
||||
c = {function () require("goto-preview").close_all_win() end, "Close"},
|
||||
},
|
||||
c = {
|
||||
name = "LSP",
|
||||
k = {"<cmd>LspStop<cr>", "Stop"},
|
||||
s = {"<cmd>LspStart<cr>", "Start"},
|
||||
r = {"<cmd>LspRestart<cr>", "Restart"},
|
||||
},
|
||||
},
|
||||
q = {
|
||||
name = "Nvim",
|
||||
q = {"<cmd>q<cr>", "Quit"},
|
||||
W = {"<cmd>wq<cr>", "Save and Quit"},
|
||||
w = {"<cmd>w<cr>", "Save"},
|
||||
},
|
||||
b = {
|
||||
name = "Buffer",
|
||||
h = {vim.cmd.bprevious, "Previous"},
|
||||
l = {vim.cmd.bnext, "Next"},
|
||||
H = {vim.cmd.bfirst, "First"},
|
||||
L = {vim.cmd.blast, "Last"},
|
||||
b = {require("telescope.builtin").buffers, "Picker"},
|
||||
c = {"<cmd>:bp | sp | bn | bd<cr>", "Close"},
|
||||
},
|
||||
f = {
|
||||
name = "Telescope & fzf",
|
||||
c = {require("telescope.builtin").colorscheme, "Find Colorscheme"},
|
||||
d = {require("telescope.builtin").diagnostics, "Find Diagnostics"},
|
||||
w = {require("telescope.builtin").grep_string, "Find current Word"},
|
||||
f = {require("telescope.builtin").find_files, "telescope find files"},
|
||||
g = {require("telescope.builtin").live_grep, "live grep"},
|
||||
b = {require("telescope.builtin").buffers, "buffers"},
|
||||
h = {require("telescope.builtin").help_tags, "help tags"},
|
||||
s = {function () require("telescope.builtin").grep_string({ search = vim.fn.input("Grep > ")}); end, "grep search through files"},
|
||||
p = {"<cmd>Telescope projects<cr>", "Projects"},
|
||||
},
|
||||
s = {
|
||||
name = "Settings",
|
||||
c = {function ()
|
||||
vim.opt.scrolloff = 100
|
||||
end, "Always center cursor"},
|
||||
x = {function ()
|
||||
vim.opt.scrolloff = 8
|
||||
end, "Disable Cursor center"},
|
||||
f = {function ()
|
||||
vim.opt.nu = true
|
||||
vim.opt.relativenumber = true
|
||||
end, "Fix number and relative numbers"},
|
||||
m = {function ()
|
||||
vim.cmd[[
|
||||
highlight CursorColumn guibg=none ctermbg=none
|
||||
highlight link CursorColumn CursorLine
|
||||
]]
|
||||
end, "Fix cursor highlight"},
|
||||
},
|
||||
h = {
|
||||
name = "Hop",
|
||||
w = {"<cmd>HopWord<cr>", "Word"},
|
||||
a = {"<cmd>HopAnywhere<cr>", "Anywhere"},
|
||||
l = {"<cmd>HopLine<cr>", "Line"},
|
||||
p = {"<cmd>HopPattern<cr>", "Pattern"},
|
||||
c = {"<cmd>HopChar1<cr>", "Char1"},
|
||||
x = {"<cmd>HopChar2<cr>", "Char2"},
|
||||
h = {vim.cmd.HopChar2, "Hop"},
|
||||
},
|
||||
d = {
|
||||
name = "Debug",
|
||||
b = {function () require("dap").toggle_breakpoint() end, "toggle breakpoint"},
|
||||
c = {function () require("dap").continue() end, "launch or continue execution"},
|
||||
s = {function () require("dap").step_into() end, "step into"},
|
||||
o = {function () require("dap").step_over() end, "step over"},
|
||||
r = {function () require("dap").repl.open() end, "open repl"},
|
||||
w = {"<cmd>DapUIFloat<cr>", "DapUI"},
|
||||
},
|
||||
w = {
|
||||
name = "workspace",
|
||||
a = {vim.lsp.buf.add_workspace_folder, "add folder"},
|
||||
r = {vim.lsp.buf.remove_workspace_folder, "remove folder"},
|
||||
l = {function() print(vim.inspect(vim.lsp.buf.list_workspace_folders())) end, "list folders"},
|
||||
},
|
||||
q = {
|
||||
name = "Quick nav",
|
||||
q = {require("harpoon.ui").toggle_quick_menu, "Menu"},
|
||||
a = {require("harpoon.mark").add_file, "Add file"},
|
||||
r = {require("harpoon.mark").rm_file, "Remove File"},
|
||||
},
|
||||
|
||||
}
|
||||
|
||||
wk.register(keys, {prefix = "<leader>"})
|
||||
wk.register(keys, {prefix = "<C-Space>"})
|
||||
wk.register(keys, {prefix = "<C-Space>", mode = "i"})
|
||||
wk.register(keys, {prefix = "<C-Space>", mode = "v"})
|
||||
|
||||
-- LSP
|
||||
vim.keymap.set("n", "gd", function() vim.lsp.buf.definition() end, {desc = "goto definition"})
|
||||
vim.keymap.set("n", "K", function() vim.lsp.buf.hover() end, {})
|
||||
vim.keymap.set("n", "[d", function() vim.diagnostic.goto_next() end, {desc = "goto next"})
|
||||
vim.keymap.set("n", "]d", function() vim.diagnostic.goto_prev() end, {desc = "goto prev"})
|
||||
vim.keymap.set("i", "<C-s>", function() vim.lsp.buf.signature_help() end)
|
||||
vim.keymap.set("i", "<C-h>", function () vim.lsp.buf.hover() end, {})
|
||||
|
||||
-- term
|
||||
vim.keymap.set("n", "<C-\\>", vim.cmd.ToggleTerm)
|
||||
vim.keymap.set("t", "<C-\\>", vim.cmd.ToggleTerm)
|
||||
|
||||
-- center
|
||||
vim.keymap.set("n", "<C-d>", "<C-d>zz")
|
||||
vim.keymap.set("n", "<C-u>", "<C-u>zz")
|
||||
vim.keymap.set("n", "n", "nzzzv")
|
||||
vim.keymap.set("n", "N", "Nzzzv")
|
||||
|
||||
-- visual move
|
||||
vim.keymap.set("x", "K", ":move '<-2<CR>gv=gv")
|
||||
vim.keymap.set("x", "J", ":move '>+1<CR>gv=gv")
|
||||
|
||||
-- me lazy
|
||||
vim.keymap.set("i", "<C-c>", "<Esc>")
|
||||
|
||||
|
||||
-- non char keybinds
|
||||
vim.keymap.set("n", "<leader>f/", function ()
|
||||
require("telescope.builtin").current_buffer_fuzzy_find(require("telescope.themes").get_dropdown {
|
||||
winblend = 10,
|
||||
previewer = false,
|
||||
})
|
||||
end, {desc = "fuzzy find"})
|
||||
vim.keymap.set('n', '<leader>f?', require('telescope.builtin').oldfiles, { desc = 'Find recently opened files' })
|
||||
|
||||
vim.keymap.set("i", "<C-Space>f/", function ()
|
||||
require("telescope.builtin").current_buffer_fuzzy_find(require("telescope.themes").get_dropdown {
|
||||
winblend = 10,
|
||||
previewer = false,
|
||||
})
|
||||
end, {desc = "fuzzy find"})
|
||||
vim.keymap.set('i', '<C-Space>f?', require('telescope.builtin').oldfiles, { desc = 'Find recently opened files' })
|
||||
|
||||
for i = 9, 1, -1 do
|
||||
vim.keymap.set("n", "<M-" .. i .. ">", function() require("harpoon.ui").nav_file(i) end, {desc = ""})
|
||||
end
|
485
lua/config/packages.lua
Normal file
485
lua/config/packages.lua
Normal file
|
@ -0,0 +1,485 @@
|
|||
return {
|
||||
{
|
||||
"neovim/nvim-lspconfig",
|
||||
dependencies = {
|
||||
"williamboman/mason.nvim",
|
||||
"williamboman/mason-lspconfig.nvim",
|
||||
"j-hui/fidget.nvim",
|
||||
"folke/neodev.nvim",
|
||||
},
|
||||
},
|
||||
{
|
||||
"jinzhongjia/LspUI.nvim",
|
||||
},
|
||||
{
|
||||
"VidocqH/lsp-lens.nvim",
|
||||
},
|
||||
{
|
||||
"j-hui/fidget.nvim",
|
||||
tag = "legacy",
|
||||
dependencies = {
|
||||
"neovim/nvim-lspconfig",
|
||||
},
|
||||
},
|
||||
"jose-elias-alvarez/null-ls.nvim",
|
||||
"jay-babu/mason-null-ls.nvim",
|
||||
{
|
||||
"SmiteshP/nvim-navic",
|
||||
dependencies = {"neovim/nvim-lspconfig"},
|
||||
opts = {highlight = true},
|
||||
},
|
||||
{
|
||||
"ray-x/lsp_signature.nvim",
|
||||
event = "BufRead",
|
||||
config = function() require"lsp_signature".on_attach() end,
|
||||
},
|
||||
'stevearc/aerial.nvim',
|
||||
{
|
||||
"hrsh7th/nvim-cmp",
|
||||
dependencies = {
|
||||
"hrsh7th/cmp-nvim-lsp",
|
||||
"L3MON4D3/LuaSnip",
|
||||
"saadparwaiz1/cmp_luasnip",
|
||||
"hrsh7th/cmp-nvim-lua",
|
||||
"hrsh7th/cmp-buffer",
|
||||
"hrsh7th/cmp-path",
|
||||
"rafamadriz/friendly-snippets"
|
||||
},
|
||||
},
|
||||
{
|
||||
"roobert/tailwindcss-colorizer-cmp.nvim",
|
||||
opts = {color_square_width = 2},
|
||||
},
|
||||
|
||||
-- syntax highlighting
|
||||
{
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
build = ":TSUpdate"
|
||||
},
|
||||
'nvim-treesitter/nvim-treesitter-context',
|
||||
{
|
||||
"nvim-treesitter/nvim-treesitter-textobjects",
|
||||
dependencies = {"nvim-treesitter"},
|
||||
},
|
||||
"nvim-treesitter/playground",
|
||||
|
||||
-- fzf Telescope
|
||||
{
|
||||
"nvim-telescope/telescope.nvim",
|
||||
branch = "0.1.x",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim"
|
||||
}
|
||||
},
|
||||
{
|
||||
"nvim-telescope/telescope-fzf-native.nvim",
|
||||
build = "make",
|
||||
},
|
||||
"nvim-lua/popup.nvim",
|
||||
|
||||
-- debugging
|
||||
"mfussenegger/nvim-dap",
|
||||
"jay-babu/mason-nvim-dap.nvim",
|
||||
{
|
||||
"rcarriga/nvim-dap-ui",
|
||||
dependencies = {
|
||||
"mfussenegger/nvim-dap"
|
||||
},
|
||||
},
|
||||
"nvim-telescope/telescope-dap.nvim",
|
||||
|
||||
-- git
|
||||
{
|
||||
"NeogitOrg/neogit",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim"
|
||||
},
|
||||
config=true,
|
||||
},
|
||||
"tpope/vim-fugitive",
|
||||
"tpope/vim-rhubarb",
|
||||
"lewis6991/gitsigns.nvim",
|
||||
|
||||
"lvimuser/lsp-inlayhints.nvim",
|
||||
"s1n7ax/nvim-window-picker",
|
||||
"echasnovski/mini.nvim",
|
||||
{
|
||||
'stevearc/oil.nvim',
|
||||
opts = {
|
||||
columns = {
|
||||
"icon",
|
||||
"permissions",
|
||||
"size",
|
||||
},
|
||||
-- keymap = {
|
||||
-- ["<C-c>"] = "actions.close",
|
||||
-- },
|
||||
view_options = {
|
||||
show_hidden = true,
|
||||
},
|
||||
}
|
||||
},
|
||||
"ThePrimeagen/vim-be-good",
|
||||
'kazhala/close-buffers.nvim',
|
||||
-- {
|
||||
-- "VonHeikemen/fine-cmdline.nvim",
|
||||
-- dependencies = {{"MunifTanjim/nui.nvim"}},
|
||||
-- config = function()
|
||||
-- require("fine-cmdline").setup({
|
||||
-- cmdline = {
|
||||
-- prompt = ">",
|
||||
-- }
|
||||
-- })
|
||||
-- vim.api.nvim_set_keymap('n', ':', '<cmd>FineCmdline<CR>', {noremap = true})
|
||||
-- end
|
||||
-- },
|
||||
'stevearc/dressing.nvim',
|
||||
{
|
||||
'stevearc/overseer.nvim',
|
||||
opts = {
|
||||
strategy = "toggleterm",
|
||||
}
|
||||
},
|
||||
"itchyny/screensaver.vim",
|
||||
"christoomey/vim-tmux-navigator",
|
||||
'anuvyklack/pretty-fold.nvim',
|
||||
'eandrju/cellular-automaton.nvim',
|
||||
"ahmedkhalf/project.nvim",
|
||||
"dhruvasagar/vim-table-mode",
|
||||
"editorconfig/editorconfig-vim",
|
||||
"andweeb/presence.nvim",
|
||||
"nacro90/numb.nvim",
|
||||
{"ellisonleao/glow.nvim", config = true, cmd = "Glow"},
|
||||
"kylechui/nvim-surround",
|
||||
{
|
||||
"phaazon/hop.nvim",
|
||||
event = "BufRead",
|
||||
opts = {}
|
||||
},
|
||||
{
|
||||
"nvim-tree/nvim-tree.lua",
|
||||
dependencies = {
|
||||
"nvim-tree/nvim-web-devicons",
|
||||
},
|
||||
opts = {
|
||||
filters = {
|
||||
dotfiles = true,
|
||||
},
|
||||
}
|
||||
},
|
||||
{
|
||||
"ThePrimeagen/harpoon"
|
||||
},
|
||||
{
|
||||
"sQVe/sort.nvim",
|
||||
opts = {}
|
||||
},
|
||||
|
||||
-- misc editing
|
||||
{
|
||||
"ziontee113/color-picker.nvim",
|
||||
opts = {
|
||||
["border"] = "rounded",
|
||||
},
|
||||
},
|
||||
{
|
||||
"natecraddock/workspaces.nvim",
|
||||
opts = {
|
||||
auto_open = true,
|
||||
hooks = {
|
||||
add = {},
|
||||
remove = {},
|
||||
rename = {},
|
||||
open_pre = {},
|
||||
open = {},
|
||||
},
|
||||
}
|
||||
},
|
||||
"lambdalisue/suda.vim",
|
||||
"tpope/vim-sleuth",
|
||||
"mbbill/undotree",
|
||||
"windwp/nvim-autopairs",
|
||||
"windwp/nvim-ts-autotag",
|
||||
{
|
||||
"mg979/vim-visual-multi",
|
||||
config = function ()
|
||||
vim.cmd("let g:VM_leader='<Space>m'")
|
||||
end
|
||||
},
|
||||
|
||||
-- mics visuals
|
||||
{
|
||||
'bennypowers/nvim-regexplainer',
|
||||
dependencies = {
|
||||
'nvim-treesitter/nvim-treesitter',
|
||||
'MunifTanjim/nui.nvim',
|
||||
}
|
||||
},
|
||||
{
|
||||
"rcarriga/nvim-notify",
|
||||
config = function ()
|
||||
vim.notify = require("notify")
|
||||
end
|
||||
},
|
||||
'nmac427/guess-indent.nvim',
|
||||
'mrjones2014/smart-splits.nvim',
|
||||
"goolord/alpha-nvim",
|
||||
"preservim/nerdtree",
|
||||
"luukvbaal/nnn.nvim",
|
||||
{
|
||||
"nvim-neo-tree/neo-tree.nvim",
|
||||
branch = "v2.x",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
"nvim-tree/nvim-web-devicons",
|
||||
"MunifTanjim/nui.nvim",
|
||||
},
|
||||
},
|
||||
"jistr/vim-nerdtree-tabs",
|
||||
{
|
||||
"kevinhwang91/nvim-bqf",
|
||||
event = { "BufRead", "BufNew" },
|
||||
opts = {
|
||||
auto_enable = true,
|
||||
preview = {
|
||||
win_height = 12,
|
||||
win_vheight = 12,
|
||||
delay_syntax = 80,
|
||||
border_chars = { "┃", "┃", "━", "━", "┏", "┓", "┗", "┛", "█" },
|
||||
},
|
||||
func_map = {
|
||||
vsplit = "",
|
||||
ptogglemode = "z,",
|
||||
stoggleup = "",
|
||||
},
|
||||
filter = {
|
||||
fzf = {
|
||||
action_for = { ["ctrl-s"] = "split" },
|
||||
extra_opts = { "--bind", "ctrl-o:toggle-all", "--prompt", "> " },
|
||||
},
|
||||
},
|
||||
}
|
||||
},
|
||||
"nvim-tree/nvim-web-devicons",
|
||||
"ap/vim-css-color",
|
||||
{
|
||||
"lukas-reineke/indent-blankline.nvim",
|
||||
opts = {
|
||||
char = '┊',
|
||||
show_trailing_blankline_indent = false,
|
||||
filetype_exclude = {"dashboard"},
|
||||
show_end_of_line = true,
|
||||
show_current_context = true,
|
||||
show_current_context_start = true,
|
||||
}
|
||||
},
|
||||
{
|
||||
"folke/which-key.nvim",
|
||||
config = function()
|
||||
local wk = require("which-key")
|
||||
wk.setup {
|
||||
popup_mappings = {
|
||||
scroll_down = "<C-j>",
|
||||
scroll_up = "<C-k>",
|
||||
},
|
||||
window = {
|
||||
border = "single",
|
||||
},
|
||||
}
|
||||
end
|
||||
},
|
||||
"rebelot/heirline.nvim",
|
||||
{
|
||||
"akinsho/toggleterm.nvim",
|
||||
version = "*",
|
||||
opts = {
|
||||
direction = "float",
|
||||
float_opts = {
|
||||
border = "curved"
|
||||
},
|
||||
}
|
||||
},
|
||||
{
|
||||
"karb94/neoscroll.nvim",
|
||||
event = "WinScrolled",
|
||||
opts = {
|
||||
mappings = {"<C-u>", "<C-d>", "<C-b>", "<C-f>", "<C-y>", "<C-e>", "zt", "zz", "zb"},
|
||||
hide_cursor = true,
|
||||
stop_eof = true,
|
||||
use_local_scrolloff = false,
|
||||
respect_scrolloff = false,
|
||||
cursor_scrolls_alone = true,
|
||||
easing_function = nil,
|
||||
pre_hook = nil,
|
||||
post_hook = nil,
|
||||
}
|
||||
},
|
||||
{
|
||||
"folke/todo-comments.nvim",
|
||||
event = "BufRead",
|
||||
},
|
||||
'numToStr/Comment.nvim',
|
||||
{
|
||||
"SmiteshP/nvim-navbuddy",
|
||||
dependencies = {
|
||||
"neovim/nvim-lspconfig",
|
||||
"SmiteshP/nvim-navic",
|
||||
"MunifTanjim/nui.nvim",
|
||||
"numToStr/Comment.nvim",
|
||||
"nvim-telescope/telescope.nvim"
|
||||
},
|
||||
opts = {
|
||||
window = {border="rounded",},
|
||||
}
|
||||
},
|
||||
'rmagatti/goto-preview',
|
||||
{
|
||||
"felipec/vim-sanegx",
|
||||
event = "BufRead",
|
||||
},
|
||||
{
|
||||
"gelguy/wilder.nvim",
|
||||
config = function()
|
||||
vim.cmd('call wilder#setup({"modes": [":", "/", "?"]})')
|
||||
vim.cmd('call wilder#set_option("renderer", wilder#popupmenu_renderer({"highlighter": wilder#basic_highlighter(), "left": [ " ", wilder#popupmenu_devicons(), ], "right": [ " ", wilder#popupmenu_scrollbar(), ], "pumblend": 20}))')
|
||||
vim.cmd('call wilder#set_option("renderer", wilder#popupmenu_renderer(wilder#popupmenu_border_theme({"highlighter": wilder#basic_highlighter(), "min_width": "100%", "min_height": "50%", "reverse": 0, "highlights": {"border": "Normal",},"border": "rounded"})))')
|
||||
end,
|
||||
},
|
||||
|
||||
-- lenguage specific
|
||||
-- nim
|
||||
"alaviss/nim.nvim",
|
||||
|
||||
-- csv
|
||||
'cameron-wags/rainbow_csv.nvim',
|
||||
|
||||
-- rust
|
||||
{"racer-rust/vim-racer",
|
||||
config = function ()
|
||||
vim.cmd [[ let g:racer_cmd = "/usr/bin/racer"]]
|
||||
end
|
||||
},
|
||||
"simrat39/rust-tools.nvim",
|
||||
{
|
||||
"saecki/crates.nvim",
|
||||
tag = "v0.3.0",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim"
|
||||
},
|
||||
},
|
||||
|
||||
-- zig
|
||||
"ziglang/zig.vim",
|
||||
{
|
||||
"NTBBloodbath/zig-tools.nvim",
|
||||
ft = "zig",
|
||||
opts = {
|
||||
integrations = {
|
||||
zls = {
|
||||
hints = true,
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
-- glsl
|
||||
"tikhomirov/vim-glsl",
|
||||
|
||||
-- java
|
||||
"mfussenegger/nvim-jdtls",
|
||||
|
||||
-- c && c++ && cmake
|
||||
{ "igankevich/mesonic",
|
||||
config = function()
|
||||
vim.cmd[[
|
||||
let b:meson_command = 'meson'
|
||||
let b:meson_ninja_command = 'ninja'
|
||||
|
||||
autocmd FileType c call ConsiderMesonForLinting()
|
||||
function ConsiderMesonForLinting()
|
||||
if filereadable('meson.build')
|
||||
let g:syntastic_c_checkers = ['meson']
|
||||
endif
|
||||
endfunction
|
||||
]]
|
||||
end
|
||||
},
|
||||
"cdelledonne/vim-cmake",
|
||||
|
||||
-- web
|
||||
"evanleck/vim-svelte",
|
||||
"posva/vim-vue",
|
||||
|
||||
-- yuck
|
||||
"elkowar/yuck.vim",
|
||||
|
||||
|
||||
-- f#
|
||||
"adelarsq/neofsharp.vim",
|
||||
{
|
||||
"ionide/Ionide-vim",
|
||||
config = function ()
|
||||
vim.cmd [[
|
||||
let g:fsharp#backend = "nvim"
|
||||
]]
|
||||
end
|
||||
},
|
||||
"aurum77/dotnet.nvim",
|
||||
|
||||
-- themes
|
||||
"xiyaowong/transparent.nvim",
|
||||
|
||||
"sainnhe/gruvbox-material",
|
||||
"shaunsingh/nord.nvim",
|
||||
"projekt0n/github-nvim-theme",
|
||||
"EdenEast/nightfox.nvim",
|
||||
"Everblush/nvim",
|
||||
"olimorris/onedarkpro.nvim",
|
||||
"rmehri01/onenord.nvim",
|
||||
"luisiacc/gruvbox-baby",
|
||||
"tiagovla/tokyodark.nvim",
|
||||
"cpea2506/one_monokai.nvim",
|
||||
"yazeed1s/minimal.nvim",
|
||||
"Mofiqul/adwaita.nvim",
|
||||
"kvrohit/mellow.nvim",
|
||||
"yazeed1s/oh-lucy.nvim",
|
||||
"marko-cerovac/material.nvim",
|
||||
"sainnhe/sonokai",
|
||||
"rebelot/kanagawa.nvim",
|
||||
{
|
||||
"catppuccin/nvim",
|
||||
priority = 1000,
|
||||
name = "catppuccin",
|
||||
config = function()
|
||||
require("catppuccin").setup{
|
||||
flavor = "mocha",
|
||||
navic = {
|
||||
enabled = true,
|
||||
custom_bg = "NONE",
|
||||
},
|
||||
indent_blankline = {
|
||||
enabled = true,
|
||||
colored_indent_levels = true,
|
||||
},
|
||||
dap = {
|
||||
enabled = true,
|
||||
enable_ui = true,
|
||||
},
|
||||
integrations = {
|
||||
hop = true,
|
||||
cmp = true,
|
||||
telescope = true,
|
||||
which_key = true,
|
||||
},
|
||||
-- color_overrides = {
|
||||
-- macchiato = {
|
||||
-- base = "#000000",
|
||||
-- mantle = "#000000",
|
||||
-- crust = "#000000"
|
||||
-- }
|
||||
-- }
|
||||
}
|
||||
vim.cmd("colorscheme catppuccin")
|
||||
end
|
||||
},
|
||||
}
|
24
lua/config/pmstrap.lua
Normal file
24
lua/config/pmstrap.lua
Normal file
|
@ -0,0 +1,24 @@
|
|||
vim.g.mapleader = " "
|
||||
vim.g.maplocalleader = " "
|
||||
|
||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||
if not vim.loop.fs_stat(lazypath) then
|
||||
vim.fn.system({
|
||||
"git",
|
||||
"clone",
|
||||
"--filter=blob:none",
|
||||
"https://github.com/folke/lazy.nvim.git",
|
||||
"--branch=stable", -- latest stable release
|
||||
lazypath,
|
||||
})
|
||||
end
|
||||
vim.opt.rtp:prepend(lazypath)
|
||||
-- bootstrap lazy.nvim
|
||||
require("lazy").setup("config.packages", {
|
||||
defaults = {
|
||||
lazy = false
|
||||
},
|
||||
-- install = {
|
||||
-- colorscheme = { "catppuccin" },
|
||||
-- }
|
||||
})
|
57
lua/config/sets.lua
Normal file
57
lua/config/sets.lua
Normal file
|
@ -0,0 +1,57 @@
|
|||
-- numbers
|
||||
vim.opt.nu = true
|
||||
vim.opt.number = true
|
||||
vim.opt.relativenumber = true
|
||||
|
||||
-- tab && indent
|
||||
vim.opt.tabstop = 4
|
||||
vim.opt.softtabstop = 4
|
||||
vim.opt.shiftwidth = 4
|
||||
vim.opt.expandtab = true
|
||||
vim.opt.smartindent = true
|
||||
vim.o.breakindent = true
|
||||
|
||||
-- lines
|
||||
vim.opt.wrap = true
|
||||
vim.opt.smarttab = true
|
||||
|
||||
vim.opt.list = true
|
||||
vim.opt.listchars:append "eol:↴"
|
||||
|
||||
-- undo
|
||||
vim.opt.undodir = os.getenv("HOME") .. "/.vim/undodir"
|
||||
vim.opt.undofile = true
|
||||
|
||||
-- search
|
||||
vim.opt.hlsearch = false
|
||||
vim.opt.incsearch = true
|
||||
|
||||
vim.o.ignorecase = true
|
||||
vim.o.smartcase = true
|
||||
|
||||
-- colors
|
||||
vim.opt.termguicolors = true
|
||||
vim.cmd("colorscheme catppuccin")
|
||||
|
||||
vim.opt.cursorline = true
|
||||
vim.opt.cursorcolumn = true
|
||||
vim.cmd[[
|
||||
highlight CursorColumn guibg=none ctermbg=none
|
||||
highlight link CursorColumn CursorLine
|
||||
]]
|
||||
|
||||
-- misc
|
||||
vim.opt.swapfile = false
|
||||
vim.opt.backup = false
|
||||
vim.opt.scrolloff = 8
|
||||
vim.opt.sidescrolloff = 8
|
||||
vim.opt.signcolumn = "yes"
|
||||
vim.opt.isfname:append("@-@")
|
||||
vim.opt.updatetime = 50
|
||||
vim.o.mouse = "a"
|
||||
vim.opt.showmode = false
|
||||
|
||||
vim.o.completeopt = "menuone,noselect"
|
||||
|
||||
-- idfk pls fix nim
|
||||
vim.opt.path = vim.opt.path + "/home/d/.nimble/bin/**"
|
Loading…
Add table
Add a link
Reference in a new issue