feat: some shit
This commit is contained in:
parent
a13300d1b5
commit
265e4df8f3
@ -10,7 +10,7 @@ _fx(){
|
|||||||
|
|
||||||
case $state in
|
case $state in
|
||||||
(action) _arguments '1:profiles:(s i o)' ;;
|
(action) _arguments '1:profiles:(s i o)' ;;
|
||||||
(*) compadd "$@" $(echo $(ls ~/Projects) | tr \\n ' ')
|
(*) compadd "$@" $(echo $(find ~/Projects -type d -maxdepth 2 | sed 's/\/home\/max\/Projects\///g') | tr \\n ' ')
|
||||||
|
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
@ -1,6 +1,4 @@
|
|||||||
set-option -g default-terminal "screen-256color"
|
set -g default-terminal "tmux"
|
||||||
set-option -ga terminal-overrides ",xterm-256color:Tc"
|
|
||||||
set -g default-terminal "tmux-256color"
|
|
||||||
|
|
||||||
set-option -g focus-events on
|
set-option -g focus-events on
|
||||||
set-option -sg escape-time 10
|
set-option -sg escape-time 10
|
||||||
|
@ -124,7 +124,7 @@ fi
|
|||||||
export PNPM_HOME="$HOME/.local/share/pnpm"
|
export PNPM_HOME="$HOME/.local/share/pnpm"
|
||||||
export PATH="$PNPM_HOME:$PATH"
|
export PATH="$PNPM_HOME:$PATH"
|
||||||
|
|
||||||
[ -n "$TMUX" ] && export TERM=screen-256color
|
[ -n "$TMUX" ] && export TERM=tmux-256color
|
||||||
|
|
||||||
# tabtab source for packages
|
# tabtab source for packages
|
||||||
# uninstall by removing these lines
|
# uninstall by removing these lines
|
||||||
|
@ -1,14 +1,12 @@
|
|||||||
vim.opt.termguicolors = true
|
|
||||||
|
|
||||||
require("max.core.bootstrap")
|
require("max.core.bootstrap")
|
||||||
|
|
||||||
|
require("max.theme.statuscolumn");
|
||||||
|
|
||||||
require("max.core.plugins")
|
require("max.core.plugins")
|
||||||
|
|
||||||
|
|
||||||
require("max.core.autocommands")
|
require("max.core.autocommands")
|
||||||
require("max.core.keymappings")
|
|
||||||
|
|
||||||
require("max.theme.catpuccin")
|
require("max.core.keymappings")
|
||||||
|
|
||||||
require("max.overlays")
|
require("max.overlays")
|
||||||
|
|
||||||
|
@ -2,11 +2,11 @@
|
|||||||
"ChatGPT.nvim": { "branch": "main", "commit": "dac83f630fc6aafd256b149a2c2ae0d4466ec85e" },
|
"ChatGPT.nvim": { "branch": "main", "commit": "dac83f630fc6aafd256b149a2c2ae0d4466ec85e" },
|
||||||
"Comment.nvim": { "branch": "master", "commit": "eab2c83a0207369900e92783f56990808082eac2" },
|
"Comment.nvim": { "branch": "master", "commit": "eab2c83a0207369900e92783f56990808082eac2" },
|
||||||
"FixCursorHold.nvim": { "branch": "master", "commit": "70a9516a64668cbfe59f31b66d0a21678c5e9b12" },
|
"FixCursorHold.nvim": { "branch": "master", "commit": "70a9516a64668cbfe59f31b66d0a21678c5e9b12" },
|
||||||
"LuaSnip": { "branch": "master", "commit": "8c23e1af82bdafa86556a36c4e075079dd167771" },
|
"LuaSnip": { "branch": "master", "commit": "d404ec306bfa4cdb0c3605dbb17e8a93a9597337" },
|
||||||
"alpha-nvim": { "branch": "main", "commit": "21a0f2520ad3a7c32c0822f943368dc063a569fb" },
|
"alpha-nvim": { "branch": "main", "commit": "21a0f2520ad3a7c32c0822f943368dc063a569fb" },
|
||||||
"autolist.nvim": { "branch": "main", "commit": "f8b4c11b79b0fef77a64b03810839a1abbbc67d5" },
|
"autolist.nvim": { "branch": "main", "commit": "f8b4c11b79b0fef77a64b03810839a1abbbc67d5" },
|
||||||
"boole.nvim": { "branch": "main", "commit": "f4f9996f91159e54b8f1893b20e2e599c91bc1bd" },
|
"boole.nvim": { "branch": "main", "commit": "f4f9996f91159e54b8f1893b20e2e599c91bc1bd" },
|
||||||
"catppuccin": { "branch": "main", "commit": "6368edcd0b5e5cb5d9fb7cdee9d62cffe3e14f0e" },
|
"catppuccin": { "branch": "main", "commit": "8769e767f12f5bf0b7d1250ee067088e7054809a" },
|
||||||
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
|
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
|
||||||
"cmp-emoji": { "branch": "main", "commit": "19075c36d5820253d32e2478b6aaf3734aeaafa0" },
|
"cmp-emoji": { "branch": "main", "commit": "19075c36d5820253d32e2478b6aaf3734aeaafa0" },
|
||||||
"cmp-nvim-lsp": { "branch": "main", "commit": "59224771f91b86d1de12570b4070fe4ad7cd1eeb" },
|
"cmp-nvim-lsp": { "branch": "main", "commit": "59224771f91b86d1de12570b4070fe4ad7cd1eeb" },
|
||||||
@ -14,65 +14,62 @@
|
|||||||
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
||||||
"cmp_luasnip": { "branch": "master", "commit": "18095520391186d634a0045dacaa346291096566" },
|
"cmp_luasnip": { "branch": "master", "commit": "18095520391186d634a0045dacaa346291096566" },
|
||||||
"copilot-cmp": { "branch": "master", "commit": "b732a58ac8b7287b981cd9f0d9c0f61e5e9d5760" },
|
"copilot-cmp": { "branch": "master", "commit": "b732a58ac8b7287b981cd9f0d9c0f61e5e9d5760" },
|
||||||
"copilot.lua": { "branch": "master", "commit": "6ca9b4b3eda9138406291493750a6890c927dbfa" },
|
"copilot.lua": { "branch": "master", "commit": "a54e7b11a2c6efc9ddd3f42e56cf7d9eed1a9683" },
|
||||||
"dressing.nvim": { "branch": "master", "commit": "4436d6f41e2f6b8ada57588acd1a9f8b3d21453c" },
|
"dressing.nvim": { "branch": "master", "commit": "4436d6f41e2f6b8ada57588acd1a9f8b3d21453c" },
|
||||||
"editorconfig-vim": { "branch": "master", "commit": "ed23a49992a8adfc0a1db765cb5353adeb12f9ff" },
|
|
||||||
"flit.nvim": { "branch": "main", "commit": "be110f9814a45788d10537fd59b3c76d956bb7ad" },
|
"flit.nvim": { "branch": "main", "commit": "be110f9814a45788d10537fd59b3c76d956bb7ad" },
|
||||||
"friendly-snippets": { "branch": "main", "commit": "046e4d3491baf664e0eef5231d28beb49333578b" },
|
"friendly-snippets": { "branch": "main", "commit": "a6f7a1609addb4e57daa6bedc300f77f8d225ab7" },
|
||||||
"fwatch.nvim": { "branch": "main", "commit": "a691f7349dc66285cd75a1a698dd28bca45f2bf8" },
|
"fwatch.nvim": { "branch": "main", "commit": "a691f7349dc66285cd75a1a698dd28bca45f2bf8" },
|
||||||
"fzf": { "branch": "master", "commit": "d51980a3f50dfa8ce43b01a3dce216afb8a0bd8f" },
|
"git-conflict.nvim": { "branch": "main", "commit": "80bc8931d4ed8c8c4d289a08e1838fcf4741408d" },
|
||||||
"gesture.nvim": { "branch": "master", "commit": "9451add0df9c32f3e41e6cc45211e3f2c6809025" },
|
|
||||||
"git-conflict.nvim": { "branch": "main", "commit": "cbefa7075b67903ca27f6eefdc9c1bf0c4881017" },
|
|
||||||
"git-worktree.nvim": { "branch": "master", "commit": "d7f4e2584e81670154f07ca9fa5dd791d9c1b458" },
|
"git-worktree.nvim": { "branch": "master", "commit": "d7f4e2584e81670154f07ca9fa5dd791d9c1b458" },
|
||||||
"gitsigns.nvim": { "branch": "main", "commit": "7b37bd5c2dd4d7abc86f2af096af79120608eeca" },
|
"gitsigns.nvim": { "branch": "main", "commit": "ec4742a7eebf68bec663041d359b95637242b5c3" },
|
||||||
"lazy.nvim": { "branch": "main", "commit": "96d759d1cbd8b0bd0ea0a0c2987f99410272f348" },
|
"lazy.nvim": { "branch": "main", "commit": "3d2dcb2d5ef99106c5ff412da88c6f59a9f8a693" },
|
||||||
"leap.nvim": { "branch": "main", "commit": "ff4c3663e5a0a0ecbb3fffbc8318825def35d2aa" },
|
"leap.nvim": { "branch": "main", "commit": "f565a9c4d92245d8b619235bebeaa73cc38aa40e" },
|
||||||
"lsp-format.nvim": { "branch": "master", "commit": "ca0df5c8544e51517209ea7b86ecc522c98d4f0a" },
|
"lsp-format.nvim": { "branch": "master", "commit": "ca0df5c8544e51517209ea7b86ecc522c98d4f0a" },
|
||||||
"lspkind.nvim": { "branch": "master", "commit": "c68b3a003483cf382428a43035079f78474cd11e" },
|
"lspkind.nvim": { "branch": "master", "commit": "c68b3a003483cf382428a43035079f78474cd11e" },
|
||||||
"lspsaga.nvim": { "branch": "main", "commit": "fb5ec294f833ce5563fc5abce4eb9725d7809652" },
|
"lspsaga.nvim": { "branch": "main", "commit": "46231733235e44e9c4b32ddd9de1e77e37bc377f" },
|
||||||
"lualine-lsp-progress": { "branch": "master", "commit": "56842d097245a08d77912edf5f2a69ba29f275d7" },
|
"lualine-lsp-progress": { "branch": "master", "commit": "56842d097245a08d77912edf5f2a69ba29f275d7" },
|
||||||
"lualine.nvim": { "branch": "master", "commit": "0050b308552e45f7128f399886c86afefc3eb988" },
|
"lualine.nvim": { "branch": "master", "commit": "0050b308552e45f7128f399886c86afefc3eb988" },
|
||||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "5b388c0de30f1605671ebfb9a20a620cda50ffce" },
|
"mason-lspconfig.nvim": { "branch": "main", "commit": "53f3a8bdcb77d4a95b082fd57e12173f353c6c3e" },
|
||||||
"mason.nvim": { "branch": "main", "commit": "bb88357eff0d0c69ab8ecc5985952e0a9a72175a" },
|
"mason.nvim": { "branch": "main", "commit": "4952a48722b3fa01e03c67ab939d5b7d3037309e" },
|
||||||
"neodev.nvim": { "branch": "main", "commit": "34dd33cd283b3a89f70d32c8f55bb5ec4ce2de93" },
|
"mini.nvim": { "branch": "main", "commit": "551a8726ab382cb02b1e925512162da478ff3811" },
|
||||||
"neotest": { "branch": "master", "commit": "6676edc3078b8936df989df639900dc9a70dfc8a" },
|
"neo-tree.nvim": { "branch": "v2.x", "commit": "8238865e1d9c61f1a260c290653f2c419503e0a9" },
|
||||||
"neotest-jest": { "branch": "main", "commit": "8b8926480865e56053681d0c56e3be0a3b5e716c" },
|
"neodev.nvim": { "branch": "main", "commit": "70cab52c9d19e982f306716534e90c37a254b046" },
|
||||||
|
"neotest": { "branch": "master", "commit": "392808a91d6ee28d27cbfb93c9fd9781759b5d00" },
|
||||||
|
"neotest-jest": { "branch": "main", "commit": "821bb227e31259307db30c88671a1c3724f78637" },
|
||||||
"neotest-vitest": { "branch": "main", "commit": "d6577b191e16c174bffbec1eadfcd65c22fdcc0d" },
|
"neotest-vitest": { "branch": "main", "commit": "d6577b191e16c174bffbec1eadfcd65c22fdcc0d" },
|
||||||
"no-neck-pain.nvim": { "branch": "main", "commit": "40369b2d38271e320d3584860c89b87299bf60ae" },
|
"no-neck-pain.nvim": { "branch": "main", "commit": "26085b03b99bbd298fefe51ad65f1dd6debafb5e" },
|
||||||
"nui.nvim": { "branch": "main", "commit": "b99e6cb13dc51768abc1c4c8585045a0c0459ef1" },
|
"noice.nvim": { "branch": "main", "commit": "34f7cf628666c6eb0c93fbe8a0490e977ac78b7b" },
|
||||||
"null-ls.nvim": { "branch": "main", "commit": "33cfeb7a761f08e8535dca722d4b237cabadd371" },
|
"nui.nvim": { "branch": "main", "commit": "d147222a1300901656f3ebd5b95f91732785a329" },
|
||||||
"nvim-autopairs": { "branch": "master", "commit": "31042a5823b55c4bfb30efcbba2fc1b5b53f90dc" },
|
"null-ls.nvim": { "branch": "main", "commit": "8f5d730021497233c39d3adbf4b8043d4be163f8" },
|
||||||
"nvim-cmp": { "branch": "main", "commit": "11a95792a5be0f5a40bab5fc5b670e5b1399a939" },
|
"nvim-cmp": { "branch": "main", "commit": "cfafe0a1ca8933f7b7968a287d39904156f2c57d" },
|
||||||
"nvim-colorizer.lua": { "branch": "master", "commit": "36c610a9717cc9ec426a07c8e6bf3b3abcb139d6" },
|
"nvim-colorizer.lua": { "branch": "master", "commit": "36c610a9717cc9ec426a07c8e6bf3b3abcb139d6" },
|
||||||
"nvim-dap": { "branch": "master", "commit": "c64a6627bb01eb151da96b28091797beaac09536" },
|
"nvim-dap": { "branch": "master", "commit": "0e376f00e7fac143e29e1017d2ac2cc3df13d185" },
|
||||||
"nvim-dap-ui": { "branch": "master", "commit": "b80227ea56a48177786904f6322abc8b2dc0bc36" },
|
"nvim-dap-ui": { "branch": "master", "commit": "885e958ff9de30cfbc359259eccf28cc493ad46b" },
|
||||||
"nvim-dap-vscode-js": { "branch": "main", "commit": "e7c05495934a658c8aa10afd995dacd796f76091" },
|
"nvim-dap-vscode-js": { "branch": "main", "commit": "e7c05495934a658c8aa10afd995dacd796f76091" },
|
||||||
"nvim-lspconfig": { "branch": "master", "commit": "85cd2ecacd8805614efe3fb3a5146ac7d0f88a17" },
|
"nvim-lspconfig": { "branch": "master", "commit": "902d6aa31450d26e11bedcbef8af5b6fe2e1ffe8" },
|
||||||
"nvim-notify": { "branch": "master", "commit": "bdd647f61a05c9b8a57c83b78341a0690e9c29d7" },
|
"nvim-notify": { "branch": "master", "commit": "bdd647f61a05c9b8a57c83b78341a0690e9c29d7" },
|
||||||
"nvim-scrollbar": { "branch": "main", "commit": "6a2065fbcd032075a06d2ab54508b69842bc4496" },
|
"nvim-scrollbar": { "branch": "main", "commit": "6a2065fbcd032075a06d2ab54508b69842bc4496" },
|
||||||
"nvim-toggleterm.lua": { "branch": "main", "commit": "a54e6c471ce1cd8ef8357e34598a28a955297131" },
|
"nvim-toggleterm.lua": { "branch": "main", "commit": "19aad0f41f47affbba1274f05e3c067e6d718e1e" },
|
||||||
"nvim-tree.lua": { "branch": "master", "commit": "96506fee49542f3aedab76368d400a147fea344e" },
|
"nvim-treesitter": { "branch": "master", "commit": "24d5be6e7192a855a0eba21829717614fa1cf54e" },
|
||||||
"nvim-treesitter": { "branch": "master", "commit": "405fe27cd1b81faadd08fd5895dc54a34154103e" },
|
"nvim-treesitter-textobjects": { "branch": "master", "commit": "249d90a84df63f3ffff65fcc06a45d58415672de" },
|
||||||
"nvim-treesitter-textobjects": { "branch": "master", "commit": "2fb97bd6c53d78517d2022a0b84422c18ce5686e" },
|
|
||||||
"nvim-ts-autotag": { "branch": "main", "commit": "fdefe46c6807441460f11f11a167a2baf8e4534b" },
|
"nvim-ts-autotag": { "branch": "main", "commit": "fdefe46c6807441460f11f11a167a2baf8e4534b" },
|
||||||
"nvim-ts-context-commentstring": { "branch": "main", "commit": "a0f89563ba36b3bacd62cf967b46beb4c2c29e52" },
|
"nvim-ts-context-commentstring": { "branch": "main", "commit": "a0f89563ba36b3bacd62cf967b46beb4c2c29e52" },
|
||||||
"nvim-ufo": { "branch": "main", "commit": "e3528c9b7ca20e9e0d69d588037f484257f0d652" },
|
"nvim-ufo": { "branch": "main", "commit": "b70c9ef0f8e2673a11387a39185ff249e00df19f" },
|
||||||
"nvim-web-devicons": { "branch": "master", "commit": "13d06d74afad093d8312fe051633b55f24049c16" },
|
"nvim-web-devicons": { "branch": "master", "commit": "2b96193abe4372e18e4f4533895a42a466d53c17" },
|
||||||
"persisted.nvim": { "branch": "main", "commit": "325cda4fb406601929fbc2084816dc5e49d5e5aa" },
|
"persisted.nvim": { "branch": "main", "commit": "325cda4fb406601929fbc2084816dc5e49d5e5aa" },
|
||||||
"plenary.nvim": { "branch": "master", "commit": "1c7e3e6b0f4dd5a174fcea9fda8a4d7de593b826" },
|
"plenary.nvim": { "branch": "master", "commit": "9a0d3bf7b832818c042aaf30f692b081ddd58bd9" },
|
||||||
"popup.nvim": { "branch": "master", "commit": "b7404d35d5d3548a82149238289fa71f7f6de4ac" },
|
"popup.nvim": { "branch": "master", "commit": "b7404d35d5d3548a82149238289fa71f7f6de4ac" },
|
||||||
"promise-async": { "branch": "main", "commit": "842dca33e6b1af7bedcefc72cffbc807d54dbfca" },
|
"promise-async": { "branch": "main", "commit": "7fa127fa80e7d4d447e0e2c78e99af4355f4247b" },
|
||||||
"sniprun": { "branch": "master", "commit": "79806dad094770a1563ac0227c9692f7592df744" },
|
"sniprun": { "branch": "master", "commit": "79806dad094770a1563ac0227c9692f7592df744" },
|
||||||
"symbols-outline.nvim": { "branch": "master", "commit": "6a3ed24c5631da7a5d418bced57c16b32af7747c" },
|
"symbols-outline.nvim": { "branch": "master", "commit": "512791925d57a61c545bc303356e8a8f7869763c" },
|
||||||
"telescope.nvim": { "branch": "master", "commit": "dce1156ca103b8222e4abbfc63f9c6887abf5ec6" },
|
"telescope-fzf-native.nvim": { "branch": "main", "commit": "580b6c48651cabb63455e97d7e131ed557b8c7e2" },
|
||||||
"todo-comments.nvim": { "branch": "main", "commit": "077c59586d9d0726b0696dc5680eb863f4e04bc5" },
|
"telescope.nvim": { "branch": "master", "commit": "203bf5609137600d73e8ed82703d6b0e320a5f36" },
|
||||||
|
"todo-comments.nvim": { "branch": "main", "commit": "74c7d28cb50b0713c881ef69bcb6cdd77d8907d1" },
|
||||||
"translate.nvim": { "branch": "main", "commit": "7b2fd50c21ecfe536d572d62dcd3fa83acad3743" },
|
"translate.nvim": { "branch": "main", "commit": "7b2fd50c21ecfe536d572d62dcd3fa83acad3743" },
|
||||||
"trouble.nvim": { "branch": "main", "commit": "b2a0afac2c319a481f0f0318963a74d672ba5766" },
|
"trouble.nvim": { "branch": "main", "commit": "490f7fe6d227f4f7a64f00be8c7dcd7a508ed271" },
|
||||||
"ts-node-action": { "branch": "master", "commit": "88881ab67207b578d5d680b75ef74e59dcc47610" },
|
|
||||||
"undotree": { "branch": "master", "commit": "1a23ea84bd02c34f50d8e10a8b4bfc89597ffe4e" },
|
"undotree": { "branch": "master", "commit": "1a23ea84bd02c34f50d8e10a8b4bfc89597ffe4e" },
|
||||||
"vim-dadbod": { "branch": "master", "commit": "a09e40664e9cd30cd2b3f8866b796598302070f6" },
|
"vim-dadbod": { "branch": "master", "commit": "a09e40664e9cd30cd2b3f8866b796598302070f6" },
|
||||||
|
"vim-dadbod-completion": { "branch": "master", "commit": "e71eb6140556c5ced80de6299a1fdfe22bd3c1b1" },
|
||||||
"vim-dadbod-ui": { "branch": "master", "commit": "f4ead480930a37dd2b0cf917a8c387ed36c2d86a" },
|
"vim-dadbod-ui": { "branch": "master", "commit": "f4ead480930a37dd2b0cf917a8c387ed36c2d86a" },
|
||||||
"vim-styled-components": { "branch": "main", "commit": "75e178916fc3e61385350933a23055927f5f60b7" },
|
"which-key.nvim": { "branch": "main", "commit": "684e96c5e8477f1ee9b3f2e9a12d802fd12c5531" }
|
||||||
"vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" },
|
|
||||||
"which-key.nvim": { "branch": "main", "commit": "e4fa445065a2bb0bbc3cca85346b67817f28e83e" }
|
|
||||||
}
|
}
|
@ -4,14 +4,12 @@ require("luasnip/loaders/from_vscode").lazy_load()
|
|||||||
|
|
||||||
local lspkind = require("lspkind")
|
local lspkind = require("lspkind")
|
||||||
local cmp = require("cmp")
|
local cmp = require("cmp")
|
||||||
local cmp_autopairs = require("nvim-autopairs.completion.cmp")
|
|
||||||
|
|
||||||
local capabilities = require("cmp_nvim_lsp").default_capabilities()
|
local capabilities = require("cmp_nvim_lsp").default_capabilities()
|
||||||
require("lspconfig").html.setup({
|
require("lspconfig").html.setup({
|
||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
})
|
})
|
||||||
|
|
||||||
require("nvim-autopairs").setup()
|
|
||||||
require("copilot").setup({
|
require("copilot").setup({
|
||||||
suggestion = { enabled = false },
|
suggestion = { enabled = false },
|
||||||
panel = { enabled = false },
|
panel = { enabled = false },
|
||||||
@ -25,7 +23,6 @@ local check_backspace = function()
|
|||||||
return col == 0 or vim.fn.getline("."):sub(col, col):match("%s")
|
return col == 0 or vim.fn.getline("."):sub(col, col):match("%s")
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
cmp.setup({
|
cmp.setup({
|
||||||
window = {
|
window = {
|
||||||
documentation = cmp.config.window.bordered(),
|
documentation = cmp.config.window.bordered(),
|
||||||
@ -97,6 +94,7 @@ cmp.setup({
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
-- Use buffer source for `/` (if you enabled `native_menu`, this won't work anymore).
|
-- Use buffer source for `/` (if you enabled `native_menu`, this won't work anymore).
|
||||||
cmp.setup.cmdline("/", {
|
cmp.setup.cmdline("/", {
|
||||||
sources = {
|
sources = {
|
||||||
@ -112,5 +110,3 @@ cmp.setup.cmdline(":", {
|
|||||||
{ name = "cmdline" },
|
{ name = "cmdline" },
|
||||||
}),
|
}),
|
||||||
})
|
})
|
||||||
|
|
||||||
cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done({ map_char = { tex = "" } }))
|
|
||||||
|
@ -1,27 +0,0 @@
|
|||||||
local command_center = require("command_center")
|
|
||||||
local noremap = { noremap = true }
|
|
||||||
|
|
||||||
command_center.add({
|
|
||||||
{
|
|
||||||
description = "Show Sessions",
|
|
||||||
cmd = ":lua require('session-lens').search_session()<CR>",
|
|
||||||
keybindings = { "n", "<leader><C-o>", noremap },
|
|
||||||
},
|
|
||||||
{
|
|
||||||
description = "Search inside current buffer",
|
|
||||||
cmd = "<CMD>Telescope current_buffer_fuzzy_find<CR>",
|
|
||||||
keybindings = { "n", "<leader>fl", noremap },
|
|
||||||
},
|
|
||||||
{
|
|
||||||
description = "Show document symbols",
|
|
||||||
cmd = "<CMD>Telescope lsp_document_symbols<CR>",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
description = "Show function signaure (hover)",
|
|
||||||
cmd = "<CMD>lua vim.lsp.buf.hover()<CR>",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
description = "(TS) Organize Imports",
|
|
||||||
cmd = "<CMD>OrganizeImports<CR>",
|
|
||||||
},
|
|
||||||
})
|
|
@ -5,7 +5,7 @@
|
|||||||
-- Call Alpha With A pcall
|
-- Call Alpha With A pcall
|
||||||
local status_ok, alpha = pcall(require, "alpha")
|
local status_ok, alpha = pcall(require, "alpha")
|
||||||
if not status_ok then
|
if not status_ok then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Enable Alpha Dashboard
|
-- Enable Alpha Dashboard
|
||||||
@ -19,37 +19,37 @@ vim.opt.fillchars:append({ eob = " " })
|
|||||||
|
|
||||||
-- Custom Footer
|
-- Custom Footer
|
||||||
dashboard.section.footer.val = {
|
dashboard.section.footer.val = {
|
||||||
"Write Programs That Do One Thing And Do It Well.",
|
"Write Programs That Do One Thing And Do It Well.",
|
||||||
}
|
}
|
||||||
|
|
||||||
-- Custom Section
|
-- Custom Section
|
||||||
dashboard.section.buttons.val = {
|
dashboard.section.buttons.val = {
|
||||||
dashboard.button("n", " Create New file", ":set laststatus=3 | :ene <BAR> startinsert <CR>"),
|
dashboard.button("n", " Create New file", ":set laststatus=3 | :ene <BAR> startinsert <CR>"),
|
||||||
dashboard.button("e", " Open File Manager", ":set laststatus=3 | :NvimTreeOpen <CR>"),
|
dashboard.button("e", " Open File Manager", ":set laststatus=3 | :Neotree toggle <CR>"),
|
||||||
dashboard.button("s", "Δ Search Sessions", ":Telescope persisted<CR>"),
|
dashboard.button("s", "Δ Search Sessions", ":Telescope persisted<CR>"),
|
||||||
dashboard.button("v", " Neovim Settings ", ":set laststatus=3 | e ~/.config/nvim/init.lua <CR>"),
|
dashboard.button("v", " Neovim Settings ", ":set laststatus=3 | e ~/.config/nvim/init.lua <CR>"),
|
||||||
dashboard.button("b", "⟳ Recent Files", ":Telescope oldfiles<CR>"),
|
dashboard.button("b", "⟳ Recent Files", ":Telescope oldfiles<CR>"),
|
||||||
-- dashboard.button("s", " Shell Configuration", ":set laststatus=3 | e ~/.config/zsh/.zshrc <CR>"),
|
-- dashboard.button("s", " Shell Configuration", ":set laststatus=3 | e ~/.config/zsh/.zshrc <CR>"),
|
||||||
dashboard.button("u", " Update Nvim Plugins", ":Lazy update <CR>"),
|
dashboard.button("u", " Update Nvim Plugins", ":Lazy update <CR>"),
|
||||||
dashboard.button("q", " Quit Neovim", ":qa<CR>"),
|
dashboard.button("q", " Quit Neovim", ":qa<CR>"),
|
||||||
}
|
}
|
||||||
|
|
||||||
-- LuaVim Ascii Art
|
-- LuaVim Ascii Art
|
||||||
dashboard.section.header.val = {
|
dashboard.section.header.val = {
|
||||||
[[███╗ ███╗ █████╗ ██╗ ██╗ ███╗ ██╗ ██╗ ██╗██╗███╗ ███╗]],
|
[[███╗ ███╗ █████╗ ██╗ ██╗ ███╗ ██╗ ██╗ ██╗██╗███╗ ███╗]],
|
||||||
[[████╗ ████║██╔══██╗╚██╗██╔╝ ████╗ ██║ ██║ ██║██║████╗ ████║]],
|
[[████╗ ████║██╔══██╗╚██╗██╔╝ ████╗ ██║ ██║ ██║██║████╗ ████║]],
|
||||||
[[██╔████╔██║███████║ ╚███╔╝ ██╔██╗ ██║ ██║ ██║██║██╔████╔██║]],
|
[[██╔████╔██║███████║ ╚███╔╝ ██╔██╗ ██║ ██║ ██║██║██╔████╔██║]],
|
||||||
[[██║╚██╔╝██║██╔══██║ ██╔██╗ ██║╚██╗██║ ╚██╗ ██╔╝██║██║╚██╔╝██║]],
|
[[██║╚██╔╝██║██╔══██║ ██╔██╗ ██║╚██╗██║ ╚██╗ ██╔╝██║██║╚██╔╝██║]],
|
||||||
[[██║ ╚═╝ ██║██║ ██║██╔╝ ██╗ ██║ ╚████║ ╚████╔╝ ██║██║ ╚═╝ ██║]],
|
[[██║ ╚═╝ ██║██║ ██║██╔╝ ██╗ ██║ ╚████║ ╚████╔╝ ██║██║ ╚═╝ ██║]],
|
||||||
[[╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═══╝ ╚═══╝ ╚═╝╚═╝ ╚═╝]],
|
[[╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═══╝ ╚═══╝ ╚═╝╚═╝ ╚═╝]],
|
||||||
}
|
}
|
||||||
|
|
||||||
dashboard.section.header.val = {
|
dashboard.section.header.val = {
|
||||||
[[ __ ]],
|
[[ __ ]],
|
||||||
[[ /\ \ ]],
|
[[ /\ \ ]],
|
||||||
[[ / /\ \ ]],
|
[[ / /\ \ ]],
|
||||||
[[/ /__\ \ ]],
|
[[/ /__\ \ ]],
|
||||||
[[\/____\/ ]],
|
[[\/____\/ ]],
|
||||||
}
|
}
|
||||||
|
|
||||||
-- dashboard.section.header.val = {
|
-- dashboard.section.header.val = {
|
||||||
@ -71,12 +71,12 @@ dashboard.section.header.val = {
|
|||||||
|
|
||||||
-- Layout For Luavim ascii art
|
-- Layout For Luavim ascii art
|
||||||
dashboard.config.layout = {
|
dashboard.config.layout = {
|
||||||
{ type = "padding", val = 5 },
|
{ type = "padding", val = 5 },
|
||||||
dashboard.section.header,
|
dashboard.section.header,
|
||||||
{ type = "padding", val = 2 },
|
{ type = "padding", val = 2 },
|
||||||
dashboard.section.buttons,
|
dashboard.section.buttons,
|
||||||
{ type = "padding", val = 1 },
|
{ type = "padding", val = 1 },
|
||||||
dashboard.section.footer,
|
dashboard.section.footer,
|
||||||
}
|
}
|
||||||
|
|
||||||
alpha.setup(dashboard.opts)
|
alpha.setup(dashboard.opts)
|
||||||
|
@ -1,27 +0,0 @@
|
|||||||
local gesture = require("gesture")
|
|
||||||
|
|
||||||
vim.keymap.set("n", "<RightMouse>", [[<Nop>]])
|
|
||||||
vim.keymap.set("n", "<RightDrag>", [[<Cmd>lua require("gesture").draw()<CR>]], { silent = true })
|
|
||||||
vim.keymap.set("n", "<RightRelease>", [[<Cmd>lua require("gesture").finish()<CR>]], { silent = true })
|
|
||||||
|
|
||||||
gesture.register({
|
|
||||||
name = "go back",
|
|
||||||
inputs = { gesture.right() },
|
|
||||||
-- map to `<C-o>` keycode
|
|
||||||
action = [[lua vim.cmd('sp')]],
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
gesture.register({
|
|
||||||
name = "go back",
|
|
||||||
inputs = { gesture.down() },
|
|
||||||
-- map to `<C-o>` keycode
|
|
||||||
action = [[lua vim.cmd('vsp')]],
|
|
||||||
})
|
|
||||||
|
|
||||||
-- gesture.register({
|
|
||||||
-- name = "scroll to bottom",
|
|
||||||
-- inputs = { gesture.right() },
|
|
||||||
-- action = "normal! G",
|
|
||||||
-- })
|
|
||||||
|
|
@ -22,7 +22,8 @@ table.insert(runtime_path, "lua/?.lua")
|
|||||||
table.insert(runtime_path, "lua/?/init.lua")
|
table.insert(runtime_path, "lua/?/init.lua")
|
||||||
|
|
||||||
local function on_attach(client, bufnr)
|
local function on_attach(client, bufnr)
|
||||||
|
-- disable semantic tokens
|
||||||
|
-- client.server_capabilities.semanticTokensProvider = nil
|
||||||
|
|
||||||
if client.supports_method("textDocument/formatting") then
|
if client.supports_method("textDocument/formatting") then
|
||||||
vim.api.nvim_create_autocmd("BufWritePre", {
|
vim.api.nvim_create_autocmd("BufWritePre", {
|
||||||
@ -78,6 +79,7 @@ custom_lsp.sumneko_lua = {
|
|||||||
workspace = {
|
workspace = {
|
||||||
-- Make the server aware of Neovim runtime files
|
-- Make the server aware of Neovim runtime files
|
||||||
library = vim.api.nvim_get_runtime_file("", true),
|
library = vim.api.nvim_get_runtime_file("", true),
|
||||||
|
checkThirdParty = false
|
||||||
},
|
},
|
||||||
-- Do not send telemetry data containing a randomized but unique identifier
|
-- Do not send telemetry data containing a randomized but unique identifier
|
||||||
telemetry = {
|
telemetry = {
|
||||||
|
@ -45,7 +45,7 @@ local config = {
|
|||||||
-- Disable sections and component separators
|
-- Disable sections and component separators
|
||||||
component_separators = "",
|
component_separators = "",
|
||||||
section_separators = "",
|
section_separators = "",
|
||||||
theme = "catppuccin",
|
theme = require("max.theme").name,
|
||||||
},
|
},
|
||||||
|
|
||||||
-- These are to remove the defaults
|
-- These are to remove the defaults
|
||||||
@ -79,15 +79,6 @@ local function ins_right(component)
|
|||||||
table.insert(config.sections.lualine_x, component)
|
table.insert(config.sections.lualine_x, component)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Begining Of The StatusLine
|
|
||||||
-- ins_left {
|
|
||||||
-- function()
|
|
||||||
-- return '|'
|
|
||||||
-- end,
|
|
||||||
-- color = { fg = colors.blue }, -- Sets highlighting of component
|
|
||||||
-- padding = { left = 0, right = 1 }, -- We don't need space before this
|
|
||||||
-- }
|
|
||||||
|
|
||||||
-- Icon Of Diffrent Mode: -- normal -- | -- insert -- | -- visual --
|
-- Icon Of Diffrent Mode: -- normal -- | -- insert -- | -- visual --
|
||||||
ins_left({
|
ins_left({
|
||||||
-- mode component
|
-- mode component
|
||||||
@ -139,31 +130,33 @@ ins_left({
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
ins_left({
|
ins_left {
|
||||||
"lsp_progress",
|
'lsp_progress',
|
||||||
-- With spinner
|
display_components = { 'lsp_client_name', { 'title', 'percentage', 'message' }},
|
||||||
colors = {
|
-- With spinner
|
||||||
percentage = colors.cyan,
|
-- display_components = { 'lsp_client_name', 'spinner', { 'title', 'percentage', 'message' }},
|
||||||
title = colors.cyan,
|
colors = {
|
||||||
message = colors.cyan,
|
percentage = colors.cyan,
|
||||||
spinner = colors.cyan,
|
title = colors.cyan,
|
||||||
lsp_client_name = colors.magenta,
|
message = colors.cyan,
|
||||||
use = true,
|
spinner = colors.cyan,
|
||||||
},
|
lsp_client_name = colors.magenta,
|
||||||
separators = {
|
use = true,
|
||||||
component = " ",
|
},
|
||||||
progress = " | ",
|
separators = {
|
||||||
-- message = { pre = "(", post = ")" },
|
component = ' ',
|
||||||
percentage = { pre = "", post = "%% " },
|
progress = ' | ',
|
||||||
title = { pre = "", post = ": " },
|
message = { pre = '(', post = ')'},
|
||||||
lsp_client_name = { pre = "[", post = "]" },
|
percentage = { pre = '', post = '%% ' },
|
||||||
spinner = { pre = "", post = "" },
|
title = { pre = '', post = ': ' },
|
||||||
message = { commenced = "In Progress", completed = "Completed" },
|
lsp_client_name = { pre = '[', post = ']' },
|
||||||
},
|
spinner = { pre = '', post = '' },
|
||||||
display_components = { "lsp_client_name", "spinner", "percentage" },
|
message = { commenced = 'In Progress', completed = 'Completed' },
|
||||||
timer = { progress_enddelay = 500, spinner = 1000, lsp_client_name_enddelay = 1000 },
|
},
|
||||||
spinner_symbols = { "🌑 ", "🌒 ", "🌓 ", "🌔 ", "🌕 ", "🌖 ", "🌗 ", "🌘 " },
|
display_components = { 'lsp_client_name', 'spinner', { 'title', 'percentage', 'message' } },
|
||||||
})
|
timer = { progress_enddelay = 500, spinner = 1000, lsp_client_name_enddelay = 1000 },
|
||||||
|
spinner_symbols = { '🌑 ', '🌒 ', '🌓 ', '🌔 ', '🌕 ', '🌖 ', '🌗 ', '🌘 ' },
|
||||||
|
}
|
||||||
|
|
||||||
-- Git Diff
|
-- Git Diff
|
||||||
local function diff_source()
|
local function diff_source()
|
||||||
@ -206,16 +199,6 @@ ins_right({
|
|||||||
-- Add components to right sections
|
-- Add components to right sections
|
||||||
})
|
})
|
||||||
|
|
||||||
-- File Format
|
|
||||||
-- ins_right {
|
|
||||||
-- 'fileformat',
|
|
||||||
-- -- fmt = string.upper,
|
|
||||||
-- -- icons_enabled = false, -- I think icons are cool but Eviline doesn't have them. sigh
|
|
||||||
-- padding = { right = 2 },
|
|
||||||
-- symbols = { unix = 'NIX '},
|
|
||||||
-- -- color = { fg = colors.green, gui = 'bold' },
|
|
||||||
-- }
|
|
||||||
|
|
||||||
-- File Size
|
-- File Size
|
||||||
ins_right({
|
ins_right({
|
||||||
-- filesize component
|
-- filesize component
|
||||||
@ -224,14 +207,6 @@ ins_right({
|
|||||||
cond = conditions.buffer_not_empty,
|
cond = conditions.buffer_not_empty,
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Text Progress
|
|
||||||
|
|
||||||
ins_right({
|
|
||||||
"progress",
|
|
||||||
padding = { right = 1 },
|
|
||||||
-- padding = { left = 1 },
|
|
||||||
})
|
|
||||||
|
|
||||||
-- File Location
|
-- File Location
|
||||||
ins_right({
|
ins_right({
|
||||||
"location",
|
"location",
|
||||||
@ -247,13 +222,13 @@ ins_left({
|
|||||||
})
|
})
|
||||||
|
|
||||||
-- End Of The Status Bar
|
-- End Of The Status Bar
|
||||||
-- ins_right {
|
ins_right {
|
||||||
-- function()
|
function()
|
||||||
-- return ''
|
return ''
|
||||||
-- end,
|
end,
|
||||||
-- color = { fg = colors.blue }, -- Sets highlighting of component
|
color = { fg = colors.blue }, -- Sets highlighting of component
|
||||||
-- padding = { left = 1, right = 0 }, -- We don't need space before this
|
padding = { left = 1, right = 0 }, -- We don't need space before this
|
||||||
-- }
|
}
|
||||||
|
|
||||||
-- Now don't forget to initialize lualine
|
-- Now don't forget to initialize lualine
|
||||||
lualine.setup(config)
|
lualine.setup(config)
|
||||||
|
@ -11,5 +11,6 @@ require("scrollbar").setup({
|
|||||||
"TelescopePrompt",
|
"TelescopePrompt",
|
||||||
"noice",
|
"noice",
|
||||||
"NvimTree",
|
"NvimTree",
|
||||||
|
"neo-tree"
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
@ -3,15 +3,14 @@ require("persisted").setup({
|
|||||||
before_save = function()
|
before_save = function()
|
||||||
local tree = pcall(require, "nvim-tree")
|
local tree = pcall(require, "nvim-tree")
|
||||||
if tree then
|
if tree then
|
||||||
vim.cmd("NvimTreeClose")
|
vim.cmd("Neotree close")
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
after_save = function()
|
after_save = function()
|
||||||
vim.cmd("NvimTreeOpen")
|
vim.cmd("Neotree show")
|
||||||
end,
|
end,
|
||||||
after_source = function()
|
after_source = function()
|
||||||
vim.lsp.stop_client(vim.lsp.get_active_clients())
|
vim.lsp.stop_client(vim.lsp.get_active_clients())
|
||||||
vim.cmd("filetype detect")
|
vim.cmd("filetype detect")
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
require("telescope").load_extension("persisted") -- To load the telescope extension
|
|
||||||
|
@ -66,5 +66,5 @@ local default = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
telescope.setup(default)
|
telescope.setup(default)
|
||||||
telescope.load_extension("git_worktree")
|
|
||||||
telescope.load_extension("notify")
|
telescope.load_extension("notify")
|
||||||
|
telescope.load_extension("persisted") -- To load the telescope extension
|
||||||
|
@ -37,6 +37,3 @@ require("nvim-tree").setup({
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
-- vim.cmd("NvimTreeOpen")
|
|
||||||
-- vim.api.nvim_input("<C-l>")
|
|
||||||
|
@ -18,14 +18,16 @@ autocmd({ "BufReadPost" }, {
|
|||||||
})
|
})
|
||||||
|
|
||||||
local save_fold = augroup("Persistent Folds", { clear = true })
|
local save_fold = augroup("Persistent Folds", { clear = true })
|
||||||
autocmd("BufWinLeave", {
|
autocmd({ "BufWinLeave" }, {
|
||||||
pattern = "*.*",
|
pattern = "*.*",
|
||||||
callback = function()
|
callback = function()
|
||||||
vim.cmd.mkview()
|
vim.cmd.mkview()
|
||||||
|
vim.cmd("SessionSave")
|
||||||
end,
|
end,
|
||||||
group = save_fold,
|
group = save_fold,
|
||||||
})
|
})
|
||||||
autocmd("BufWinEnter", {
|
|
||||||
|
autocmd({ "BufWinEnter" }, {
|
||||||
pattern = "*.*",
|
pattern = "*.*",
|
||||||
callback = function()
|
callback = function()
|
||||||
vim.cmd.loadview({ mods = { emsg_silent = true } })
|
vim.cmd.loadview({ mods = { emsg_silent = true } })
|
||||||
@ -33,13 +35,11 @@ autocmd("BufWinEnter", {
|
|||||||
group = save_fold,
|
group = save_fold,
|
||||||
})
|
})
|
||||||
|
|
||||||
require("max.theme.statuscolumn");
|
autocmd({ "BufWinEnter", "BufAdd" }, {
|
||||||
|
desc = 'hide statuscolumn in neotree',
|
||||||
autocmd({ "BufWinEnter","BufAdd" }, {
|
|
||||||
desc = 'hide statuscolumn in nvimtree',
|
|
||||||
group = vim.api.nvim_create_augroup('hide_nvimtree_stc', { clear = true }),
|
group = vim.api.nvim_create_augroup('hide_nvimtree_stc', { clear = true }),
|
||||||
callback = function(opts)
|
callback = function(opts)
|
||||||
if vim.bo[opts.buf].filetype == 'NvimTree' then
|
if vim.bo[opts.buf].filetype == 'NvimTree' or vim.bo[opts.buf].filetype == "neo-tree" then
|
||||||
vim.opt.statuscolumn = ''
|
vim.opt.statuscolumn = ''
|
||||||
else
|
else
|
||||||
-- vim.o.statuscolumn = '%=%r%s%#FoldColumn#%{foldlevel(v:lnum) > foldlevel(v:lnum - 1) ? (foldclosed(v:lnum) == -1 ? "" : "") : " " } %*'
|
-- vim.o.statuscolumn = '%=%r%s%#FoldColumn#%{foldlevel(v:lnum) > foldlevel(v:lnum - 1) ? (foldclosed(v:lnum) == -1 ? "" : "") : " " } %*'
|
||||||
@ -48,8 +48,6 @@ autocmd({ "BufWinEnter","BufAdd" }, {
|
|||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
vim.cmd [[au BufWinEnter NvimTree setlocal statuscolumn=""]]
|
|
||||||
|
|
||||||
vim.cmd([[
|
vim.cmd([[
|
||||||
augroup filetypedetect
|
augroup filetypedetect
|
||||||
au BufNewFile,BufRead *.frag setl ft=glsl
|
au BufNewFile,BufRead *.frag setl ft=glsl
|
||||||
@ -67,3 +65,5 @@ autocmd("BufReadPost", {
|
|||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,25 +1,22 @@
|
|||||||
-- local map = vim.api.nvim_set_keymap
|
|
||||||
local map = vim.keymap.set
|
local map = vim.keymap.set
|
||||||
local opts = { noremap = true, silent = true }
|
local opts = { noremap = true, silent = true }
|
||||||
|
|
||||||
|
|
||||||
-- Set Leader key
|
-- Set Leader key
|
||||||
vim.g.mapleader = " "
|
vim.g.mapleader = " "
|
||||||
|
|
||||||
|
-- Telescope
|
||||||
map("n", "<C-o>", ":Telescope find_files preview={timeout=1000}<CR>", opts)
|
map("n", "<C-o>", ":Telescope find_files preview={timeout=1000}<CR>", opts)
|
||||||
map("n", "<C-f>", ":lua require'telescope.builtin'.live_grep{ cwd = vim.fn.getcwd() }<CR>", opts)
|
map("n", "<C-f>", ":Telescope live_grep<CR>", opts)
|
||||||
map("n", "<Leader><leader>", "za", opts)
|
|
||||||
map("n", "<leader>o", ":Telescope buffers<CR>", opts)
|
map("n", "<leader>o", ":Telescope buffers<CR>", opts)
|
||||||
|
|
||||||
map("v", ">", ">gv", opts)
|
map("n", "<Leader><leader>", "za", opts)
|
||||||
map("v", "<", "<gv", opts)
|
|
||||||
|
|
||||||
local function zenMode()
|
local function zenMode()
|
||||||
vim.cmd("NvimTreeClose");
|
vim.cmd("Neotree close");
|
||||||
vim.cmd("NoNeckPain");
|
vim.cmd("NoNeckPain");
|
||||||
end
|
end
|
||||||
|
|
||||||
map("n", "zz", zenMode, opts);
|
map("n", "<Leader>z", zenMode, opts);
|
||||||
map("n", "<Leader>a", ":Alpha<CR>", opts);
|
map("n", "<Leader>a", ":Alpha<CR>", opts);
|
||||||
|
|
||||||
-- LSP Functionality
|
-- LSP Functionality
|
||||||
@ -31,21 +28,23 @@ map("n", "gd", ":lua vim.lsp.buf.definition()<CR>", opts)
|
|||||||
map("n", "gi", ":lua vim.lsp.buf.implementation()<CR>", opts)
|
map("n", "gi", ":lua vim.lsp.buf.implementation()<CR>", opts)
|
||||||
map("n", "K", ":lua vim.lsp.buf.hover()<CR>", opts)
|
map("n", "K", ":lua vim.lsp.buf.hover()<CR>", opts)
|
||||||
|
|
||||||
map("n", "<Leader>ii", ":Lspsaga incomming_calls<CR>", opts)
|
map("n", "<Leader>rn", ":lua vim.lsp.buf.rename()<CR>", opts)
|
||||||
map("n", "<Leader>io", ":Lspsaga outgoing_calls<CR>", opts)
|
map({ "n", "v" }, "<Leader>c", ":Lspsaga code_action<CR>", { silent = true })
|
||||||
map("n", "<Leader>rn", "<cmd>lua vim.lsp.buf.rename()<CR>", opts)
|
map({ "n", "v" }, "<Leader>c", ":lua vim.lsp.buf.code_action()<CR>", { silent = true })
|
||||||
map({ "n", "v" }, "<Leader>c", "<cmd>Lspsaga code_action<CR>", { silent = true })
|
map({ "n", "v" }, "gr", ":Lspsaga lsp_finder<CR>", opts)
|
||||||
map({ "n", "v" }, "<Leader>c", "<cmd>lua vim.lsp.buf.code_action()<CR>", { silent = true })
|
|
||||||
map({ "n", "v" }, "gr", "<cmd>Lspsaga lsp_finder<CR>", opts)
|
|
||||||
|
|
||||||
map("n", "<Leader>u", ":UndotreeToggle<CR>", opts)
|
map("n", "<Leader>u", ":UndotreeToggle<CR>", opts)
|
||||||
map("n", "<Leader>wq", ":wqall!<CR>", opts)
|
map("n", "<Leader>wq", ":wqall!<CR>", opts)
|
||||||
map("n", "<Leader>li", ":LspInfo<CR>", opts)
|
map("n", "<Leader>li", ":LspInfo<CR>", opts)
|
||||||
|
|
||||||
-- This is my [i]nspect section, [i]nspect [s]ymbols
|
-- This is my [i]nspect section,
|
||||||
map("n", "<Leader>is", "<cmd>SymbolsOutline<cr>", opts)
|
map("n", "<Leader>is", ":SymbolsOutline<cr>", opts) -- [i]nspect [s]ymbols
|
||||||
map("n", "<Leader>io", "<cmd>Lspsaga outline<CR>", opts)
|
map("n", "<Leader>io", ":Lspsaga outline<CR>", opts) -- [i]nspect [o]utline
|
||||||
map("n", "<Leader>ip", ":TroubleToggle<CR>", opts)
|
map("n", "<Leader>in", ":Telescope notify<CR>", opts) -- [i]nspect [n]otifications
|
||||||
|
map("n", "<Leader>ip", ":TroubleToggle<CR>", opts) -- [i]nspect [p]roblems
|
||||||
|
map("n", "<Leader>ii", ":Lspsaga incomming_calls<CR>", opts) --[i]nspect [i]ncomming_calls
|
||||||
|
map("n", "<Leader>io", ":Lspsaga outgoing_calls<CR>", opts) --[i]nspect [o]utgoing_calls
|
||||||
|
|
||||||
map({ "n", "v" }, "<Leader>t", require("max.configs.translate"), opts)
|
map({ "n", "v" }, "<Leader>t", require("max.configs.translate"), opts)
|
||||||
|
|
||||||
-- DAP Functionality
|
-- DAP Functionality
|
||||||
@ -55,9 +54,6 @@ map("n", "<Leader>b", ":lua require('dap').toggle_breakpoint()<CR>", opts)
|
|||||||
map("n", "tt", ":lua require('neotest').run.run()<CR>", opts)
|
map("n", "tt", ":lua require('neotest').run.run()<CR>", opts)
|
||||||
map("n", "to", ":lua require('neotest').summary.open()<CR>", opts)
|
map("n", "to", ":lua require('neotest').summary.open()<CR>", opts)
|
||||||
|
|
||||||
map({ "n", "v" }, "+", "<cmd>:Boole increment<CR>", opts)
|
|
||||||
map({ "n", "v" }, "-", "<cmd>:Boole decrement<CR>", opts)
|
|
||||||
|
|
||||||
-- Navigate Buffers
|
-- Navigate Buffers
|
||||||
map("n", "<C-h>", "<C-w>h", opts)
|
map("n", "<C-h>", "<C-w>h", opts)
|
||||||
map("n", "<C-j>", "<C-w>j", opts)
|
map("n", "<C-j>", "<C-w>j", opts)
|
||||||
@ -70,9 +66,9 @@ map("n", "<Leader>3", "3gt", opts)
|
|||||||
map("n", "<Leader>4", "4gt", opts)
|
map("n", "<Leader>4", "4gt", opts)
|
||||||
map("n", "<Leader>0", ":tablast<CR>", opts)
|
map("n", "<Leader>0", ":tablast<CR>", opts)
|
||||||
|
|
||||||
-- Browser like next/previous
|
-- Browser like next/previous for navigating the jumplist
|
||||||
map("n", "<A-Left>", ":bprevious<CR>", opts)
|
map("n", "<A-Left>", "<C-O>", opts)
|
||||||
map("n", "<A-Right>", ":bnext<CR>", opts)
|
map("n", "<A-Right>", "<C-I>", opts)
|
||||||
|
|
||||||
-- Copy visual selection to keyboard
|
-- Copy visual selection to keyboard
|
||||||
map("v", "Y", '"+y', opts)
|
map("v", "Y", '"+y', opts)
|
||||||
@ -80,14 +76,16 @@ map("n", "<Leader-k>", "{", opts)
|
|||||||
map("n", "<Leader-j>", "}", opts)
|
map("n", "<Leader-j>", "}", opts)
|
||||||
|
|
||||||
-- Move lines vscode style
|
-- Move lines vscode style
|
||||||
map("n", "<A-j>", "<cmd>move +1<CR>", opts)
|
map("n", "<A-j>", ":move +1<CR>", opts)
|
||||||
map("n", "<A-k>", "<cmd>move -2<CR>", opts)
|
map("n", "<A-k>", ":move -2<CR>", opts)
|
||||||
map("i", "<A-j>", "<cmd>move +1<CR>", opts)
|
map("i", "<A-j>", ":move +1<CR>", opts)
|
||||||
map("i", "<A-k>", "<cmd>move -2<CR>", opts)
|
map("i", "<A-k>", ":move -2<CR>", opts)
|
||||||
map("v", "<A-j>", ":m '>+1<CR>gv=gv", opts)
|
map("v", "<A-j>", ":m '>+1<CR>gv=gv", opts)
|
||||||
map("v", "<A-k>", ":m '<-2<CR>gv=gv", opts)
|
map("v", "<A-k>", ":m '<-2<CR>gv=gv", opts)
|
||||||
map("n", "<A-S-K>", "yyP", opts)
|
map("n", "<A-S-K>", "yyP", opts)
|
||||||
map("n", "<A-S-J>", "yyp", opts)
|
map("n", "<A-S-J>", "yyp", opts)
|
||||||
|
map("v", ">", ">gv", opts)
|
||||||
|
map("v", "<", "<gv", opts)
|
||||||
|
|
||||||
-- If i paste with p, the replaced content doesnt replace my clipboard
|
-- If i paste with p, the replaced content doesnt replace my clipboard
|
||||||
map("v", "p", '"_dP', opts)
|
map("v", "p", '"_dP', opts)
|
||||||
@ -96,16 +94,10 @@ map("v", "p", '"_dP', opts)
|
|||||||
map("n", "<leader>cl", ":noh<CR>", opts);
|
map("n", "<leader>cl", ":noh<CR>", opts);
|
||||||
map("n", "<leader>m", ":Mason<CR>", opts);
|
map("n", "<leader>m", ":Mason<CR>", opts);
|
||||||
map("n", "<leader>l", ":Lazy<CR>", opts);
|
map("n", "<leader>l", ":Lazy<CR>", opts);
|
||||||
map("n", "<leader>so", ":so %<CR>", opts);
|
|
||||||
|
|
||||||
-- Faster git merge
|
-- Find file in NeoTree
|
||||||
map("n", "<Leader>gd", ":Gvdiffsplit!<CR>", opts)
|
map("n", "<Leader>j", ":Neotree toggle<CR>", opts)
|
||||||
map("n", "<Leader>gdl", ":diffget //3<CR>", opts)
|
map("n", "<Leader>f", ":Neotree action=focus reveal=true<CR>", opts)
|
||||||
map("n", "<Leader>gdh", ":diffget //2<CR>", opts)
|
|
||||||
|
|
||||||
-- Find file in NvimTree
|
|
||||||
map("n", "<Leader>j", ":NvimTreeToggle<CR>", opts)
|
|
||||||
map("n", "<Leader>f", ":NvimTreeFindFile<CR><c-w>", opts)
|
|
||||||
|
|
||||||
-- I aint no weak boy
|
-- I aint no weak boy
|
||||||
map("n", "<Left>", ":echo 'No Left for you'<CR><i><dw>", opts)
|
map("n", "<Left>", ":echo 'No Left for you'<CR><i><dw>", opts)
|
||||||
@ -113,19 +105,13 @@ map("n", "<Right>", ":echo 'No Right for you'<CR><dw>", opts)
|
|||||||
map("n", "<Up>", ":echo 'No Up for you'<CR><dw>", opts)
|
map("n", "<Up>", ":echo 'No Up for you'<CR><dw>", opts)
|
||||||
map("n", "<Down>", ":echo 'No Down for you'<CR><dw>", opts)
|
map("n", "<Down>", ":echo 'No Down for you'<CR><dw>", opts)
|
||||||
|
|
||||||
-- Run Requests
|
-- Run Scripts
|
||||||
map("n", "<Leader>r", ":SnipRun<CR>", opts)
|
map("n", "<Leader>r", ":SnipRun<CR>", opts)
|
||||||
map("v", "<Leader>r", ":'<,'>SnipRun<CR>", opts)
|
map("v", "<Leader>r", ":'<,'>SnipRun<CR>", opts)
|
||||||
|
|
||||||
-- Close on q
|
|
||||||
local function closeAll()
|
|
||||||
vim.cmd("SessionSave")
|
|
||||||
vim.cmd("qall")
|
|
||||||
end
|
|
||||||
|
|
||||||
map("n", "<Leader>q", ":q<CR>", opts)
|
map("n", "<Leader>q", ":q<CR>", opts)
|
||||||
map("n", "<Leader><C-q>", closeAll, opts)
|
map("n", "<Leader><C-q>", ":qall<CR>", opts)
|
||||||
|
|
||||||
-- Make ctrl+s work
|
-- Make ctrl+s work
|
||||||
map("n", "<C-s>", "<Esc>:w<CR>", opts)
|
map("n", "<C-s>", ":w<CR>", opts)
|
||||||
map("i", "<C-s>", "<Esc>:w<CR>i", opts)
|
map("i", "<C-s>", "<Esc>:w<CR>i", opts)
|
||||||
|
@ -1,79 +1,54 @@
|
|||||||
-------------
|
vim.g.mapleader = " "
|
||||||
-- General --
|
vim.g.maplocalleader = " "
|
||||||
-------------
|
|
||||||
local set = vim.opt
|
|
||||||
local g = vim.g
|
|
||||||
|
|
||||||
set.swapfile = false -- Don't use swapfile
|
local opt = vim.opt
|
||||||
set.updatetime = 0 -- Faster completion
|
|
||||||
set.smartindent = true -- Makes indenting smart
|
|
||||||
set.iskeyword:append("-") -- treat dash separated words as a word text object"
|
|
||||||
set.clipboard = "unnamedplus" -- Copy paste between vim and everything else
|
|
||||||
set.smarttab = true -- Makes tabbing smarter will realize you have 2 vs 4
|
|
||||||
set.expandtab = true -- Converts tabs to spaces
|
|
||||||
set.autoindent = true -- Good auto indent
|
|
||||||
set.autochdir = false -- Your working directory will always be the same as your working directory
|
|
||||||
set.incsearch = true -- sets incremental search
|
|
||||||
set.undofile = true
|
|
||||||
set.undodir = vim.fn.stdpath("data") .. "/undo"
|
|
||||||
set.shell = "/bin/zsh" -- Set your shell to bash or zsh
|
|
||||||
set.shortmess:append("sI") -- Disable nvim intro
|
|
||||||
vim.cmd([[set nobackup]]) -- creates a backup file
|
|
||||||
vim.cmd([[set nowritebackup]]) -- creates a backup file i guess
|
|
||||||
vim.cmd([[set formatoptions-=cro]]) -- Stop newline continution of comments
|
|
||||||
vim.cmd([[set complete+=kspell]]) -- auto complete with spellcheck
|
|
||||||
vim.cmd([[set completeopt=menuone,noselect]]) -- auto complete menu (It's pretty great)
|
|
||||||
vim.cmd([[set nocompatible]]) -- Disable compatibility to old-time vi
|
|
||||||
set.mouse = "a" -- Enable mouse support
|
|
||||||
set.signcolumn = "yes"
|
|
||||||
set.sessionoptions = { "buffers", "curdir", "tabpages", "winsize" }
|
|
||||||
|
|
||||||
-- Configure Folds
|
opt.autowrite = true -- Enable auto write
|
||||||
vim.cmd([[set wildmode=list:longest,full]]) -- Command-line completion mode
|
opt.clipboard = "unnamedplus" -- Sync with system clipboard
|
||||||
g.loaded_netrw = 1;
|
opt.completeopt = "menu,menuone,noselect"
|
||||||
g.loaded_netrwPlugin = 1;
|
opt.conceallevel = 3 -- Hide * markup for bold and italic
|
||||||
|
opt.confirm = true -- Confirm to save changes before exiting modified buffer
|
||||||
|
opt.cursorline = true -- Enable highlighting of the current line
|
||||||
|
opt.expandtab = true -- Use spaces instead of tabs
|
||||||
|
opt.formatoptions = "jcroqlnt" -- tcqj
|
||||||
|
opt.grepformat = "%f:%l:%c:%m"
|
||||||
|
opt.grepprg = "rg --vimgrep"
|
||||||
|
opt.ignorecase = true -- Ignore case
|
||||||
|
opt.inccommand = "nosplit" -- preview incremental substitute
|
||||||
|
opt.laststatus = 3 -- laststatus=3 enables global statusline
|
||||||
|
opt.list = false -- Show some invisible characters (tabs...
|
||||||
|
opt.mouse = "a" -- Enable mouse mode
|
||||||
|
opt.number = true -- Print line number
|
||||||
|
opt.pumblend = 10 -- Popup blend
|
||||||
|
opt.pumheight = 10 -- Maximum number of entries in a popup
|
||||||
|
opt.relativenumber = true -- Relative line numbers
|
||||||
|
opt.scrolloff = 4 -- Lines of context
|
||||||
|
opt.sessionoptions = { "buffers", "curdir", "tabpages", "winsize" }
|
||||||
|
opt.shiftround = true -- Round indent
|
||||||
|
opt.shiftwidth = 2 -- Size of an indent
|
||||||
|
opt.shortmess:append { W = true, I = true, c = true }
|
||||||
|
opt.showmode = false -- Dont show mode since we have a statusline
|
||||||
|
opt.sidescrolloff = 8 -- Columns of context
|
||||||
|
opt.signcolumn = "no" -- Always show the signcolumn, otherwise it would shift the text each time
|
||||||
|
opt.smartcase = true -- Don't ignore case with capitals
|
||||||
|
opt.smartindent = true -- Insert indents automatically
|
||||||
|
opt.spelllang = { "en" }
|
||||||
|
opt.splitbelow = true -- Put new windows below current
|
||||||
|
opt.splitright = true -- Put new windows right of current
|
||||||
|
opt.tabstop = 2 -- Number of spaces tabs count for
|
||||||
|
opt.termguicolors = true -- True color support
|
||||||
|
opt.timeoutlen = 300
|
||||||
|
opt.undofile = true
|
||||||
|
opt.undolevels = 10000
|
||||||
|
opt.updatetime = 200 -- Save swap file and trigger CursorHold
|
||||||
|
opt.wildmode = "longest:full,full" -- Command-line completion mode
|
||||||
|
opt.winminwidth = 5 -- Minimum window width
|
||||||
|
opt.wrap = false -- Disable line wrap
|
||||||
|
|
||||||
---------------
|
if vim.fn.has("nvim-0.9.0") == 1 then
|
||||||
-- Neovim UI --
|
opt.splitkeep = "screen"
|
||||||
---------------
|
opt.shortmess:append { C = true }
|
||||||
set.pumheight = 15 -- Makes popup menu smaller
|
end
|
||||||
set.ruler = true -- Show the cursor position all the time
|
|
||||||
set.splitbelow = true -- Horizontal splits will automatically be below
|
|
||||||
set.splitright = true -- Vertical splits will automatically be to the right
|
|
||||||
set.conceallevel = 0 -- So that I can see `` in markdown files
|
|
||||||
g.markdown_fenced_languages = { "javascript", "typescript", "bash", "lua", "go", "rust", "c", "cpp" }
|
|
||||||
set.tabstop = 2 -- Insert 2 spaces for a tab
|
|
||||||
set.number = true -- Line numbers
|
|
||||||
set.background = "dark" -- tell vim what the background color looks like
|
|
||||||
set.virtualedit = "onemore" -- With This option you can move the cursor one character over the end
|
|
||||||
set.ignorecase = true -- ignores case when searching
|
|
||||||
set.smartcase = true -- turns on case sensitive search when letters are capitalized
|
|
||||||
set.termguicolors = true -- set term gui colors (most terminals support this)
|
|
||||||
set.laststatus = 3 -- Always display the status line
|
|
||||||
set.title = true -- Show current txt that you editing
|
|
||||||
set.relativenumber = true -- Vim’s absolute, relative and hybrid line numbers
|
|
||||||
set.cursorline = true -- Enable highlighting of the current line
|
|
||||||
set.synmaxcol = 128
|
|
||||||
vim.cmd("syntax sync minlines=256")
|
|
||||||
set.mousescroll = "ver:1,hor:1"
|
|
||||||
set.shiftwidth = 2 -- Change the number of space characters inserted for indentation
|
|
||||||
set.showtabline = 1 -- Always show tabs
|
|
||||||
set.cmdheight = 1 -- More space for displaying messages
|
|
||||||
vim.cmd([[set nowrap]]) -- Display long lines as just one line
|
|
||||||
vim.cmd([[set noshowmode]]) -- We don't need to see things like -- INSERT -- anymore
|
|
||||||
vim.cmd([[syntax enable]]) -- Enables syntax highlighing
|
|
||||||
vim.cmd([[set t_Co=256]]) -- Support 256 colors
|
|
||||||
vim.cmd "set whichwrap+=<,>,[,],h,l" -- Breaks Space-Time Continuum
|
|
||||||
vim.diagnostic.config({
|
|
||||||
virtual_text = true,
|
|
||||||
})
|
|
||||||
|
|
||||||
-----------------
|
-- Fix markdown indentation settings
|
||||||
-- Memory, CPU --
|
vim.g.markdown_recommended_style = 0
|
||||||
-----------------
|
|
||||||
set.hidden = true -- Required to keep multiple buffers open multiple buffers
|
|
||||||
set.timeoutlen = 500 -- By default timeoutlen is 1000 ms
|
|
||||||
set.lazyredraw = false -- Disable lazyredraw
|
|
||||||
set.synmaxcol = 240 -- Max column for syntax highlight
|
|
||||||
set.updatetime = 700 -- ms to wait for trigger an event
|
|
||||||
vim.o.fillchars = 'eob: '
|
|
||||||
|
@ -1,19 +1,22 @@
|
|||||||
local plugins = {
|
local plugins = {
|
||||||
|
|
||||||
|
{
|
||||||
|
dir = "~/Projects/sudoku.nvim",
|
||||||
|
cmd = "Sudoku",
|
||||||
|
config = true
|
||||||
|
},
|
||||||
|
|
||||||
"nvim-lua/plenary.nvim",
|
"nvim-lua/plenary.nvim",
|
||||||
|
|
||||||
---------------------
|
---------------------
|
||||||
-- Theming Section --
|
-- Theming Section --
|
||||||
---------------------
|
---------------------
|
||||||
|
require("max.theme"),
|
||||||
|
|
||||||
"rktjmp/fwatch.nvim", -- d to check dark/light theme
|
--------------------
|
||||||
{ "catppuccin/nvim", name = "catppuccin", priority = 1000, lazy = false },
|
-- Layout Plugins --
|
||||||
-- local plugins need to be explicitly configured with dir
|
--------------------
|
||||||
{
|
"nvim-lua/popup.nvim",
|
||||||
dir = "~/Projects/sudoku.nvim",
|
|
||||||
cmd = "Sudoku",
|
|
||||||
config = true,
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"nvim-lualine/lualine.nvim",
|
"nvim-lualine/lualine.nvim",
|
||||||
lazy = false,
|
lazy = false,
|
||||||
@ -21,19 +24,68 @@ local plugins = {
|
|||||||
require("max.configs.lualine")
|
require("max.configs.lualine")
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
'echasnovski/mini.nvim',
|
||||||
|
version = false,
|
||||||
|
event = "VeryLazy",
|
||||||
|
config = function()
|
||||||
|
require("mini.pairs").setup({
|
||||||
|
})
|
||||||
|
|
||||||
--------------------
|
require("mini.surround").setup({
|
||||||
-- Layout Plugins --
|
})
|
||||||
--------------------
|
|
||||||
|
require("mini.animate").setup({
|
||||||
|
cursor = {
|
||||||
|
enable = false,
|
||||||
|
}
|
||||||
|
})
|
||||||
|
end
|
||||||
|
},
|
||||||
{ "shortcuts/no-neck-pain.nvim", cmd = "NoNeckPain", config = true },
|
{ "shortcuts/no-neck-pain.nvim", cmd = "NoNeckPain", config = true },
|
||||||
{
|
{
|
||||||
"stevearc/dressing.nvim",
|
"folke/noice.nvim",
|
||||||
event = "VeryLazy",
|
event = "VeryLazy",
|
||||||
config = true,
|
opts = {
|
||||||
|
lsp = {
|
||||||
|
override = {
|
||||||
|
["vim.lsp.util.convert_input_to_markdown_lines"] = true,
|
||||||
|
["vim.lsp.util.stylize_markdown"] = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
presets = {
|
||||||
|
bottom_search = true,
|
||||||
|
command_palette = true,
|
||||||
|
long_message_to_split = true,
|
||||||
|
lsp_doc_border = true
|
||||||
|
},
|
||||||
|
},
|
||||||
|
keys = {
|
||||||
|
{ "<S-Enter>", function() require("noice").redirect(vim.fn.getcmdline()) end, mode = "c", desc = "Redirect Cmdline" },
|
||||||
|
{ "<leader>snl", function() require("noice").cmd("last") end, desc = "Noice Last Message" },
|
||||||
|
{ "<leader>snh", function() require("noice").cmd("history") end, desc = "Noice History" },
|
||||||
|
{ "<leader>sna", function() require("noice").cmd("all") end, desc = "Noice All" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"stevearc/dressing.nvim",
|
||||||
|
lazy = true,
|
||||||
|
init = function()
|
||||||
|
---@diagnostic disable-next-line: duplicate-set-field
|
||||||
|
vim.ui.select = function(...)
|
||||||
|
require("lazy").load({ plugins = { "dressing.nvim" } })
|
||||||
|
return vim.ui.select(...)
|
||||||
|
end
|
||||||
|
---@diagnostic disable-next-line: duplicate-set-field
|
||||||
|
vim.ui.input = function(...)
|
||||||
|
require("lazy").load({ plugins = { "dressing.nvim" } })
|
||||||
|
return vim.ui.input(...)
|
||||||
|
end
|
||||||
|
end,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"folke/which-key.nvim",
|
"folke/which-key.nvim",
|
||||||
event = "VimEnter",
|
event = "VeryLazy",
|
||||||
config = function()
|
config = function()
|
||||||
require("which-key").setup({})
|
require("which-key").setup({})
|
||||||
end,
|
end,
|
||||||
@ -43,23 +95,28 @@ local plugins = {
|
|||||||
cmd = "SymbolsOutline",
|
cmd = "SymbolsOutline",
|
||||||
config = true,
|
config = true,
|
||||||
},
|
},
|
||||||
{ "mbbill/undotree", event = "VeryLazy" },
|
{ "mbbill/undotree", cmd = { "Undotree", "UndotreeToggle" } },
|
||||||
{
|
{
|
||||||
"petertriho/nvim-scrollbar",
|
"petertriho/nvim-scrollbar",
|
||||||
|
event = "VeryLazy",
|
||||||
config = function()
|
config = function()
|
||||||
require("max.configs.scrollbar")
|
require("max.configs.scrollbar")
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"lewis6991/gitsigns.nvim",
|
"lewis6991/gitsigns.nvim",
|
||||||
lazy = false,
|
event = "BufReadPost",
|
||||||
config = function()
|
config = function()
|
||||||
require("gitsigns").setup()
|
require("gitsigns").setup()
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
"akinsho/nvim-toggleterm.lua",
|
|
||||||
{
|
{
|
||||||
"akinsho/git-conflict.nvim",
|
"akinsho/git-conflict.nvim",
|
||||||
|
version = "*",
|
||||||
|
dependencies = {
|
||||||
|
"akinsho/nvim-toggleterm.lua",
|
||||||
|
},
|
||||||
|
event = "BufReadPost",
|
||||||
config = function()
|
config = function()
|
||||||
require("git-conflict").setup()
|
require("git-conflict").setup()
|
||||||
end,
|
end,
|
||||||
@ -71,11 +128,6 @@ local plugins = {
|
|||||||
end,
|
end,
|
||||||
event = "VimEnter",
|
event = "VimEnter",
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"folke/neodev.nvim",
|
|
||||||
lazy = false,
|
|
||||||
config = true,
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"kevinhwang91/nvim-ufo",
|
"kevinhwang91/nvim-ufo",
|
||||||
event = "BufReadPost",
|
event = "BufReadPost",
|
||||||
@ -83,15 +135,21 @@ local plugins = {
|
|||||||
config = require("max.configs.ufo"),
|
config = require("max.configs.ufo"),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"kyazdani42/nvim-tree.lua",
|
"nvim-neo-tree/neo-tree.nvim",
|
||||||
event = "VeryLazy",
|
cmd = "Neotree",
|
||||||
-- lazy = false,
|
dependencies = {
|
||||||
dependencies = { "kyazdani42/nvim-web-devicons" },
|
"nvim-lua/plenary.nvim",
|
||||||
config = function()
|
"nvim-tree/nvim-web-devicons", -- not strictly required, but recommended
|
||||||
require("max.configs.tree")
|
"MunifTanjim/nui.nvim"
|
||||||
|
},
|
||||||
|
init = function()
|
||||||
|
vim.g.neo_tree_remove_legacy_commands = 1
|
||||||
|
require("neo-tree").setup({
|
||||||
|
hide_root_node = true,
|
||||||
|
highlight_background = "Normal",
|
||||||
|
})
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
"nvim-lua/popup.nvim",
|
|
||||||
{
|
{
|
||||||
"goolord/alpha-nvim",
|
"goolord/alpha-nvim",
|
||||||
lazy = false,
|
lazy = false,
|
||||||
@ -99,13 +157,6 @@ local plugins = {
|
|||||||
require("max.configs.dashboard")
|
require("max.configs.dashboard")
|
||||||
end,
|
end,
|
||||||
}, -- startup screen
|
}, -- startup screen
|
||||||
{
|
|
||||||
"notomo/gesture.nvim",
|
|
||||||
lazy = false,
|
|
||||||
config = function()
|
|
||||||
require("max.configs.gestures")
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"numToStr/Comment.nvim",
|
"numToStr/Comment.nvim",
|
||||||
event = "InsertEnter",
|
event = "InsertEnter",
|
||||||
@ -116,17 +167,22 @@ local plugins = {
|
|||||||
---------------------
|
---------------------
|
||||||
-- Code Navigation --
|
-- Code Navigation --
|
||||||
---------------------
|
---------------------
|
||||||
"junegunn/fzf",
|
|
||||||
{
|
{
|
||||||
"ggandor/flit.nvim",
|
"ggandor/flit.nvim",
|
||||||
dependencies = {
|
dependencies = {
|
||||||
"ggandor/leap.nvim",
|
"ggandor/leap.nvim",
|
||||||
},
|
},
|
||||||
event = "VimEnter",
|
event = "VeryLazy",
|
||||||
config = true,
|
config = true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"nvim-telescope/telescope.nvim",
|
"nvim-telescope/telescope.nvim",
|
||||||
|
dependencies = {
|
||||||
|
"nvim-lua/popup.nvim",
|
||||||
|
"nvim-lua/plenary.nvim",
|
||||||
|
"nvim-telescope/telescope-fzf-native.nvim",
|
||||||
|
},
|
||||||
|
event = "VeryLazy",
|
||||||
config = function()
|
config = function()
|
||||||
require("max.configs.telescope")
|
require("max.configs.telescope")
|
||||||
end,
|
end,
|
||||||
@ -163,7 +219,7 @@ local plugins = {
|
|||||||
{
|
{
|
||||||
"folke/trouble.nvim",
|
"folke/trouble.nvim",
|
||||||
cmd = "TroubleToggle",
|
cmd = "TroubleToggle",
|
||||||
dependencies = "kyazdani42/nvim-web-devicons",
|
dependencies = "nvim-tree/nvim-web-devicons",
|
||||||
config = function()
|
config = function()
|
||||||
require("trouble").setup({})
|
require("trouble").setup({})
|
||||||
end,
|
end,
|
||||||
@ -171,13 +227,11 @@ local plugins = {
|
|||||||
-------------------
|
-------------------
|
||||||
-- Autocomplete --
|
-- Autocomplete --
|
||||||
-------------------
|
-------------------
|
||||||
{ "tpope/vim-surround", lazy = false },
|
|
||||||
{
|
{
|
||||||
"hrsh7th/nvim-cmp",
|
"hrsh7th/nvim-cmp",
|
||||||
event = "InsertEnter",
|
event = "InsertEnter",
|
||||||
dependencies = {
|
dependencies = {
|
||||||
"hrsh7th/cmp-buffer",
|
"hrsh7th/cmp-buffer",
|
||||||
"windwp/nvim-autopairs",
|
|
||||||
"hrsh7th/cmp-path",
|
"hrsh7th/cmp-path",
|
||||||
"hrsh7th/cmp-emoji",
|
"hrsh7th/cmp-emoji",
|
||||||
"saadparwaiz1/cmp_luasnip",
|
"saadparwaiz1/cmp_luasnip",
|
||||||
@ -196,15 +250,21 @@ local plugins = {
|
|||||||
"nat-418/boole.nvim",
|
"nat-418/boole.nvim",
|
||||||
event = "InsertEnter",
|
event = "InsertEnter",
|
||||||
config = function()
|
config = function()
|
||||||
require("boole").setup()
|
require("boole").setup({
|
||||||
|
mappings = {
|
||||||
|
increment = '-',
|
||||||
|
decrement = '+'
|
||||||
|
},
|
||||||
|
additions = {
|
||||||
|
{ "const", "let", "var" }
|
||||||
|
}
|
||||||
|
})
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"gaoDean/autolist.nvim",
|
"gaoDean/autolist.nvim",
|
||||||
event = "InsertEnter",
|
event = "InsertEnter",
|
||||||
config = function()
|
config = true,
|
||||||
require("autolist").setup({})
|
|
||||||
end,
|
|
||||||
},
|
},
|
||||||
-------------------------
|
-------------------------
|
||||||
-- Syntax Highlighting --
|
-- Syntax Highlighting --
|
||||||
@ -212,17 +272,13 @@ local plugins = {
|
|||||||
{
|
{
|
||||||
"norcalli/nvim-colorizer.lua",
|
"norcalli/nvim-colorizer.lua",
|
||||||
config = true,
|
config = true,
|
||||||
event = "VeryLazy",
|
event = "BufReadPost",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"folke/todo-comments.nvim",
|
"folke/todo-comments.nvim",
|
||||||
config = true,
|
config = true,
|
||||||
event = "VeryLazy",
|
event = "VeryLazy",
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"styled-components/vim-styled-components",
|
|
||||||
lazy = false,
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"nvim-treesitter/nvim-treesitter",
|
"nvim-treesitter/nvim-treesitter",
|
||||||
event = "VeryLazy",
|
event = "VeryLazy",
|
||||||
@ -236,19 +292,9 @@ local plugins = {
|
|||||||
end,
|
end,
|
||||||
build = ":TSUpdate",
|
build = ":TSUpdate",
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"ckolkey/ts-node-action",
|
|
||||||
dependencies = { "nvim-treesitter" },
|
|
||||||
opts = {},
|
|
||||||
},
|
|
||||||
--------------------
|
--------------------
|
||||||
-- IDE Type Stuff --
|
-- IDE Type Stuff --
|
||||||
--------------------
|
--------------------
|
||||||
{
|
|
||||||
"ThePrimeagen/git-worktree.nvim",
|
|
||||||
config = true,
|
|
||||||
event = "VeryLazy"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"jackMort/ChatGPT.nvim",
|
"jackMort/ChatGPT.nvim",
|
||||||
cmd = "ChatGPT",
|
cmd = "ChatGPT",
|
||||||
@ -275,7 +321,6 @@ local plugins = {
|
|||||||
require("max.configs.dap")
|
require("max.configs.dap")
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
"editorconfig/editorconfig-vim",
|
|
||||||
{
|
{
|
||||||
"michaelb/sniprun",
|
"michaelb/sniprun",
|
||||||
event = "BufRead",
|
event = "BufRead",
|
||||||
@ -305,11 +350,14 @@ local plugins = {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"tpope/vim-dadbod",
|
"tpope/vim-dadbod",
|
||||||
lazy = false,
|
dependencies = {
|
||||||
|
"kristijanhusak/vim-dadbod-completion",
|
||||||
|
"kristijanhusak/vim-dadbod-ui",
|
||||||
|
},
|
||||||
|
cmd = "DBUI"
|
||||||
},
|
},
|
||||||
{ "kristijanhusak/vim-dadbod-ui", lazy = false },
|
|
||||||
}
|
}
|
||||||
|
|
||||||
local opts = { defaults = { lazy = true }, install = { colorscheme = { "catppuccin" } } }
|
local opts = { defaults = { lazy = true }, install = { colorscheme = { require("max.theme").name } } }
|
||||||
|
|
||||||
require("lazy").setup(plugins, opts)
|
require("lazy").setup(plugins, opts)
|
||||||
|
16
configs/nvim/lua/max/theme/ayu.lua
Normal file
16
configs/nvim/lua/max/theme/ayu.lua
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
return {
|
||||||
|
"Shatur/neovim-ayu",
|
||||||
|
lazy = false,
|
||||||
|
name = "ayu",
|
||||||
|
config = function()
|
||||||
|
require('ayu').setup({
|
||||||
|
mirage = false, -- Set to `true` to use `mirage` variant instead of `dark` for dark background.
|
||||||
|
overrides = {
|
||||||
|
normal = { bg = "NONE" },
|
||||||
|
}
|
||||||
|
})
|
||||||
|
vim.cmd("hi Normal guibg=none")
|
||||||
|
vim.cmd("colorscheme ayu")
|
||||||
|
vim.cmd("hi Normal guibg=none")
|
||||||
|
end
|
||||||
|
}
|
@ -1,41 +1,46 @@
|
|||||||
-- Enable Theming / Syntax
|
return {
|
||||||
vim.g.catppuccin_flavour = "frappe" -- latte, frappe, macchiato, mocha
|
"catppuccin/nvim",
|
||||||
|
name = "catppuccin",
|
||||||
|
lazy = false,
|
||||||
|
config = function()
|
||||||
|
vim.g.catppuccin_flavour = "frappe" -- latte, frappe, macchiato, mocha
|
||||||
|
|
||||||
local cat = require("catppuccin")
|
require("catppuccin").setup({
|
||||||
cat.setup({
|
transparent_background = true,
|
||||||
transparent_background = true,
|
compile = {
|
||||||
compile = {
|
enabled = true,
|
||||||
enabled = true,
|
path = vim.fn.stdpath("cache") .. "/catppuccin",
|
||||||
path = vim.fn.stdpath("cache") .. "/catppuccin",
|
},
|
||||||
},
|
styles = {
|
||||||
styles = {
|
comments = { "italic" },
|
||||||
comments = { "italic" },
|
strings = { "italic" },
|
||||||
strings = { "italic" },
|
},
|
||||||
},
|
integrations = {
|
||||||
integrations = {
|
gitsigns = true,
|
||||||
gitsigns = true,
|
telescope = true,
|
||||||
telescope = true,
|
-- treesitter = true,
|
||||||
-- treesitter = true,
|
cmp = true,
|
||||||
cmp = true,
|
lsp_saga = true,
|
||||||
lsp_saga = true,
|
notify = true,
|
||||||
notify = true,
|
neotree = {
|
||||||
nvimtree = {
|
enabled = true,
|
||||||
enabled = true,
|
show_root = false,
|
||||||
show_root = false,
|
},
|
||||||
},
|
dap = {
|
||||||
dap = {
|
enabled = true,
|
||||||
enabled = true,
|
enable_ui = true,
|
||||||
enable_ui = true,
|
},
|
||||||
},
|
native_lsp = {
|
||||||
native_lsp = {
|
enabled = true,
|
||||||
enabled = true,
|
},
|
||||||
},
|
ts_rainbow = true,
|
||||||
ts_rainbow = true,
|
indent_blankline = {
|
||||||
indent_blankline = {
|
enabled = true,
|
||||||
enabled = true,
|
colored_indent_levels = false,
|
||||||
colored_indent_levels = false,
|
},
|
||||||
},
|
},
|
||||||
},
|
})
|
||||||
})
|
|
||||||
|
|
||||||
vim.cmd("colorscheme catppuccin")
|
vim.cmd("colorscheme catppuccin")
|
||||||
|
end
|
||||||
|
} -- Enable Theming / Syntax
|
||||||
|
@ -1,59 +0,0 @@
|
|||||||
local defaults = {
|
|
||||||
-- colorscheme can be a string like `catppuccin` or a function that will load the colorscheme
|
|
||||||
---@type string|fun()
|
|
||||||
colorscheme = function()
|
|
||||||
require("tokyonight").load()
|
|
||||||
end,
|
|
||||||
-- icons used by other plugins
|
|
||||||
icons = {
|
|
||||||
diagnostics = {
|
|
||||||
Error = " ",
|
|
||||||
Warn = " ",
|
|
||||||
Hint = " ",
|
|
||||||
Info = " ",
|
|
||||||
},
|
|
||||||
git = {
|
|
||||||
added = " ",
|
|
||||||
modified = " ",
|
|
||||||
removed = " ",
|
|
||||||
},
|
|
||||||
kinds = {
|
|
||||||
Array = " ",
|
|
||||||
Boolean = " ",
|
|
||||||
Class = " ",
|
|
||||||
Color = " ",
|
|
||||||
Constant = " ",
|
|
||||||
Constructor = " ",
|
|
||||||
Enum = " ",
|
|
||||||
EnumMember = " ",
|
|
||||||
Event = " ",
|
|
||||||
Field = " ",
|
|
||||||
File = " ",
|
|
||||||
Folder = " ",
|
|
||||||
Function = " ",
|
|
||||||
Interface = " ",
|
|
||||||
Key = " ",
|
|
||||||
Keyword = " ",
|
|
||||||
Method = " ",
|
|
||||||
Module = " ",
|
|
||||||
Namespace = " ",
|
|
||||||
Null = "ﳠ ",
|
|
||||||
Number = " ",
|
|
||||||
Object = " ",
|
|
||||||
Operator = " ",
|
|
||||||
Package = " ",
|
|
||||||
Property = " ",
|
|
||||||
Reference = " ",
|
|
||||||
Snippet = " ",
|
|
||||||
String = " ",
|
|
||||||
Struct = " ",
|
|
||||||
Text = " ",
|
|
||||||
TypeParameter = " ",
|
|
||||||
Unit = " ",
|
|
||||||
Value = " ",
|
|
||||||
Variable = " ",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
return defaults
|
|
1
configs/nvim/lua/max/theme/init.lua
Normal file
1
configs/nvim/lua/max/theme/init.lua
Normal file
@ -0,0 +1 @@
|
|||||||
|
return require("max.theme.catpuccin");
|
@ -1,37 +1,43 @@
|
|||||||
require("tokyonight").setup({
|
return {
|
||||||
-- your configuration comes here
|
"folke/tokyonight.nvim",
|
||||||
-- or leave it empty to use the default settings
|
name = "tokyonight",
|
||||||
style = "night", -- The theme comes in three styles, `storm`, `moon`, a darker variant `night` and `day`
|
config = function()
|
||||||
light_style = "day", -- The theme is used when the background is set to light
|
require("tokyonight").setup({
|
||||||
transparent = true, -- Enable this to disable setting the background color
|
-- your configuration comes here
|
||||||
-- terminal_colors = true, -- Configure the colors used when opening a `:terminal` in Neovim
|
-- or leave it empty to use the default settings
|
||||||
styles = {
|
style = "night", -- The theme comes in three styles, `storm`, `moon`, a darker variant `night` and `day`
|
||||||
-- Style to be applied to different syntax groups
|
light_style = "day", -- The theme is used when the background is set to light
|
||||||
-- Value is any valid attr-list value for `:help nvim_set_hl`
|
transparent = true, -- Enable this to disable setting the background color
|
||||||
comments = { italic = true },
|
-- terminal_colors = true, -- Configure the colors used when opening a `:terminal` in Neovim
|
||||||
keywords = { italic = true },
|
styles = {
|
||||||
functions = {},
|
-- Style to be applied to different syntax groups
|
||||||
variables = {},
|
-- Value is any valid attr-list value for `:help nvim_set_hl`
|
||||||
-- Background styles. Can be "dark", "transparent" or "normal"
|
comments = { italic = true },
|
||||||
-- sidebars = "dark", -- style for sidebars, see below
|
keywords = { italic = true },
|
||||||
-- floats = "dark", -- style for floating windows
|
functions = {},
|
||||||
},
|
variables = {},
|
||||||
-- sidebars = { "qf", "help" }, -- Set a darker background on sidebar-like windows. For example: `["qf", "vista_kind", "terminal", "packer"]`
|
-- Background styles. Can be "dark", "transparent" or "normal"
|
||||||
day_brightness = 0.3, -- Adjusts the brightness of the colors of the **Day** style. Number between 0 and 1, from dull to vibrant colors
|
-- sidebars = "dark", -- style for sidebars, see below
|
||||||
hide_inactive_statusline = false, -- Enabling this option, will hide inactive statuslines and replace them with a thin border instead. Should work with the standard **StatusLine** and **LuaLine**.
|
-- floats = "dark", -- style for floating windows
|
||||||
dim_inactive = true, -- dims inactive windows
|
},
|
||||||
lualine_bold = true, -- When `true`, section headers in the lualine theme will be bold
|
-- sidebars = { "qf", "help" }, -- Set a darker background on sidebar-like windows. For example: `["qf", "vista_kind", "terminal", "packer"]`
|
||||||
|
day_brightness = 0.3, -- Adjusts the brightness of the colors of the **Day** style. Number between 0 and 1, from dull to vibrant colors
|
||||||
|
hide_inactive_statusline = false, -- Enabling this option, will hide inactive statuslines and replace them with a thin border instead. Should work with the standard **StatusLine** and **LuaLine**.
|
||||||
|
dim_inactive = true, -- dims inactive windows
|
||||||
|
lualine_bold = true, -- When `true`, section headers in the lualine theme will be bold
|
||||||
|
|
||||||
--- You can override specific color groups to use other groups or a hex color
|
--- You can override specific color groups to use other groups or a hex color
|
||||||
--- function will be called with a ColorScheme table
|
--- function will be called with a ColorScheme table
|
||||||
---@param colors ColorScheme
|
---@param colors ColorScheme
|
||||||
on_colors = function(colors) end,
|
on_colors = function(colors) end,
|
||||||
|
|
||||||
--- You can override specific highlights to use other groups or a hex color
|
--- You can override specific highlights to use other groups or a hex color
|
||||||
--- function will be called with a Highlights and ColorScheme table
|
--- function will be called with a Highlights and ColorScheme table
|
||||||
---@param highlights Highlights
|
---@param highlights Highlights
|
||||||
---@param colors ColorScheme
|
---@param colors ColorScheme
|
||||||
on_highlights = function(highlights, colors) end,
|
on_highlights = function(highlights, colors) end,
|
||||||
})
|
})
|
||||||
|
|
||||||
vim.cmd("colorscheme tokyonight")
|
vim.cmd("colorscheme tokyonight")
|
||||||
|
end
|
||||||
|
}
|
||||||
|
@ -0,0 +1,21 @@
|
|||||||
|
return {
|
||||||
|
"sam4llis/nvim-tundra",
|
||||||
|
name = "tundra",
|
||||||
|
config = function()
|
||||||
|
require("nvim-tundra").setup({
|
||||||
|
transparent_background = true,
|
||||||
|
plugins = {
|
||||||
|
lsp = true,
|
||||||
|
treesitter = true,
|
||||||
|
telescope = true,
|
||||||
|
nvimtree = true,
|
||||||
|
cmp = true,
|
||||||
|
dbui = true,
|
||||||
|
gitsigns = true,
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
vim.opt.background = 'dark'
|
||||||
|
vim.cmd('colorscheme tundra')
|
||||||
|
end
|
||||||
|
}
|
@ -1,34 +0,0 @@
|
|||||||
local M = {}
|
|
||||||
local cmd = vim.cmd
|
|
||||||
|
|
||||||
function M.create_augroup(autocmds, name)
|
|
||||||
cmd("augroup " .. name)
|
|
||||||
cmd("autocmd!")
|
|
||||||
for _, autocmd in ipairs(autocmds) do
|
|
||||||
cmd("autocmd " .. table.concat(autocmd, " "))
|
|
||||||
end
|
|
||||||
cmd("augroup END")
|
|
||||||
end
|
|
||||||
|
|
||||||
function M.ReloadConfig()
|
|
||||||
for name, _ in pairs(package.loaded) do
|
|
||||||
if name:match("^cnull") then
|
|
||||||
package.loaded[name] = nil
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
dofile(vim.env.MYVIMRC)
|
|
||||||
end
|
|
||||||
|
|
||||||
local inspect = require("inspect")
|
|
||||||
|
|
||||||
function M.dump(o)
|
|
||||||
print(inspect.inspect(o))
|
|
||||||
end
|
|
||||||
|
|
||||||
function M.has_plugin(pluginName)
|
|
||||||
local status = pcall(require, pluginName)
|
|
||||||
return status
|
|
||||||
end
|
|
||||||
|
|
||||||
return M
|
|
@ -1,337 +0,0 @@
|
|||||||
local _tl_compat; if (tonumber((_VERSION or ''):match('[%d.]*$')) or 0) < 5.3 then local p, m = pcall(require, 'compat53.module'); if p then _tl_compat = m end end; local math = _tl_compat and _tl_compat.math or math; local string = _tl_compat and _tl_compat.string or string; local table = _tl_compat and _tl_compat.table or table
|
|
||||||
local inspect = {Options = {}, }
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
inspect._VERSION = 'inspect.lua 3.1.0'
|
|
||||||
inspect._URL = 'http://github.com/kikito/inspect.lua'
|
|
||||||
inspect._DESCRIPTION = 'human-readable representations of tables'
|
|
||||||
inspect._LICENSE = [[
|
|
||||||
MIT LICENSE
|
|
||||||
|
|
||||||
Copyright (c) 2022 Enrique García Cota
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
|
||||||
copy of this software and associated documentation files (the
|
|
||||||
"Software"), to deal in the Software without restriction, including
|
|
||||||
without limitation the rights to use, copy, modify, merge, publish,
|
|
||||||
distribute, sublicense, and/or sell copies of the Software, and to
|
|
||||||
permit persons to whom the Software is furnished to do so, subject to
|
|
||||||
the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included
|
|
||||||
in all copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
||||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
||||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
||||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
||||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
||||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
||||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
]]
|
|
||||||
inspect.KEY = setmetatable({}, { __tostring = function() return 'inspect.KEY' end })
|
|
||||||
inspect.METATABLE = setmetatable({}, { __tostring = function() return 'inspect.METATABLE' end })
|
|
||||||
|
|
||||||
local tostring = tostring
|
|
||||||
local rep = string.rep
|
|
||||||
local match = string.match
|
|
||||||
local char = string.char
|
|
||||||
local gsub = string.gsub
|
|
||||||
local fmt = string.format
|
|
||||||
|
|
||||||
local function rawpairs(t)
|
|
||||||
return next, t, nil
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
local function smartQuote(str)
|
|
||||||
if match(str, '"') and not match(str, "'") then
|
|
||||||
return "'" .. str .. "'"
|
|
||||||
end
|
|
||||||
return '"' .. gsub(str, '"', '\\"') .. '"'
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
local shortControlCharEscapes = {
|
|
||||||
["\a"] = "\\a", ["\b"] = "\\b", ["\f"] = "\\f", ["\n"] = "\\n",
|
|
||||||
["\r"] = "\\r", ["\t"] = "\\t", ["\v"] = "\\v", ["\127"] = "\\127",
|
|
||||||
}
|
|
||||||
local longControlCharEscapes = { ["\127"] = "\127" }
|
|
||||||
for i = 0, 31 do
|
|
||||||
local ch = char(i)
|
|
||||||
if not shortControlCharEscapes[ch] then
|
|
||||||
shortControlCharEscapes[ch] = "\\" .. i
|
|
||||||
longControlCharEscapes[ch] = fmt("\\%03d", i)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
local function escape(str)
|
|
||||||
return (gsub(gsub(gsub(str, "\\", "\\\\"),
|
|
||||||
"(%c)%f[0-9]", longControlCharEscapes),
|
|
||||||
"%c", shortControlCharEscapes))
|
|
||||||
end
|
|
||||||
|
|
||||||
local function isIdentifier(str)
|
|
||||||
return type(str) == "string" and not not str:match("^[_%a][_%a%d]*$")
|
|
||||||
end
|
|
||||||
|
|
||||||
local flr = math.floor
|
|
||||||
local function isSequenceKey(k, sequenceLength)
|
|
||||||
return type(k) == "number" and
|
|
||||||
flr(k) == k and
|
|
||||||
1 <= (k) and
|
|
||||||
k <= sequenceLength
|
|
||||||
end
|
|
||||||
|
|
||||||
local defaultTypeOrders = {
|
|
||||||
['number'] = 1, ['boolean'] = 2, ['string'] = 3, ['table'] = 4,
|
|
||||||
['function'] = 5, ['userdata'] = 6, ['thread'] = 7,
|
|
||||||
}
|
|
||||||
|
|
||||||
local function sortKeys(a, b)
|
|
||||||
local ta, tb = type(a), type(b)
|
|
||||||
|
|
||||||
|
|
||||||
if ta == tb and (ta == 'string' or ta == 'number') then
|
|
||||||
return (a) < (b)
|
|
||||||
end
|
|
||||||
|
|
||||||
local dta = defaultTypeOrders[ta] or 100
|
|
||||||
local dtb = defaultTypeOrders[tb] or 100
|
|
||||||
|
|
||||||
|
|
||||||
return dta == dtb and ta < tb or dta < dtb
|
|
||||||
end
|
|
||||||
|
|
||||||
local function getKeys(t)
|
|
||||||
|
|
||||||
local seqLen = 1
|
|
||||||
while rawget(t, seqLen) ~= nil do
|
|
||||||
seqLen = seqLen + 1
|
|
||||||
end
|
|
||||||
seqLen = seqLen - 1
|
|
||||||
|
|
||||||
local keys, keysLen = {}, 0
|
|
||||||
for k in rawpairs(t) do
|
|
||||||
if not isSequenceKey(k, seqLen) then
|
|
||||||
keysLen = keysLen + 1
|
|
||||||
keys[keysLen] = k
|
|
||||||
end
|
|
||||||
end
|
|
||||||
table.sort(keys, sortKeys)
|
|
||||||
return keys, keysLen, seqLen
|
|
||||||
end
|
|
||||||
|
|
||||||
local function countCycles(x, cycles)
|
|
||||||
if type(x) == "table" then
|
|
||||||
if cycles[x] then
|
|
||||||
cycles[x] = cycles[x] + 1
|
|
||||||
else
|
|
||||||
cycles[x] = 1
|
|
||||||
for k, v in rawpairs(x) do
|
|
||||||
countCycles(k, cycles)
|
|
||||||
countCycles(v, cycles)
|
|
||||||
end
|
|
||||||
countCycles(getmetatable(x), cycles)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
local function makePath(path, a, b)
|
|
||||||
local newPath = {}
|
|
||||||
local len = #path
|
|
||||||
for i = 1, len do newPath[i] = path[i] end
|
|
||||||
|
|
||||||
newPath[len + 1] = a
|
|
||||||
newPath[len + 2] = b
|
|
||||||
|
|
||||||
return newPath
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
local function processRecursive(process,
|
|
||||||
item,
|
|
||||||
path,
|
|
||||||
visited)
|
|
||||||
if item == nil then return nil end
|
|
||||||
if visited[item] then return visited[item] end
|
|
||||||
|
|
||||||
local processed = process(item, path)
|
|
||||||
if type(processed) == "table" then
|
|
||||||
local processedCopy = {}
|
|
||||||
visited[item] = processedCopy
|
|
||||||
local processedKey
|
|
||||||
|
|
||||||
for k, v in rawpairs(processed) do
|
|
||||||
processedKey = processRecursive(process, k, makePath(path, k, inspect.KEY), visited)
|
|
||||||
if processedKey ~= nil then
|
|
||||||
processedCopy[processedKey] = processRecursive(process, v, makePath(path, processedKey), visited)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
local mt = processRecursive(process, getmetatable(processed), makePath(path, inspect.METATABLE), visited)
|
|
||||||
if type(mt) ~= 'table' then mt = nil end
|
|
||||||
setmetatable(processedCopy, mt)
|
|
||||||
processed = processedCopy
|
|
||||||
end
|
|
||||||
return processed
|
|
||||||
end
|
|
||||||
|
|
||||||
local function puts(buf, str)
|
|
||||||
buf.n = buf.n + 1
|
|
||||||
buf[buf.n] = str
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
local Inspector = {}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
local Inspector_mt = { __index = Inspector }
|
|
||||||
|
|
||||||
local function tabify(inspector)
|
|
||||||
puts(inspector.buf, inspector.newline .. rep(inspector.indent, inspector.level))
|
|
||||||
end
|
|
||||||
|
|
||||||
function Inspector:getId(v)
|
|
||||||
local id = self.ids[v]
|
|
||||||
local ids = self.ids
|
|
||||||
if not id then
|
|
||||||
local tv = type(v)
|
|
||||||
id = (ids[tv] or 0) + 1
|
|
||||||
ids[v], ids[tv] = id, id
|
|
||||||
end
|
|
||||||
return tostring(id)
|
|
||||||
end
|
|
||||||
|
|
||||||
function Inspector:putValue(v)
|
|
||||||
local buf = self.buf
|
|
||||||
local tv = type(v)
|
|
||||||
if tv == 'string' then
|
|
||||||
puts(buf, smartQuote(escape(v)))
|
|
||||||
elseif tv == 'number' or tv == 'boolean' or tv == 'nil' or
|
|
||||||
tv == 'cdata' or tv == 'ctype' then
|
|
||||||
puts(buf, tostring(v))
|
|
||||||
elseif tv == 'table' and not self.ids[v] then
|
|
||||||
local t = v
|
|
||||||
|
|
||||||
if t == inspect.KEY or t == inspect.METATABLE then
|
|
||||||
puts(buf, tostring(t))
|
|
||||||
elseif self.level >= self.depth then
|
|
||||||
puts(buf, '{...}')
|
|
||||||
else
|
|
||||||
if self.cycles[t] > 1 then puts(buf, fmt('<%d>', self:getId(t))) end
|
|
||||||
|
|
||||||
local keys, keysLen, seqLen = getKeys(t)
|
|
||||||
|
|
||||||
puts(buf, '{')
|
|
||||||
self.level = self.level + 1
|
|
||||||
|
|
||||||
for i = 1, seqLen + keysLen do
|
|
||||||
if i > 1 then puts(buf, ',') end
|
|
||||||
if i <= seqLen then
|
|
||||||
puts(buf, ' ')
|
|
||||||
self:putValue(t[i])
|
|
||||||
else
|
|
||||||
local k = keys[i - seqLen]
|
|
||||||
tabify(self)
|
|
||||||
if isIdentifier(k) then
|
|
||||||
puts(buf, k)
|
|
||||||
else
|
|
||||||
puts(buf, "[")
|
|
||||||
self:putValue(k)
|
|
||||||
puts(buf, "]")
|
|
||||||
end
|
|
||||||
puts(buf, ' = ')
|
|
||||||
self:putValue(t[k])
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
local mt = getmetatable(t)
|
|
||||||
if type(mt) == 'table' then
|
|
||||||
if seqLen + keysLen > 0 then puts(buf, ',') end
|
|
||||||
tabify(self)
|
|
||||||
puts(buf, '<metatable> = ')
|
|
||||||
self:putValue(mt)
|
|
||||||
end
|
|
||||||
|
|
||||||
self.level = self.level - 1
|
|
||||||
|
|
||||||
if keysLen > 0 or type(mt) == 'table' then
|
|
||||||
tabify(self)
|
|
||||||
elseif seqLen > 0 then
|
|
||||||
puts(buf, ' ')
|
|
||||||
end
|
|
||||||
|
|
||||||
puts(buf, '}')
|
|
||||||
end
|
|
||||||
|
|
||||||
else
|
|
||||||
puts(buf, fmt('<%s %d>', tv, self:getId(v)))
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function inspect.inspect(root, options)
|
|
||||||
options = options or {}
|
|
||||||
|
|
||||||
local depth = options.depth or (math.huge)
|
|
||||||
local newline = options.newline or '\n'
|
|
||||||
local indent = options.indent or ' '
|
|
||||||
local process = options.process
|
|
||||||
|
|
||||||
if process then
|
|
||||||
root = processRecursive(process, root, {}, {})
|
|
||||||
end
|
|
||||||
|
|
||||||
local cycles = {}
|
|
||||||
countCycles(root, cycles)
|
|
||||||
|
|
||||||
local inspector = setmetatable({
|
|
||||||
buf = { n = 0 },
|
|
||||||
ids = {},
|
|
||||||
cycles = cycles,
|
|
||||||
depth = depth,
|
|
||||||
level = 0,
|
|
||||||
newline = newline,
|
|
||||||
indent = indent,
|
|
||||||
}, Inspector_mt)
|
|
||||||
|
|
||||||
inspector:putValue(root)
|
|
||||||
|
|
||||||
return table.concat(inspector.buf)
|
|
||||||
end
|
|
||||||
|
|
||||||
setmetatable(inspect, {
|
|
||||||
__call = function(_, root, options)
|
|
||||||
return inspect.inspect(root, options)
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
|
|
||||||
return inspect
|
|
@ -1,5 +0,0 @@
|
|||||||
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 })
|
|
||||||
end
|
|
@ -1,43 +0,0 @@
|
|||||||
-- see if the file exists
|
|
||||||
local function file_exists(file)
|
|
||||||
local f = io.open(file, "rb")
|
|
||||||
if f then
|
|
||||||
f:close()
|
|
||||||
end
|
|
||||||
return f ~= nil
|
|
||||||
end
|
|
||||||
|
|
||||||
-- get all lines from a file, returns an empty
|
|
||||||
-- list/table if the file does not exist
|
|
||||||
local function line_from(file)
|
|
||||||
if not file_exists(file) then
|
|
||||||
return ""
|
|
||||||
end
|
|
||||||
local f = io.open(file) -- 'r' is unnecessary because it's a default value.
|
|
||||||
if f == nil then
|
|
||||||
return ""
|
|
||||||
end
|
|
||||||
local line = f:read() -- '*l' is unnecessary because it's a default value.
|
|
||||||
f:close()
|
|
||||||
return line
|
|
||||||
end
|
|
||||||
|
|
||||||
local filePath = os.getenv("HOME") .. "/.cache/dark-mode"
|
|
||||||
local function updateTheme()
|
|
||||||
local line = line_from(filePath)
|
|
||||||
if line then
|
|
||||||
local light = string.find(line, "light")
|
|
||||||
if light then
|
|
||||||
vim.g.catppuccin_flavour = "latte"
|
|
||||||
vim.cmd("Catppuccin latte")
|
|
||||||
else
|
|
||||||
vim.g.catppuccin_flavour = "mocha"
|
|
||||||
vim.cmd("Catppuccin mocha")
|
|
||||||
end
|
|
||||||
vim.cmd("colorscheme catppuccin")
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
updateTheme()
|
|
||||||
local w = vim.loop.new_fs_event()
|
|
||||||
w:start(filePath, {}, vim.schedule_wrap(updateTheme))
|
|
Loading…
Reference in New Issue
Block a user