diff --git a/init.lua b/init.lua index 3e4710aa..487fb3b3 100644 --- a/init.lua +++ b/init.lua @@ -124,7 +124,7 @@ require('lazy').setup({ changedelete = { text = '~' }, }, on_attach = function(bufnr) - vim.keymap.set('n', 'hp', require('gitsigns').preview_hunk, { buffer = bufnr, desc = 'Preview git hunk' }) + vim.keymap.set('n', 'gp', require('gitsigns').preview_hunk, { buffer = bufnr, desc = 'Preview git hunk' }) -- don't override the built-in and fugitive keymaps local gs = package.loaded.gitsigns @@ -157,7 +157,7 @@ require('lazy').setup({ opts = { options = { icons_enabled = false, - theme = 'dracula', + theme = 'catppuccin', component_separators = '|', section_separators = '', }, @@ -449,7 +449,6 @@ require('which-key').register { ['c'] = { name = '[C]ode', _ = 'which_key_ignore' }, ['d'] = { name = '[D]ocument', _ = 'which_key_ignore' }, ['g'] = { name = '[G]it', _ = 'which_key_ignore' }, - ['h'] = { name = 'More git', _ = 'which_key_ignore' }, ['r'] = { name = '[R]ename', _ = 'which_key_ignore' }, ['s'] = { name = '[S]earch', _ = 'which_key_ignore' }, ['w'] = { name = '[W]orkspace', _ = 'which_key_ignore' }, @@ -565,5 +564,11 @@ vim.api.nvim_create_autocmd('BufWritePre', { require('conform').format { bufnr = args.buf } end, }) --- The line beneath this is called `modeline`. See `:help modeline` + +-- [[ Setting options ]] +require 'options' + +-- [[ Basic Keymaps ]] +require 'keymaps' +-- The line beneath this is called `modeline`. ee `:help modeline` -- vim: ts=2 sts=2 sw=2 et diff --git a/lazy-lock.json b/lazy-lock.json index 0b3ffe7e..37aedcde 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,44 +1,45 @@ { "Comment.nvim": { "branch": "master", "commit": "0236521ea582747b58869cb72f70ccfa967d2e89" }, - "LuaSnip": { "branch": "master", "commit": "cdbf6f41381e5ee4810b4b09284b603d8f18365d" }, + "LuaSnip": { "branch": "master", "commit": "80a8528f084a97b624ae443a6f50ff8074ba486b" }, "auto-pairs": { "branch": "master", "commit": "39f06b873a8449af8ff6a3eee716d3da14d63a76" }, - "bufferline.nvim": { "branch": "main", "commit": "357cc8f8eeb64702e6fcf2995e3b9becee99a5d3" }, + "catppuccin": { "branch": "main", "commit": "b359f3eec32dcc6b7c9a26901dc235bbb6cd8a0b" }, "cheatsheet.nvim": { "branch": "master", "commit": "9716f9aaa94dd1fd6ce59b5aae0e5f25e2a463ef" }, "cmp-nvim-lsp": { "branch": "main", "commit": "44b16d11215dce86f253ce0c30949813c0a90765" }, - "cmp_luasnip": { "branch": "master", "commit": "18095520391186d634a0045dacaa346291096566" }, - "conform.nvim": { "branch": "master", "commit": "a94f686986631d5b97bd75b3877813c39de55c47" }, - "dracula.nvim": { "branch": "main", "commit": "9fe831e685a76e1a1898a694623b33247c4d036c" }, + "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, + "conform.nvim": { "branch": "master", "commit": "278bcd8bf2017e187e963b515017341fdd87fe2f" }, "fidget.nvim": { "branch": "main", "commit": "0ba1e16d07627532b6cae915cc992ecac249fb97" }, "friendly-snippets": { "branch": "main", "commit": "43727c2ff84240e55d4069ec3e6158d74cb534b6" }, "git-messenger.vim": { "branch": "master", "commit": "8a61bdfa351d4df9a9118ee1d3f45edbed617072" }, - "gitsigns.nvim": { "branch": "main", "commit": "ff01d34daaed72f271a8ffa088a7e839a60c640f" }, - "indent-blankline.nvim": { "branch": "master", "commit": "877c1db2bf957300097dd5348a665666a4d900cb" }, - "lazy.nvim": { "branch": "main", "commit": "f0cfbf995238a42064e119bd1daa694fd1683ea3" }, - "lualine.nvim": { "branch": "master", "commit": "45e27ca739c7be6c49e5496d14fcf45a303c3a63" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "e2705063f395b44f676cd26596a11007a2cbd3bd" }, - "mason-nvim-dap.nvim": { "branch": "main", "commit": "6148b51db945b55b3b725da39eaea6441e59dff8" }, - "mason-tool-installer.nvim": { "branch": "main", "commit": "83dcddb6477f9ba5db98971ef27bd18bdca921b4" }, - "mason.nvim": { "branch": "main", "commit": "d66c60e17dd6fd8165194b1d14d21f7eb2c1697a" }, - "neodev.nvim": { "branch": "main", "commit": "f8592cc143a5512b98a2c3683aa43c73f98e34f7" }, - "nvim-cmp": { "branch": "main", "commit": "5dce1b778b85c717f6614e3f4da45e9f19f54435" }, - "nvim-dap": { "branch": "master", "commit": "e79007c6d7a24db3ad19ea9196f1f0b2840e8ae7" }, + "gitsigns.nvim": { "branch": "main", "commit": "af0f583cd35286dd6f0e3ed52622728703237e50" }, + "harpoon": { "branch": "master", "commit": "c1aebbad9e3d13f20bedb8f2ce8b3a94e39e424a" }, + "indent-blankline.nvim": { "branch": "master", "commit": "046e2cf04e08ece927bacbfb87c5b35c0b636546" }, + "lazy.nvim": { "branch": "main", "commit": "16603c6917435d8446f7357cb61095138a417085" }, + "lualine.nvim": { "branch": "master", "commit": "2248ef254d0a1488a72041cfb45ca9caada6d994" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "40301e1c74bc0946eece13edf2b1c561cc497491" }, + "mason-nvim-dap.nvim": { "branch": "main", "commit": "f0cd12f7a8a310c58cecebddb6b219ffad1cfd0f" }, + "mason-tool-installer.nvim": { "branch": "main", "commit": "e4f34741daa9cf95de68a603d3e7a6844a69fdf0" }, + "mason.nvim": { "branch": "main", "commit": "cd7835b15f5a4204fc37e0aa739347472121a54c" }, + "neodev.nvim": { "branch": "main", "commit": "7b46fd0f81c9c9ef5d5898879e86ae271152c79f" }, + "nvim-cmp": { "branch": "main", "commit": "51260c02a8ffded8e16162dcf41a23ec90cfba62" }, + "nvim-dap": { "branch": "master", "commit": "3eb26a63a3674e3722182a92f21d04c4e5ce0f43" }, "nvim-dap-python": { "branch": "master", "commit": "37b4cba02e337a95cb62ad1609b3d1dccb2e5d42" }, "nvim-dap-ui": { "branch": "master", "commit": "34160a7ce6072ef332f350ae1d4a6a501daf0159" }, - "nvim-lspconfig": { "branch": "master", "commit": "2b361e043810d5587d9af0787f8ce40da92ec5e9" }, - "nvim-treesitter": { "branch": "master", "commit": "a102053352bd958d84a3e1be3de0203d2af92984" }, - "nvim-treesitter-context": { "branch": "master", "commit": "2095f231dfe796d228eedea96fdaa31f2e343fb2" }, - "nvim-treesitter-textobjects": { "branch": "master", "commit": "76c7a89b41de77a4f83fb77fa072c5ad7605fe3b" }, - "nvim-web-devicons": { "branch": "master", "commit": "56b3a6ce6d69329cbf603dd38ac59fb4d7774b01" }, - "oil.nvim": { "branch": "master", "commit": "ac2928cca85ba3596e92f9f51940d46be2d606f8" }, - "plenary.nvim": { "branch": "master", "commit": "9ce85b0f7dcfe5358c0be937ad23e456907d410b" }, + "nvim-lspconfig": { "branch": "master", "commit": "cb49a4cd622d7ed775c31561bb8aa6a50712d6b9" }, + "nvim-treesitter": { "branch": "master", "commit": "107e61afb7129d637ea6c3c68b97a22194b0bf16" }, + "nvim-treesitter-context": { "branch": "master", "commit": "8aa32aa6b84dda357849dbc0f775e69f2e04c041" }, + "nvim-treesitter-textobjects": { "branch": "master", "commit": "e69a504baf2951d52e1f1fbb05145d43f236cbf1" }, + "nvim-web-devicons": { "branch": "master", "commit": "5de460ca7595806044eced31e3c36c159a493857" }, + "oil.nvim": { "branch": "master", "commit": "4088efb8ff664b6f1624aab5dac6c3fe11d3962c" }, + "plenary.nvim": { "branch": "master", "commit": "50012918b2fc8357b87cff2a7f7f0446e47da174" }, "popup.nvim": { "branch": "master", "commit": "b7404d35d5d3548a82149238289fa71f7f6de4ac" }, - "refactoring.nvim": { "branch": "master", "commit": "bebfcfcc4b604d3647fcce2f4aeb02a95d139c49" }, + "refactoring.nvim": { "branch": "master", "commit": "5831194debd23920a32abd9fefd5dddba44e34fc" }, + "sunglasses.nvim": { "branch": "main", "commit": "07c502800798a1108c991bb8a138fa5f1c68c64a" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "6c921ca12321edaa773e324ef64ea301a1d0da62" }, - "telescope.nvim": { "branch": "0.1.x", "commit": "54930e1abfc94409e1bb9266e752ef8379008592" }, - "vim-fugitive": { "branch": "master", "commit": "99db68d9b3304580bd383da7aaee05c7a954a344" }, + "telescope.nvim": { "branch": "0.1.x", "commit": "7011eaae0ac1afe036e30c95cf80200b8dc3f21a" }, + "vim-fugitive": { "branch": "master", "commit": "cbe9dfa162c178946afa689dd3f42d4ea8bf89c1" }, "vim-rhubarb": { "branch": "master", "commit": "ee69335de176d9325267b0fd2597a22901d927b1" }, "vim-sleuth": { "branch": "master", "commit": "1cc4557420f215d02c4d2645a748a816c220e99b" }, "vim-tmux-navigator": { "branch": "master", "commit": "7db70e08ea03b3e4d91f63713d76134512e28d7e" }, - "which-key.nvim": { "branch": "main", "commit": "7ccf476ebe0445a741b64e36c78a682c1c6118b7" }, - "zen-mode.nvim": { "branch": "main", "commit": "cb73b8bd0ef9d765b942db09dc762c603a89ae44" } + "which-key.nvim": { "branch": "main", "commit": "4433e5ec9a507e5097571ed55c02ea9658fb268a" }, + "zen-mode.nvim": { "branch": "main", "commit": "50e2e2a36cc97847d9ab3b1a3555ba2ef6839b50" } } \ No newline at end of file diff --git a/lua/custom/plugins/init.lua b/lua/custom/plugins/init.lua index bbe6af25..3a2b53c9 100644 --- a/lua/custom/plugins/init.lua +++ b/lua/custom/plugins/init.lua @@ -3,12 +3,17 @@ -- -- See the kickstart.nvim README for more information return { - -- Dracula theme + -- Color scheme { - 'Mofiqul/dracula.nvim', + 'catppuccin/nvim', + lazy = false, + name = 'catppuccin', priority = 1000, + opts = { + transparent_background = true, + }, config = function() - vim.cmd.colorscheme 'dracula' + vim.cmd.colorscheme 'catppuccin' end, }, @@ -32,6 +37,11 @@ return { lua = { 'stylua' }, python = { 'black' }, }, + formatters = { + black = { + prepend_args = { '--preview' }, + }, + }, format_on_save = { timeout_ms = 500, lsp_fallback = true }, }, }, @@ -86,4 +96,13 @@ return { -- vim/tmux navigation 'christoomey/vim-tmux-navigator', + + -- Tint inactive windows + { 'miversen33/sunglasses.nvim', opts = { + filter_type = 'SHADE', + filter_percent = 0.35, + } }, + + -- Harpoon + 'ThePrimeagen/harpoon', } diff --git a/lua/custom/plugins/remaps.lua b/lua/custom/plugins/remaps.lua deleted file mode 100644 index 23ecd627..00000000 --- a/lua/custom/plugins/remaps.lua +++ /dev/null @@ -1,11 +0,0 @@ -return { - vim.keymap.set('n', '', 'zz'), -- Center after half-page down - vim.keymap.set('n', '', 'zz'), -- Center after half-page up - vim.keymap.set('n', 'n', 'nzzzv'), -- Center after next result - vim.keymap.set('n', 'N', 'Nzzzv'), -- Center after previous result - vim.keymap.set('x', 'p', [["_dP]]), -- Paste without losing register - vim.keymap.set({ 'n', 'v' }, 'y', [["+y]]), -- Yank to OS clipboard - vim.keymap.set('n', 'Y', [["+Y]]), -- ???? - vim.keymap.set({ 'n', 'v' }, 'd', [["_d]]), -- ???? - vim.keymap.set('n', 'cm', vim.cmd.ZenMode, { desc = '[Z]en [M]ode' }), -- Toggle ZenMode -} diff --git a/lua/keymaps.lua b/lua/keymaps.lua new file mode 100644 index 00000000..72e9307e --- /dev/null +++ b/lua/keymaps.lua @@ -0,0 +1,40 @@ +vim.keymap.set('n', '', 'zz') -- Center after half-page down +vim.keymap.set('n', '', 'zz') -- Center after half-page up +vim.keymap.set('n', 'n', 'nzzzv') -- Center after next result +vim.keymap.set('n', 'N', 'Nzzzv') -- Center after previous result +vim.keymap.set('x', 'p', [["_dP]]) -- Paste without losing register +vim.keymap.set({ 'n', 'v' }, 'y', [["+y]]) -- Yank to OS clipboard +vim.keymap.set('n', 'Y', [["+Y]]) -- ???? +vim.keymap.set({ 'n', 'v' }, 'd', [["_d]]) -- Delete without overwriting register +vim.keymap.set('n', 'cm', vim.cmd.ZenMode, { desc = '[Z]en [M]ode' }) -- Toggle ZenMode + +-- Harpoon +vim.keymap.set('n', 'hm', require('harpoon.mark').add_file, { desc = '[m]ark file' }) +vim.keymap.set('n', 'ht', require('harpoon.ui').toggle_quick_menu, { desc = '[t]oggle quick menu' }) +vim.keymap.set('n', 'hd', require('harpoon.mark').rm_file, { desc = '[d]elete file' }) +vim.keymap.set('n', '', function() + require('harpoon.ui').nav_file(1) +end, { desc = 'harpoon 1' }) +vim.keymap.set('n', '', function() + require('harpoon.ui').nav_file(2) +end, { desc = 'harpoon 2' }) +vim.keymap.set('n', '', function() + require('harpoon.ui').nav_file(3) +end, { desc = 'harpoon 3' }) +vim.keymap.set('n', '', function() + require('harpoon.ui').nav_file(4) +end, { desc = 'harpoon 4' }) +require('which-key').register { + ['h'] = { name = '[H]arpoon', _ = 'which_key_ignore' }, +} + +-- Delete buffer +vim.keymap.set('n', 'b', ':bd', { desc = 'Delete [b]uffer' }) + +-- Adjust split size +vim.keymap.set('n', '', ':vertical resize +3', { desc = 'Resize Pane Vertically <-' }) +vim.keymap.set('n', '', ':vertical resize -3', { desc = 'Resize Pane Vertically ->' }) + +-- Move line up and down +vim.keymap.set('v', '', ":m '>+1gv=gv", { desc = 'Move line up' }) +vim.keymap.set('v', '', ":m '>-2gv=gv", { desc = 'Move line down' }) diff --git a/lua/options.lua b/lua/options.lua new file mode 100644 index 00000000..43367119 --- /dev/null +++ b/lua/options.lua @@ -0,0 +1,3 @@ +-- Set split priority +vim.opt.splitright = true +vim.opt.splitbelow = true