161 lines
3.2 KiB
Lua
Executable file
161 lines
3.2 KiB
Lua
Executable file
|
|
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({
|
|
|
|
-- colorscheme
|
|
"EdenEast/nightfox.nvim",
|
|
"luckasRanarison/tree-sitter-hypr",
|
|
|
|
'lambdalisue/nerdfont.vim',
|
|
'gelguy/wilder.nvim',
|
|
|
|
{
|
|
"rbong/vim-flog",
|
|
cmd = { "Flog", "Flogsplit", "Floggit" },
|
|
dependencies = {
|
|
"tpope/vim-fugitive",
|
|
},
|
|
},
|
|
|
|
'kassio/neoterm',
|
|
|
|
-- it's annoying that w skips the whole word, so let's fix it
|
|
"bkad/camelcasemotion",
|
|
|
|
-- very good file jumping system
|
|
{
|
|
"ThePrimeagen/harpoon",
|
|
dependencies = "nvim-lua/plenary.nvim",
|
|
version = "harpoon2"
|
|
},
|
|
|
|
-- arbitrarily comment
|
|
"tpope/vim-commentary",
|
|
|
|
"lewis6991/gitsigns.nvim",
|
|
|
|
-- like magit for emacs
|
|
{
|
|
"NeogitOrg/neogit",
|
|
dependencies = "nvim-lua/plenary.nvim",
|
|
config = true
|
|
},
|
|
|
|
|
|
-- for faster file navigation
|
|
{
|
|
"nvim-tree/nvim-tree.lua",
|
|
version = "*",
|
|
lazy = false,
|
|
dependencies = {
|
|
"nvim-tree/nvim-web-devicons",
|
|
},
|
|
},
|
|
|
|
|
|
-- Surround text with quotes etc
|
|
{
|
|
"kylechui/nvim-surround",
|
|
version = "*", -- Use for stability; omit to use `main` branch for the latest features
|
|
config = function()
|
|
require("nvim-surround").setup()
|
|
end
|
|
},
|
|
|
|
|
|
-- highlight current scope
|
|
{
|
|
|
|
"shellRaining/hlchunk.nvim",
|
|
event = { "UIEnter" },
|
|
|
|
},
|
|
|
|
|
|
-- Automagically close () "" and so on
|
|
{
|
|
'windwp/nvim-autopairs',
|
|
event = "InsertEnter",
|
|
opts = {} -- this is equalent to setup({}) function
|
|
},
|
|
|
|
|
|
|
|
-- better status line than stock one
|
|
{
|
|
"nvim-lualine/lualine.nvim",
|
|
dependencies =
|
|
{
|
|
"nvim-tree/nvim-web-devicons",
|
|
opt = true
|
|
}
|
|
},
|
|
|
|
-- need that syntax highlight amirite
|
|
{
|
|
"nvim-treesitter/nvim-treesitter",
|
|
build = ":TSUpdate"
|
|
},
|
|
|
|
-- using lazy.nvim
|
|
{
|
|
"akinsho/bufferline.nvim",
|
|
version = "*",
|
|
dependencies = 'nvim-tree/nvim-web-devicons',
|
|
config = function ()
|
|
vim.opt.termguicolors = true
|
|
require("bufferline").setup{}
|
|
end
|
|
},
|
|
|
|
-- this is pure magic, i love this guy
|
|
{
|
|
"VonHeikemen/lsp-zero.nvim",
|
|
branch = 'v2.x',
|
|
dependencies = {
|
|
-- LSP Support
|
|
{"neovim/nvim-lspconfig"}, -- Required
|
|
{ "williamboman/mason.nvim"}, -- Optional
|
|
{"williamboman/mason-lspconfig.nvim"}, -- Optional
|
|
|
|
-- Autocompletion
|
|
{"hrsh7th/nvim-cmp"}, -- Required
|
|
{"hrsh7th/cmp-nvim-lsp"}, -- Required
|
|
{"L3MON4D3/LuaSnip"}, -- Required
|
|
}
|
|
},
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
vim.opt.laststatus=2
|
|
|
|
vim.keymap.set('i', '<Tab>', [[pumvisible() ? "\<C-n>" : "\<Tab>"]], { expr = true })
|
|
vim.keymap.set('i', '<S-Tab>', [[pumvisible() ? "\<C-p>" : "\<S-Tab>"]], { expr = true })
|
|
|
|
|