133 lines
3.3 KiB
Lua
133 lines
3.3 KiB
Lua
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)
|
|
|
|
require("lazy").setup({
|
|
-- Gruvbox theme
|
|
{ "ellisonleao/gruvbox.nvim", priority = 1000 , config = true },
|
|
-- Telescope: fuzzy finder
|
|
{
|
|
'nvim-telescope/telescope.nvim', tag = '0.1.4',
|
|
dependencies = { 'nvim-lua/plenary.nvim' }
|
|
},
|
|
-- File tree
|
|
"nvim-tree/nvim-tree.lua",
|
|
-- Treesitter
|
|
"nvim-treesitter/nvim-treesitter",
|
|
{
|
|
"Exafunction/codeium.vim",
|
|
config = function ()
|
|
-- Change '<C-g>' here to any keycode you like.
|
|
vim.keymap.set('i', '<C-g>', function () return vim.fn['codeium#Accept']() end, { expr = true })
|
|
vim.keymap.set('i', '<c-;>', function() return vim.fn['codeium#CycleCompletions'](1) end, { expr = true })
|
|
vim.keymap.set('i', '<c-,>', function() return vim.fn['codeium#CycleCompletions'](-1) end, { expr = true })
|
|
vim.keymap.set('i', '<c-x>', function() return vim.fn['codeium#Clear']() end, { expr = true })
|
|
end
|
|
},
|
|
-- Completion framework
|
|
"hrsh7th/nvim-cmp",
|
|
"hrsh7th/cmp-nvim-lsp",
|
|
"hrsh7th/cmp-nvim-lsp-document-symbol",
|
|
"hrsh7th/cmp-nvim-lsp-signature-help",
|
|
"ray-x/cmp-treesitter",
|
|
"hrsh7th/cmp-path",
|
|
"hrsh7th/cmp-cmdline",
|
|
"andersevenrud/cmp-tmux",
|
|
"garyhurtz/cmp_kitty",
|
|
"kdheepak/cmp-latex-symbols",
|
|
"hrsh7th/cmp-emoji",
|
|
"Jezda1337/nvim-html-css",
|
|
-- LSP setup
|
|
"neovim/nvim-lspconfig",
|
|
-- Icons for Treesitter/nvim-tree
|
|
"nvim-tree/nvim-web-devicons",
|
|
-- LSP icons
|
|
"onsails/lspkind.nvim",
|
|
-- Git blame popup
|
|
"rhysd/git-messenger.vim",
|
|
-- Debugger
|
|
"mfussenegger/nvim-dap",
|
|
"rcarriga/nvim-dap-ui",
|
|
-- Vi motion within camelcase, underscore, etc
|
|
"chaoren/vim-wordmotion",
|
|
-- Git
|
|
"tpope/vim-fugitive",
|
|
-- Edit parens etc.
|
|
"tpope/vim-surround",
|
|
-- Rails utilities
|
|
"tpope/vim-rails",
|
|
-- Auto input 'end's
|
|
"rrethy/nvim-treesitter-endwise",
|
|
-- Blow shit up
|
|
"Eandrju/cellular-automaton.nvim",
|
|
-- Auto disable search highlight
|
|
"romainl/vim-cool",
|
|
-- Wiki
|
|
"vimwiki/vimwiki",
|
|
-- Focus on current buffer
|
|
{
|
|
"folke/zen-mode.nvim",
|
|
opts = {
|
|
plugins = {
|
|
tmux = { enabled = true },
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"sontungexpt/sttusline",
|
|
dependencies = {
|
|
"nvim-tree/nvim-web-devicons",
|
|
},
|
|
event = { "BufEnter" },
|
|
config = function(_, opts)
|
|
require("sttusline").setup {
|
|
statusline_color = "#504945",
|
|
|
|
-- | 1 | 2 | 3
|
|
-- recommended: 3
|
|
laststatus = 3,
|
|
disabled = {
|
|
filetypes = {
|
|
"NvimTree",
|
|
-- "lazy",
|
|
},
|
|
buftypes = {
|
|
-- "terminal",
|
|
},
|
|
},
|
|
components = {
|
|
"mode",
|
|
"filename",
|
|
"git-branch",
|
|
"git-diff",
|
|
"%=",
|
|
"diagnostics",
|
|
"lsps-formatters",
|
|
"indent",
|
|
"encoding",
|
|
"pos-cursor",
|
|
"pos-cursor-progress",
|
|
},
|
|
}
|
|
end,
|
|
},
|
|
"kosayoda/nvim-lightbulb",
|
|
{
|
|
"folke/trouble.nvim",
|
|
dependencies = "nvim-tree/nvim-web-devicons",
|
|
config = function()
|
|
require("trouble").setup()
|
|
end
|
|
},
|
|
})
|
|
|