commit - a45634929a7376eed38084df3600b15dd087d9fb
commit + a3c5c52849b8cb8be257fe2f70e5173aa2739852
blob - 222bfdf24b890a48ccd0860fb41eb6aa2287d948
blob + e14115a263b4e359d754b2f9ec37e796d079cc58
--- lua/colors.lua
+++ lua/colors.lua
vim.opt.termguicolors = true
+vim.cmd('syntax off')
vim.api.nvim_set_hl(0, "Normal", { fg = "#d5c494", bg = "#090909" })
vim.api.nvim_set_hl(0, "Comment", { fg = "#948967", italic = true })
-
vim.api.nvim_set_hl(0, "TelescopeMatching", { fg = "#a99c76" })
vim.api.nvim_set_hl(0, "Visual", { bg = "#474032" })
blob - af397be4a879e1d5889b2043866d9773e34b9047
blob + cc1d8f49329aeb43dd17f64f96ee8e8b6b9fd58b
--- lua/keymaps.lua
+++ lua/keymaps.lua
vim.g.maplocalleader = ' '
-- Clear highlights on search when pressing <Esc> in normal mode
--- See `:help hlsearch`
vim.keymap.set('n', '<Esc>', '<cmd>nohlsearch<CR>')
-- Faster netrw mapping
--- See `:help netrw`
vim.keymap.set('n', '<leader>e', ':Ex<CR>')
--- Diagnostic keymaps
+-- Quickfix
vim.keymap.set('n', '<leader>q', vim.diagnostic.setloclist, { desc = 'Open diagnostic [Q]uickfix list' })
-- Disable arrow keys in normal mode
vim.keymap.set('n', '<up>', '')
vim.keymap.set('n', '<down>', '')
--- Keybinds to make split navigation easier.
--- Use CTRL+<hjkl> to switch between windows
--- See `:help wincmd` for a list of all window commands
-vim.keymap.set('n', '<C-h>', '<C-w><C-h>', { desc = 'Move focus to the left window' })
-vim.keymap.set('n', '<C-l>', '<C-w><C-l>', { desc = 'Move focus to the right window' })
-vim.keymap.set('n', '<C-j>', '<C-w><C-j>', { desc = 'Move focus to the lower window' })
-vim.keymap.set('n', '<C-k>', '<C-w><C-k>', { desc = 'Move focus to the upper window' })
-
--- Telescope keymaps
--- See `:help telescope.builtin`
+-- External plugins
+-- Telescope
vim.keymap.set('n', '<leader>sf', '<cmd>Telescope find_files<CR>', { desc = 'Find files' })
vim.keymap.set('n', '<leader>sg', '<cmd>Telescope live_grep<CR>', { desc = 'Search text in files' })
-vim.keymap.set('n', '<leader>sb', '<cmd>Telescope buffers<CR>', { desc = 'List open buffers' })
-vim.keymap.set('n', '<leader>st', '<cmd>Telescope help_tags<CR>', { desc = 'Search help tags' })
-vim.keymap.set('n', '<leader>sh', '<cmd>Telescope git_bcommits<CR>', { desc = 'List git history' })
--- Conform (external plugin) bind
+-- Conform
vim.keymap.set({ 'n', 'x' }, '<leader>f', function()
require('conform').format({ async = true, lsp_fallback = false })
end, { desc = 'Format the current buffer' })
--- LSP keymaps (set on LspAttach)
-vim.api.nvim_create_autocmd('LspAttach', {
- group = vim.api.nvim_create_augroup('UserLspConfig', { clear = true }),
- callback = function(event)
- local lsp_map = function(keys, func, desc, mode)
- mode = mode or 'n'
- vim.keymap.set(mode, keys, func, { buffer = event.buf, desc = 'LSP: ' .. desc })
- end
-
- -- Core navigation
- lsp_map('gd', require('telescope.builtin').lsp_definitions, 'Go to Definition')
- lsp_map('gD', vim.lsp.buf.declaration, 'Go to Declaration')
- lsp_map('gt', vim.lsp.buf.type_definition, 'Go to Type Definition')
- lsp_map('gi', require('telescope.builtin').lsp_implementations, 'Go to Implementation')
- lsp_map('gr', require('telescope.builtin').lsp_references, 'Get References')
- lsp_map('K', vim.lsp.buf.hover, 'Show hover documentation')
-
- -- Leader-based LSP actions (under <leader>l for less frequent actions)
- lsp_map('<leader>lr', vim.lsp.buf.rename, 'Rename across multiple files', 'n')
- lsp_map('<leader>ca', vim.lsp.buf.code_action, 'Code actions', { 'n', 'x' })
- lsp_map('<leader>lt', require('telescope.builtin').lsp_type_definitions, 'Type Definition')
- end,
-})
-
-- Gitsigns
vim.api.nvim_create_autocmd('BufEnter', {
group = vim.api.nvim_create_augroup('GitSignsConfig', { clear = true }),
blob - f5aee344cf5e31c84c553a0fe2c66c456d5c6b07
blob + 546067cf565f4ca36851f8f4ac29fbfddef9004f
--- lua/options.lua
+++ lua/options.lua
vim.o.list = true
vim.opt.listchars = { tab = ' ', trail = '·', nbsp = '␣' }
--- Preview substitutions live, as you type!
-vim.o.inccommand = 'split'
-
-- Minimal number of screen lines to keep above and below the cursor.
vim.o.scrolloff = 10
-- Amount of lines to scroll
vim.opt.scroll = 10
--- This is done to sync terminal background with neovim background
--- effectively hiding the padding
--- MiniMisc.setup_termbg_sync()
-
-- Remove mouse menu (spawnable on MOUSE2)
vim.cmd('aunmenu PopUp')
vim.api.nvim_create_augroup('nvim_popupmenu', { clear = true })