Compare commits
124 Commits
Author | SHA1 | Date | |
---|---|---|---|
11c1e0c560 | |||
f890b5fbfb | |||
ffb3c9535b | |||
074cd65873 | |||
9693216159 | |||
d9538cf15f | |||
58a5245d53 | |||
132504fbc0 | |||
13059ec752 | |||
2237f3923f | |||
5ffb9d7950 | |||
8bf4582a08 | |||
b1092bbba7 | |||
4a4ffccfe8 | |||
811432dacd | |||
9276359397 | |||
d8142f5d6a | |||
c00efd9891 | |||
9a1472e374 | |||
2bd5caa6ca | |||
79ac8e0cd0 | |||
f816c00dc7 | |||
3e351bb8f0 | |||
6ed8ce679e | |||
9e77818596 | |||
1f50bdd574 | |||
330bc020c8 | |||
c24d76774e | |||
210e52ee18 | |||
48e6eeeb7c | |||
6d543e4409 | |||
4d1f95a7d8 | |||
e19d09f51d | |||
8398b9422a | |||
06140480ad | |||
2e781ef1db | |||
c822930602 | |||
c842a55175 | |||
2aac3866d7 | |||
d0b94849e2 | |||
a1e0aa6a9f | |||
b220cc8ab1 | |||
159122bb18 | |||
49b6cef490 | |||
568681ce4c | |||
af42913e66 | |||
47296cc673 | |||
086ba55d2c | |||
f6ea82fe9d | |||
247c8991bd | |||
16be93ba68 | |||
8fbecc329a | |||
066f271e15 | |||
324b7bc012 | |||
0e22bd6b29 | |||
9a1c59026f | |||
7543e338db | |||
9b1d5e0c96 | |||
c2e6c41cd4 | |||
6e7a5fd5b0 | |||
2d6153eab9 | |||
72306ed1c7 | |||
f8c7f59faf | |||
14ac00f2f0 | |||
1bd905a6bf | |||
4ab870b72e | |||
55985e5ef4 | |||
c139456381 | |||
5e8b4f8284 | |||
e568558b9c | |||
6a0813334a | |||
13d270e65a | |||
96f2231bcc | |||
c0d1d5dd70 | |||
faee79fbe8 | |||
0a3afcec71 | |||
7bc60f6c6a | |||
f62301985e | |||
0bd4eaf710 | |||
6dbe06018b | |||
d44a4cd533 | |||
310045fbef | |||
6bd5e48655 | |||
65575378dd | |||
46abe3df29 | |||
66f1e4a778 | |||
f4414296cb | |||
606dd91f5e | |||
d788112cf4 | |||
44a01c44c4 | |||
ff72d5d483 | |||
23ba06705e | |||
603e33e7ef | |||
76d8cc8d6e | |||
299e3dde49 | |||
b107f04d38 | |||
9718a12736 | |||
5482a3771b | |||
78857ba736 | |||
61298ee2f0 | |||
eb1b2e5e8c | |||
dc697162af | |||
58fe16c3d8 | |||
e67701c58b | |||
34c2f29a3d | |||
7819fd7509 | |||
1e36116761 | |||
4a4a4a74c6 | |||
af73d2858d | |||
beba0144da | |||
75dacaf7bc | |||
a7dcacdd91 | |||
23bbab50e9 | |||
734aebfa00 | |||
764b24f100 | |||
d484f4ee38 | |||
3310dbec07 | |||
4a948b02e1 | |||
57d69eca80 | |||
e17bba6e97 | |||
820e560b09 | |||
df428dcefd | |||
4b1ee0e5eb | |||
372cb6defd |
198
.luarc.json
Normal file
198
.luarc.json
Normal file
@ -0,0 +1,198 @@
|
|||||||
|
{
|
||||||
|
"workspace.library": [
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/neodev.nvim/types/nightly",
|
||||||
|
"/home/linuxbrew/.linuxbrew/Cellar/neovim/HEAD-b2e8c0d/share/nvim/runtime/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/opt/copilot.lua/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/opt/crates.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/opt/nvim-code-action-menu/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/Comment.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/alpha-nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/auto-session/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/bufferline.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cellular-automaton.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-buffer/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-cmdline/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-git/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp-signature-help/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-path/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-vsnip/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/copilot-cmp/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/diffview.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/fidget.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/git-conflict.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/gitsigns.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/goto-preview/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/gruvbox.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/gui-font-resize.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/impatient.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/kanagawa.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/leap.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/lspkind.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/lualine.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/mason-lspconfig.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/mason.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/neoai.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/neodev.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/neotest/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/neotest-rust/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nui.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/null-ls.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/numb.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-autopairs/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-cmp/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-dap/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-dap-ui/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-dap-virtual-text/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-lastplace/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-lightbulb/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-pqf/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-surround/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter-pairs/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter-textobjects/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-ts-autotag/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-ts-context-commentstring/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/octo.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/oil.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/oxocarbon.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/packer.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/plenary.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/rest.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/rust-tools.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/session-lens/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-emoji.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-env.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-fzf-native.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-github.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-project.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-ui-select.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/toggleterm.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/tokyonight.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/treesj/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/trouble.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/true-zen.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/typescript.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-startuptime/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/which-key.nvim/lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/winshift.nvim/lua",
|
||||||
|
"/home/thallada/.config/nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/Comment.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/FixCursorHold.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/alpha-nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/auto-session",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/bufferline.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cellular-automaton.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-buffer",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-cmdline",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-git",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp-signature-help",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-path",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-vsnip",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/copilot-cmp",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/diffview.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/fidget.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/friendly-snippets",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/git-conflict.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/gitsigns.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/goto-preview",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/gruvbox.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/gui-font-resize.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/impatient.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/kanagawa.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/leap.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/lspkind.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/lualine.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/mason-lspconfig.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/mason.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/neoai.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/neodev.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/neotest",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/neotest-rust",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nui.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/null-ls.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/numb.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-autopairs",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-cmp",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-dap",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-dap-ui",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-dap-virtual-text",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-lastplace",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-lightbulb",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-lspconfig",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-pqf",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-surround",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter-pairs",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter-textobjects",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-ts-autotag",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-ts-context-commentstring",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-web-devicons",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/octo.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/oil.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/oxocarbon.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/packer.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/papercolor-theme",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/plenary.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/rest.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/rust-tools.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/session-lens",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-emoji.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-env.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-fzf-native.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-github.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-project.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-symbols.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-ui-select.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/toggleterm.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/tokyonight.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/treesj",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/trouble.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/true-zen.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/typescript.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-eunuch",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-fugitive",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-just",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-mundo",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-repeat",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-rhubarb",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-sleuth",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-startuptime",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-unimpaired",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-vsnip",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/which-key.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/winshift.nvim",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/zig.vim",
|
||||||
|
"/home/linuxbrew/.linuxbrew/Cellar/neovim/HEAD-b2e8c0d/share/nvim/runtime",
|
||||||
|
"/home/linuxbrew/.linuxbrew/Cellar/neovim/HEAD-b2e8c0d/share/nvim/runtime/pack/dist/opt/matchit",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-buffer/after",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp-signature-help/after",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-path/after",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-vsnip/after",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/octo.nvim/after",
|
||||||
|
"/home/thallada/.local/share/nvim/site/pack/packer/start/rest.nvim/after",
|
||||||
|
"/home/thallada/.config/nvim/after",
|
||||||
|
"/home/thallada/.config/nvim/lua",
|
||||||
|
"${3rd}/luassert/library",
|
||||||
|
"${3rd}/luv/library"
|
||||||
|
],
|
||||||
|
"diagnostics.globals": [
|
||||||
|
"vim"
|
||||||
|
]
|
||||||
|
}
|
6
.stylua.toml
Normal file
6
.stylua.toml
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
column_width = 160
|
||||||
|
line_endings = "Unix"
|
||||||
|
indent_type = "Spaces"
|
||||||
|
indent_width = 2
|
||||||
|
quote_style = "AutoPreferSingle"
|
||||||
|
no_call_parentheses = true
|
201
LICENSE
Normal file
201
LICENSE
Normal file
@ -0,0 +1,201 @@
|
|||||||
|
Apache License
|
||||||
|
Version 2.0, January 2004
|
||||||
|
http://www.apache.org/licenses/
|
||||||
|
|
||||||
|
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||||
|
|
||||||
|
1. Definitions.
|
||||||
|
|
||||||
|
"License" shall mean the terms and conditions for use, reproduction,
|
||||||
|
and distribution as defined by Sections 1 through 9 of this document.
|
||||||
|
|
||||||
|
"Licensor" shall mean the copyright owner or entity authorized by
|
||||||
|
the copyright owner that is granting the License.
|
||||||
|
|
||||||
|
"Legal Entity" shall mean the union of the acting entity and all
|
||||||
|
other entities that control, are controlled by, or are under common
|
||||||
|
control with that entity. For the purposes of this definition,
|
||||||
|
"control" means (i) the power, direct or indirect, to cause the
|
||||||
|
direction or management of such entity, whether by contract or
|
||||||
|
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||||
|
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||||
|
|
||||||
|
"You" (or "Your") shall mean an individual or Legal Entity
|
||||||
|
exercising permissions granted by this License.
|
||||||
|
|
||||||
|
"Source" form shall mean the preferred form for making modifications,
|
||||||
|
including but not limited to software source code, documentation
|
||||||
|
source, and configuration files.
|
||||||
|
|
||||||
|
"Object" form shall mean any form resulting from mechanical
|
||||||
|
transformation or translation of a Source form, including but
|
||||||
|
not limited to compiled object code, generated documentation,
|
||||||
|
and conversions to other media types.
|
||||||
|
|
||||||
|
"Work" shall mean the work of authorship, whether in Source or
|
||||||
|
Object form, made available under the License, as indicated by a
|
||||||
|
copyright notice that is included in or attached to the work
|
||||||
|
(an example is provided in the Appendix below).
|
||||||
|
|
||||||
|
"Derivative Works" shall mean any work, whether in Source or Object
|
||||||
|
form, that is based on (or derived from) the Work and for which the
|
||||||
|
editorial revisions, annotations, elaborations, or other modifications
|
||||||
|
represent, as a whole, an original work of authorship. For the purposes
|
||||||
|
of this License, Derivative Works shall not include works that remain
|
||||||
|
separable from, or merely link (or bind by name) to the interfaces of,
|
||||||
|
the Work and Derivative Works thereof.
|
||||||
|
|
||||||
|
"Contribution" shall mean any work of authorship, including
|
||||||
|
the original version of the Work and any modifications or additions
|
||||||
|
to that Work or Derivative Works thereof, that is intentionally
|
||||||
|
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||||
|
or by an individual or Legal Entity authorized to submit on behalf of
|
||||||
|
the copyright owner. For the purposes of this definition, "submitted"
|
||||||
|
means any form of electronic, verbal, or written communication sent
|
||||||
|
to the Licensor or its representatives, including but not limited to
|
||||||
|
communication on electronic mailing lists, source code control systems,
|
||||||
|
and issue tracking systems that are managed by, or on behalf of, the
|
||||||
|
Licensor for the purpose of discussing and improving the Work, but
|
||||||
|
excluding communication that is conspicuously marked or otherwise
|
||||||
|
designated in writing by the copyright owner as "Not a Contribution."
|
||||||
|
|
||||||
|
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||||
|
on behalf of whom a Contribution has been received by Licensor and
|
||||||
|
subsequently incorporated within the Work.
|
||||||
|
|
||||||
|
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||||
|
this License, each Contributor hereby grants to You a perpetual,
|
||||||
|
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||||
|
copyright license to reproduce, prepare Derivative Works of,
|
||||||
|
publicly display, publicly perform, sublicense, and distribute the
|
||||||
|
Work and such Derivative Works in Source or Object form.
|
||||||
|
|
||||||
|
3. Grant of Patent License. Subject to the terms and conditions of
|
||||||
|
this License, each Contributor hereby grants to You a perpetual,
|
||||||
|
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||||
|
(except as stated in this section) patent license to make, have made,
|
||||||
|
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||||
|
where such license applies only to those patent claims licensable
|
||||||
|
by such Contributor that are necessarily infringed by their
|
||||||
|
Contribution(s) alone or by combination of their Contribution(s)
|
||||||
|
with the Work to which such Contribution(s) was submitted. If You
|
||||||
|
institute patent litigation against any entity (including a
|
||||||
|
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||||
|
or a Contribution incorporated within the Work constitutes direct
|
||||||
|
or contributory patent infringement, then any patent licenses
|
||||||
|
granted to You under this License for that Work shall terminate
|
||||||
|
as of the date such litigation is filed.
|
||||||
|
|
||||||
|
4. Redistribution. You may reproduce and distribute copies of the
|
||||||
|
Work or Derivative Works thereof in any medium, with or without
|
||||||
|
modifications, and in Source or Object form, provided that You
|
||||||
|
meet the following conditions:
|
||||||
|
|
||||||
|
(a) You must give any other recipients of the Work or
|
||||||
|
Derivative Works a copy of this License; and
|
||||||
|
|
||||||
|
(b) You must cause any modified files to carry prominent notices
|
||||||
|
stating that You changed the files; and
|
||||||
|
|
||||||
|
(c) You must retain, in the Source form of any Derivative Works
|
||||||
|
that You distribute, all copyright, patent, trademark, and
|
||||||
|
attribution notices from the Source form of the Work,
|
||||||
|
excluding those notices that do not pertain to any part of
|
||||||
|
the Derivative Works; and
|
||||||
|
|
||||||
|
(d) If the Work includes a "NOTICE" text file as part of its
|
||||||
|
distribution, then any Derivative Works that You distribute must
|
||||||
|
include a readable copy of the attribution notices contained
|
||||||
|
within such NOTICE file, excluding those notices that do not
|
||||||
|
pertain to any part of the Derivative Works, in at least one
|
||||||
|
of the following places: within a NOTICE text file distributed
|
||||||
|
as part of the Derivative Works; within the Source form or
|
||||||
|
documentation, if provided along with the Derivative Works; or,
|
||||||
|
within a display generated by the Derivative Works, if and
|
||||||
|
wherever such third-party notices normally appear. The contents
|
||||||
|
of the NOTICE file are for informational purposes only and
|
||||||
|
do not modify the License. You may add Your own attribution
|
||||||
|
notices within Derivative Works that You distribute, alongside
|
||||||
|
or as an addendum to the NOTICE text from the Work, provided
|
||||||
|
that such additional attribution notices cannot be construed
|
||||||
|
as modifying the License.
|
||||||
|
|
||||||
|
You may add Your own copyright statement to Your modifications and
|
||||||
|
may provide additional or different license terms and conditions
|
||||||
|
for use, reproduction, or distribution of Your modifications, or
|
||||||
|
for any such Derivative Works as a whole, provided Your use,
|
||||||
|
reproduction, and distribution of the Work otherwise complies with
|
||||||
|
the conditions stated in this License.
|
||||||
|
|
||||||
|
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||||
|
any Contribution intentionally submitted for inclusion in the Work
|
||||||
|
by You to the Licensor shall be under the terms and conditions of
|
||||||
|
this License, without any additional terms or conditions.
|
||||||
|
Notwithstanding the above, nothing herein shall supersede or modify
|
||||||
|
the terms of any separate license agreement you may have executed
|
||||||
|
with Licensor regarding such Contributions.
|
||||||
|
|
||||||
|
6. Trademarks. This License does not grant permission to use the trade
|
||||||
|
names, trademarks, service marks, or product names of the Licensor,
|
||||||
|
except as required for reasonable and customary use in describing the
|
||||||
|
origin of the Work and reproducing the content of the NOTICE file.
|
||||||
|
|
||||||
|
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||||
|
agreed to in writing, Licensor provides the Work (and each
|
||||||
|
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||||
|
implied, including, without limitation, any warranties or conditions
|
||||||
|
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||||
|
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||||
|
appropriateness of using or redistributing the Work and assume any
|
||||||
|
risks associated with Your exercise of permissions under this License.
|
||||||
|
|
||||||
|
8. Limitation of Liability. In no event and under no legal theory,
|
||||||
|
whether in tort (including negligence), contract, or otherwise,
|
||||||
|
unless required by applicable law (such as deliberate and grossly
|
||||||
|
negligent acts) or agreed to in writing, shall any Contributor be
|
||||||
|
liable to You for damages, including any direct, indirect, special,
|
||||||
|
incidental, or consequential damages of any character arising as a
|
||||||
|
result of this License or out of the use or inability to use the
|
||||||
|
Work (including but not limited to damages for loss of goodwill,
|
||||||
|
work stoppage, computer failure or malfunction, or any and all
|
||||||
|
other commercial damages or losses), even if such Contributor
|
||||||
|
has been advised of the possibility of such damages.
|
||||||
|
|
||||||
|
9. Accepting Warranty or Additional Liability. While redistributing
|
||||||
|
the Work or Derivative Works thereof, You may choose to offer,
|
||||||
|
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||||
|
or other liability obligations and/or rights consistent with this
|
||||||
|
License. However, in accepting such obligations, You may act only
|
||||||
|
on Your own behalf and on Your sole responsibility, not on behalf
|
||||||
|
of any other Contributor, and only if You agree to indemnify,
|
||||||
|
defend, and hold each Contributor harmless for any liability
|
||||||
|
incurred by, or claims asserted against, such Contributor by reason
|
||||||
|
of your accepting any such warranty or additional liability.
|
||||||
|
|
||||||
|
END OF TERMS AND CONDITIONS
|
||||||
|
|
||||||
|
APPENDIX: How to apply the Apache License to your work.
|
||||||
|
|
||||||
|
To apply the Apache License to your work, attach the following
|
||||||
|
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||||
|
replaced with your own identifying information. (Don't include
|
||||||
|
the brackets!) The text should be enclosed in the appropriate
|
||||||
|
comment syntax for the file format. We also recommend that a
|
||||||
|
file or class name and description of purpose be included on the
|
||||||
|
same "printed page" as the copyright notice for easier
|
||||||
|
identification within third-party archives.
|
||||||
|
|
||||||
|
Copyright [yyyy] [name of copyright owner]
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
4
README.md
Normal file
4
README.md
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
# 💤 LazyVim
|
||||||
|
|
||||||
|
A starter template for [LazyVim](https://github.com/LazyVim/LazyVim).
|
||||||
|
Refer to the [documentation](https://lazyvim.github.io/installation) to get started.
|
@ -1 +0,0 @@
|
|||||||
vim.opt.textwidth = 80
|
|
26
init.lua
26
init.lua
@ -1,24 +1,2 @@
|
|||||||
-- Dependencies needed for this config:
|
-- bootstrap lazy.nvim, LazyVim and your plugins
|
||||||
-- ripgrep - https://github.com/BurntSushi/ripgrep
|
require("config.lazy")
|
||||||
-- fd - https://github.com/sharkdp/fd
|
|
||||||
-- git - https://git-scm.com/
|
|
||||||
-- bat - https://github.com/sharkdp/bat
|
|
||||||
|
|
||||||
-- disables netrw
|
|
||||||
vim.g.loaded = 1
|
|
||||||
vim.g.loaded_netrwPlugin = 1
|
|
||||||
|
|
||||||
-- speed up loading Lua modules
|
|
||||||
if pcall(require, 'impatient') then
|
|
||||||
require('impatient')
|
|
||||||
else
|
|
||||||
print('Failed to load impatient.')
|
|
||||||
end
|
|
||||||
|
|
||||||
-- require('plenary.reload').reload_module('plugins')
|
|
||||||
require('install-plugins')
|
|
||||||
|
|
||||||
-- require('plenary.reload').reload_module('user.settings')
|
|
||||||
-- require('plenary.reload').reload_module('user.keymaps')
|
|
||||||
require('user.settings')
|
|
||||||
require('user.keymaps')
|
|
||||||
|
143
lazy-lock.json
Normal file
143
lazy-lock.json
Normal file
@ -0,0 +1,143 @@
|
|||||||
|
{
|
||||||
|
"ChatGPT.nvim": { "branch": "main", "commit": "4d9d297c2409c8ebc715da7f1d7705a221564555" },
|
||||||
|
"CopilotChat.nvim": { "branch": "canary", "commit": "2352cd3e7e980cd73594be05f96b2dc4c0dd4a74" },
|
||||||
|
"LazyVim": { "branch": "main", "commit": "a1c3ec4cd43fe61e3b614237a46ac92771191c81" },
|
||||||
|
"LuaSnip": { "branch": "master", "commit": "e808bee352d1a6fcf902ca1a71cee76e60e24071" },
|
||||||
|
"SchemaStore.nvim": { "branch": "main", "commit": "6e2af7e093a4b92e3dce014aa1cbb5449ad1ebf9" },
|
||||||
|
"avante.nvim": { "branch": "main", "commit": "f97a2d9bc17f9690681542b6858b617dfc3ed02d" },
|
||||||
|
"bufferline.nvim": { "branch": "main", "commit": "0b2fd861eee7595015b6561dade52fb060be10c4" },
|
||||||
|
"catppuccin": { "branch": "main", "commit": "63685e1562ef53873c9764b483d7ac5c7a608922" },
|
||||||
|
"clangd_extensions.nvim": { "branch": "main", "commit": "385a44f133f4145e3a3da1a2a557225dccc3e1f8" },
|
||||||
|
"cmake-tools.nvim": { "branch": "master", "commit": "4be3c229fe932043fd83ad52fdf0ba9af7297789" },
|
||||||
|
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
|
||||||
|
"cmp-calc": { "branch": "main", "commit": "5947b412da67306c5b68698a02a846760059be2e" },
|
||||||
|
"cmp-cmdline": { "branch": "main", "commit": "d250c63aa13ead745e3a40f61fdd3470efde3923" },
|
||||||
|
"cmp-emoji": { "branch": "main", "commit": "e8398e2adf512a03bb4e1728ca017ffeac670a9f" },
|
||||||
|
"cmp-git": { "branch": "main", "commit": "50d526dff0f6bc441b51fc269d9fdc99a50c76af" },
|
||||||
|
"cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" },
|
||||||
|
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
||||||
|
"conform.nvim": { "branch": "master", "commit": "1a99fdc1d3aa9ccdf3021e67982a679a8c5c740c" },
|
||||||
|
"copilot-cmp": { "branch": "master", "commit": "b6e5286b3d74b04256d0a7e3bd2908eabec34b44" },
|
||||||
|
"copilot.lua": { "branch": "master", "commit": "1a237cf50372830a61d92b0adf00d3b23882e0e1" },
|
||||||
|
"crates.nvim": { "branch": "main", "commit": "5a24e3ba60e28e0cfde540696630b3c5a4db6dfd" },
|
||||||
|
"darkearth-nvim": { "branch": "main", "commit": "14369f828f4b09ee89b18bfa3f58b02720e8e20a" },
|
||||||
|
"dashboard-nvim": { "branch": "master", "commit": "fabf5feec96185817c732d47d363f34034212685" },
|
||||||
|
"dial.nvim": { "branch": "master", "commit": "ed4d6a5bbd5e479b4c4a3019d148561a2e6c1490" },
|
||||||
|
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
|
||||||
|
"dressing.nvim": { "branch": "master", "commit": "1b7921eecc65af1baf8ac1dc06f0794934cbcfb2" },
|
||||||
|
"eyeliner.nvim": { "branch": "main", "commit": "85e5a5a815651a434f327d0da3c2a33b9aa4f9ec" },
|
||||||
|
"farout.nvim": { "branch": "main", "commit": "ebfcb874c3ebdb86fff8f22de4ae0944c3fa2bbc" },
|
||||||
|
"flash.nvim": { "branch": "main", "commit": "34c7be146a91fec3555c33fe89c7d643f6ef5cf1" },
|
||||||
|
"fold-preview.nvim": { "branch": "main", "commit": "b7920cb0aba2b48a6b679bff45f98c3ebc0f0b89" },
|
||||||
|
"friendly-snippets": { "branch": "main", "commit": "00ebcaa159e817150bd83bfe2d51fa3b3377d5c4" },
|
||||||
|
"fzf": { "branch": "master", "commit": "855f90727af7827d9934b7fa00ea5ed51f5e4e81" },
|
||||||
|
"gitsigns.nvim": { "branch": "main", "commit": "1ef74b546732f185d0f806860fa5404df7614f28" },
|
||||||
|
"goto-preview": { "branch": "main", "commit": "1519ea3512828c944eed5b2bbb66a8f8deb92447" },
|
||||||
|
"grug-far.nvim": { "branch": "main", "commit": "0d8dd717a763e9c91f152527cd4c37338e83198a" },
|
||||||
|
"gruvbox.nvim": { "branch": "main", "commit": "7a1b23e4edf73a39642e77508ee6b9cbb8c60f9e" },
|
||||||
|
"gui-font-resize.nvim": { "branch": "main", "commit": "ece6e5dfdb3caf7567681dbea80a37d838f60447" },
|
||||||
|
"hybrid.nvim": { "branch": "master", "commit": "8838621a2e299582a0af5b8b96d5515f27b5d058" },
|
||||||
|
"img-clip.nvim": { "branch": "main", "commit": "28a32d811d69042f4fa5c3d5fa35571df2bc1623" },
|
||||||
|
"inc-rename.nvim": { "branch": "main", "commit": "8ba77017ca468f3029bf88ef409c2d20476ea66b" },
|
||||||
|
"indent-blankline.nvim": { "branch": "master", "commit": "18603eb949eba08300799f64027af11ef922283f" },
|
||||||
|
"kanagawa.nvim": { "branch": "master", "commit": "f491b0fe68fffbece7030181073dfe51f45cda81" },
|
||||||
|
"keymap-amend.nvim": { "branch": "master", "commit": "b8bf9d820878d5497fdd11d6de55dea82872d98e" },
|
||||||
|
"lazy.nvim": { "branch": "main", "commit": "077102c5bfc578693f12377846d427f49bc50076" },
|
||||||
|
"lazydev.nvim": { "branch": "main", "commit": "491452cf1ca6f029e90ad0d0368848fac717c6d2" },
|
||||||
|
"lsp_lines.nvim": { "branch": "main", "commit": "7d9e2748b61bff6ebba6e30adbc7173ccf21c055" },
|
||||||
|
"lualine.nvim": { "branch": "master", "commit": "b431d228b7bbcdaea818bdc3e25b8cdbe861f056" },
|
||||||
|
"lush.nvim": { "branch": "main", "commit": "45a79ec4acb5af783a6a29673a999ce37f00497e" },
|
||||||
|
"luvit-meta": { "branch": "main", "commit": "ce76f6f6cdc9201523a5875a4471dcfe0186eb60" },
|
||||||
|
"markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
|
||||||
|
"mason-lspconfig.nvim": { "branch": "main", "commit": "25c11854aa25558ee6c03432edfa0df0217324be" },
|
||||||
|
"mason-nvim-dap.nvim": { "branch": "main", "commit": "8b9363d83b5d779813cdd2819b8308651cec2a09" },
|
||||||
|
"mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" },
|
||||||
|
"miasma.nvim": { "branch": "main", "commit": "37818b190e291c75a2d78118dc7dd8d69d311a8c" },
|
||||||
|
"mini.ai": { "branch": "main", "commit": "40e380a589d07ec2c856940c6422aafe5d949a0d" },
|
||||||
|
"mini.files": { "branch": "main", "commit": "a3a9cce82115a69dba161ac45bda16f4e606f73b" },
|
||||||
|
"mini.hipatterns": { "branch": "main", "commit": "fdad87bf545aec5210ca9a2c49fddf6284d72d1e" },
|
||||||
|
"mini.icons": { "branch": "main", "commit": "2d89252993fec829b24720097a687412d10f6c85" },
|
||||||
|
"mini.indentscope": { "branch": "main", "commit": "da9af64649e114aa79480c238fd23f6524bc0903" },
|
||||||
|
"mini.pairs": { "branch": "main", "commit": "e543c760edc5e746e5b6cbd02c066c17ead3ef16" },
|
||||||
|
"mini.surround": { "branch": "main", "commit": "0e67c4bc147f2a15cee94e7c94dcc0e115b9f55e" },
|
||||||
|
"monochrome.nvim": { "branch": "main", "commit": "2de78d9688ea4a177bcd9be554ab9192337d35ff" },
|
||||||
|
"moonbow.nvim": { "branch": "master", "commit": "d3bdb22350b03a62868670b2e5d9aef256e380bb" },
|
||||||
|
"neo-tree.nvim": { "branch": "main", "commit": "a77af2e764c5ed4038d27d1c463fa49cd4794e07" },
|
||||||
|
"neoconf.nvim": { "branch": "main", "commit": "e4c9a7ab10b5bc90e10af5add2436da8dd57b987" },
|
||||||
|
"neogen": { "branch": "main", "commit": "e932ba918b56723436b77aa3efb844a11b2851ab" },
|
||||||
|
"neotest": { "branch": "master", "commit": "6d6ad113f56edc7c3f2a77a0836ea8c1b955ebea" },
|
||||||
|
"neotest-mocha": { "branch": "main", "commit": "8239023d299a692784176f202f6a4a5e0a698ad2" },
|
||||||
|
"neotest-python": { "branch": "master", "commit": "72603dfdbaad5695160268cb10531a14cc37236e" },
|
||||||
|
"neotest-rspec": { "branch": "main", "commit": "53fc108a06ae43d7f873d42ee5189c2301e33623" },
|
||||||
|
"nightfox.nvim": { "branch": "main", "commit": "7557f26defd093c4e9bc17f28b08403f706f5a44" },
|
||||||
|
"noice.nvim": { "branch": "main", "commit": "c1ba80ccf6b3bd8c7fc88fe2e61085131d44ad65" },
|
||||||
|
"nui.nvim": { "branch": "main", "commit": "b58e2bfda5cea347c9d58b7f11cf3012c7b3953f" },
|
||||||
|
"numb.nvim": { "branch": "master", "commit": "3f7d4a74bd456e747a1278ea1672b26116e0824d" },
|
||||||
|
"nvim-bqf": { "branch": "main", "commit": "1b24dc6050c34e8cd377b6b4cd6abe40509e0187" },
|
||||||
|
"nvim-cmp": { "branch": "main", "commit": "ae644feb7b67bf1ce4260c231d1d4300b19c6f30" },
|
||||||
|
"nvim-dap": { "branch": "master", "commit": "90616ae6ae40053103dc66872886fc26b94c70c8" },
|
||||||
|
"nvim-dap-python": { "branch": "master", "commit": "db72bf6ab9f75fe841e8e11e772ee7fef6f484f1" },
|
||||||
|
"nvim-dap-ruby": { "branch": "main", "commit": "4176405d186a93ebec38a6344df124b1689cfcfd" },
|
||||||
|
"nvim-dap-ui": { "branch": "master", "commit": "1c351e4e417d4691da12948b6ecf966936a56d28" },
|
||||||
|
"nvim-dap-virtual-text": { "branch": "master", "commit": "3497eb39bf413a57ab5b7e7e2e192683e462148c" },
|
||||||
|
"nvim-jdtls": { "branch": "master", "commit": "99e4b2081de1d9162666cc7b563cbeb01c26b66b" },
|
||||||
|
"nvim-lint": { "branch": "master", "commit": "ba0ab2f813e77d015da1a1c9920328fd2bf295f2" },
|
||||||
|
"nvim-lspconfig": { "branch": "master", "commit": "aaec5d049af99e7b975bdf68aca582f1aa91b338" },
|
||||||
|
"nvim-nio": { "branch": "master", "commit": "a428f309119086dc78dd4b19306d2d67be884eee" },
|
||||||
|
"nvim-notify": { "branch": "master", "commit": "d333b6f167900f6d9d42a59005d82919830626bf" },
|
||||||
|
"nvim-pqf": { "branch": "main", "commit": "148ee2ca8b06d83fd9bf6f9b9497724ad39a07d6" },
|
||||||
|
"nvim-snippets": { "branch": "main", "commit": "56b4052f71220144689caaa2e5b66222ba5661eb" },
|
||||||
|
"nvim-treesitter": { "branch": "master", "commit": "2b2ac302324f4cd2194c5dcaa59332b65e1c6403" },
|
||||||
|
"nvim-treesitter-context": { "branch": "master", "commit": "7f7eeaa99e5a9beab518f502292871ae5f20de6f" },
|
||||||
|
"nvim-treesitter-textobjects": { "branch": "master", "commit": "bf8d2ad35d1d1a687eae6c065c3d524f7ab61b23" },
|
||||||
|
"nvim-ts-autotag": { "branch": "main", "commit": "e239a560f338be31337e7abc3ee42515daf23f5e" },
|
||||||
|
"nvim-ufo": { "branch": "main", "commit": "203c9f434feec57909ab4b1e028abeb3349b7847" },
|
||||||
|
"nvim-web-devicons": { "branch": "master", "commit": "31bd21ac46b2b6039aa0b856ca02b018cf549ef7" },
|
||||||
|
"octo.nvim": { "branch": "master", "commit": "955f0fdd03b0da23ee1c3368d80bf806f0e36fa5" },
|
||||||
|
"oil.nvim": { "branch": "master", "commit": "1360be5fda9c67338331abfcd80de2afbb395bcd" },
|
||||||
|
"onedarker.nvim": { "branch": "master", "commit": "b4f92f073ed7cdf0358ad005cee0484411232b1b" },
|
||||||
|
"overseer.nvim": { "branch": "master", "commit": "a2734d90c514eea27c4759c9f502adbcdfbce485" },
|
||||||
|
"oxocarbon.nvim": { "branch": "main", "commit": "004777819ba294423b638a35a75c9f0c7be758ed" },
|
||||||
|
"persistence.nvim": { "branch": "main", "commit": "f6aad7dde7fcf54148ccfc5f622c6d5badd0cc3d" },
|
||||||
|
"plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" },
|
||||||
|
"project.nvim": { "branch": "main", "commit": "8c6bad7d22eef1b71144b401c9f74ed01526a4fb" },
|
||||||
|
"promise-async": { "branch": "main", "commit": "119e8961014c9bfaf1487bf3c2a393d254f337e2" },
|
||||||
|
"render-markdown.nvim": { "branch": "main", "commit": "354baf485370b670bb1c1cd64309438607b0465d" },
|
||||||
|
"rustaceanvim": { "branch": "master", "commit": "047f9c9d8cd2861745eb9de6c1570ee0875aa795" },
|
||||||
|
"smart-splits.nvim": { "branch": "master", "commit": "cac7e33e08c86d94950d5ba6c6a4df850acafb33" },
|
||||||
|
"smartcolumn.nvim": { "branch": "main", "commit": "cefb17be095ad5526030a21bb2a80553cae09127" },
|
||||||
|
"ssr.nvim": { "branch": "main", "commit": "7c95cfa5836508f08ae833a4b31d2ed265560f64" },
|
||||||
|
"tailwindcss-colorizer-cmp.nvim": { "branch": "main", "commit": "3d3cd95e4a4135c250faf83dd5ed61b8e5502b86" },
|
||||||
|
"telescope-emoji.nvim": { "branch": "master", "commit": "86248d97be84a1ce83f0541500ef9edc99ea2aa1" },
|
||||||
|
"telescope-fzf-native.nvim": { "branch": "main", "commit": "cf48d4dfce44e0b9a2e19a008d6ec6ea6f01a83b" },
|
||||||
|
"telescope-terraform-doc.nvim": { "branch": "main", "commit": "ce2d39a576a68755a623982a7a88bcb3d981b15b" },
|
||||||
|
"telescope-terraform.nvim": { "branch": "main", "commit": "072c97023797ca1a874668aaa6ae0b74425335df" },
|
||||||
|
"telescope-undo.nvim": { "branch": "main", "commit": "51be9ae7c42fc27c0b05505e3a0162e0f05fbb6a" },
|
||||||
|
"telescope.nvim": { "branch": "master", "commit": "b5fd7f7ae0ea4537511077ed8ef4a6021cedba2f" },
|
||||||
|
"todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" },
|
||||||
|
"toggle-lsp-diagnostics.nvim": { "branch": "main", "commit": "4c515b1625433306807e4a47756592fde0b83c82" },
|
||||||
|
"toggleterm.nvim": { "branch": "main", "commit": "48be57eaba817f038d61bbf64d2c597f578c0827" },
|
||||||
|
"tokyonight.nvim": { "branch": "main", "commit": "817bb6ffff1b9ce72cdd45d9fcfa8c9cd1ad3839" },
|
||||||
|
"tree-sitter-just": { "branch": "main", "commit": "6648ac1c0cdadaec8ee8bcf9a4ca6ace5102cf21" },
|
||||||
|
"treesj": { "branch": "main", "commit": "0d81326b5afd36babe7dd480aabbb0b05f33e688" },
|
||||||
|
"trouble.nvim": { "branch": "main", "commit": "6efc446226679fda0547c0fd6a7892fd5f5b15d8" },
|
||||||
|
"true-zen.nvim": { "branch": "main", "commit": "2b9e210e0d1a735e1fa85ec22190115dffd963aa" },
|
||||||
|
"ts-comments.nvim": { "branch": "main", "commit": "98d7d4dec0af1312d38e288f800bbf6ff562b6ab" },
|
||||||
|
"venv-selector.nvim": { "branch": "regexp", "commit": "e82594274bf7b54387f9a2abe65f74909ac66e97" },
|
||||||
|
"vim-dadbod": { "branch": "master", "commit": "7888cb7164d69783d3dce4e0283decd26b82538b" },
|
||||||
|
"vim-dadbod-completion": { "branch": "master", "commit": "880f7e9f2959e567c718d52550f9fae1aa07aa81" },
|
||||||
|
"vim-dadbod-ui": { "branch": "master", "commit": "a5ff8bd69fcaf53cd24827b54492c8ce87806d18" },
|
||||||
|
"vim-eunuch": { "branch": "master", "commit": "8fb3904be27b6b60d086f87c2570085902414069" },
|
||||||
|
"vim-fugitive": { "branch": "master", "commit": "d4877e54cef67f5af4f950935b1ade19ed6b7370" },
|
||||||
|
"vim-just": { "branch": "main", "commit": "8ed1e472b72b739bd852d2b9a2d688b3da015cf5" },
|
||||||
|
"vim-repeat": { "branch": "master", "commit": "65846025c15494983dafe5e3b46c8f88ab2e9635" },
|
||||||
|
"vim-rhubarb": { "branch": "master", "commit": "ee69335de176d9325267b0fd2597a22901d927b1" },
|
||||||
|
"vim-sleuth": { "branch": "master", "commit": "be69bff86754b1aa5adcbb527d7fcd1635a84080" },
|
||||||
|
"vim-startuptime": { "branch": "master", "commit": "ac2cccb5be617672add1f4f3c0a55ce99ba34e01" },
|
||||||
|
"vim-unimpaired": { "branch": "master", "commit": "6d44a6dc2ec34607c41ec78acf81657248580bf1" },
|
||||||
|
"vimtex": { "branch": "master", "commit": "539a203f19531c6b9d2d1b093ee8911fb7050bbc" },
|
||||||
|
"wezterm-types": { "branch": "main", "commit": "1518752906ba3fac0060d9efab6e4d3ec15d4b5a" },
|
||||||
|
"which-key.nvim": { "branch": "main", "commit": "fb070344402cfc662299d9914f5546d840a22126" },
|
||||||
|
"yanky.nvim": { "branch": "main", "commit": "73215b77d22ebb179cef98e7e1235825431d10e4" },
|
||||||
|
"zenbones.nvim": { "branch": "main", "commit": "12daea796d5079a65dd7032bb85540443e8b30e8" }
|
||||||
|
}
|
46
lazyvim.json
Normal file
46
lazyvim.json
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
{
|
||||||
|
"extras": [
|
||||||
|
"lazyvim.plugins.extras.coding.copilot",
|
||||||
|
"lazyvim.plugins.extras.coding.copilot-chat",
|
||||||
|
"lazyvim.plugins.extras.coding.mini-surround",
|
||||||
|
"lazyvim.plugins.extras.coding.neogen",
|
||||||
|
"lazyvim.plugins.extras.coding.yanky",
|
||||||
|
"lazyvim.plugins.extras.dap.core",
|
||||||
|
"lazyvim.plugins.extras.editor.dial",
|
||||||
|
"lazyvim.plugins.extras.editor.inc-rename",
|
||||||
|
"lazyvim.plugins.extras.editor.mini-files",
|
||||||
|
"lazyvim.plugins.extras.formatting.black",
|
||||||
|
"lazyvim.plugins.extras.formatting.prettier",
|
||||||
|
"lazyvim.plugins.extras.lang.clangd",
|
||||||
|
"lazyvim.plugins.extras.lang.cmake",
|
||||||
|
"lazyvim.plugins.extras.lang.docker",
|
||||||
|
"lazyvim.plugins.extras.lang.git",
|
||||||
|
"lazyvim.plugins.extras.lang.java",
|
||||||
|
"lazyvim.plugins.extras.lang.json",
|
||||||
|
"lazyvim.plugins.extras.lang.markdown",
|
||||||
|
"lazyvim.plugins.extras.lang.python",
|
||||||
|
"lazyvim.plugins.extras.lang.ruby",
|
||||||
|
"lazyvim.plugins.extras.lang.rust",
|
||||||
|
"lazyvim.plugins.extras.lang.sql",
|
||||||
|
"lazyvim.plugins.extras.lang.tailwind",
|
||||||
|
"lazyvim.plugins.extras.lang.terraform",
|
||||||
|
"lazyvim.plugins.extras.lang.tex",
|
||||||
|
"lazyvim.plugins.extras.lang.toml",
|
||||||
|
"lazyvim.plugins.extras.lang.typescript",
|
||||||
|
"lazyvim.plugins.extras.lang.yaml",
|
||||||
|
"lazyvim.plugins.extras.linting.eslint",
|
||||||
|
"lazyvim.plugins.extras.lsp.neoconf",
|
||||||
|
"lazyvim.plugins.extras.test.core",
|
||||||
|
"lazyvim.plugins.extras.ui.mini-indentscope",
|
||||||
|
"lazyvim.plugins.extras.ui.treesitter-context",
|
||||||
|
"lazyvim.plugins.extras.util.dot",
|
||||||
|
"lazyvim.plugins.extras.util.mini-hipatterns",
|
||||||
|
"lazyvim.plugins.extras.util.octo",
|
||||||
|
"lazyvim.plugins.extras.util.project",
|
||||||
|
"lazyvim.plugins.extras.util.startuptime"
|
||||||
|
],
|
||||||
|
"news": {
|
||||||
|
"NEWS.md": "6520"
|
||||||
|
},
|
||||||
|
"version": 6
|
||||||
|
}
|
9
lua/config/autocmds.lua
Normal file
9
lua/config/autocmds.lua
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
-- Autocmds are automatically loaded on the VeryLazy event
|
||||||
|
-- Default autocmds that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua
|
||||||
|
-- Add any additional autocmds here
|
||||||
|
|
||||||
|
-- Turn off cursorline in terminal windows
|
||||||
|
vim.api.nvim_create_autocmd("TermOpen", {
|
||||||
|
pattern = "*",
|
||||||
|
command = "setlocal listchars= | set nocursorline | set nocursorcolumn",
|
||||||
|
})
|
26
lua/config/keymaps.lua
Normal file
26
lua/config/keymaps.lua
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
-- Keymaps are automatically loaded on the VeryLazy event
|
||||||
|
-- Default keymaps that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/keymaps.lua
|
||||||
|
-- Add any additional keymaps here
|
||||||
|
local Util = require("lazyvim.util")
|
||||||
|
|
||||||
|
vim.keymap.set("n", "<leader>H", function()
|
||||||
|
Util.terminal({ "clx" })
|
||||||
|
end, { desc = "Toggle clx (console HackerNews) floating terminal" })
|
||||||
|
|
||||||
|
vim.keymap.set("n", "<leader>dd", function()
|
||||||
|
Util.terminal({ "lazydocker" }, { esc_esc = false, ctrl_hjkl = false })
|
||||||
|
end, { desc = "Toggle lazydocker (console Docker Desktop) floating terminal" })
|
||||||
|
|
||||||
|
vim.keymap.set("n", "<leader>B", function()
|
||||||
|
Util.terminal({ "btm" }, { esc_esc = false, ctrl_hjkl = false })
|
||||||
|
end, { desc = "Toggle bottom (improved console top monitor) floating terminal" })
|
||||||
|
|
||||||
|
-- Allow Cmd+V pasting on mac
|
||||||
|
if vim.fn.has("mac") == 1 then
|
||||||
|
vim.keymap.set("n", "<D-v>", '"+p')
|
||||||
|
vim.keymap.set("n", "<D-s-v>", '"+p')
|
||||||
|
vim.keymap.set("i", "<D-v>", "<C-r>*")
|
||||||
|
vim.keymap.set("i", "<D-s-v>", "<C-r>*")
|
||||||
|
vim.keymap.set("t", "<D-v>", '<C-\\><C-n>"+pi')
|
||||||
|
vim.keymap.set("t", "<D-s-v>", '<C-\\><C-n>"+pi')
|
||||||
|
end
|
48
lua/config/lazy.lua
Normal file
48
lua/config/lazy.lua
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||||
|
if not vim.loop.fs_stat(lazypath) then
|
||||||
|
-- bootstrap lazy.nvim
|
||||||
|
-- stylua: ignore
|
||||||
|
vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", lazypath })
|
||||||
|
end
|
||||||
|
vim.opt.rtp:prepend(vim.env.LAZY or lazypath)
|
||||||
|
|
||||||
|
require("lazy").setup({
|
||||||
|
spec = {
|
||||||
|
-- add LazyVim and import its plugins
|
||||||
|
{ "LazyVim/LazyVim", import = "lazyvim.plugins" },
|
||||||
|
-- import any extras modules here
|
||||||
|
-- { import = "lazyvim.plugins.extras.lang.typescript" },
|
||||||
|
-- { import = "lazyvim.plugins.extras.lang.json" },
|
||||||
|
-- { import = "lazyvim.plugins.extras.ui.mini-animate" },
|
||||||
|
-- import/override with your plugins
|
||||||
|
{ import = "plugins" },
|
||||||
|
-- fix nvim-dap error
|
||||||
|
{ "nvim-neotest/nvim-nio" },
|
||||||
|
},
|
||||||
|
defaults = {
|
||||||
|
-- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup.
|
||||||
|
-- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default.
|
||||||
|
lazy = false,
|
||||||
|
-- It's recommended to leave version=false for now, since a lot the plugin that support versioning,
|
||||||
|
-- have outdated releases, which may break your Neovim install.
|
||||||
|
version = false, -- always use the latest git commit
|
||||||
|
-- version = "*", -- try installing the latest stable version for plugins that support semver
|
||||||
|
},
|
||||||
|
install = { colorscheme = { "tokyonight", "habamax" } },
|
||||||
|
checker = { enabled = true }, -- automatically check for plugin updates
|
||||||
|
performance = {
|
||||||
|
rtp = {
|
||||||
|
-- disable some rtp plugins
|
||||||
|
disabled_plugins = {
|
||||||
|
"gzip",
|
||||||
|
-- "matchit",
|
||||||
|
-- "matchparen",
|
||||||
|
-- "netrwPlugin",
|
||||||
|
"tarPlugin",
|
||||||
|
"tohtml",
|
||||||
|
"tutor",
|
||||||
|
"zipPlugin",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
20
lua/config/options.lua
Normal file
20
lua/config/options.lua
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
-- Options are automatically loaded before lazy.nvim startup
|
||||||
|
-- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua
|
||||||
|
-- Add any additional options here
|
||||||
|
|
||||||
|
if vim.g.neovide then
|
||||||
|
-- Variable font looks too bold on windows
|
||||||
|
vim.opt.guifont = "Berkeley Mono:h10.5:#e-subpixelantialias"
|
||||||
|
vim.opt.linespace = 1
|
||||||
|
else
|
||||||
|
vim.opt.guifont = "Berkeley Mono Variable:h13"
|
||||||
|
end
|
||||||
|
|
||||||
|
-- idk if it does anything cause I have to set it in the nvim-cmp settings too
|
||||||
|
vim.opt.completeopt = "menu,menuone,noinsert,noselect"
|
||||||
|
|
||||||
|
-- Window decorations
|
||||||
|
vim.opt.title = true
|
||||||
|
vim.opt.titlestring = "%{substitute(getcwd(),$HOME,'~','')} - Neovim"
|
||||||
|
|
||||||
|
vim.opt.fillchars:append({ diff = "╱" })
|
@ -1,350 +0,0 @@
|
|||||||
local ensure_packer = function()
|
|
||||||
local fn = vim.fn
|
|
||||||
local install_path = fn.stdpath('data') .. '/site/pack/packer/start/packer.nvim'
|
|
||||||
if fn.empty(fn.glob(install_path)) > 0 then
|
|
||||||
fn.system({ 'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim', install_path })
|
|
||||||
vim.cmd [[packadd packer.nvim]]
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
return false
|
|
||||||
end
|
|
||||||
|
|
||||||
local packer_bootstrap = ensure_packer()
|
|
||||||
|
|
||||||
return require('packer').startup(function(use)
|
|
||||||
use 'wbthomason/packer.nvim'
|
|
||||||
|
|
||||||
use 'lewis6991/impatient.nvim'
|
|
||||||
use 'nvim-lua/plenary.nvim'
|
|
||||||
use {
|
|
||||||
'neovim/nvim-lspconfig',
|
|
||||||
config = function()
|
|
||||||
require('plugins.lsp')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'j-hui/fidget.nvim',
|
|
||||||
config = function()
|
|
||||||
require('plugins.fidget-nvim')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'hrsh7th/nvim-cmp',
|
|
||||||
requires = {
|
|
||||||
'hrsh7th/cmp-nvim-lsp',
|
|
||||||
'hrsh7th/cmp-nvim-lsp-signature-help',
|
|
||||||
'hrsh7th/cmp-buffer',
|
|
||||||
'hrsh7th/cmp-path',
|
|
||||||
'hrsh7th/cmp-cmdline',
|
|
||||||
},
|
|
||||||
config = function()
|
|
||||||
require('plugins.nvim-cmp')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'Saecki/crates.nvim',
|
|
||||||
event = { "BufRead Cargo.toml" },
|
|
||||||
requires = { 'nvim-lua/plenary.nvim' },
|
|
||||||
config = function()
|
|
||||||
require('plugins.crates-nvim')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'petertriho/cmp-git',
|
|
||||||
requires = 'nvim-lua/plenary.nvim',
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'williamboman/mason.nvim',
|
|
||||||
config = function()
|
|
||||||
require('plugins.mason-nvim')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'williamboman/mason-lspconfig.nvim',
|
|
||||||
config = function()
|
|
||||||
require('plugins.mason-lspconfig-nvim')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'rmagatti/goto-preview',
|
|
||||||
config = function()
|
|
||||||
require('plugins.goto-preview-nvim')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use 'hrsh7th/cmp-vsnip'
|
|
||||||
use 'hrsh7th/vim-vsnip'
|
|
||||||
use 'rafamadriz/friendly-snippets'
|
|
||||||
use {
|
|
||||||
'folke/trouble.nvim',
|
|
||||||
config = function()
|
|
||||||
require('plugins.trouble-nvim')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'mfussenegger/nvim-dap',
|
|
||||||
config = function()
|
|
||||||
require('plugins.nvim-dap')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'theHamsta/nvim-dap-virtual-text',
|
|
||||||
config = function()
|
|
||||||
require('plugins.nvim-dap-virtual-text')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'rcarriga/nvim-dap-ui',
|
|
||||||
requires = {
|
|
||||||
'mfussenegger/nvim-dap',
|
|
||||||
},
|
|
||||||
config = function()
|
|
||||||
require('plugins.nvim-dap-ui')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'kosayoda/nvim-lightbulb',
|
|
||||||
requires = 'antoinemadec/FixCursorHold.nvim',
|
|
||||||
config = function()
|
|
||||||
require('plugins.nvim-lightbulb')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'weilbith/nvim-code-action-menu',
|
|
||||||
cmd = 'CodeActionMenu',
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'nvim-treesitter/nvim-treesitter',
|
|
||||||
run = function() require('nvim-treesitter.install').update({ with_sync = true }) end,
|
|
||||||
config = function()
|
|
||||||
require('plugins.nvim-treesitter')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'nvim-treesitter/nvim-treesitter-textobjects',
|
|
||||||
requires = {
|
|
||||||
'nvim-treesitter/nvim-treesitter',
|
|
||||||
},
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'theHamsta/nvim-treesitter-pairs',
|
|
||||||
requires = {
|
|
||||||
'nvim-treesitter/nvim-treesitter',
|
|
||||||
},
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'windwp/nvim-ts-autotag',
|
|
||||||
requires = {
|
|
||||||
'nvim-treesitter/nvim-treesitter',
|
|
||||||
},
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'windwp/nvim-autopairs',
|
|
||||||
config = function()
|
|
||||||
require('plugins.nvim-autopairs')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'nvim-treesitter/nvim-treesitter-refactor',
|
|
||||||
requires = {
|
|
||||||
'nvim-treesitter/nvim-treesitter',
|
|
||||||
},
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'JoosepAlviste/nvim-ts-context-commentstring',
|
|
||||||
requires = {
|
|
||||||
'nvim-treesitter/nvim-treesitter',
|
|
||||||
},
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'numToStr/Comment.nvim',
|
|
||||||
requires = {
|
|
||||||
'nvim-treesitter/nvim-treesitter',
|
|
||||||
},
|
|
||||||
config = function()
|
|
||||||
require('plugins.comment-nvim')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'nvim-treesitter/nvim-treesitter-context',
|
|
||||||
requires = {
|
|
||||||
'nvim-treesitter/nvim-treesitter',
|
|
||||||
},
|
|
||||||
config = function()
|
|
||||||
require('plugins.nvim-treesitter-context')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'nvim-telescope/telescope.nvim',
|
|
||||||
requires = { 'nvim-lua/plenary.nvim' },
|
|
||||||
config = function()
|
|
||||||
require('plugins.telescope')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'nvim-telescope/telescope-fzf-native.nvim',
|
|
||||||
run = 'make',
|
|
||||||
requires = {
|
|
||||||
'nvim-telescope/telescope.nvim',
|
|
||||||
},
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'nvim-telescope/telescope-symbols.nvim',
|
|
||||||
requires = {
|
|
||||||
'nvim-telescope/telescope.nvim',
|
|
||||||
},
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'nvim-telescope/telescope-github.nvim',
|
|
||||||
requires = {
|
|
||||||
'nvim-lua/plenary.nvim',
|
|
||||||
'nvim-telescope/telescope.nvim',
|
|
||||||
},
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'LinArcX/telescope-env.nvim',
|
|
||||||
requires = {
|
|
||||||
'nvim-telescope/telescope.nvim',
|
|
||||||
},
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'xiyaowong/telescope-emoji.nvim',
|
|
||||||
requires = {
|
|
||||||
'nvim-telescope/telescope.nvim',
|
|
||||||
},
|
|
||||||
}
|
|
||||||
use 'nvim-telescope/telescope-ui-select.nvim'
|
|
||||||
use 'nvim-telescope/telescope-project.nvim'
|
|
||||||
use {
|
|
||||||
'ellisonleao/gruvbox.nvim',
|
|
||||||
config = function()
|
|
||||||
require('plugins.gruvbox')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use { 'shaunsingh/oxocarbon.nvim', run = './install.sh' }
|
|
||||||
use {
|
|
||||||
'akinsho/toggleterm.nvim',
|
|
||||||
tag = '*',
|
|
||||||
config = function()
|
|
||||||
require('plugins.toggleterm-nvim')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'ethanholz/nvim-lastplace',
|
|
||||||
config = function()
|
|
||||||
require('plugins.lastplace-nvim')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'nacro90/numb.nvim',
|
|
||||||
config = function()
|
|
||||||
require('plugins.numb-nvim')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'tpope/vim-fugitive',
|
|
||||||
config = function()
|
|
||||||
require('plugins.fugitive')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use 'tpope/vim-rhubarb'
|
|
||||||
use {
|
|
||||||
'lewis6991/gitsigns.nvim',
|
|
||||||
config = function()
|
|
||||||
require('plugins.gitsigns')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'sindrets/diffview.nvim',
|
|
||||||
requires = 'nvim-lua/plenary.nvim'
|
|
||||||
}
|
|
||||||
use 'kyazdani42/nvim-web-devicons'
|
|
||||||
use {
|
|
||||||
'pwntester/octo.nvim',
|
|
||||||
requires = {
|
|
||||||
'nvim-lua/plenary.nvim',
|
|
||||||
'nvim-telescope/telescope.nvim',
|
|
||||||
'kyazdani42/nvim-web-devicons',
|
|
||||||
},
|
|
||||||
config = function()
|
|
||||||
require('octo').setup()
|
|
||||||
end
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'kyazdani42/nvim-tree.lua',
|
|
||||||
requires = {
|
|
||||||
'kyazdani42/nvim-web-devicons',
|
|
||||||
},
|
|
||||||
tag = 'nightly',
|
|
||||||
config = function()
|
|
||||||
require('plugins.nvim-tree')
|
|
||||||
end
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'kylechui/nvim-surround',
|
|
||||||
config = function()
|
|
||||||
require('plugins.surround-nvim')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use 'dstein64/vim-startuptime'
|
|
||||||
use {
|
|
||||||
'nvim-neotest/neotest',
|
|
||||||
requires = {
|
|
||||||
'nvim-lua/plenary.nvim',
|
|
||||||
'nvim-treesitter/nvim-treesitter',
|
|
||||||
'antoinemadec/FixCursorHold.nvim',
|
|
||||||
},
|
|
||||||
config = function()
|
|
||||||
require('plugins.neotest')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use 'rouge8/neotest-rust'
|
|
||||||
use {
|
|
||||||
'simrat39/rust-tools.nvim',
|
|
||||||
requires = {
|
|
||||||
'hrsh7th/nvim-cmp',
|
|
||||||
},
|
|
||||||
config = function()
|
|
||||||
require('plugins.rust-tools-nvim')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'akinsho/bufferline.nvim',
|
|
||||||
tag = "v2.*",
|
|
||||||
requires = 'kyazdani42/nvim-web-devicons',
|
|
||||||
config = function()
|
|
||||||
require('plugins.bufferline-nvim')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'nvim-lualine/lualine.nvim',
|
|
||||||
requires = {
|
|
||||||
'kyazdani42/nvim-web-devicons',
|
|
||||||
opt = true
|
|
||||||
},
|
|
||||||
config = function()
|
|
||||||
require('plugins.lualine-nvim')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use 'tpope/vim-unimpaired'
|
|
||||||
use 'tpope/vim-repeat'
|
|
||||||
use 'tpope/vim-eunuch'
|
|
||||||
use 'tpope/vim-sleuth'
|
|
||||||
use {
|
|
||||||
'simnalamburt/vim-mundo',
|
|
||||||
config = function()
|
|
||||||
require('plugins.vim-mundo')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
use {
|
|
||||||
'lukas-reineke/indent-blankline.nvim',
|
|
||||||
config = function()
|
|
||||||
require('plugins.indent-blankline-nvim')
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Automatically set up your configuration after cloning packer.nvim
|
|
||||||
-- Put this at the end after all plugins
|
|
||||||
if packer_bootstrap then
|
|
||||||
require('packer').sync()
|
|
||||||
end
|
|
||||||
end)
|
|
66
lua/plugins/avante.lua
Normal file
66
lua/plugins/avante.lua
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
return {
|
||||||
|
"yetone/avante.nvim",
|
||||||
|
event = "VeryLazy",
|
||||||
|
lazy = false,
|
||||||
|
opts = {
|
||||||
|
-- add any opts here
|
||||||
|
},
|
||||||
|
keys = {
|
||||||
|
{
|
||||||
|
"<leader>aa",
|
||||||
|
function()
|
||||||
|
require("avante.api").ask()
|
||||||
|
end,
|
||||||
|
desc = "avante: ask",
|
||||||
|
mode = { "n", "v" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>ar",
|
||||||
|
function()
|
||||||
|
require("avante.api").refresh()
|
||||||
|
end,
|
||||||
|
desc = "avante: refresh",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>ae",
|
||||||
|
function()
|
||||||
|
require("avante.api").edit()
|
||||||
|
end,
|
||||||
|
desc = "avante: edit",
|
||||||
|
mode = "v",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
build = "make",
|
||||||
|
dependencies = {
|
||||||
|
"stevearc/dressing.nvim",
|
||||||
|
"nvim-lua/plenary.nvim",
|
||||||
|
"MunifTanjim/nui.nvim",
|
||||||
|
--- The below dependencies are optional,
|
||||||
|
"nvim-tree/nvim-web-devicons", -- or echasnovski/mini.icons
|
||||||
|
{
|
||||||
|
-- support for image pasting
|
||||||
|
"HakonHarnes/img-clip.nvim",
|
||||||
|
event = "VeryLazy",
|
||||||
|
opts = {
|
||||||
|
-- recommended settings
|
||||||
|
default = {
|
||||||
|
embed_image_as_base64 = false,
|
||||||
|
prompt_for_file_name = false,
|
||||||
|
drag_and_drop = {
|
||||||
|
insert_mode = true,
|
||||||
|
},
|
||||||
|
-- required for Windows users
|
||||||
|
use_absolute_path = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
-- Make sure to setup it properly if you have lazy=true
|
||||||
|
"MeanderingProgrammer/render-markdown.nvim",
|
||||||
|
opts = {
|
||||||
|
file_types = { "markdown", "Avante" },
|
||||||
|
},
|
||||||
|
ft = { "markdown", "Avante" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
8
lua/plugins/bqf.lua
Normal file
8
lua/plugins/bqf.lua
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
return {
|
||||||
|
"kevinhwang91/nvim-bqf",
|
||||||
|
dependencies = {
|
||||||
|
"junegunn/fzf",
|
||||||
|
"nvim-treesitter/nvim-treesitter",
|
||||||
|
},
|
||||||
|
ft = { "qf" },
|
||||||
|
}
|
@ -1,7 +0,0 @@
|
|||||||
vim.opt.termguicolors = true
|
|
||||||
require('bufferline').setup({
|
|
||||||
options = {
|
|
||||||
mode = 'tabs',
|
|
||||||
diagnostics = 'nvim_lsp',
|
|
||||||
},
|
|
||||||
})
|
|
8
lua/plugins/bufferline.lua
Normal file
8
lua/plugins/bufferline.lua
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
return {
|
||||||
|
"akinsho/bufferline.nvim",
|
||||||
|
opts = {
|
||||||
|
options = {
|
||||||
|
mode = "tabs",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
50
lua/plugins/chatgpt.lua
Normal file
50
lua/plugins/chatgpt.lua
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
return {
|
||||||
|
"jackMort/ChatGPT.nvim",
|
||||||
|
event = "VeryLazy",
|
||||||
|
opts = {
|
||||||
|
api_key_cmd = "cat " .. os.getenv("HOME") .. "/.config/.openai-api-key",
|
||||||
|
popup_input = {
|
||||||
|
submit = "<C-s>",
|
||||||
|
},
|
||||||
|
openai_params = {
|
||||||
|
model = "gpt-4o",
|
||||||
|
},
|
||||||
|
openai_edit_params = {
|
||||||
|
model = "gpt-4o",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
keys = {
|
||||||
|
{ "<leader>kc", "<cmd>ChatGPT<CR>", desc = "ChatGPT" },
|
||||||
|
{ "<leader>ke", "<cmd>ChatGPTEditWithInstruction<CR>", desc = "Edit with instruction", mode = { "n", "v" } },
|
||||||
|
{ "<leader>kg", "<cmd>ChatGPTRun grammar_correction<CR>", desc = "Grammar Correction", mode = { "n", "v" } },
|
||||||
|
{ "<leader>kt", "<cmd>ChatGPTRun translate<CR>", desc = "Translate", mode = { "n", "v" } },
|
||||||
|
{ "<leader>kk", "<cmd>ChatGPTRun keywords<CR>", desc = "Keywords", mode = { "n", "v" } },
|
||||||
|
{ "<leader>kd", "<cmd>ChatGPTRun docstring<CR>", desc = "Docstring", mode = { "n", "v" } },
|
||||||
|
{ "<leader>ka", "<cmd>ChatGPTRun add_tests<CR>", desc = "Add Tests", mode = { "n", "v" } },
|
||||||
|
{ "<leader>ko", "<cmd>ChatGPTRun optimize_code<CR>", desc = "Optimize Code", mode = { "n", "v" } },
|
||||||
|
{ "<leader>ks", "<cmd>ChatGPTRun summarize<CR>", desc = "Summarize", mode = { "n", "v" } },
|
||||||
|
{ "<leader>kf", "<cmd>ChatGPTRun fix_bugs<CR>", desc = "Fix Bugs", mode = { "n", "v" } },
|
||||||
|
{ "<leader>kx", "<cmd>ChatGPTRun explain_code<CR>", desc = "Explain Code", mode = { "n", "v" } },
|
||||||
|
{
|
||||||
|
"<leader>kl",
|
||||||
|
"<cmd>ChatGPTRun code_readability_analysis<CR>",
|
||||||
|
desc = "Code Readability Analysis",
|
||||||
|
mode = { "n", "v" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
dependencies = {
|
||||||
|
"MunifTanjim/nui.nvim",
|
||||||
|
"nvim-lua/plenary.nvim",
|
||||||
|
"folke/trouble.nvim",
|
||||||
|
"nvim-telescope/telescope.nvim",
|
||||||
|
{
|
||||||
|
"folke/which-key.nvim",
|
||||||
|
optional = true,
|
||||||
|
opts = {
|
||||||
|
spec = {
|
||||||
|
{ "<leader>k", group = "ChatGPT" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
131
lua/plugins/colorschemes.lua
Normal file
131
lua/plugins/colorschemes.lua
Normal file
@ -0,0 +1,131 @@
|
|||||||
|
return {
|
||||||
|
{
|
||||||
|
"LazyVim/LazyVim",
|
||||||
|
opts = {
|
||||||
|
colorscheme = "kanagawa-dragon",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ellisonleao/gruvbox.nvim",
|
||||||
|
opts = {
|
||||||
|
contrast = "hard",
|
||||||
|
palette_overrides = {
|
||||||
|
dark0_hard = "#131516",
|
||||||
|
dark1 = "#242424",
|
||||||
|
},
|
||||||
|
dim_inactive = true,
|
||||||
|
overrides = {
|
||||||
|
GruvboxAquaSign = { bg = "NONE" },
|
||||||
|
GruvboxBlueSign = { bg = "NONE" },
|
||||||
|
GruvboxGreenSign = { bg = "NONE" },
|
||||||
|
GruvboxOrangeSign = { bg = "NONE" },
|
||||||
|
GruvboxPurpleSign = { bg = "NONE" },
|
||||||
|
GruvboxRedSign = { bg = "NONE" },
|
||||||
|
GruvboxYellowSign = { bg = "NONE" },
|
||||||
|
SignColumn = { bg = "NONE" },
|
||||||
|
FoldColumn = { bg = "NONE" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"arturgoms/moonbow.nvim",
|
||||||
|
opts = {
|
||||||
|
dim_inactive = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"rebelot/kanagawa.nvim",
|
||||||
|
opts = {
|
||||||
|
dimInactive = true,
|
||||||
|
colors = {
|
||||||
|
theme = {
|
||||||
|
all = {
|
||||||
|
ui = {
|
||||||
|
bg_gutter = "none",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
dragon = {
|
||||||
|
ui = {
|
||||||
|
bg_dim = "#1e1d1d",
|
||||||
|
bg = "#12120f",
|
||||||
|
bg_p2 = "#282727",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
wave = {
|
||||||
|
ui = {
|
||||||
|
bg_dim = "#20202D",
|
||||||
|
bg = "#181820",
|
||||||
|
bg_p2 = "#2A2A37",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{ "kdheepak/monochrome.nvim" },
|
||||||
|
{
|
||||||
|
"folke/tokyonight.nvim",
|
||||||
|
opts = {
|
||||||
|
style = "night",
|
||||||
|
dim_inactive = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"catppuccin/nvim",
|
||||||
|
name = "catppuccin",
|
||||||
|
opts = {
|
||||||
|
flavour = "mocha",
|
||||||
|
dim_inactive = {
|
||||||
|
enabled = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{ "LunarVim/onedarker.nvim" },
|
||||||
|
{
|
||||||
|
"EdenEast/nightfox.nvim",
|
||||||
|
opts = {
|
||||||
|
dim_inactive = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"mcchrish/zenbones.nvim",
|
||||||
|
dependencies = { "rktjmp/lush.nvim" },
|
||||||
|
config = function()
|
||||||
|
local opts = {
|
||||||
|
lightness = "bright",
|
||||||
|
darkness = "stark",
|
||||||
|
lighten_noncurrent_window = true,
|
||||||
|
}
|
||||||
|
vim.g.zenbones = opts
|
||||||
|
vim.g.rosebones = opts
|
||||||
|
vim.g.tokyobones = opts
|
||||||
|
vim.g.neobones = opts
|
||||||
|
vim.g.duckbones = opts
|
||||||
|
vim.g.kanagawabones = opts
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"HoNamDuong/hybrid.nvim",
|
||||||
|
lazy = false,
|
||||||
|
opts = {},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
-- My own colorscheme, aka. thallada/farout.nvim
|
||||||
|
"thallada/farout.nvim",
|
||||||
|
opts = {
|
||||||
|
dim_inactive = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"xero/miasma.nvim",
|
||||||
|
lazy = false,
|
||||||
|
priority = 1000,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ptdewey/darkearth-nvim",
|
||||||
|
priority = 1000,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"nyoom-engineering/oxocarbon.nvim",
|
||||||
|
},
|
||||||
|
}
|
@ -1,69 +0,0 @@
|
|||||||
require("Comment").setup({
|
|
||||||
---Add a space b/w comment and the line
|
|
||||||
---@type boolean|fun():boolean
|
|
||||||
padding = true,
|
|
||||||
|
|
||||||
---Whether the cursor should stay at its position
|
|
||||||
---NOTE: This only affects NORMAL mode mappings and doesn't work with dot-repeat
|
|
||||||
---@type boolean
|
|
||||||
sticky = true,
|
|
||||||
|
|
||||||
---Lines to be ignored while comment/uncomment.
|
|
||||||
---Could be a regex string or a function that returns a regex string.
|
|
||||||
---Example: Use '^$' to ignore empty lines
|
|
||||||
---@type string|fun():string
|
|
||||||
ignore = nil,
|
|
||||||
|
|
||||||
---LHS of toggle mappings in NORMAL + VISUAL mode
|
|
||||||
---@type table
|
|
||||||
toggler = {
|
|
||||||
---Line-comment toggle keymap
|
|
||||||
line = "gcc",
|
|
||||||
---Block-comment toggle keymap
|
|
||||||
block = "gbc",
|
|
||||||
},
|
|
||||||
|
|
||||||
---LHS of operator-pending mappings in NORMAL + VISUAL mode
|
|
||||||
---@type table
|
|
||||||
opleader = {
|
|
||||||
---Line-comment keymap
|
|
||||||
line = "gc",
|
|
||||||
---Block-comment keymap
|
|
||||||
block = "gb",
|
|
||||||
},
|
|
||||||
|
|
||||||
---LHS of extra mappings
|
|
||||||
---@type table
|
|
||||||
extra = {
|
|
||||||
---Add comment on the line above
|
|
||||||
above = "gcO",
|
|
||||||
---Add comment on the line below
|
|
||||||
below = "gco",
|
|
||||||
---Add comment at the end of line
|
|
||||||
eol = "gcA",
|
|
||||||
},
|
|
||||||
|
|
||||||
---Create basic (operator-pending) and extended mappings for NORMAL + VISUAL mode
|
|
||||||
---NOTE: If `mappings = false` then the plugin won't create any mappings
|
|
||||||
---@type boolean|table
|
|
||||||
mappings = {
|
|
||||||
---Operator-pending mapping
|
|
||||||
---Includes `gcc`, `gbc`, `gc[count]{motion}` and `gb[count]{motion}`
|
|
||||||
---NOTE: These mappings can be changed individually by `opleader` and `toggler` config
|
|
||||||
basic = true,
|
|
||||||
---Extra mapping
|
|
||||||
---Includes `gco`, `gcO`, `gcA`
|
|
||||||
extra = true,
|
|
||||||
---Extended mapping
|
|
||||||
---Includes `g>`, `g<`, `g>[count]{motion}` and `g<[count]{motion}`
|
|
||||||
extended = false,
|
|
||||||
},
|
|
||||||
|
|
||||||
---Pre-hook, called before commenting the line
|
|
||||||
---@type fun(ctx: CommentCtx):string
|
|
||||||
pre_hook = nil,
|
|
||||||
|
|
||||||
---Post-hook, called after commenting is done
|
|
||||||
---@type fun(ctx: CommentCtx)
|
|
||||||
post_hook = nil,
|
|
||||||
})
|
|
17
lua/plugins/copilot-chat.lua
Normal file
17
lua/plugins/copilot-chat.lua
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
return {
|
||||||
|
"CopilotC-Nvim/CopilotChat.nvim",
|
||||||
|
branch = "canary",
|
||||||
|
keys = {
|
||||||
|
-- disable this keymap since it conflicts with avante.nvim
|
||||||
|
{ "<leader>aa", false, mode = { "n", "v" } },
|
||||||
|
-- replace the keymap with a new one
|
||||||
|
{
|
||||||
|
"<leader>aA",
|
||||||
|
function()
|
||||||
|
return require("CopilotChat").toggle()
|
||||||
|
end,
|
||||||
|
desc = "Toggle (CopilotChat)",
|
||||||
|
mode = { "n", "v" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
@ -1 +0,0 @@
|
|||||||
require('crates').setup()
|
|
35
lua/plugins/dial.lua
Normal file
35
lua/plugins/dial.lua
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
-- better increase/descrease
|
||||||
|
return {
|
||||||
|
"monaqa/dial.nvim",
|
||||||
|
keys = {
|
||||||
|
{
|
||||||
|
"<C-a>",
|
||||||
|
function()
|
||||||
|
return require("dial.map").inc_normal()
|
||||||
|
end,
|
||||||
|
expr = true,
|
||||||
|
desc = "Increment",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<C-x>",
|
||||||
|
function()
|
||||||
|
return require("dial.map").dec_normal()
|
||||||
|
end,
|
||||||
|
expr = true,
|
||||||
|
desc = "Decrement",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
config = function()
|
||||||
|
local augend = require("dial.augend")
|
||||||
|
require("dial.config").augends:register_group({
|
||||||
|
default = {
|
||||||
|
augend.integer.alias.decimal,
|
||||||
|
augend.integer.alias.hex,
|
||||||
|
augend.date.alias["%Y/%m/%d"],
|
||||||
|
augend.constant.alias.bool,
|
||||||
|
augend.semver.alias.semver,
|
||||||
|
augend.constant.new({ elements = { "let", "const" } }),
|
||||||
|
},
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
}
|
24
lua/plugins/diffview.lua
Normal file
24
lua/plugins/diffview.lua
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
return {
|
||||||
|
"sindrets/diffview.nvim",
|
||||||
|
cmd = { "DiffviewOpen", "DiffviewClose", "DiffviewToggleFiles", "DiffviewFocusFiles" },
|
||||||
|
opts = {
|
||||||
|
enhanced_diff_hl = true,
|
||||||
|
keymaps = {
|
||||||
|
view = {
|
||||||
|
["gq"] = "<Cmd>DiffviewClose<CR>",
|
||||||
|
},
|
||||||
|
file_panel = {
|
||||||
|
["gq"] = "<Cmd>DiffviewClose<CR>",
|
||||||
|
},
|
||||||
|
file_history_panel = {
|
||||||
|
["gq"] = "<Cmd>DiffviewClose<CR>",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
keys = {
|
||||||
|
{ "<leader>gl", ":'<,'>DiffviewFileHistory<cr>", mode = "v", desc = "Toggle git log of selected lines" },
|
||||||
|
{ "<leader>gL", "<cmd>DiffviewFileHistory<cr>", desc = "Toggle git log of current branch" },
|
||||||
|
{ "<leader>gl", "<cmd>DiffviewFileHistory %<cr>", desc = "Toggle git log of current file history" },
|
||||||
|
{ "<leader>gd", "<cmd>DiffviewOpen<cr>", desc = "Git diff current file against the index" },
|
||||||
|
},
|
||||||
|
}
|
1
lua/plugins/disabled.lua
Normal file
1
lua/plugins/disabled.lua
Normal file
@ -0,0 +1 @@
|
|||||||
|
return {}
|
265
lua/plugins/example.lua
Normal file
265
lua/plugins/example.lua
Normal file
@ -0,0 +1,265 @@
|
|||||||
|
-- since this is just an example spec, don't actually load anything here and return an empty spec
|
||||||
|
-- stylua: ignore
|
||||||
|
if true then return {} end
|
||||||
|
|
||||||
|
-- every spec file under the "plugins" directory will be loaded automatically by lazy.nvim
|
||||||
|
--
|
||||||
|
-- In your plugin files, you can:
|
||||||
|
-- * add extra plugins
|
||||||
|
-- * disable/enabled LazyVim plugins
|
||||||
|
-- * override the configuration of LazyVim plugins
|
||||||
|
return {
|
||||||
|
-- add gruvbox
|
||||||
|
{ "ellisonleao/gruvbox.nvim" },
|
||||||
|
|
||||||
|
-- Configure LazyVim to load gruvbox
|
||||||
|
{
|
||||||
|
"LazyVim/LazyVim",
|
||||||
|
opts = {
|
||||||
|
colorscheme = "gruvbox",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
-- change trouble config
|
||||||
|
{
|
||||||
|
"folke/trouble.nvim",
|
||||||
|
-- opts will be merged with the parent spec
|
||||||
|
opts = { use_diagnostic_signs = true },
|
||||||
|
},
|
||||||
|
|
||||||
|
-- disable trouble
|
||||||
|
{ "folke/trouble.nvim", enabled = false },
|
||||||
|
|
||||||
|
-- add symbols-outline
|
||||||
|
{
|
||||||
|
"simrat39/symbols-outline.nvim",
|
||||||
|
cmd = "SymbolsOutline",
|
||||||
|
keys = { { "<leader>cs", "<cmd>SymbolsOutline<cr>", desc = "Symbols Outline" } },
|
||||||
|
config = true,
|
||||||
|
},
|
||||||
|
|
||||||
|
-- override nvim-cmp and add cmp-emoji
|
||||||
|
{
|
||||||
|
"hrsh7th/nvim-cmp",
|
||||||
|
dependencies = { "hrsh7th/cmp-emoji" },
|
||||||
|
---@param opts cmp.ConfigSchema
|
||||||
|
opts = function(_, opts)
|
||||||
|
table.insert(opts.sources, { name = "emoji" })
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
-- change some telescope options and a keymap to browse plugin files
|
||||||
|
{
|
||||||
|
"nvim-telescope/telescope.nvim",
|
||||||
|
keys = {
|
||||||
|
-- add a keymap to browse plugin files
|
||||||
|
-- stylua: ignore
|
||||||
|
{
|
||||||
|
"<leader>fp",
|
||||||
|
function() require("telescope.builtin").find_files({ cwd = require("lazy.core.config").options.root }) end,
|
||||||
|
desc = "Find Plugin File",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
-- change some options
|
||||||
|
opts = {
|
||||||
|
defaults = {
|
||||||
|
layout_strategy = "horizontal",
|
||||||
|
layout_config = { prompt_position = "top" },
|
||||||
|
sorting_strategy = "ascending",
|
||||||
|
winblend = 0,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
-- add telescope-fzf-native
|
||||||
|
{
|
||||||
|
"telescope.nvim",
|
||||||
|
dependencies = {
|
||||||
|
"nvim-telescope/telescope-fzf-native.nvim",
|
||||||
|
build = "make",
|
||||||
|
config = function()
|
||||||
|
require("telescope").load_extension("fzf")
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
-- add pyright to lspconfig
|
||||||
|
{
|
||||||
|
"neovim/nvim-lspconfig",
|
||||||
|
---@class PluginLspOpts
|
||||||
|
opts = {
|
||||||
|
---@type lspconfig.options
|
||||||
|
servers = {
|
||||||
|
-- pyright will be automatically installed with mason and loaded with lspconfig
|
||||||
|
pyright = {},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
-- add tsserver and setup with typescript.nvim instead of lspconfig
|
||||||
|
{
|
||||||
|
"neovim/nvim-lspconfig",
|
||||||
|
dependencies = {
|
||||||
|
"jose-elias-alvarez/typescript.nvim",
|
||||||
|
init = function()
|
||||||
|
require("lazyvim.util").on_attach(function(_, buffer)
|
||||||
|
-- stylua: ignore
|
||||||
|
vim.keymap.set( "n", "<leader>co", "TypescriptOrganizeImports", { buffer = buffer, desc = "Organize Imports" })
|
||||||
|
vim.keymap.set("n", "<leader>cR", "TypescriptRenameFile", { desc = "Rename File", buffer = buffer })
|
||||||
|
end)
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
---@class PluginLspOpts
|
||||||
|
opts = {
|
||||||
|
---@type lspconfig.options
|
||||||
|
servers = {
|
||||||
|
-- tsserver will be automatically installed with mason and loaded with lspconfig
|
||||||
|
tsserver = {},
|
||||||
|
},
|
||||||
|
-- you can do any additional lsp server setup here
|
||||||
|
-- return true if you don't want this server to be setup with lspconfig
|
||||||
|
---@type table<string, fun(server:string, opts:_.lspconfig.options):boolean?>
|
||||||
|
setup = {
|
||||||
|
-- example to setup with typescript.nvim
|
||||||
|
tsserver = function(_, opts)
|
||||||
|
require("typescript").setup({ server = opts })
|
||||||
|
return true
|
||||||
|
end,
|
||||||
|
-- Specify * to use this function as a fallback for any server
|
||||||
|
-- ["*"] = function(server, opts) end,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
-- for typescript, LazyVim also includes extra specs to properly setup lspconfig,
|
||||||
|
-- treesitter, mason and typescript.nvim. So instead of the above, you can use:
|
||||||
|
{ import = "lazyvim.plugins.extras.lang.typescript" },
|
||||||
|
|
||||||
|
-- add more treesitter parsers
|
||||||
|
{
|
||||||
|
"nvim-treesitter/nvim-treesitter",
|
||||||
|
opts = {
|
||||||
|
ensure_installed = {
|
||||||
|
"bash",
|
||||||
|
"html",
|
||||||
|
"javascript",
|
||||||
|
"json",
|
||||||
|
"lua",
|
||||||
|
"markdown",
|
||||||
|
"markdown_inline",
|
||||||
|
"python",
|
||||||
|
"query",
|
||||||
|
"regex",
|
||||||
|
"tsx",
|
||||||
|
"typescript",
|
||||||
|
"vim",
|
||||||
|
"yaml",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
-- since `vim.tbl_deep_extend`, can only merge tables and not lists, the code above
|
||||||
|
-- would overwrite `ensure_installed` with the new value.
|
||||||
|
-- If you'd rather extend the default config, use the code below instead:
|
||||||
|
{
|
||||||
|
"nvim-treesitter/nvim-treesitter",
|
||||||
|
opts = function(_, opts)
|
||||||
|
-- add tsx and treesitter
|
||||||
|
vim.list_extend(opts.ensure_installed, {
|
||||||
|
"tsx",
|
||||||
|
"typescript",
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
-- the opts function can also be used to change the default opts:
|
||||||
|
{
|
||||||
|
"nvim-lualine/lualine.nvim",
|
||||||
|
event = "VeryLazy",
|
||||||
|
opts = function(_, opts)
|
||||||
|
table.insert(opts.sections.lualine_x, "😄")
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
-- or you can return new options to override all the defaults
|
||||||
|
{
|
||||||
|
"nvim-lualine/lualine.nvim",
|
||||||
|
event = "VeryLazy",
|
||||||
|
opts = function()
|
||||||
|
return {
|
||||||
|
--[[add your custom lualine config here]]
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
-- use mini.starter instead of alpha
|
||||||
|
{ import = "lazyvim.plugins.extras.ui.mini-starter" },
|
||||||
|
|
||||||
|
-- add jsonls and schemastore packages, and setup treesitter for json, json5 and jsonc
|
||||||
|
{ import = "lazyvim.plugins.extras.lang.json" },
|
||||||
|
|
||||||
|
-- add any tools you want to have installed below
|
||||||
|
{
|
||||||
|
"williamboman/mason.nvim",
|
||||||
|
opts = {
|
||||||
|
ensure_installed = {
|
||||||
|
"stylua",
|
||||||
|
"shellcheck",
|
||||||
|
"shfmt",
|
||||||
|
"flake8",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Use <tab> for completion and snippets (supertab)
|
||||||
|
-- first: disable default <tab> and <s-tab> behavior in LuaSnip
|
||||||
|
{
|
||||||
|
"L3MON4D3/LuaSnip",
|
||||||
|
keys = function()
|
||||||
|
return {}
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
-- then: setup supertab in cmp
|
||||||
|
{
|
||||||
|
"hrsh7th/nvim-cmp",
|
||||||
|
dependencies = {
|
||||||
|
"hrsh7th/cmp-emoji",
|
||||||
|
},
|
||||||
|
---@param opts cmp.ConfigSchema
|
||||||
|
opts = function(_, opts)
|
||||||
|
local has_words_before = function()
|
||||||
|
unpack = unpack or table.unpack
|
||||||
|
local line, col = unpack(vim.api.nvim_win_get_cursor(0))
|
||||||
|
return col ~= 0 and vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub(col, col):match("%s") == nil
|
||||||
|
end
|
||||||
|
|
||||||
|
local luasnip = require("luasnip")
|
||||||
|
local cmp = require("cmp")
|
||||||
|
|
||||||
|
opts.mapping = vim.tbl_extend("force", opts.mapping, {
|
||||||
|
["<Tab>"] = cmp.mapping(function(fallback)
|
||||||
|
if cmp.visible() then
|
||||||
|
cmp.select_next_item()
|
||||||
|
-- You could replace the expand_or_jumpable() calls with expand_or_locally_jumpable()
|
||||||
|
-- this way you will only jump inside the snippet region
|
||||||
|
elseif luasnip.expand_or_jumpable() then
|
||||||
|
luasnip.expand_or_jump()
|
||||||
|
elseif has_words_before() then
|
||||||
|
cmp.complete()
|
||||||
|
else
|
||||||
|
fallback()
|
||||||
|
end
|
||||||
|
end, { "i", "s" }),
|
||||||
|
["<S-Tab>"] = cmp.mapping(function(fallback)
|
||||||
|
if cmp.visible() then
|
||||||
|
cmp.select_prev_item()
|
||||||
|
elseif luasnip.jumpable(-1) then
|
||||||
|
luasnip.jump(-1)
|
||||||
|
else
|
||||||
|
fallback()
|
||||||
|
end
|
||||||
|
end, { "i", "s" }),
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
}
|
7
lua/plugins/eyeliner.lua
Normal file
7
lua/plugins/eyeliner.lua
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
return {
|
||||||
|
"jinh0/eyeliner.nvim",
|
||||||
|
opts = {
|
||||||
|
highlight_on_key = true,
|
||||||
|
dim = true,
|
||||||
|
},
|
||||||
|
}
|
@ -1 +0,0 @@
|
|||||||
require('fidget').setup()
|
|
64
lua/plugins/folding.lua
Normal file
64
lua/plugins/folding.lua
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
return {
|
||||||
|
-- add folding range to capabilities
|
||||||
|
{
|
||||||
|
"neovim/nvim-lspconfig",
|
||||||
|
opts = {
|
||||||
|
capabilities = {
|
||||||
|
textDocument = {
|
||||||
|
foldingRange = {
|
||||||
|
dynamicRegistration = false,
|
||||||
|
lineFoldingOnly = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
-- add nvim-ufo
|
||||||
|
{
|
||||||
|
"kevinhwang91/nvim-ufo",
|
||||||
|
dependencies = {
|
||||||
|
"kevinhwang91/promise-async",
|
||||||
|
-- This looks awful, so leaving it disabled
|
||||||
|
-- {
|
||||||
|
-- "luukvbaal/statuscol.nvim",
|
||||||
|
-- config = function()
|
||||||
|
-- local builtin = require("statuscol.builtin")
|
||||||
|
-- require("statuscol").setup({
|
||||||
|
-- relculright = true,
|
||||||
|
-- segments = {
|
||||||
|
-- { text = { builtin.foldfunc }, click = "v:lua.ScFa" },
|
||||||
|
-- { text = { "%s" }, click = "v:lua.ScSa" },
|
||||||
|
-- { text = { builtin.lnumfunc, " " }, click = "v:lua.ScLa" },
|
||||||
|
-- },
|
||||||
|
-- })
|
||||||
|
-- end,
|
||||||
|
-- },
|
||||||
|
},
|
||||||
|
event = "BufReadPost",
|
||||||
|
opts = {
|
||||||
|
provider_selector = function()
|
||||||
|
return { "treesitter", "indent" }
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
init = function()
|
||||||
|
vim.o.foldcolumn = "1" -- '0' is not bad
|
||||||
|
vim.o.foldlevel = 99 -- Using ufo provider need a large value, feel free to decrease the value
|
||||||
|
vim.o.foldlevelstart = 99
|
||||||
|
vim.o.foldenable = true
|
||||||
|
-- disabling since LazyVim already sets this nicely and it was overriding my diff fillchar
|
||||||
|
-- vim.o.fillchars = [[eob: ,fold: ,foldopen:,foldsep: ,foldclose:]]
|
||||||
|
-- Using ufo provider need remap `zR` and `zM`. If Neovim is 0.6.1, remap yourself
|
||||||
|
vim.keymap.set("n", "zR", function()
|
||||||
|
require("ufo").openAllFolds()
|
||||||
|
end)
|
||||||
|
vim.keymap.set("n", "zM", function()
|
||||||
|
require("ufo").closeAllFolds()
|
||||||
|
end)
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
-- Folding preview, by default h and l keys are used.
|
||||||
|
-- On first press of h key, when cursor is on a closed fold, the preview will be shown.
|
||||||
|
-- On second press the preview will be closed and fold will be opened.
|
||||||
|
-- When preview is opened, the l key will close it and open fold. In all other cases these keys will work as usual.
|
||||||
|
{ "anuvyklack/fold-preview.nvim", dependencies = "anuvyklack/keymap-amend.nvim", config = true },
|
||||||
|
}
|
@ -1,9 +1,37 @@
|
|||||||
vim.keymap.set('n', '<leader>gx', [[<Cmd>G<CR>]], { noremap = false, silent = true })
|
return {
|
||||||
vim.keymap.set('n', '<leader>gs', [[<Cmd>Git<CR>]], { noremap = false, silent = true })
|
"tpope/vim-fugitive",
|
||||||
vim.keymap.set('n', '<leader>gd', [[<Cmd>Gdiff<CR>]], { noremap = false, silent = true })
|
dependencies = {
|
||||||
vim.keymap.set('n', '<leader>gc', [[<Cmd>Gcommit<CR>]], { noremap = false, silent = true })
|
"tpope/vim-rhubarb",
|
||||||
vim.keymap.set('n', '<leader>gb', [[<Cmd>Git blame -C<CR>]], { noremap = false, silent = true })
|
},
|
||||||
vim.keymap.set('n', '<leader>gp', [[<Cmd>Git push<CR>]], { noremap = false, silent = true })
|
keys = {
|
||||||
vim.keymap.set('n', '<leader>gf', [[<Cmd>Git push --force<CR>]], { noremap = false, silent = true })
|
{ "<leader>gx", [[<Cmd>G<CR>]], desc = "Toggle [G]it status window" },
|
||||||
vim.keymap.set('n', '<leader>gu', [[<Cmd>Git pull<CR>]], { noremap = false, silent = true })
|
{ "<leader>gs", [[<Cmd>Git<CR>]], desc = "Toggle [G]it [S]tatus window" },
|
||||||
vim.keymap.set('n', '<leader>gh', [[<Cmd>Git diff --cached<CR>]], { noremap = false, silent = true })
|
{
|
||||||
|
"<leader>gfd",
|
||||||
|
[[<Cmd>Gdiffsplit<CR>]],
|
||||||
|
desc = "[G]it [D]iff current file against index with [F]ugitive",
|
||||||
|
},
|
||||||
|
{ "<leader>gc", [[<Cmd>Git commit<CR>]], desc = "[G]it [C]ommit" },
|
||||||
|
{ "<leader>gb", [[<Cmd>Git blame -C<CR>]], desc = "[G]it [B]lame" },
|
||||||
|
{ "<leader>gp", [[<Cmd>Git push<CR>]], desc = "[G]it [P]ush" },
|
||||||
|
{ "<leader>gf", [[<Cmd>Git push --force<CR>]], desc = "[G]it [F]orce push" },
|
||||||
|
{ "<leader>gu", [[<Cmd>Git pull<CR>]], desc = "[G]it p[U]ll" },
|
||||||
|
{
|
||||||
|
"<leader>gh",
|
||||||
|
[[<Cmd>Git diff --cached<CR>]],
|
||||||
|
desc = "[G]it diff current staged changes",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>go",
|
||||||
|
"<cmd>GBrowse<CR>",
|
||||||
|
desc = "[B]rowse [G]it URL for fugitive object under cursor",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>go",
|
||||||
|
":'<,'>GBrowse<CR>",
|
||||||
|
mode = "v",
|
||||||
|
desc = "[B]rowse [G]it URL for selected lines",
|
||||||
|
silent = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
@ -1,41 +1,6 @@
|
|||||||
require('gitsigns').setup({
|
return {
|
||||||
update_debounce = 500,
|
"lewis6991/gitsigns.nvim",
|
||||||
on_attach = function(bufnr)
|
opts = {
|
||||||
local gs = package.loaded.gitsigns
|
current_line_blame = true,
|
||||||
|
},
|
||||||
local function map(mode, l, r, opts)
|
}
|
||||||
opts = opts or {}
|
|
||||||
opts.buffer = bufnr
|
|
||||||
vim.keymap.set(mode, l, r, opts)
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Navigation
|
|
||||||
map('n', ']c', function()
|
|
||||||
if vim.wo.diff then return ']c' end
|
|
||||||
vim.schedule(function() gs.next_hunk() end)
|
|
||||||
return '<Ignore>'
|
|
||||||
end, {expr=true})
|
|
||||||
|
|
||||||
map('n', '[c', function()
|
|
||||||
if vim.wo.diff then return '[c' end
|
|
||||||
vim.schedule(function() gs.prev_hunk() end)
|
|
||||||
return '<Ignore>'
|
|
||||||
end, {expr=true})
|
|
||||||
|
|
||||||
-- Actions
|
|
||||||
map({'n', 'v'}, '<leader>hs', ':Gitsigns stage_hunk<CR>')
|
|
||||||
map({'n', 'v'}, '<leader>hr', ':Gitsigns reset_hunk<CR>')
|
|
||||||
map('n', '<leader>hS', gs.stage_buffer)
|
|
||||||
map('n', '<leader>hu', gs.undo_stage_hunk)
|
|
||||||
map('n', '<leader>hR', gs.reset_buffer)
|
|
||||||
map('n', '<leader>hp', gs.preview_hunk)
|
|
||||||
map('n', '<leader>hb', function() gs.blame_line{full=true} end)
|
|
||||||
map('n', '<leader>tb', gs.toggle_current_line_blame)
|
|
||||||
map('n', '<leader>hd', gs.diffthis)
|
|
||||||
map('n', '<leader>hD', function() gs.diffthis('~') end)
|
|
||||||
map('n', '<leader>td', gs.toggle_deleted)
|
|
||||||
|
|
||||||
-- Text object
|
|
||||||
map({'o', 'x'}, 'ih', ':<C-U>Gitsigns select_hunk<CR>')
|
|
||||||
end
|
|
||||||
})
|
|
||||||
|
@ -1,5 +0,0 @@
|
|||||||
require('goto-preview').setup({
|
|
||||||
default_mappings = true,
|
|
||||||
-- resizing_mappings = true,
|
|
||||||
opacity = 90,
|
|
||||||
})
|
|
8
lua/plugins/goto-preview.lua
Normal file
8
lua/plugins/goto-preview.lua
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
return {
|
||||||
|
"rmagatti/goto-preview",
|
||||||
|
config = function()
|
||||||
|
require("goto-preview").setup({
|
||||||
|
default_mappings = true,
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
}
|
@ -1,23 +0,0 @@
|
|||||||
require("gruvbox").setup({
|
|
||||||
undercurl = true,
|
|
||||||
underline = true,
|
|
||||||
bold = true,
|
|
||||||
italic = true, -- will make italic comments and special strings
|
|
||||||
strikethrough = true,
|
|
||||||
invert_selection = false,
|
|
||||||
invert_signs = false,
|
|
||||||
invert_tabline = false,
|
|
||||||
invert_intend_guides = false,
|
|
||||||
inverse = true, -- invert background for search, diffs, statuslines and errors
|
|
||||||
contrast = "hard", -- can be "hard" or "soft"
|
|
||||||
dim_inactive = true,
|
|
||||||
transparent_mode = false,
|
|
||||||
palette_overrides = {
|
|
||||||
dark1 = '#282828',
|
|
||||||
},
|
|
||||||
overrides = {
|
|
||||||
Pmenu = { bg = '#222222'}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
vim.o.background = "dark"
|
|
||||||
vim.api.nvim_command([[colorscheme gruvbox]])
|
|
18
lua/plugins/gui-font-resize.lua
Normal file
18
lua/plugins/gui-font-resize.lua
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
return {
|
||||||
|
"ktunprasert/gui-font-resize.nvim",
|
||||||
|
config = function()
|
||||||
|
require("gui-font-resize").setup({
|
||||||
|
default_size = 13.0,
|
||||||
|
change_by = 1,
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
keys = {
|
||||||
|
{ "<D-Up>", "<Cmd>GUIFontSizeUp<CR>", desc = "Increase font size" },
|
||||||
|
{ "<D-Down>", "<Cmd>GUIFontSizeDown<CR>", desc = "Decrease font size" },
|
||||||
|
{
|
||||||
|
"<D-0>",
|
||||||
|
"<Cmd>set guifont=Berkeley\\ Mono\\ Variable:h13 | GUIFontSizeSet<CR>",
|
||||||
|
desc = "Set font family and size to default",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
@ -1 +0,0 @@
|
|||||||
require("indent_blankline").setup()
|
|
5
lua/plugins/just.lua
Normal file
5
lua/plugins/just.lua
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
return {
|
||||||
|
"NoahTheDuke/vim-just",
|
||||||
|
event = { "BufReadPre", "BufNewFile" },
|
||||||
|
ft = { "\\cjustfile", "*.just", ".justfile" },
|
||||||
|
}
|
@ -1,5 +0,0 @@
|
|||||||
require('nvim-lastplace').setup({
|
|
||||||
lastplace_ignore_buftype = { 'quickfix', 'nofile', 'help' },
|
|
||||||
lastplace_ignore_filetype = { 'gitcommit', 'gitrebase', 'svn', 'hgcommit' },
|
|
||||||
lastplace_open_folds = true,
|
|
||||||
})
|
|
54
lua/plugins/lsp-lines.lua
Normal file
54
lua/plugins/lsp-lines.lua
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
return {
|
||||||
|
"neovim/nvim-lspconfig",
|
||||||
|
dependencies = {
|
||||||
|
{
|
||||||
|
"WhoIsSethDaniel/toggle-lsp-diagnostics.nvim",
|
||||||
|
config = function()
|
||||||
|
require("toggle_lsp_diagnostics").init({ virtual_text = false })
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"https://git.sr.ht/~whynothugo/lsp_lines.nvim",
|
||||||
|
config = function()
|
||||||
|
require("lsp_lines").setup()
|
||||||
|
end,
|
||||||
|
keys = {
|
||||||
|
{
|
||||||
|
"<leader>xv",
|
||||||
|
function()
|
||||||
|
require("lsp_lines").toggle()
|
||||||
|
require("toggle_lsp_diagnostics").toggle_virtual_text()
|
||||||
|
end,
|
||||||
|
desc = "Toggle lsp_lines diagnostics",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>xy",
|
||||||
|
function()
|
||||||
|
if vim.diagnostic.config().virtual_text then
|
||||||
|
require("toggle_lsp_diagnostics").toggle_virtual_text()
|
||||||
|
else
|
||||||
|
require("lsp_lines").toggle()
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
desc = "Toggle diagnostics virtual display",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>xz",
|
||||||
|
function()
|
||||||
|
if not vim.diagnostic.config().virtual_text then
|
||||||
|
require("lsp_lines").toggle()
|
||||||
|
end
|
||||||
|
require("toggle_lsp_diagnostics").toggle_diagnostics()
|
||||||
|
end,
|
||||||
|
desc = "Toggle all diagnostics",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
opts = {
|
||||||
|
diagnostics = {
|
||||||
|
virtual_text = true,
|
||||||
|
virtual_lines = { only_current_line = true },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
@ -1,82 +0,0 @@
|
|||||||
local on_attach = require('plugins.lsp.on_attach')
|
|
||||||
-- Mappings.
|
|
||||||
-- See `:help vim.diagnostic.*` for documentation on any of the below functions
|
|
||||||
local opts = { noremap=true, silent=true }
|
|
||||||
vim.keymap.set('n', '<space>e', vim.diagnostic.open_float, opts)
|
|
||||||
vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, opts)
|
|
||||||
vim.keymap.set('n', ']d', vim.diagnostic.goto_next, opts)
|
|
||||||
vim.keymap.set('n', '<space>q', vim.diagnostic.setloclist, opts)
|
|
||||||
|
|
||||||
local lsp_flags = {
|
|
||||||
-- This is the default in Nvim 0.7+
|
|
||||||
debounce_text_changes = 150,
|
|
||||||
}
|
|
||||||
require('lspconfig')['pyright'].setup({
|
|
||||||
on_attach = on_attach,
|
|
||||||
flags = lsp_flags,
|
|
||||||
})
|
|
||||||
require('lspconfig')['tsserver'].setup({
|
|
||||||
on_attach = on_attach,
|
|
||||||
flags = lsp_flags,
|
|
||||||
})
|
|
||||||
require('lspconfig')['jsonls'].setup({
|
|
||||||
on_attach = on_attach,
|
|
||||||
flags = lsp_flags,
|
|
||||||
})
|
|
||||||
require('lspconfig')['eslint'].setup({
|
|
||||||
on_attach = on_attach,
|
|
||||||
flags = lsp_flags,
|
|
||||||
})
|
|
||||||
require('lspconfig')['html'].setup({
|
|
||||||
on_attach = on_attach,
|
|
||||||
flags = lsp_flags,
|
|
||||||
})
|
|
||||||
require('lspconfig')['cssls'].setup({
|
|
||||||
on_attach = on_attach,
|
|
||||||
flags = lsp_flags,
|
|
||||||
})
|
|
||||||
-- Setup by rust-tools automatically
|
|
||||||
-- require('lspconfig')['rust_analyzer'].setup({
|
|
||||||
-- on_attach = on_attach,
|
|
||||||
-- flags = lsp_flags,
|
|
||||||
-- -- Server-specific settings...
|
|
||||||
-- settings = {
|
|
||||||
-- ['rust-analyzer'] = {}
|
|
||||||
-- }
|
|
||||||
-- })
|
|
||||||
require('lspconfig')['sumneko_lua'].setup({
|
|
||||||
on_attach = on_attach,
|
|
||||||
flags = lsp_flags,
|
|
||||||
settings = {
|
|
||||||
Lua = {
|
|
||||||
runtime = {
|
|
||||||
-- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)
|
|
||||||
version = 'LuaJIT',
|
|
||||||
},
|
|
||||||
diagnostics = {
|
|
||||||
-- Get the language server to recognize the `vim` global
|
|
||||||
globals = { 'vim' },
|
|
||||||
},
|
|
||||||
workspace = {
|
|
||||||
-- Make the server aware of Neovim runtime files
|
|
||||||
library = vim.api.nvim_get_runtime_file('', true),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
require('lspconfig')['bashls'].setup({
|
|
||||||
on_attach = on_attach,
|
|
||||||
flags = lsp_flags,
|
|
||||||
})
|
|
||||||
require('lspconfig')['marksman'].setup({
|
|
||||||
on_attach = on_attach,
|
|
||||||
flags = lsp_flags,
|
|
||||||
})
|
|
||||||
require('lspconfig')['sqls'].setup({
|
|
||||||
on_attach = on_attach,
|
|
||||||
flags = lsp_flags,
|
|
||||||
})
|
|
||||||
require('lspconfig')['taplo'].setup({
|
|
||||||
on_attach = on_attach,
|
|
||||||
flags = lsp_flags,
|
|
||||||
})
|
|
@ -1,61 +0,0 @@
|
|||||||
-- Use an on_attach function to only map the following keys
|
|
||||||
-- after the language server attaches to the current buffer
|
|
||||||
-- thallada: NOTE: copied also in lsp/init.lua since I can't figure out how to import it here
|
|
||||||
local on_attach = function(_, bufnr)
|
|
||||||
-- Enable completion triggered by <c-x><c-o>
|
|
||||||
vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
|
|
||||||
|
|
||||||
-- Mappings.
|
|
||||||
-- See `:help vim.lsp.*` for documentation on any of the below functions
|
|
||||||
local bufopts = { noremap=true, silent=true, buffer=bufnr }
|
|
||||||
vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, bufopts)
|
|
||||||
vim.keymap.set('n', 'K', vim.lsp.buf.hover, bufopts)
|
|
||||||
vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, bufopts)
|
|
||||||
vim.keymap.set('n', '<M-k>', vim.lsp.buf.signature_help, bufopts)
|
|
||||||
vim.keymap.set('n', '<leader>wa', vim.lsp.buf.add_workspace_folder, bufopts)
|
|
||||||
vim.keymap.set('n', '<leader>wr', vim.lsp.buf.remove_workspace_folder, bufopts)
|
|
||||||
vim.keymap.set('n', '<leader>wl', function()
|
|
||||||
print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
|
|
||||||
end, bufopts)
|
|
||||||
vim.keymap.set('n', '<leader>rn', vim.lsp.buf.rename, bufopts)
|
|
||||||
vim.keymap.set('n', '<leader>ca', vim.lsp.buf.code_action, bufopts)
|
|
||||||
vim.keymap.set('n', 'ga', vim.lsp.buf.code_action, bufopts)
|
|
||||||
vim.keymap.set('n', '<leader>f', function() vim.lsp.buf.format { async = true } end, bufopts)
|
|
||||||
-- vim.keymap.set('n', 'gr', vim.lsp.buf.references, bufopts)
|
|
||||||
-- vim.keymap.set('n', 'gd', vim.lsp.buf.definition, bufopts)
|
|
||||||
-- vim.keymap.set('n', '<leader>D', vim.lsp.buf.type_definition, bufopts)
|
|
||||||
-- vim.keymap.set('n', 'gW', vim.lsp.buf.workspace_symbol, bufopts)
|
|
||||||
-- vim.keymap.set('n', 'g0', vim.lsp.buf.document_symbol, bufopts)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'gr',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').lsp_references()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'gd',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').lsp_definitions()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<leader>D',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').lsp_type_definitions()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'gW',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').lsp_dynamic_workspace_symbols()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'g0',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').lsp_document_symbols()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
end
|
|
||||||
|
|
||||||
return on_attach
|
|
11
lua/plugins/lspconfig.lua
Normal file
11
lua/plugins/lspconfig.lua
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
return {
|
||||||
|
"neovim/nvim-lspconfig",
|
||||||
|
opts = {
|
||||||
|
servers = {
|
||||||
|
clangd = {
|
||||||
|
-- removing .proto from the list of filetypes since clangd doesn't seem to be able to parse them
|
||||||
|
filetypes = { "c", "cpp", "objc", "objcpp", "cuda" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
@ -1 +0,0 @@
|
|||||||
require('lualine').setup()
|
|
22
lua/plugins/lualine.lua
Normal file
22
lua/plugins/lualine.lua
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
return {
|
||||||
|
"nvim-lualine/lualine.nvim",
|
||||||
|
opts = {
|
||||||
|
options = {
|
||||||
|
globalstatus = false,
|
||||||
|
},
|
||||||
|
inactive_sections = {
|
||||||
|
lualine_a = {},
|
||||||
|
lualine_b = {},
|
||||||
|
lualine_c = {
|
||||||
|
{
|
||||||
|
"filename",
|
||||||
|
file_status = true, -- displays file status (readonly status, modified status)
|
||||||
|
path = 1, -- 0 = just filename, 1 = relative path, 2 = absolute path
|
||||||
|
},
|
||||||
|
},
|
||||||
|
lualine_x = { "location", "overseer" },
|
||||||
|
lualine_y = {},
|
||||||
|
lualine_z = {},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
7
lua/plugins/luasnip.lua
Normal file
7
lua/plugins/luasnip.lua
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
-- Disable <tab> and <s-tab> behavior in luasnip for supertab: https://www.lazyvim.org/configuration/recipes#supertab
|
||||||
|
return {
|
||||||
|
"L3MON4D3/LuaSnip",
|
||||||
|
keys = function()
|
||||||
|
return {}
|
||||||
|
end,
|
||||||
|
}
|
@ -1,4 +0,0 @@
|
|||||||
require('mason-lspconfig').setup({
|
|
||||||
ensure_installed = { 'sumneko_lua', 'rust_analyzer', 'bashls', 'cssls', 'html', 'jsonls', 'marskman', 'sqls', 'taplo'},
|
|
||||||
automatic_installation = true,
|
|
||||||
})
|
|
@ -1,3 +0,0 @@
|
|||||||
require('mason').setup({
|
|
||||||
max_concurrent_installers = 10,
|
|
||||||
})
|
|
12
lua/plugins/mini-indentscope.lua
Normal file
12
lua/plugins/mini-indentscope.lua
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
return {
|
||||||
|
"echasnovski/mini.indentscope",
|
||||||
|
enabled = true,
|
||||||
|
opts = {
|
||||||
|
draw = {
|
||||||
|
-- Speed up distracting animation
|
||||||
|
animation = function()
|
||||||
|
return 1
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
9
lua/plugins/neo-tree.lua
Normal file
9
lua/plugins/neo-tree.lua
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
return {
|
||||||
|
"nvim-neo-tree/neo-tree.nvim",
|
||||||
|
opts = {
|
||||||
|
source_selector = {
|
||||||
|
winbar = true,
|
||||||
|
statusline = false,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
@ -1,17 +1,40 @@
|
|||||||
local neotest = require('neotest')
|
return {
|
||||||
neotest.setup({
|
"nvim-neotest/neotest",
|
||||||
adapters = {
|
dependencies = {
|
||||||
require('neotest-rust'),
|
"adrigzr/neotest-mocha",
|
||||||
},
|
},
|
||||||
})
|
opts = function()
|
||||||
|
return {
|
||||||
vim.keymap.set("n", "<leader>t", function() neotest.run.run() end)
|
adapters = {
|
||||||
vim.keymap.set("n", "<leader>tf", function() neotest.run.run(vim.fn.expand('%')) end)
|
["neotest-mocha"] = {
|
||||||
vim.keymap.set("n", "<leader>tt", function() neotest.run.run({ strategy = 'dap' }) end)
|
command = "npx ts-mocha --config ./test-integration/.mocharc.json -r tsconfig-paths/register -r ./test/config-mutation-setup.ts -r ./test-integration/hooks.ts",
|
||||||
vim.keymap.set("n", "<leader>ta", function() neotest.run.attach() end)
|
command_args = function(context)
|
||||||
vim.keymap.set("n", "<leader>to", function() neotest.output.open({ enter = true }) end)
|
-- The context contains:
|
||||||
vim.keymap.set("n", "<leader>ts", function() neotest.summary.toggle() end)
|
-- results_path: The file that json results are written to
|
||||||
|
-- test_name_pattern: The generated pattern for the test
|
||||||
vim.diagnostic.config({
|
-- path: The path to the test file
|
||||||
neotest = true,
|
--
|
||||||
}, vim.api.nvim_create_namespace('neotest'))
|
-- It should return a string array of arguments
|
||||||
|
--
|
||||||
|
-- Not specifying 'command_args' will use the defaults below
|
||||||
|
local relative_path = vim.fn.fnamemodify(context.path, ":.")
|
||||||
|
return {
|
||||||
|
"--full-trace",
|
||||||
|
"--reporter=json",
|
||||||
|
"--reporter-options=output=" .. context.results_path,
|
||||||
|
"--grep=" .. context.test_name_pattern,
|
||||||
|
relative_path,
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
env = { CI = true, NODE_OPTIONS = "--trace-warnings --max-old-space-size=8192", NODE_ENV = "test" },
|
||||||
|
cwd = function()
|
||||||
|
return vim.fn.getcwd()
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
consumers = {
|
||||||
|
overseer = require("neotest.consumers.overseer"),
|
||||||
|
},
|
||||||
|
}
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
16
lua/plugins/noice.lua
Normal file
16
lua/plugins/noice.lua
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
return {
|
||||||
|
"folke/noice.nvim",
|
||||||
|
event = "VeryLazy",
|
||||||
|
-- thallada: REMOVE THIS once this issue is fixed: https://github.com/yioneko/vtsls/issues/159
|
||||||
|
opts = {
|
||||||
|
routes = {
|
||||||
|
{
|
||||||
|
filter = {
|
||||||
|
event = "notify",
|
||||||
|
find = "Request textDocument/inlayHint failed",
|
||||||
|
},
|
||||||
|
opts = { skip = true },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
@ -1,6 +0,0 @@
|
|||||||
require("numb").setup({
|
|
||||||
show_numbers = true, -- Enable 'number' for the window while peeking
|
|
||||||
show_cursorline = true, -- Enable 'cursorline' for the window while peeking
|
|
||||||
number_only = false, -- Peek only when the command is only a number instead of when it starts with a number
|
|
||||||
centered_peeking = true, -- Peeked line will be centered relative to window
|
|
||||||
})
|
|
11
lua/plugins/numb.lua
Normal file
11
lua/plugins/numb.lua
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
return {
|
||||||
|
"nacro90/numb.nvim",
|
||||||
|
config = function()
|
||||||
|
require("numb").setup({
|
||||||
|
show_numbers = true, -- Enable 'number' for the window while peeking
|
||||||
|
show_cursorline = true, -- Enable 'cursorline' for the window while peeking
|
||||||
|
number_only = false, -- Peek only when the command is only a number instead of when it starts with a number
|
||||||
|
centered_peeking = true, -- Peeked line will be centered releative to window
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
}
|
@ -1,28 +0,0 @@
|
|||||||
local npairs = require("nvim-autopairs")
|
|
||||||
local Rule = require('nvim-autopairs.rule')
|
|
||||||
local cmp = require('cmp')
|
|
||||||
local cmp_autopairs = require('nvim-autopairs.completion.cmp')
|
|
||||||
|
|
||||||
npairs.setup({
|
|
||||||
check_ts = true,
|
|
||||||
ts_config = {
|
|
||||||
lua = {'string'},-- it will not add a pair on that treesitter node
|
|
||||||
javascript = {'template_string'},
|
|
||||||
java = false,-- don't check treesitter on java
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
local ts_conds = require('nvim-autopairs.ts-conds')
|
|
||||||
|
|
||||||
-- press % => %% only while inside a comment or string
|
|
||||||
npairs.add_rules({
|
|
||||||
Rule("%", "%", "lua")
|
|
||||||
:with_pair(ts_conds.is_ts_node({'string','comment'})),
|
|
||||||
Rule("$", "$", "lua")
|
|
||||||
:with_pair(ts_conds.is_not_ts_node({'function'}))
|
|
||||||
})
|
|
||||||
|
|
||||||
cmp.event:on(
|
|
||||||
'confirm_done',
|
|
||||||
cmp_autopairs.on_confirm_done()
|
|
||||||
)
|
|
@ -1,116 +1,83 @@
|
|||||||
local cmp = require'cmp'
|
-- Configure nvim-cmp with "supertab"-like behavior for LuaSnip integration: https://www.lazyvim.org/configuration/recipes#supertab
|
||||||
|
-- Also, prevent autocomplete from automatically selecting the first item in the list on <CR>, and instead require the user to press <Tab> to select the first item.
|
||||||
cmp.setup({
|
|
||||||
experimental = { ghost_text = true },
|
|
||||||
snippet = {
|
|
||||||
-- REQUIRED - you must specify a snippet engine
|
|
||||||
expand = function(args)
|
|
||||||
vim.fn['vsnip#anonymous'](args.body) -- For `vsnip` users.
|
|
||||||
-- require('luasnip').lsp_expand(args.body) -- For `luasnip` users.
|
|
||||||
-- require('snippy').expand_snippet(args.body) -- For `snippy` users.
|
|
||||||
-- vim.fn["UltiSnips#Anon"](args.body) -- For `ultisnips` users.
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
window = {
|
|
||||||
-- completion = cmp.config.window.bordered(),
|
|
||||||
-- documentation = cmp.config.window.bordered(),
|
|
||||||
},
|
|
||||||
mapping = cmp.mapping.preset.insert({
|
|
||||||
['<C-b>'] = cmp.mapping.scroll_docs(-4),
|
|
||||||
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
|
||||||
['<C-Space>'] = cmp.mapping.complete(),
|
|
||||||
['<C-e>'] = cmp.mapping.abort(),
|
|
||||||
['<CR>'] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
|
|
||||||
["<Tab>"] = cmp.mapping(function(fallback)
|
|
||||||
if cmp.visible() then
|
|
||||||
cmp.select_next_item()
|
|
||||||
else
|
|
||||||
fallback()
|
|
||||||
end
|
|
||||||
end, { "i", "s" }),
|
|
||||||
["<S-Tab>"] = cmp.mapping(function(fallback)
|
|
||||||
if cmp.visible() then
|
|
||||||
cmp.select_prev_item()
|
|
||||||
else
|
|
||||||
fallback()
|
|
||||||
end
|
|
||||||
end, { "i", "s" }),
|
|
||||||
}),
|
|
||||||
sources = cmp.config.sources({
|
|
||||||
{
|
|
||||||
name = 'nvim_lsp_signature_help',
|
|
||||||
priority = 100,
|
|
||||||
group_index = 1,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name = 'nvim_lsp',
|
|
||||||
priority = 100,
|
|
||||||
group_index = 1,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name = 'buffer',
|
|
||||||
priority = 80,
|
|
||||||
group_index = 3,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name = 'path',
|
|
||||||
priority = 80,
|
|
||||||
group_index = 3,
|
|
||||||
},
|
|
||||||
{ name = 'vsnip' }, -- For vsnip users.
|
|
||||||
-- { name = 'luasnip' }, -- For luasnip users.
|
|
||||||
-- { name = 'ultisnips' }, -- For ultisnips users.
|
|
||||||
-- { name = 'snippy' }, -- For snippy users.
|
|
||||||
}),
|
|
||||||
sorting = {
|
|
||||||
comparators = {
|
|
||||||
function(...) return require('cmp_buffer'):compare_locality(...) end,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Set configuration for specific filetype.
|
|
||||||
cmp.setup.filetype('gitcommit', {
|
|
||||||
sources = cmp.config.sources({
|
|
||||||
{ name = 'cmp_git' }, -- You can specify the `cmp_git` source if you were installed it.
|
|
||||||
}, {
|
|
||||||
{ name = 'buffer' },
|
|
||||||
})
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Use buffer source for `/` and `?` (if you enabled `native_menu`, this won't work anymore).
|
|
||||||
cmp.setup.cmdline({ '/', '?' }, {
|
|
||||||
mapping = cmp.mapping.preset.cmdline(),
|
|
||||||
sources = {
|
|
||||||
{ name = 'buffer' }
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Use cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore).
|
|
||||||
cmp.setup.cmdline(':', {
|
|
||||||
mapping = cmp.mapping.preset.cmdline(),
|
|
||||||
sources = cmp.config.sources({
|
|
||||||
{ name = 'path' }
|
|
||||||
}, {
|
|
||||||
{ name = 'cmdline', keyword_pattern=[=[[^[:blank:]\!]*]=], keyword_length=3 }
|
|
||||||
})
|
|
||||||
})
|
|
||||||
|
|
||||||
-- Add additional capabilities supported by nvim-cmp
|
|
||||||
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
|
||||||
capabilities = require('cmp_nvim_lsp').update_capabilities(capabilities)
|
|
||||||
|
|
||||||
local lspconfig = require("lspconfig")
|
|
||||||
|
|
||||||
-- Enable some language servers with the additional completion capabilities offered by nvim-cmp
|
|
||||||
local servers = { 'pyright', 'tsserver', 'html', 'cssls' }
|
|
||||||
for _, lsp in ipairs(servers) do
|
|
||||||
lspconfig[lsp].setup({
|
|
||||||
-- on_attach = my_custom_on_attach,
|
|
||||||
capabilities = capabilities,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
capabilities,
|
"hrsh7th/nvim-cmp",
|
||||||
|
dependencies = {
|
||||||
|
"hrsh7th/cmp-calc",
|
||||||
|
"hrsh7th/cmp-emoji",
|
||||||
|
"hrsh7th/cmp-cmdline",
|
||||||
|
"petertriho/cmp-git",
|
||||||
|
},
|
||||||
|
---@param opts cmp.ConfigSchema
|
||||||
|
opts = function(_, opts)
|
||||||
|
local has_words_before = function()
|
||||||
|
unpack = unpack or table.unpack
|
||||||
|
local line, col = unpack(vim.api.nvim_win_get_cursor(0))
|
||||||
|
return col ~= 0 and vim.api.nvim_buf_get_lines(0, line - 1, line, true)[1]:sub(col, col):match("%s") == nil
|
||||||
|
end
|
||||||
|
|
||||||
|
local luasnip = require("luasnip")
|
||||||
|
local cmp = require("cmp")
|
||||||
|
|
||||||
|
opts.mapping = vim.tbl_extend("force", opts.mapping, {
|
||||||
|
["<Tab>"] = cmp.mapping(function(fallback)
|
||||||
|
-- This bit is for preventing auto-completion auto-triggering from copilot-cmp:
|
||||||
|
-- https://github.com/zbirenbaum/copilot-cmp?tab=readme-ov-file#tab-completion-configuration-highly-recommended
|
||||||
|
if cmp.visible() and has_words_before() then
|
||||||
|
-- You could replace select_next_item() with confirm({ select = true }) to get VS Code autocompletion behavior
|
||||||
|
cmp.select_next_item({ behavior = cmp.SelectBehavior.Select })
|
||||||
|
-- You could replace the expand_or_jumpable() calls with expand_or_locally_jumpable()
|
||||||
|
-- this way you will only jump inside the snippet region
|
||||||
|
elseif luasnip.expand_or_jumpable() then
|
||||||
|
luasnip.expand_or_jump()
|
||||||
|
elseif has_words_before() then
|
||||||
|
cmp.complete()
|
||||||
|
else
|
||||||
|
fallback()
|
||||||
|
end
|
||||||
|
end, { "i", "s" }),
|
||||||
|
["<S-Tab>"] = cmp.mapping(function(fallback)
|
||||||
|
if cmp.visible() then
|
||||||
|
cmp.select_prev_item()
|
||||||
|
elseif luasnip.jumpable(-1) then
|
||||||
|
luasnip.jump(-1)
|
||||||
|
else
|
||||||
|
fallback()
|
||||||
|
end
|
||||||
|
end, { "i", "s" }),
|
||||||
|
["<CR>"] = cmp.mapping.confirm({ select = false }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Do not auto-select the first auto-complete item, require a <Tab> to select the first item.
|
||||||
|
opts.completion.completeopt = "menu,menuone,noinsert,noselect"
|
||||||
|
|
||||||
|
opts.sources = cmp.config.sources(vim.list_extend(opts.sources, {
|
||||||
|
{ name = "emoji" },
|
||||||
|
{ name = "git" },
|
||||||
|
{ name = "calc" },
|
||||||
|
}))
|
||||||
|
|
||||||
|
-- `/` cmdline setup.
|
||||||
|
cmp.setup.cmdline("/", {
|
||||||
|
mapping = cmp.mapping.preset.cmdline(),
|
||||||
|
sources = {
|
||||||
|
{ name = "buffer" },
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
-- `:` cmdline setup.
|
||||||
|
cmp.setup.cmdline(":", {
|
||||||
|
mapping = cmp.mapping.preset.cmdline(),
|
||||||
|
sources = cmp.config.sources({
|
||||||
|
{ name = "path" },
|
||||||
|
}, {
|
||||||
|
{
|
||||||
|
name = "cmdline",
|
||||||
|
option = {
|
||||||
|
ignore_cmds = { "Man", "!" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}),
|
||||||
|
})
|
||||||
|
end,
|
||||||
}
|
}
|
||||||
|
@ -1 +0,0 @@
|
|||||||
require('dapui').setup()
|
|
@ -1 +0,0 @@
|
|||||||
require('nvim-dap-virtual-text').setup()
|
|
@ -1,27 +0,0 @@
|
|||||||
-- thallada: this is setup in rust-tools
|
|
||||||
local dap = require('dap')
|
|
||||||
-- dap.adapters.codelldb = {
|
|
||||||
-- type = 'server',
|
|
||||||
-- port = '${port}',
|
|
||||||
-- executable = {
|
|
||||||
-- command = '/home/thallada/vscode-lldb/extension/adapter/codelldb',
|
|
||||||
-- args = { '--port', '${port}'}
|
|
||||||
-- }
|
|
||||||
-- }
|
|
||||||
-- dap.configurations.rust = {
|
|
||||||
-- {
|
|
||||||
-- name = "Launch file",
|
|
||||||
-- type = "codelldb",
|
|
||||||
-- request = "launch",
|
|
||||||
-- program = function()
|
|
||||||
-- return vim.fn.input('Path to executable: ', vim.fn.getcwd() .. '/', 'file')
|
|
||||||
-- end,
|
|
||||||
-- cwd = '${workspaceFolder}',
|
|
||||||
-- stopOnEntry = true,
|
|
||||||
-- },
|
|
||||||
-- }
|
|
||||||
|
|
||||||
vim.keymap.set('n', '<leader>b', [[<Cmd>lua require('dap').toggle_breakpoint()<CR>]])
|
|
||||||
vim.keymap.set('n', '<leader>be', [[<Cmd>lua require('dap').set_exception_breakpoints()<CR>]])
|
|
||||||
vim.keymap.set('n', '<leader>bc', [[<Cmd>lua require('dap').clear_breakpoints()<CR>]])
|
|
||||||
vim.keymap.set('n', '<leader>bo', [[<Cmd>lua require('dapui').toggle()<CR>]])
|
|
@ -1 +0,0 @@
|
|||||||
require('nvim-lightbulb').setup({ autocmd = { enabled = true } })
|
|
@ -1,29 +0,0 @@
|
|||||||
require('nvim-tree').setup({
|
|
||||||
hijack_netrw = true,
|
|
||||||
hijack_directories = {
|
|
||||||
enable = true,
|
|
||||||
auto_open = true,
|
|
||||||
},
|
|
||||||
view = {
|
|
||||||
mappings = {
|
|
||||||
list = {
|
|
||||||
{ key = "<CR>", action = "edit_in_place" },
|
|
||||||
{ key = "<C-i>", action = "toggle_file_info" },
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
remove_keymaps = {
|
|
||||||
'<C-k>'
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
local function toggle_replace()
|
|
||||||
local view = require('nvim-tree.view')
|
|
||||||
if view.is_visible() then
|
|
||||||
view.close()
|
|
||||||
else
|
|
||||||
require('nvim-tree').open_replacing_current_buffer()
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
vim.keymap.set('n', '-', function() toggle_replace() end, { noremap = true, silent = true })
|
|
@ -1,5 +0,0 @@
|
|||||||
require('treesitter-context').setup{
|
|
||||||
enable = true,
|
|
||||||
max_lines = 0,
|
|
||||||
min_window_height = 10,
|
|
||||||
}
|
|
@ -1,72 +0,0 @@
|
|||||||
require('nvim-treesitter.configs').setup {
|
|
||||||
ensure_installed = 'all',
|
|
||||||
ignore_install = { 'phpdoc' },
|
|
||||||
|
|
||||||
sync_install = false,
|
|
||||||
auto_install = true,
|
|
||||||
|
|
||||||
highlight = {
|
|
||||||
enable = true,
|
|
||||||
},
|
|
||||||
incremental_selection = {
|
|
||||||
enable = true,
|
|
||||||
keymaps = {
|
|
||||||
init_selection = "gnn",
|
|
||||||
node_incremental = "grn",
|
|
||||||
scope_incremental = "grc",
|
|
||||||
node_decremental = "grm",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
indent = {
|
|
||||||
enable = true
|
|
||||||
},
|
|
||||||
textobjects = {
|
|
||||||
select = {
|
|
||||||
enable = true,
|
|
||||||
lookahead = true,
|
|
||||||
keymaps = {
|
|
||||||
['af'] = '@function.outer',
|
|
||||||
['if'] = '@function.inner',
|
|
||||||
['ac'] = '@class.outer',
|
|
||||||
['ic'] = '@class.inner',
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
autotag = {
|
|
||||||
enable = true,
|
|
||||||
},
|
|
||||||
refactor = {
|
|
||||||
highlight_definitions = {
|
|
||||||
enable = true,
|
|
||||||
clear_on_cursor_move = true,
|
|
||||||
},
|
|
||||||
smart_rename = {
|
|
||||||
enable = true,
|
|
||||||
keymaps = {
|
|
||||||
smart_rename = 'grr',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
context_commentstring = {
|
|
||||||
enable = true,
|
|
||||||
enable_autocmd = false,
|
|
||||||
},
|
|
||||||
pairs = {
|
|
||||||
enable = true,
|
|
||||||
disable = {},
|
|
||||||
highlight_pair_events = {}, -- e.g. {"CursorMoved"}, -- when to highlight the pairs, use {} to deactivate highlighting
|
|
||||||
highlight_self = false, -- whether to highlight also the part of the pair under cursor (or only the partner)
|
|
||||||
goto_right_end = false, -- whether to go to the end of the right partner or the beginning
|
|
||||||
fallback_cmd_normal = "call matchit#Match_wrapper('',1,'n')", -- What command to issue when we can't find a pair (e.g. "normal! %")
|
|
||||||
keymaps = {
|
|
||||||
goto_partner = "<leader>%",
|
|
||||||
delete_balanced = "X",
|
|
||||||
},
|
|
||||||
delete_balanced = {
|
|
||||||
only_on_first_char = false, -- whether to trigger balanced delete when on first character of a pair
|
|
||||||
fallback_cmd_normal = nil, -- fallback command when no pair found, can be nil
|
|
||||||
longest_partner = false, -- whether to delete the longest or the shortest pair when multiple found.
|
|
||||||
-- E.g. whether to delete the angle bracket or whole tag in <pair> </pair>
|
|
||||||
}
|
|
||||||
},
|
|
||||||
}
|
|
20
lua/plugins/octo.lua
Normal file
20
lua/plugins/octo.lua
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
return {
|
||||||
|
"pwntester/octo.nvim",
|
||||||
|
dependencies = {
|
||||||
|
"nvim-lua/plenary.nvim",
|
||||||
|
"nvim-telescope/telescope.nvim",
|
||||||
|
-- OR 'ibhagwan/fzf-lua',
|
||||||
|
"nvim-tree/nvim-web-devicons",
|
||||||
|
},
|
||||||
|
cmd = {
|
||||||
|
"Octo",
|
||||||
|
},
|
||||||
|
opt = {
|
||||||
|
mappings = {
|
||||||
|
pull_request = {
|
||||||
|
next_comment = { lhs = "<space>]c", desc = "go to next comment" },
|
||||||
|
prev_comment = { lhs = "<space>[c", desc = "go to previous comment" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
30
lua/plugins/oil.lua
Normal file
30
lua/plugins/oil.lua
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
return {
|
||||||
|
"stevearc/oil.nvim",
|
||||||
|
opts = {
|
||||||
|
-- remapping is not working, so redefine defaults with C-l and C-h swapped for C-f and C-i
|
||||||
|
-- see: https://github.com/stevearc/oil.nvim/issues/217
|
||||||
|
use_default_keymaps = false,
|
||||||
|
keymaps = {
|
||||||
|
["g?"] = "actions.show_help",
|
||||||
|
["<CR>"] = "actions.select",
|
||||||
|
["<C-s>"] = "actions.select_vsplit",
|
||||||
|
["<C-i>"] = "actions.select_split",
|
||||||
|
["<C-t>"] = "actions.select_tab",
|
||||||
|
["<C-p>"] = "actions.preview",
|
||||||
|
["<C-c>"] = "actions.close",
|
||||||
|
["<C-f>"] = "actions.refresh",
|
||||||
|
["-"] = "actions.parent",
|
||||||
|
["_"] = "actions.open_cwd",
|
||||||
|
["`"] = "actions.cd",
|
||||||
|
["~"] = "actions.tcd",
|
||||||
|
["gs"] = "actions.change_sort",
|
||||||
|
["gx"] = "actions.open_external",
|
||||||
|
["g."] = "actions.toggle_hidden",
|
||||||
|
["g\\"] = "actions.toggle_trash",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
dependencies = { "nvim-tree/nvim-web-devicons" },
|
||||||
|
keys = {
|
||||||
|
{ "-", "<cmd>Oil<cr>", { desc = "Open parent directory in current buffer" } },
|
||||||
|
},
|
||||||
|
}
|
11
lua/plugins/overseer.lua
Normal file
11
lua/plugins/overseer.lua
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
return {
|
||||||
|
"stevearc/overseer.nvim",
|
||||||
|
opts = {
|
||||||
|
task_list = {
|
||||||
|
direction = "left",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
keys = {
|
||||||
|
{ "<leader>o", "<cmd>OverseerToggle<CR>", desc = "Toggle Overseer Panel" },
|
||||||
|
},
|
||||||
|
}
|
6
lua/plugins/pqf.lua
Normal file
6
lua/plugins/pqf.lua
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
return {
|
||||||
|
"yorickpeterse/nvim-pqf",
|
||||||
|
config = function()
|
||||||
|
require("pqf").setup()
|
||||||
|
end,
|
||||||
|
}
|
@ -1,51 +0,0 @@
|
|||||||
local rt = require('rust-tools')
|
|
||||||
local lsp_on_attach = require('plugins.lsp.on_attach')
|
|
||||||
local nvim_cmp_capabilities = require('plugins.nvim-cmp').capabilities
|
|
||||||
|
|
||||||
local extension_path = vim.env.HOME .. '/vscode-lldb/extension/'
|
|
||||||
local codelldb_path = extension_path .. 'adapter/codelldb'
|
|
||||||
local liblldb_path = extension_path .. 'lldb/lib/liblldb.so'
|
|
||||||
|
|
||||||
rt.setup({
|
|
||||||
tools = {
|
|
||||||
runnables = {
|
|
||||||
use_telescope = true
|
|
||||||
},
|
|
||||||
},
|
|
||||||
server = {
|
|
||||||
capabilities = nvim_cmp_capabilities,
|
|
||||||
on_attach = function(client, bufnr)
|
|
||||||
lsp_on_attach(client, bufnr)
|
|
||||||
vim.keymap.set("n", "<C-space>", rt.hover_actions.hover_actions, { buffer = bufnr })
|
|
||||||
-- Code action groups
|
|
||||||
vim.keymap.set("n", "<Leader>a", rt.code_action_group.code_action_group, { buffer = bufnr })
|
|
||||||
vim.keymap.set("n", "<leader>rc", rt.open_cargo_toml.open_cargo_toml, { buffer = bufnr })
|
|
||||||
vim.keymap.set("n", "<leader>rp", rt.parent_module.parent_module, { buffer = bufnr })
|
|
||||||
vim.keymap.set("n", "<leader>rm", rt.expand_macro.expand_macro, { buffer = bufnr })
|
|
||||||
end,
|
|
||||||
settings = {
|
|
||||||
-- to enable rust-analyzer settings visit:
|
|
||||||
-- https://github.com/rust-analyzer/rust-analyzer/blob/master/docs/user/generated_config.adoc
|
|
||||||
["rust-analyzer"] = {
|
|
||||||
-- enable clippy on save
|
|
||||||
checkOnSave = {
|
|
||||||
command = "clippy"
|
|
||||||
},
|
|
||||||
}
|
|
||||||
},
|
|
||||||
},
|
|
||||||
dap = {
|
|
||||||
adapter = require('rust-tools.dap').get_codelldb_adapter(
|
|
||||||
codelldb_path,
|
|
||||||
liblldb_path
|
|
||||||
)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
vim.api.nvim_create_autocmd('BufRead', {
|
|
||||||
group = vim.api.nvim_create_augroup('CmpSourceCargo', { clear = true }),
|
|
||||||
pattern = 'Cargo.toml',
|
|
||||||
callback = function()
|
|
||||||
require('cmp').setup.buffer({ sources = { { name = 'crates' } } })
|
|
||||||
end,
|
|
||||||
})
|
|
134
lua/plugins/smart-splits.lua
Normal file
134
lua/plugins/smart-splits.lua
Normal file
@ -0,0 +1,134 @@
|
|||||||
|
return {
|
||||||
|
"mrjones2014/smart-splits.nvim",
|
||||||
|
keys = {
|
||||||
|
{
|
||||||
|
"<A-h>",
|
||||||
|
function()
|
||||||
|
require("smart-splits").resize_left()
|
||||||
|
end,
|
||||||
|
desc = "Resize left",
|
||||||
|
mode = { "n", "t" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<A-j>",
|
||||||
|
function()
|
||||||
|
require("smart-splits").resize_down()
|
||||||
|
end,
|
||||||
|
desc = "Resize down",
|
||||||
|
mode = { "n", "t" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<A-k>",
|
||||||
|
function()
|
||||||
|
require("smart-splits").resize_up()
|
||||||
|
end,
|
||||||
|
desc = "Resize up",
|
||||||
|
mode = { "n", "t" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<A-l>",
|
||||||
|
function()
|
||||||
|
require("smart-splits").resize_right()
|
||||||
|
end,
|
||||||
|
desc = "Resize right",
|
||||||
|
mode = { "n", "t" },
|
||||||
|
},
|
||||||
|
-- because ShareMouse isn't mapping Alt to Option correctly...
|
||||||
|
{
|
||||||
|
"˙",
|
||||||
|
function()
|
||||||
|
require("smart-splits").resize_left()
|
||||||
|
end,
|
||||||
|
desc = "Resize left",
|
||||||
|
mode = { "n", "t" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"∆",
|
||||||
|
function()
|
||||||
|
require("smart-splits").resize_down()
|
||||||
|
end,
|
||||||
|
desc = "Resize down",
|
||||||
|
mode = { "n", "t" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"˚",
|
||||||
|
function()
|
||||||
|
require("smart-splits").resize_up()
|
||||||
|
end,
|
||||||
|
desc = "Resize up",
|
||||||
|
mode = { "n", "t" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"¬",
|
||||||
|
function()
|
||||||
|
require("smart-splits").resize_right()
|
||||||
|
end,
|
||||||
|
desc = "Resize right",
|
||||||
|
mode = { "n", "t" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<C-h>",
|
||||||
|
function()
|
||||||
|
require("smart-splits").move_cursor_left()
|
||||||
|
end,
|
||||||
|
desc = "Move cursor left",
|
||||||
|
mode = { "n", "t" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<C-j>",
|
||||||
|
function()
|
||||||
|
require("smart-splits").move_cursor_down()
|
||||||
|
end,
|
||||||
|
desc = "Move cursor down",
|
||||||
|
mode = { "n", "t" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<C-k>",
|
||||||
|
function()
|
||||||
|
require("smart-splits").move_cursor_up()
|
||||||
|
end,
|
||||||
|
desc = "Move cursor up",
|
||||||
|
mode = { "n", "t" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<C-l>",
|
||||||
|
function()
|
||||||
|
require("smart-splits").move_cursor_right()
|
||||||
|
end,
|
||||||
|
desc = "Move cursor right",
|
||||||
|
mode = { "n", "t" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<C-A-h>",
|
||||||
|
function()
|
||||||
|
require("smart-splits").swap_buf_left()
|
||||||
|
end,
|
||||||
|
desc = "Swap buffer left",
|
||||||
|
mode = { "n", "t" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<C-A-j>",
|
||||||
|
function()
|
||||||
|
require("smart-splits").swap_buf_down()
|
||||||
|
end,
|
||||||
|
desc = "Swap buffer down",
|
||||||
|
mode = { "n", "t" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<C-A-k>",
|
||||||
|
function()
|
||||||
|
require("smart-splits").swap_buf_up()
|
||||||
|
end,
|
||||||
|
desc = "Swap buffer up",
|
||||||
|
mode = { "n", "t" },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<C-A-l>",
|
||||||
|
function()
|
||||||
|
require("smart-splits").swap_buf_right()
|
||||||
|
end,
|
||||||
|
desc = "Swap buffer right",
|
||||||
|
mode = { "n", "t" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
22
lua/plugins/smartcolumn.lua
Normal file
22
lua/plugins/smartcolumn.lua
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
return {
|
||||||
|
"m4xshen/smartcolumn.nvim",
|
||||||
|
opts = {
|
||||||
|
disabled_filetypes = {
|
||||||
|
"help",
|
||||||
|
"text",
|
||||||
|
"markdown",
|
||||||
|
"dashboard",
|
||||||
|
"lazy",
|
||||||
|
"Avante",
|
||||||
|
"NvimTree",
|
||||||
|
"mason",
|
||||||
|
"checkhealth",
|
||||||
|
"lspinfo",
|
||||||
|
"noice",
|
||||||
|
"Trouble",
|
||||||
|
"fish",
|
||||||
|
"zsh",
|
||||||
|
},
|
||||||
|
colorcolumn = "120",
|
||||||
|
},
|
||||||
|
}
|
13
lua/plugins/ssr.lua
Normal file
13
lua/plugins/ssr.lua
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
return {
|
||||||
|
"cshuaimin/ssr.nvim",
|
||||||
|
keys = {
|
||||||
|
{
|
||||||
|
"<leader>sR",
|
||||||
|
function()
|
||||||
|
require("ssr").open()
|
||||||
|
end,
|
||||||
|
mode = { "n", "x" },
|
||||||
|
desc = "Structural Replace",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
@ -1 +0,0 @@
|
|||||||
require("nvim-surround").setup({})
|
|
@ -1,156 +1,42 @@
|
|||||||
local trouble = require('trouble.providers.telescope')
|
return {
|
||||||
local telescope = require('telescope')
|
"telescope.nvim",
|
||||||
|
dependencies = {
|
||||||
telescope.setup {
|
{
|
||||||
defaults = {
|
"debugloop/telescope-undo.nvim",
|
||||||
mappings = {
|
keys = { { "<leader>U", "<cmd>Telescope undo<cr>" } },
|
||||||
i = {
|
config = function()
|
||||||
['<c-t>'] = trouble.open_with_trouble,
|
require("telescope").load_extension("undo")
|
||||||
['<c-h>'] = 'which_key',
|
end,
|
||||||
},
|
},
|
||||||
n = {
|
{
|
||||||
['<c-t>'] = trouble.open_with_trouble,
|
"xiyaowong/telescope-emoji.nvim",
|
||||||
['<c-h>'] = 'which_key',
|
keys = { { "<leader>fj", "<cmd>Telescope emoji<cr>" } },
|
||||||
},
|
config = function()
|
||||||
|
require("telescope").load_extension("undo")
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
keys = {
|
||||||
|
{
|
||||||
|
"<leader>fp",
|
||||||
|
function()
|
||||||
|
require("telescope.builtin").find_files({
|
||||||
|
cwd = require("lazy.core.config").options.root,
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
desc = "Find Plugin File",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>8",
|
||||||
|
function()
|
||||||
|
require("telescope.builtin").grep_string()
|
||||||
|
end,
|
||||||
|
desc = "Search word under cursor",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>R", -- remap clashing structural replace key map
|
||||||
|
"<cmd>Telescope resume<cr>",
|
||||||
|
desc = "Telescope resume",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
extensions = {
|
|
||||||
project = {
|
|
||||||
theme = 'dropdown',
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
require('telescope').load_extension('fzf')
|
|
||||||
require('telescope').load_extension('gh')
|
|
||||||
require('telescope').load_extension('env')
|
|
||||||
require('telescope').load_extension('emoji')
|
|
||||||
require('telescope').load_extension('ui-select')
|
|
||||||
require('telescope').load_extension('project')
|
|
||||||
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<leader><tab>',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').git_files()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<leader>f.',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').git_files({ no_ignore = true })<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'_',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').live_grep()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<leader>_',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').live_grep({ search_dirs = { vim.fn.expand('%:p:h') } })<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<leader>8',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').grep_string()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<leader>3',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').grep_string()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
"n",
|
|
||||||
"<leader>fd",
|
|
||||||
[[<Cmd>lua require('telescope.builtin').find_files({cwd=require('telescope.utils').buffer_dir()})<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<leader>fb',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').buffers()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<leader>fh',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').help_tags()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<leader>ft',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').treesitter()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<leader>fr',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').resume()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<leader>fs',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').spell_suggest()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<Leader>fgc',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').git_commits()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
"n",
|
|
||||||
'<Leader>fga',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').git_bcommits()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<Leader>fgb',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').git_branches()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<Leader>fe',
|
|
||||||
[[<Cmd>Telescope emoji<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<Leader>f"',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').registers()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<Leader>fm',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').keymaps()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<Leader>ff',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').builtin()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<Leader>fl',
|
|
||||||
[[<Cmd>lua require('telescope.builtin').reloader()<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set(
|
|
||||||
'n',
|
|
||||||
'<C-p>',
|
|
||||||
[[<Cmd>lua require('telescope').extensions.project.project({ display_type = 'full' })<CR>]],
|
|
||||||
{ noremap = true, silent = true }
|
|
||||||
)
|
|
||||||
|
@ -1,31 +0,0 @@
|
|||||||
local cl = vim.o.columns
|
|
||||||
local ln = vim.o.lines
|
|
||||||
local width = 0.8
|
|
||||||
local height = 0.8
|
|
||||||
|
|
||||||
require("toggleterm").setup({
|
|
||||||
direction = "horizontal",
|
|
||||||
float_opts = {
|
|
||||||
border = "curved",
|
|
||||||
width = math.ceil(cl * width),
|
|
||||||
height = math.ceil(ln * height - 4),
|
|
||||||
winblend = 3,
|
|
||||||
},
|
|
||||||
open_mapping = [[<C-\>]],
|
|
||||||
hide_numbers = true,
|
|
||||||
-- shell = 'fish',
|
|
||||||
})
|
|
||||||
|
|
||||||
vim.keymap.set('n', [[<M-=>]], [[<Cmd>ToggleTerm direction=float<CR>]])
|
|
||||||
vim.keymap.set('n', [[<M-\>]], [[<Cmd>ToggleTerm direction=horizontal<CR>]])
|
|
||||||
-- tmux muscle-memory for fullscreening nvim window
|
|
||||||
vim.keymap.set('n', [[<C-a>z]], [[<Cmd>ToggleTermToggleAll<CR>]])
|
|
||||||
vim.keymap.set('t', [[<C-a>z]], [[<Cmd>tab split<CR>]])
|
|
||||||
vim.keymap.set('t', '<Esc>', [[<C-\><C-n>]])
|
|
||||||
vim.keymap.set('t', '<C-j>', [[<Cmd>wincmd h<CR>]])
|
|
||||||
vim.keymap.set('t', '<C-k>', [[<Cmd>wincmd k<CR>]])
|
|
||||||
vim.keymap.set('t', '<C-h>', [[<Cmd>wincmd h<CR>]])
|
|
||||||
vim.keymap.set('t', '<C-l>', [[<Cmd>wincmd l<CR>]])
|
|
||||||
|
|
||||||
-- vim.keymap.set('n', '<F12>', [[<Cmd>ToggleTerm<CR>]], { noremap = true, silent = true })
|
|
||||||
-- vim.keymap.set('t', '<F12>', [[<Cmd>ToggleTerm<CR>]], { noremap = true, silent = true })
|
|
43
lua/plugins/toggleterm.lua
Normal file
43
lua/plugins/toggleterm.lua
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
return {
|
||||||
|
"akinsho/toggleterm.nvim",
|
||||||
|
version = "*",
|
||||||
|
opts = {
|
||||||
|
direction = "horizontal",
|
||||||
|
open_mapping = [[<C-\>]],
|
||||||
|
hide_numbers = true,
|
||||||
|
},
|
||||||
|
cmd = {
|
||||||
|
"ToggleTerm",
|
||||||
|
"TermExec",
|
||||||
|
"ToggleTermSendCurrentLine",
|
||||||
|
"ToggleTermSendVisualLines",
|
||||||
|
"ToggleTermSendVisualSelection",
|
||||||
|
"ToggleTermOpenAll",
|
||||||
|
"ToggleTermCloseAll",
|
||||||
|
"ToggleTermToggleAll",
|
||||||
|
},
|
||||||
|
keys = {
|
||||||
|
[[<C-\>]],
|
||||||
|
{ "<M-=>", [[<Cmd>ToggleTerm direction=float<CR>]], desc = "Toggle terminal in floating window" },
|
||||||
|
{
|
||||||
|
"<M->",
|
||||||
|
[[<Cmd>ToggleTerm direction=horizontal<CR>]],
|
||||||
|
desc = "Toggle terminal in horizontal bottom window",
|
||||||
|
},
|
||||||
|
-- tmux muscle-memory for fullscreening nvim window
|
||||||
|
-- replaced with true-zen.nvim
|
||||||
|
-- vim.keymap.set('n', [[<C-a>z]], [[<Cmd>ToggleTermToggleAll<CR>]])
|
||||||
|
-- vim.keymap.set('t', [[<C-a>z]], [[<Cmd>tab split<CR>]])
|
||||||
|
{ "<Esc>", [[<C-\><C-n>]], mode = "t", desc = "Escape terminal mode" },
|
||||||
|
-- These were replaced by smart-splits
|
||||||
|
-- { "<C-j>", [[<Cmd>wincmd h<CR>]], mode = "t", desc = "Move focus down one window" },
|
||||||
|
-- { "<C-h>", [[<Cmd>wincmd h<CR>]], mode = "t", desc = "Move focus left one window" },
|
||||||
|
-- { "<C-k>", [[<Cmd>wincmd k<CR>]], mode = "t", desc = "Move focus up one window" },
|
||||||
|
-- { "<C-l>", [[<Cmd>wincmd l<CR>]], mode = "t", desc = "Move focus right one window" },
|
||||||
|
{ [[<C-\>]], [[<Cmd>ToggleTerm<CR>]] },
|
||||||
|
{ "<F12>", [[<Cmd>ToggleTerm<CR>]] },
|
||||||
|
{ "<F12>", [[<Cmd>ToggleTerm<CR>]], mode = "t" },
|
||||||
|
-- { "<leader>H", "<cmd>lua _clx_toggle()<CR>", { desc = "Toggle clx (console HackerNews) floating terminal" } },
|
||||||
|
-- { "<leader>G", "<cmd>lua _gitui_toggle()<CR>", { desc = "Toggle gitui floating terminal" } },
|
||||||
|
},
|
||||||
|
}
|
6
lua/plugins/tpope.lua
Normal file
6
lua/plugins/tpope.lua
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
return {
|
||||||
|
"tpope/vim-unimpaired",
|
||||||
|
"tpope/vim-repeat",
|
||||||
|
"tpope/vim-eunuch",
|
||||||
|
"tpope/vim-sleuth",
|
||||||
|
}
|
6
lua/plugins/treesitter.lua
Normal file
6
lua/plugins/treesitter.lua
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
return {
|
||||||
|
"IndianBoy42/tree-sitter-just",
|
||||||
|
config = function()
|
||||||
|
require("tree-sitter-just").setup({})
|
||||||
|
end,
|
||||||
|
}
|
7
lua/plugins/treesj.lua
Normal file
7
lua/plugins/treesj.lua
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
return {
|
||||||
|
"Wansmer/treesj",
|
||||||
|
keys = {
|
||||||
|
{ "J", "<cmd>TSJToggle<cr>", desc = "Join Toggle" },
|
||||||
|
},
|
||||||
|
opts = { use_default_keymaps = false, max_join_length = 150 },
|
||||||
|
}
|
@ -1,18 +0,0 @@
|
|||||||
vim.keymap.set('n', '<leader>xx', '<cmd>TroubleToggle<cr>',
|
|
||||||
{ silent = true, noremap = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set('n', '<leader>xw', '<cmd>TroubleToggle workspace_diagnostics<cr>',
|
|
||||||
{ silent = true, noremap = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set('n', '<leader>xd', '<cmd>TroubleToggle document_diagnostics<cr>',
|
|
||||||
{ silent = true, noremap = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set('n', '<leader>xl', '<cmd>TroubleToggle loclist<cr>',
|
|
||||||
{ silent = true, noremap = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set('n', '<leader>xq', '<cmd>TroubleToggle quickfix<cr>',
|
|
||||||
{ silent = true, noremap = true }
|
|
||||||
)
|
|
||||||
vim.keymap.set('n', 'gR', '<cmd>TroubleToggle lsp_references<cr>',
|
|
||||||
{ silent = true, noremap = true }
|
|
||||||
)
|
|
12
lua/plugins/trouble.lua
Normal file
12
lua/plugins/trouble.lua
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
return {
|
||||||
|
"folke/trouble.nvim",
|
||||||
|
keys = {
|
||||||
|
-- same keybindings as in LazyVim, but with focus=true
|
||||||
|
{ "<leader>cs", "<cmd>Trouble symbols toggle focus=true<cr>", desc = "Symbols (Trouble)" },
|
||||||
|
{
|
||||||
|
"<leader>cS",
|
||||||
|
"<cmd>Trouble lsp toggle focus=true win.position=right<cr>",
|
||||||
|
desc = "LSP references/definitions/... (Trouble)",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
19
lua/plugins/true-zen.lua
Normal file
19
lua/plugins/true-zen.lua
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
return {
|
||||||
|
"Pocco81/true-zen.nvim",
|
||||||
|
cmd = { "TZNarrow", "TZFocus", "TZMinimalist", "TZAtaraxis" },
|
||||||
|
keys = {
|
||||||
|
{ "<leader>zn", [[<Cmd>:TZNarrow<CR>]], desc = "[Z]oom [N]arrow current line" },
|
||||||
|
{ "<leader>zn", [[<Cmd>:'<,'>TZNarrow<CR>]], mode = "v", desc = "[Z]oom [N]arrow selected lines" },
|
||||||
|
{ "<leader>zf", [[<Cmd>:TZFocus<CR>]], desc = "[Z]oom [N]arrow current buffer in new tab" },
|
||||||
|
{ "<leader>zm", [[<Cmd>:TZMinimalist<CR>]], desc = "[Z] Toggle minimalist nvim UI mode" },
|
||||||
|
{ "<leader>za", [[<Cmd>:TZAtaraxis<CR>]], desc = "[Z]oom [A]taraxis current buffer minimalist mode" },
|
||||||
|
{
|
||||||
|
"<C-w>z",
|
||||||
|
[[<Cmd>:TZFocus<CR>]],
|
||||||
|
mode = { "n", "t" },
|
||||||
|
desc = "Toggle [Z]oom current buffer in new tab",
|
||||||
|
},
|
||||||
|
-- tmux memory for fullscreening nvim window
|
||||||
|
{ "<C-a>z", [[<Cmd>:TZFocus<CR>]], mode = { "n", "t" }, desc = "Toggle [Z]oom current buffer in new tab" },
|
||||||
|
},
|
||||||
|
}
|
@ -1 +0,0 @@
|
|||||||
vim.keymap.set('n', '<leader>u', [[<Cmd>MundoToggle<CR>]], { noremap = true, silent = true })
|
|
1
lua/plugins/wezterm-types.lua
Normal file
1
lua/plugins/wezterm-types.lua
Normal file
@ -0,0 +1 @@
|
|||||||
|
return { "justinsgithub/wezterm-types" }
|
@ -1,27 +0,0 @@
|
|||||||
-- Pasting with Control-V because of muscle-memory
|
|
||||||
vim.keymap.set('n', '<C-v>', '"+p')
|
|
||||||
vim.keymap.set('n', '<C-s-v>', '"+p')
|
|
||||||
vim.keymap.set('i', '<C-v>', '<C-r>*')
|
|
||||||
vim.keymap.set('i', '<C-s-v>', '<C-r>*')
|
|
||||||
vim.keymap.set('t', '<C-v>', '<C-\\><C-n>"+pi')
|
|
||||||
vim.keymap.set('t', '<C-s-v>', '<C-\\><C-n>"+pi')
|
|
||||||
|
|
||||||
-- Faster window navigation
|
|
||||||
vim.keymap.set('n', '<C-j>', '<C-w>j')
|
|
||||||
vim.keymap.set('n', '<C-k>', '<C-w>k')
|
|
||||||
vim.keymap.set('n', '<C-h>', '<C-w>h')
|
|
||||||
vim.keymap.set('n', '<C-l>', '<C-w>l')
|
|
||||||
|
|
||||||
vim.keymap.set('n', '<leader>,', ':noh<CR>', { silent = true })
|
|
||||||
|
|
||||||
vim.keymap.set('n', '<leader>v', [[<Cmd>:e ~/.config/nvim/init.lua<CR>]], { silent = true })
|
|
||||||
|
|
||||||
-- URL handling (since I disabled netrw)
|
|
||||||
-- source: https://sbulav.github.io/vim/neovim-opening-urls/
|
|
||||||
if vim.fn.has('mac') == 1 then
|
|
||||||
vim.keymap.set('', 'gx', [[<Cmd>call jobstart(['open', expand('<cfile>')], { 'detach': v:true })<CR>]], { noremap = true, silent = true })
|
|
||||||
elseif vim.fn.has("unix") == 1 then
|
|
||||||
vim.keymap.set('', 'gx', [[<Cmd>call jobstart(['xdg-open', expand('<cfile>')], { 'detach': v:true })<CR>]], { noremap = true, silent = true })
|
|
||||||
else
|
|
||||||
vim.keymap.set[''].gx = {[[<Cmd>lua print("Error: gx is not supported on this OS!")<CR>]]}
|
|
||||||
end
|
|
@ -1,69 +0,0 @@
|
|||||||
-- Nubmer column
|
|
||||||
vim.opt.relativenumber = true
|
|
||||||
vim.opt.number = true
|
|
||||||
vim.opt.signcolumn = 'yes' -- remove jitter
|
|
||||||
|
|
||||||
-- Wrapping / indenting
|
|
||||||
vim.opt.wrap = true
|
|
||||||
vim.opt.breakindent = true
|
|
||||||
vim.opt.tabstop = 2
|
|
||||||
vim.opt.softtabstop=2
|
|
||||||
vim.opt.shiftwidth = 2
|
|
||||||
vim.opt.expandtab = true
|
|
||||||
vim.opt.autoindent = true
|
|
||||||
vim.opt.smarttab = true
|
|
||||||
vim.opt.textwidth = 120
|
|
||||||
vim.opt.colorcolumn = '+1'
|
|
||||||
|
|
||||||
-- Search
|
|
||||||
vim.opt.ignorecase = true
|
|
||||||
vim.opt.smartcase = true
|
|
||||||
vim.opt.incsearch = true
|
|
||||||
vim.opt.hlsearch = true
|
|
||||||
|
|
||||||
-- Scrolling
|
|
||||||
vim.opt.scrolloff = 3
|
|
||||||
vim.opt.sidescrolloff = 15
|
|
||||||
vim.opt.sidescroll = 1
|
|
||||||
|
|
||||||
-- Mouse
|
|
||||||
vim.opt.mouse = 'a'
|
|
||||||
|
|
||||||
-- Window decorations
|
|
||||||
vim.opt.title = true
|
|
||||||
|
|
||||||
-- Leader
|
|
||||||
vim.g.mapleader = ' '
|
|
||||||
|
|
||||||
-- Fonts
|
|
||||||
vim.opt.guifont = 'Hack:h9.3'
|
|
||||||
|
|
||||||
-- Swap / backup / undo
|
|
||||||
vim.opt.undofile = true
|
|
||||||
|
|
||||||
-- Shell (may speed up nvim)
|
|
||||||
vim.opt.shell = '/bin/bash'
|
|
||||||
|
|
||||||
-- Rendering
|
|
||||||
vim.opt.lazyredraw = true
|
|
||||||
|
|
||||||
-- Folding
|
|
||||||
vim.opt.foldmethod = 'expr'
|
|
||||||
vim.opt.foldexpr = vim.call('nvim_treesitter#foldexpr')
|
|
||||||
|
|
||||||
-- Completion settings
|
|
||||||
-- " Set completeopt to have a better completion experience
|
|
||||||
-- " :help completeopt
|
|
||||||
-- " menuone: popup even 'hen there's only one match
|
|
||||||
-- " noinsert: Do not insert text until a selection is made
|
|
||||||
-- " noselect: Do not select, force user to select one from the menu
|
|
||||||
vim.opt.completeopt = 'menuone,noinsert,noselect'
|
|
||||||
|
|
||||||
-- Avoid showing extra messages when using completion
|
|
||||||
vim.o.shortmess = vim.o.shortmess .. 'c'
|
|
||||||
|
|
||||||
-- Python
|
|
||||||
vim.g.python3_host_prog = '/usr/bin/python3'
|
|
||||||
|
|
||||||
-- Format options
|
|
||||||
vim.cmd([[set formatoptions+=wantrqlc]])
|
|
3
stylua.toml
Normal file
3
stylua.toml
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
indent_type = "Spaces"
|
||||||
|
indent_width = 2
|
||||||
|
column_width = 120
|
Loading…
Reference in New Issue
Block a user