|
|
|
@@ -1,23 +1,23 @@
|
|
|
|
-- SECTION: Options
|
|
|
|
-- SECTION: Options
|
|
|
|
vim.o.number = true -- Show line numbers
|
|
|
|
vim.o.number = true -- Show line numbers
|
|
|
|
vim.o.wrap = true -- Soft-wrap lines
|
|
|
|
vim.o.wrap = true -- Soft-wrap lines
|
|
|
|
vim.o.tabstop = 2 -- 2 space tab width
|
|
|
|
vim.o.tabstop = 2 -- 2 space tab width
|
|
|
|
vim.o.shiftwidth = 2 -- 2 space tab width
|
|
|
|
vim.o.shiftwidth = 2 -- 2 space tab width
|
|
|
|
vim.o.swapfile = false -- Disable swap files (annoying)
|
|
|
|
vim.o.swapfile = false -- Disable swap files (annoying)
|
|
|
|
vim.o.undofile = true -- Enable undo between sessions
|
|
|
|
vim.o.undofile = true -- Enable undo between sessions
|
|
|
|
vim.o.mouse = 'a' -- Enable mouse support
|
|
|
|
vim.o.mouse = 'a' -- Enable mouse support
|
|
|
|
vim.o.showmode = false -- Don't show mode in status bar
|
|
|
|
vim.o.showmode = false -- Don't show mode in status bar
|
|
|
|
vim.o.inccommand = 'split' -- Preview replace commands inline
|
|
|
|
vim.o.inccommand = 'split' -- Preview replace commands inline
|
|
|
|
vim.o.scrolloff = 20 -- Scroll if cursor is X lines to edge
|
|
|
|
vim.o.scrolloff = 20 -- Scroll if cursor is X lines to edge
|
|
|
|
vim.o.confirm = true -- Add confirmation on some destructive actions
|
|
|
|
vim.o.confirm = true -- Add confirmation on some destructive actions
|
|
|
|
vim.o.ignorecase = true -- Case insensitive search
|
|
|
|
vim.o.ignorecase = true -- Case insensitive search
|
|
|
|
vim.o.smartcase = true -- Case sensitive when caps is used
|
|
|
|
vim.o.smartcase = true -- Case sensitive when caps is used
|
|
|
|
vim.o.cursorline = true -- Highlight current line
|
|
|
|
vim.o.cursorline = true -- Highlight current line
|
|
|
|
vim.o.winborder = "single" -- Borders around popups like when you press leader for keybinds
|
|
|
|
vim.o.winborder = "single" -- Borders around popups like when you press leader for keybinds
|
|
|
|
vim.opt.signcolumn =
|
|
|
|
vim.opt.signcolumn =
|
|
|
|
'yes' -- TEST: Prohibit layout shifting by always showing the sign column (left of line numbers), you should see an icon there on this row.
|
|
|
|
'yes' -- TEST: Prohibit layout shifting by always showing the sign column (left of line numbers), you should see an icon there on this row.
|
|
|
|
vim.o.updatetime = 250
|
|
|
|
vim.o.updatetime = 250 -- Speed up the CursorHold autocmd event
|
|
|
|
vim.o.timeoutlen = 300
|
|
|
|
vim.o.timeoutlen = 300 -- Speed up completion of key event
|
|
|
|
-- SECTION: Globals
|
|
|
|
-- SECTION: Globals
|
|
|
|
vim.g.mapleader = ' ' -- Mapping leader to space.
|
|
|
|
vim.g.mapleader = ' ' -- Mapping leader to space.
|
|
|
|
vim.g.maplocalleader = ' ' -- Mapping leader to space.
|
|
|
|
vim.g.maplocalleader = ' ' -- Mapping leader to space.
|
|
|
|
@@ -59,17 +59,16 @@ vim.keymap.set('n', '\\', ":Oil --float<CR>", { desc = "File explorer" })
|
|
|
|
|
|
|
|
|
|
|
|
-- SECTION: Install packages
|
|
|
|
-- SECTION: Install packages
|
|
|
|
vim.pack.add({
|
|
|
|
vim.pack.add({
|
|
|
|
'https://github.com/catppuccin/nvim', -- color scheme
|
|
|
|
'https://github.com/catppuccin/nvim', -- color scheme
|
|
|
|
'https://github.com/nvim-mini/mini.pick', -- File picker, grep
|
|
|
|
'https://github.com/nvim-mini/mini.pick', -- File picker, grep
|
|
|
|
'https://github.com/nvim-mini/mini.pairs', -- Auto create {}, (), [] - pairs etc.
|
|
|
|
'https://github.com/nvim-mini/mini.pairs', -- Auto create {}, (), [] - pairs etc.
|
|
|
|
'https://github.com/nvim-mini/mini.notify', -- Popup notifications
|
|
|
|
'https://github.com/nvim-mini/mini.notify', -- Popup notifications
|
|
|
|
'https://github.com/nvim-mini/mini.completion', -- Autocomplete, needs snippets and icons
|
|
|
|
'https://github.com/nvim-mini/mini.completion', -- Autocomplete, needs snippets and icons
|
|
|
|
'https://github.com/nvim-mini/mini.snippets', -- Snippets
|
|
|
|
'https://github.com/nvim-mini/mini.snippets', -- Snippets
|
|
|
|
'https://github.com/nvim-mini/mini.icons', -- Icons
|
|
|
|
'https://github.com/nvim-mini/mini.icons', -- Icons
|
|
|
|
'https://github.com/nvim-mini/mini.cursorword',
|
|
|
|
'https://github.com/nvim-mini/mini.cursorword', -- Highlight word under cursor
|
|
|
|
'https://github.com/nvim-mini/mini.hipatterns',
|
|
|
|
'https://github.com/nvim-mini/mini.hipatterns', -- Highlight todos and rgb colors
|
|
|
|
'https://github.com/nvim-mini/mini.statusline',
|
|
|
|
'https://github.com/nvim-mini/mini.statusline', -- Statusline at the bottom
|
|
|
|
'https://github.com/nvim-mini/mini.tabline',
|
|
|
|
|
|
|
|
'https://github.com/neovim/nvim-lspconfig', -- Language servers
|
|
|
|
'https://github.com/neovim/nvim-lspconfig', -- Language servers
|
|
|
|
'https://github.com/mason-org/mason.nvim', -- LSP deps installer
|
|
|
|
'https://github.com/mason-org/mason.nvim', -- LSP deps installer
|
|
|
|
'https://github.com/mason-org/mason-lspconfig.nvim', -- Lets you install mason tooling using lsp names
|
|
|
|
'https://github.com/mason-org/mason-lspconfig.nvim', -- Lets you install mason tooling using lsp names
|
|
|
|
@@ -77,7 +76,6 @@ vim.pack.add({
|
|
|
|
'https://github.com/folke/lazydev.nvim', -- Automatically resolve vim api paths.
|
|
|
|
'https://github.com/folke/lazydev.nvim', -- Automatically resolve vim api paths.
|
|
|
|
'https://github.com/folke/which-key.nvim', -- Shortcut hints (bar at the bottom when pressing space)
|
|
|
|
'https://github.com/folke/which-key.nvim', -- Shortcut hints (bar at the bottom when pressing space)
|
|
|
|
'https://github.com/nvim-lua/plenary.nvim', -- Helper lua functions, dep of todo-comments.
|
|
|
|
'https://github.com/nvim-lua/plenary.nvim', -- Helper lua functions, dep of todo-comments.
|
|
|
|
-- 'https://github.com/folke/todo-comments.nvim', -- Helper lua functions, dep of todo-comments.
|
|
|
|
|
|
|
|
'https://github.com/nvim-treesitter/nvim-treesitter', -- Syntax highlighting
|
|
|
|
'https://github.com/nvim-treesitter/nvim-treesitter', -- Syntax highlighting
|
|
|
|
'https://github.com/stevearc/oil.nvim', -- File explorer
|
|
|
|
'https://github.com/stevearc/oil.nvim', -- File explorer
|
|
|
|
})
|
|
|
|
})
|
|
|
|
@@ -130,7 +128,6 @@ require('mini.hipatterns').setup({
|
|
|
|
}
|
|
|
|
}
|
|
|
|
})
|
|
|
|
})
|
|
|
|
require('mini.statusline').setup()
|
|
|
|
require('mini.statusline').setup()
|
|
|
|
require('mini.tabline').setup()
|
|
|
|
|
|
|
|
require('oil').setup()
|
|
|
|
require('oil').setup()
|
|
|
|
|
|
|
|
|
|
|
|
require('nvim-treesitter').setup({
|
|
|
|
require('nvim-treesitter').setup({
|
|
|
|
@@ -141,7 +138,12 @@ require('nvim-treesitter').setup({
|
|
|
|
require("mason").setup()
|
|
|
|
require("mason").setup()
|
|
|
|
require("mason-lspconfig").setup({
|
|
|
|
require("mason-lspconfig").setup({
|
|
|
|
-- Install lsp deps here
|
|
|
|
-- Install lsp deps here
|
|
|
|
ensure_installed = { 'lua_ls', 'ts_ls', 'ansiblels', 'eslint' },
|
|
|
|
ensure_installed = {
|
|
|
|
|
|
|
|
'lua_ls',
|
|
|
|
|
|
|
|
'ts_ls',
|
|
|
|
|
|
|
|
'ansiblels',
|
|
|
|
|
|
|
|
'eslint'
|
|
|
|
|
|
|
|
},
|
|
|
|
automatic_enable = true
|
|
|
|
automatic_enable = true
|
|
|
|
})
|
|
|
|
})
|
|
|
|
require("mason-tool-installer").setup({
|
|
|
|
require("mason-tool-installer").setup({
|
|
|
|
|