Added init.lua
This commit is contained in:
198
nvim/init.lua
198
nvim/init.lua
@@ -1,132 +1,100 @@
|
|||||||
-- Initialize packer
|
-- Initalize packer
|
||||||
vim.cmd [[packadd packer.nvim]]
|
vim.cmd [[packadd packer.nvim]]
|
||||||
vim.g.mapleader = " " -- Set the leader key to space
|
vim.g.mapleader = " " -- Set the leader key to space
|
||||||
vim.cmd [[colorscheme tokyonight]]
|
vim.cmd [[colorscheme tokyonight]]
|
||||||
|
|
||||||
require('packer').startup(function(use)
|
require('packer').startup(function(use)
|
||||||
use 'wbthomason/packer.nvim' -- Packer manages itself
|
use 'wbthomason/packer.nvim' -- Packer manages itself
|
||||||
-- VIM AutoSave
|
-- VIM AutoSave
|
||||||
use({
|
use({
|
||||||
"okuuva/auto-save.nvim",
|
"okuuva/auto-save.nvim",
|
||||||
tag = 'v1*',
|
tag = 'v1*',
|
||||||
config = function()
|
config = function()
|
||||||
require("auto-save").setup({
|
require("auto-save").setup({
|
||||||
-- your config goes here
|
-- your config goes here
|
||||||
-- or just leave it empty :)
|
-- or just leave it empty :)
|
||||||
})
|
})
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
-- Headlines for Markdown and TeX
|
-- Headlines for Markdown and TeX
|
||||||
use {
|
use {
|
||||||
"lukas-reineke/headlines.nvim",
|
"lukas-reineke/headlines.nvim",
|
||||||
after = "nvim-treesitter",
|
after = "nvim-treesitter",
|
||||||
config = function()
|
config = function()
|
||||||
require("headlines").setup()
|
require("headlines").setup()
|
||||||
end,
|
end,
|
||||||
}
|
}
|
||||||
-- Nvim-Tree
|
-- Nvim-Tree
|
||||||
use {
|
use {
|
||||||
'nvim-tree/nvim-tree.lua',
|
'nvim-tree/nvim-tree.lua',
|
||||||
config = function()
|
config = function()
|
||||||
require("nvim-tree").setup()
|
require("nvim-tree").setup()
|
||||||
end
|
end
|
||||||
}
|
}
|
||||||
-- Themes
|
-- Themes
|
||||||
use 'gruvbox-community/gruvbox' -- Gruvbox theme
|
use 'gruvbox-community/gruvbox' -- Gruvbox theme
|
||||||
use 'folke/tokyonight.nvim' -- Tokyo Night theme
|
use 'folke/tokyonight.nvim' -- Tokyo Night theme
|
||||||
|
|
||||||
-- Treesitter
|
-- Treesitter
|
||||||
use {
|
use {
|
||||||
'nvim-treesitter/nvim-treesitter',
|
'nvim-treesitter/nvim-treesitter',
|
||||||
run = ':TSUpdate' -- Keep parsers up to date
|
run = ':TSUpdate' -- Keep parsers up to date
|
||||||
}
|
}
|
||||||
use 'HiPhish/rainbow-delimiters.nvim'
|
require('plugins.treesitter')
|
||||||
|
|
||||||
-- Git Integration
|
-- Rainbow Delimiters
|
||||||
use 'lewis6991/gitsigns.nvim' -- Git decorations in the gutter
|
use 'HiPhish/rainbow-delimiters.nvim'
|
||||||
use 'tpope/vim-fugitive' -- Git commands in Neovim
|
require('plugins.rainbow_delimiters')
|
||||||
|
|
||||||
-- Status Line
|
-- Git Integration
|
||||||
use {
|
use 'lewis6991/gitsigns.nvim' -- Git decorations in the gutter
|
||||||
'nvim-lualine/lualine.nvim',
|
use 'tpope/vim-fugitive' -- Git commands in Neovim
|
||||||
requires = { 'kyazdani42/nvim-web-devicons', opt = true } -- Optional icons
|
|
||||||
}
|
|
||||||
-- FZF
|
|
||||||
use {
|
|
||||||
'junegunn/fzf',
|
|
||||||
run = function() vim.fn['fzf#install']() end
|
|
||||||
}
|
|
||||||
use 'junegunn/fzf.vim'
|
|
||||||
|
|
||||||
-- Cool Startup Dashboard
|
-- Status Line
|
||||||
use {
|
use {
|
||||||
'glepnir/dashboard-nvim',
|
'nvim-lualine/lualine.nvim',
|
||||||
requires = { 'kyazdani42/nvim-web-devicons' }
|
requires = { 'kyazdani42/nvim-web-devicons', opt = true } -- Optional icons
|
||||||
}
|
}
|
||||||
|
require('plugins.lualine')
|
||||||
|
|
||||||
-- Productivity
|
-- FZF
|
||||||
use 'numToStr/Comment.nvim' -- Easy commenting
|
use {
|
||||||
use 'windwp/nvim-autopairs' -- Auto-close brackets, quotes, etc.
|
'junegunn/fzf',
|
||||||
use 'tpope/vim-surround' -- Surround text objects with quotes, brackets, etc.
|
run = function() vim.fn['fzf#install']() end
|
||||||
|
}
|
||||||
|
use 'junegunn/fzf.vim'
|
||||||
|
|
||||||
--LaTeX
|
-- Cool Startup Dashboard
|
||||||
|
use {
|
||||||
|
'glepnir/dashboard-nvim',
|
||||||
|
requires = { 'kyazdani42/nvim-web-devicons' }
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Productivity
|
||||||
|
use 'numToStr/Comment.nvim' -- Easy commenting
|
||||||
|
use 'windwp/nvim-autopairs' -- Auto-close brackets, quotes, etc.
|
||||||
|
use 'tpope/vim-surround' -- Surround text objects with quotes, brackets, etc.
|
||||||
|
|
||||||
|
--LaTeX
|
||||||
use 'lervag/vimtex'
|
use 'lervag/vimtex'
|
||||||
require('plugins.vimtex')
|
require('plugins.vimtex')
|
||||||
-- Telescope
|
-- Telescope
|
||||||
use {
|
use {
|
||||||
'nvim-telescope/telescope.nvim',
|
'nvim-telescope/telescope.nvim',
|
||||||
requires = { {'nvim-lua/plenary.nvim'} },
|
requires = { {'nvim-lua/plenary.nvim'} },
|
||||||
config = function()
|
config = function()
|
||||||
-- Leader key mappings for Telescope
|
-- Leader key mappings for Telescope
|
||||||
vim.api.nvim_set_keymap('n', '<leader>ff', ':Telescope find_files<CR>', { noremap = true, silent = true })
|
vim.api.nvim_set_keymap('n', '<leader>ff', ':Telescope find_files<CR>', { noremap = true, silent = true })
|
||||||
vim.api.nvim_set_keymap('n', '<leader>fg', ':Telescope live_grep<CR>', { noremap = true, silent = true })
|
vim.api.nvim_set_keymap('n', '<leader>fg', ':Telescope live_grep<CR>', { noremap = true, silent = true })
|
||||||
vim.api.nvim_set_keymap('n', '<leader>fb', ':Telescope buffers<CR>', { noremap = true, silent = true })
|
vim.api.nvim_set_keymap('n', '<leader>fb', ':Telescope buffers<CR>', { noremap = true, silent = true })
|
||||||
vim.api.nvim_set_keymap('n', '<leader>fh', ':Telescope help_tags<CR>', { noremap = true, silent = true })
|
vim.api.nvim_set_keymap('n', '<leader>fh', ':Telescope help_tags<CR>', { noremap = true, silent = true })
|
||||||
end
|
end
|
||||||
|
}
|
||||||
|
use {
|
||||||
|
'hedyhli/outline.nvim',
|
||||||
|
config = function()
|
||||||
|
require('plugins.outline').setup()
|
||||||
|
end
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
-- This module contains a number of default definitions
|
|
||||||
local rainbow_delimiters = require 'rainbow-delimiters'
|
|
||||||
|
|
||||||
---@type rainbow_delimiters.config
|
|
||||||
vim.g.rainbow_delimiters = {
|
|
||||||
strategy = {
|
|
||||||
[''] = rainbow_delimiters.strategy['global'],
|
|
||||||
vim = rainbow_delimiters.strategy['local'],
|
|
||||||
},
|
|
||||||
query = {
|
|
||||||
[''] = 'rainbow-delimiters',
|
|
||||||
lua = 'rainbow-blocks',
|
|
||||||
},
|
|
||||||
priority = {
|
|
||||||
[''] = 110,
|
|
||||||
lua = 210,
|
|
||||||
},
|
|
||||||
highlight = {
|
|
||||||
'RainbowDelimiterRed',
|
|
||||||
'RainbowDelimiterYellow',
|
|
||||||
'RainbowDelimiterBlue',
|
|
||||||
'RainbowDelimiterOrange',
|
|
||||||
'RainbowDelimiterGreen',
|
|
||||||
'RainbowDelimiterViolet',
|
|
||||||
'RainbowDelimiterCyan',
|
|
||||||
},
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'hedyhli/outline.nvim',
|
|
||||||
config = function()
|
|
||||||
require('outline').setup({
|
|
||||||
-- You can customize the plugin options here
|
|
||||||
show_guides = true, -- Show outline guides
|
|
||||||
auto_close = false, -- Do not auto-close the outline
|
|
||||||
auto_open = true, -- Automatically open the outline
|
|
||||||
preview_lines = 10, -- Number of preview lines
|
|
||||||
keymaps = { -- Custom key mappings for the outline
|
|
||||||
jump = 'o', -- Jump to the selected item
|
|
||||||
expand_collapse = 'u', -- Expand or collapse an item
|
|
||||||
},
|
|
||||||
})
|
|
||||||
end
|
|
||||||
}
|
|
||||||
end
|
end
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user