From 847238c1bc4a4037be69cff2af2f2c8a5a2809fa Mon Sep 17 00:00:00 2001 From: S4NKALP Date: Mon, 26 Aug 2024 08:30:21 +0545 Subject: [PATCH] droped none-ls --- .stylua.toml | 7 ++ dotfyle.json | 1 + lua/configs/cmp.lua | 168 +++++++++++++------------- lua/configs/lsp.lua | 161 +++++++++---------------- lua/configs/mason.lua | 70 +++++------ lua/configs/none-ls.lua | 97 +++++++-------- lua/core/autocmd.lua | 2 +- lua/lock.json | 10 +- lua/plugins/coding.lua | 79 ++++++++++-- lua/plugins/extra.lua | 174 +++++++++++++++++++++++++++ lua/plugins/formater.lua | 118 +++++++++--------- lua/plugins/lint.lua | 57 +++++---- lua/plugins/linter_formatter.lua | 24 ---- lua/plugins/lsp.lua | 21 ++++ lua/plugins/other.lua | 199 ------------------------------- lua/plugins/treesitter.lua | 3 +- mason-lock.json | 3 +- 17 files changed, 590 insertions(+), 604 deletions(-) create mode 100644 .stylua.toml create mode 100644 dotfyle.json create mode 100644 lua/plugins/extra.lua delete mode 100644 lua/plugins/linter_formatter.lua delete mode 100644 lua/plugins/other.lua diff --git a/.stylua.toml b/.stylua.toml new file mode 100644 index 0000000..047d961 --- /dev/null +++ b/.stylua.toml @@ -0,0 +1,7 @@ +call_parentheses = "Always" +collapse_simple_statement = "Never" +column_width = 120 +indent_type = "Spaces" +indent_width = 4 +line_endings = "Unix" +quote_style = "AutoPreferSingle" diff --git a/dotfyle.json b/dotfyle.json new file mode 100644 index 0000000..47c1b8b --- /dev/null +++ b/dotfyle.json @@ -0,0 +1 @@ +{"distribution": "custom", "masonTools": ["actionlint", "bash-language-server", "biome", "black", "clang-format", "clangd", "emmet-ls", "eslint_d", "google-java-format", "graphql-lsp", "hadolint", "isort", "jdtls", "lua-language-server", "markdownlint", "prettier", "prettierd", "pylint", "pylsp", "pyright", "pyright-langserver", "selene", "shfmt", "stylua", "tailwindcss-language-server", "trivy", "typescript-language-server", "typos-lsp", "vim-language-server", "vint", "vscode-css-language-server", "vscode-eslint-language-server", "vscode-html-language-server", "vscode-json-language-server"], "plugins": ["2kabhishek/nerdy.nvim", "2kabhishek/tdo.nvim", "2kabhishek/termim.nvim", "CRAG666/code_runner.nvim", "Exafunction/codeium.vim", "HiPhish/rainbow-delimiters.nvim", "L3MON4D3/LuaSnip", "LudoPinelli/comment-box.nvim", "LunarVim/bigfile.nvim", "MunifTanjim/nui.nvim", "NStefan002/screenkey.nvim", "ThePrimeagen/refactoring.nvim", "WhoIsSethDaniel/mason-tool-installer.nvim", "akinsho/toggleterm.nvim", "altermo/ultimate-autopair.nvim", "antosha417/nvim-lsp-file-operations", "creativenull/dotfyle-metadata.nvim", "debugloop/telescope-undo.nvim", "echasnovski/mini.files", "echasnovski/mini.icons", "echasnovski/mini.nvim", "folke/flash.nvim", "folke/lazy.nvim", "folke/noice.nvim", "folke/persistence.nvim", "folke/trouble.nvim", "folke/which-key.nvim", "folke/zen-mode.nvim", "gbprod/yanky.nvim", "hrsh7th/cmp-buffer", "hrsh7th/cmp-cmdline", "hrsh7th/cmp-nvim-lsp", "hrsh7th/cmp-nvim-lsp-signature-help", "hrsh7th/cmp-nvim-lua", "hrsh7th/cmp-path", "hrsh7th/nvim-cmp", "iamcco/markdown-preview.nvim", "kristijanhusak/vim-dadbod-completion", "kristijanhusak/vim-dadbod-ui", "lukas-reineke/indent-blankline.nvim", "m-demare/hlargs.nvim", "m4xshen/hardtime.nvim", "max397574/better-escape.nvim", "mfussenegger/nvim-dap", "mfussenegger/nvim-lint", "mg979/vim-visual-multi", "mstuttgart/odoo-snippets", "mvllow/modes.nvim", "nacro90/numb.nvim", "navarasu/onedark.nvim", "neovim/nvim-lspconfig", "numToStr/Navigator.nvim", "nvim-lua/plenary.nvim", "nvim-lualine/lualine.nvim", "nvim-neo-tree/neo-tree.nvim", "nvim-neotest/neotest", "nvim-neotest/neotest-jest", "nvim-neotest/neotest-python", "nvim-neotest/nvim-nio", "nvim-pack/nvim-spectre", "nvim-telescope/telescope-file-browser.nvim", "nvim-telescope/telescope-fzf-native.nvim", "nvim-telescope/telescope-symbols.nvim", "nvim-telescope/telescope-ui-select.nvim", "nvim-telescope/telescope.nvim", "nvim-treesitter/nvim-treesitter", "nvim-treesitter/nvim-treesitter-context", "nvim-treesitter/nvim-treesitter-textobjects", "nvimdev/dashboard-nvim", "nvimdev/lspsaga.nvim", "olimorris/neotest-rspec", "onsails/lspkind.nvim", "rafamadriz/friendly-snippets", "rcarriga/nvim-dap-ui", "rcarriga/nvim-notify", "saadparwaiz1/cmp_luasnip", "smjonas/inc-rename.nvim", "stevearc/conform.nvim", "stevearc/dressing.nvim", "szw/vim-maximizer", "tpope/vim-dadbod", "wakatime/vim-wakatime", "williamboman/mason-lspconfig.nvim", "williamboman/mason.nvim", "willothy/flatten.nvim", "windwp/nvim-ts-autotag", "zapling/mason-lock.nvim"], "keymaps": [{"desc": "Next Buffer", "noremap": true, "lhs": "", "mode": "n", "rhs": "bnext"}, {"desc": "Escape and clear hlsearch", "noremap": true, "lhs": "", "mode": "n", "rhs": "noh"}, {"desc": "Lspsaga | Code Outline", "noremap": true, "lhs": "lo", "mode": "n", "rhs": "Lspsaga outline"}, {"desc": "Copy Git URL", "noremap": true, "lhs": "yg", "mode": "n", "rhs": "lua require\"gitlinker\".get_buf_range_url()"}, {"desc": "File Name", "noremap": true, "lhs": "yf", "mode": "n", "rhs": "CopyFileName"}, {"desc": "Copy Whole File", "noremap": true, "lhs": "ya", "mode": "n", "rhs": "%y+"}, {"desc": "Absolute Path", "noremap": true, "lhs": "yP", "mode": "n", "rhs": "CopyAbsolutePath"}, {"desc": "Relative Path", "noremap": true, "lhs": "yp", "mode": "n", "rhs": "CopyRelativePath"}, {"desc": "Float File Explorer", "noremap": true, "lhs": "ee", "mode": "n", "rhs": ":Neotree toggle float"}, {"desc": " Left File Explorer", "noremap": true, "lhs": "", "mode": "n", "rhs": ":Neotree toggle left"}, {"desc": "Restore Last Session", "noremap": true, "lhs": "ml", "mode": "n", "rhs": ""}, {"desc": "Restore Session", "noremap": true, "lhs": "ms", "mode": "n", "rhs": ""}, {"desc": "Don't Save Current Session", "noremap": true, "lhs": "md", "mode": "n", "rhs": ""}, {"desc": "Toggle IA (Codeium)", "noremap": true, "lhs": "cI", "mode": "n", "rhs": "CodeiumToggle"}, {"desc": "Command History", "noremap": true, "lhs": "kh", "mode": "n", "rhs": "Telescope command_history"}, {"desc": "Commands", "noremap": true, "lhs": "kc", "mode": "n", "rhs": "Telescope commands"}, {"desc": "Keymaps", "noremap": true, "lhs": "kk", "mode": "n", "rhs": "Telescope keymaps"}, {"desc": "Grep String", "noremap": true, "lhs": "fG", "mode": "n", "rhs": "Telescope grep_string"}, {"desc": "Find Highlight Groups", "noremap": true, "lhs": "fH", "mode": "n", "rhs": "Telescope highlights"}, {"desc": "Marks", "noremap": true, "lhs": "fm", "mode": "n", "rhs": "Telescope marks"}, {"desc": "Old Recent Files", "noremap": true, "lhs": "fo", "mode": "n", "rhs": "Telescope oldfiles"}, {"desc": "Find Help", "noremap": true, "lhs": "fh", "mode": "n", "rhs": "Telescope help_tags"}, {"desc": "Buffers", "noremap": true, "lhs": "fb", "mode": "n", "rhs": "Telescope buffers"}, {"desc": "Live Grep", "noremap": true, "lhs": "fg", "mode": "n", "rhs": "Telescope live_grep"}, {"desc": "Fuzzy Find in File", "noremap": true, "lhs": "fs", "mode": "n", "rhs": "Telescope current_buffer_fuzzy_find"}, {"desc": "Quickfix", "noremap": true, "lhs": "fq", "mode": "n", "rhs": "Telescope quickfix"}, {"desc": "Undo History", "noremap": true, "lhs": "fu", "mode": "n", "rhs": "Telescope undo"}, {"desc": "Notifications", "noremap": true, "lhs": "cn", "mode": "n", "rhs": "Telescope notify"}, {"desc": "Reload Module", "noremap": true, "lhs": "cr", "mode": "n", "rhs": "Telescope reloader"}, {"desc": "File Browser", "noremap": true, "lhs": "ef", "mode": "n", "rhs": "Telescope file_browser"}, {"desc": "Diagnostics", "noremap": true, "lhs": "fd", "mode": "n", "rhs": "Telescope diagnostics"}, {"desc": "Search History", "noremap": true, "lhs": "ks", "mode": "n", "rhs": "Telescope search_history"}, {"desc": "Find Files (CWD)", "noremap": true, "lhs": "ff", "mode": "n", "rhs": "Telescope find_files"}, {"desc": "Current Word", "noremap": true, "lhs": "jw", "mode": "v", "rhs": "lua require(\"flash\").jump({ pattern = vim.fn.expand(\"cword>\")})"}, {"desc": "Current Word", "noremap": true, "lhs": "jw", "mode": "n", "rhs": "lua require(\"flash\").jump({ pattern = vim.fn.expand(\"cword>\")})"}, {"desc": "Remote Treesitter", "noremap": true, "lhs": "jt", "mode": "v", "rhs": "lua require('flash').treesitter_search()"}, {"desc": "Remote Treesitter", "noremap": true, "lhs": "jt", "mode": "n", "rhs": "lua require('flash').treesitter_search()"}, {"desc": "Search", "noremap": true, "lhs": "js", "mode": "v", "rhs": "lua require('flash').jump()"}, {"desc": "Search", "noremap": true, "lhs": "js", "mode": "n", "rhs": "lua require('flash').jump()"}, {"desc": "Previous Jump", "noremap": true, "lhs": "jp", "mode": "v", "rhs": "lua require('flash').jump({continue = true})"}, {"desc": "Previous Jump", "noremap": true, "lhs": "jp", "mode": "n", "rhs": "lua require('flash').jump({continue = true})"}, {"desc": "Search Forward", "noremap": true, "lhs": "jn", "mode": "v", "rhs": "lua require('flash').jump({search = { forward = true, wrap = false, multi_window = false },})"}, {"desc": "Search Forward", "noremap": true, "lhs": "jn", "mode": "n", "rhs": "lua require('flash').jump({search = { forward = true, wrap = false, multi_window = false },})"}, {"desc": "Forward", "noremap": true, "lhs": "jl", "mode": "n", "rhs": ""}, {"desc": "Treesitter", "noremap": true, "lhs": "jk", "mode": "v", "rhs": "lua require('flash').treesitter()"}, {"desc": "Treesitter", "noremap": true, "lhs": "jk", "mode": "n", "rhs": "lua require('flash').treesitter()"}, {"desc": "Remote", "noremap": true, "lhs": "jj", "mode": "v", "rhs": "lua require('flash').remote()"}, {"desc": "Remote", "noremap": true, "lhs": "jj", "mode": "n", "rhs": "lua require('flash').remote()"}, {"desc": "Backward", "noremap": true, "lhs": "jh", "mode": "n", "rhs": ""}, {"desc": "Jumplist", "noremap": true, "lhs": "jf", "mode": "n", "rhs": "Telescope jumplist"}, {"desc": "Diagnostics", "noremap": true, "lhs": "jd", "mode": "v", "rhs": "FlashDiagnostics"}, {"desc": "Diagnostics", "noremap": true, "lhs": "jd", "mode": "n", "rhs": "FlashDiagnostics"}, {"desc": "Word", "noremap": true, "lhs": "jc", "mode": "n", "rhs": "*"}, {"desc": "Search Backward", "noremap": true, "lhs": "jN", "mode": "v", "rhs": "lua require('flash').jump({search = { forward = false, wrap = false, multi_window = false },})"}, {"desc": "Search Backward", "noremap": true, "lhs": "jN", "mode": "n", "rhs": "lua require('flash').jump({search = { forward = false, wrap = false, multi_window = false },})"}, {"desc": "Dismiss All Notifications", "noremap": true, "lhs": "mn", "mode": "n", "rhs": ""}, {"desc": "Reload Configs", "noremap": true, "lhs": "cR", "mode": "n", "rhs": "ReloadConfig"}, {"desc": "Quit", "noremap": true, "lhs": "qq", "mode": "n", "rhs": "q"}, {"desc": "Close Others", "noremap": true, "lhs": "qo", "mode": "n", "rhs": ":%bdelete|b#|bdelete#"}, {"desc": "Force Quit", "noremap": true, "lhs": "qf", "mode": "n", "rhs": "qall!"}, {"desc": "Delete Buffer", "noremap": true, "lhs": "qd", "mode": "n", "rhs": "bdelete"}, {"desc": "Close Buffer", "noremap": true, "lhs": "qc", "mode": "n", "rhs": "bw"}, {"desc": "Quit All", "noremap": true, "lhs": "qa", "mode": "n", "rhs": "qall"}, {"desc": " Save and Quit", "noremap": true, "lhs": "x", "mode": "n", "rhs": "x"}, {"desc": "Write and Quit", "noremap": true, "lhs": "ww", "mode": "n", "rhs": "w"}, {"desc": "Suggestions", "noremap": true, "lhs": "ws", "mode": "n", "rhs": "Telescope spell_suggest"}, {"desc": "Write and Quit", "noremap": true, "lhs": "wq", "mode": "n", "rhs": "wq"}, {"desc": "Prev Misspell", "noremap": true, "lhs": "wk", "mode": "n", "rhs": "[s"}, {"desc": "Next Misspell", "noremap": true, "lhs": "wj", "mode": "n", "rhs": "]s"}, {"desc": "Force Write", "noremap": true, "lhs": "wf", "mode": "n", "rhs": "lua require'utils'.sudo_write()"}, {"desc": "Spellcheck", "noremap": true, "lhs": "wc", "mode": "n", "rhs": "set spell!"}, {"desc": "Quote", "noremap": true, "lhs": "vq", "mode": "n", "rhs": "viq"}, {"desc": "Paragraph", "noremap": true, "lhs": "vp", "mode": "n", "rhs": "vip"}, {"desc": "Bracket", "noremap": true, "lhs": "vb", "mode": "n", "rhs": "vib"}, {"desc": "Around Quote", "noremap": true, "lhs": "vQ", "mode": "n", "rhs": "vaq"}, {"desc": "Around Para", "noremap": true, "lhs": "vP", "mode": "n", "rhs": "vap"}, {"desc": "Around Bracket", "noremap": true, "lhs": "vB", "mode": "n", "rhs": "vab"}, {"desc": "Vertical Split", "noremap": true, "lhs": "ss", "mode": "n", "rhs": "vsplit"}, {"desc": "Close Split", "noremap": true, "lhs": "sq", "mode": "n", "rhs": "c"}, {"desc": "Previous Pane", "noremap": true, "lhs": "sp", "mode": "n", "rhs": "NavigatorPrevious"}, {"desc": "Move Right", "noremap": true, "lhs": "sl", "mode": "n", "rhs": "l"}, {"desc": "Move Up", "noremap": true, "lhs": "sk", "mode": "n", "rhs": "k"}, {"desc": "Move Down", "noremap": true, "lhs": "sj", "mode": "n", "rhs": "j"}, {"desc": "Move Left", "noremap": true, "lhs": "sh", "mode": "n", "rhs": "h"}, {"desc": "First Tab", "noremap": true, "lhs": "sf", "mode": "n", "rhs": "tabfirst"}, {"desc": "Close Tab", "noremap": true, "lhs": "sc", "mode": "n", "rhs": "tabclose"}, {"desc": "Horizontal Split", "noremap": true, "lhs": "sa", "mode": "n", "rhs": "split"}, {"desc": "Previous Window", "noremap": true, "lhs": "s`", "mode": "n", "rhs": "p"}, {"desc": "Decrease window height", "noremap": true, "lhs": "s_", "mode": "n", "rhs": "resize -10"}, {"desc": "Split Right", "noremap": true, "lhs": "s\\", "mode": "n", "rhs": "v"}, {"desc": "Increase window width", "noremap": true, "lhs": "sL", "mode": "n", "rhs": "vertical resize +10"}, {"desc": "Increase window height", "noremap": true, "lhs": "sK", "mode": "n", "rhs": "resize +5"}, {"desc": "Decrease window height", "noremap": true, "lhs": "sJ", "mode": "n", "rhs": "resize -5"}, {"desc": "Decrease window width", "noremap": true, "lhs": "sH", "mode": "n", "rhs": "vertical resize -10"}, {"desc": "Increase window width", "noremap": true, "lhs": "s=", "mode": "n", "rhs": "vertical resize +20"}, {"desc": "Split Below", "noremap": true, "lhs": "s/", "mode": "n", "rhs": "s"}, {"desc": "Decrease window width", "noremap": true, "lhs": "s-", "mode": "n", "rhs": "vertical resize -20"}, {"desc": "Increase window height", "noremap": true, "lhs": "s+", "mode": "n", "rhs": "resize +10"}, {"desc": "New File", "noremap": true, "lhs": "en", "mode": "n", "rhs": "enew"}, {"desc": "Readme", "noremap": true, "lhs": "em", "mode": "n", "rhs": "e README.md"}, {"desc": "Config Dir", "noremap": true, "lhs": "ed", "mode": "n", "rhs": "lua require(\"telescope.builtin\").find_files({cwd = vim.fn.stdpath(\"config\")})"}, {"desc": "Config", "noremap": true, "lhs": "ec", "mode": "n", "rhs": "e $MYVIMRC"}, {"desc": "Alternate File", "noremap": true, "lhs": "ea", "mode": "n", "rhs": "b#"}, {"desc": "Dashboard", "noremap": true, "lhs": "co", "mode": "n", "rhs": "Dashboard"}, {"desc": "Clean Empty Lines", "noremap": true, "lhs": "cc", "mode": "n", "rhs": ":g/^\\s*$/d"}, {"desc": "Root Directory", "noremap": true, "lhs": "cd", "mode": "n", "rhs": "RootDir"}, {"desc": "Sort Desc", "noremap": true, "lhs": "cS", "mode": "v", "rhs": ":sort!"}, {"desc": " Buffer Local Keymaps (which-key)", "noremap": true, "lhs": "?", "mode": "n", "rhs": ""}, {"desc": "Time", "noremap": true, "lhs": "it", "mode": "n", "rhs": "put =strftime('## %r')"}, {"desc": "Registers", "noremap": true, "lhs": "ir", "mode": "n", "rhs": "Telescope registers"}, {"desc": "Relative Path", "noremap": true, "lhs": "ip", "mode": "n", "rhs": "put %"}, {"desc": "Nerd Glyphs", "noremap": true, "lhs": "in", "mode": "n", "rhs": "Nerdy"}, {"desc": "File Name", "noremap": true, "lhs": "if", "mode": "n", "rhs": "put =expand('%:t')"}, {"desc": "Emojis", "noremap": true, "lhs": "ie", "mode": "n", "rhs": "Telescope symbols"}, {"desc": "Date", "noremap": true, "lhs": "id", "mode": "n", "rhs": "put =strftime('## %a, %d %b, %Y, %r')"}, {"desc": "Absolute Path", "noremap": true, "lhs": "iP", "mode": "n", "rhs": "put %:p"}, {"desc": "Write and Quit", "noremap": true, "lhs": "qw", "mode": "n", "rhs": "wq"}, {"desc": "Close Split", "noremap": true, "lhs": "qs", "mode": "n", "rhs": "c"}, {"desc": "Unique", "noremap": true, "lhs": "cu", "mode": "v", "rhs": ":!uniq"}, {"desc": "Sort Asc", "noremap": true, "lhs": "cs", "mode": "v", "rhs": ":sort"}, {"desc": "Sort Case Insensitive", "noremap": true, "lhs": "ci", "mode": "v", "rhs": ":sort i"}, {"desc": "", "noremap": true, "lhs": "mt", "mode": "n", "rhs": "lua require(\"onedark\").toggle()"}, {"desc": "Chat with IA (Codeium)", "noremap": true, "lhs": "ch", "mode": "n", "rhs": ""}, {"desc": "Quickfix List (Trouble)", "noremap": true, "lhs": "xQ", "mode": "n", "rhs": ""}, {"desc": "Location List (Trouble)", "noremap": true, "lhs": "xL", "mode": "n", "rhs": ""}, {"desc": "LSP references/definitions/... (Trouble)", "noremap": true, "lhs": "xS", "mode": "n", "rhs": ""}, {"desc": "Symbols (Trouble)", "noremap": true, "lhs": "xs", "mode": "n", "rhs": ""}, {"desc": "Buffer Diagnostics (Trouble)", "noremap": true, "lhs": "xX", "mode": "n", "rhs": ""}, {"desc": "Diagnostics (Trouble)", "noremap": true, "lhs": "xx", "mode": "n", "rhs": ""}, {"desc": "Replace in Files (Spectre)", "noremap": true, "lhs": "mr", "mode": "n", "rhs": ""}, {"desc": "Toggle zen mode", "noremap": true, "lhs": "wz", "mode": "n", "rhs": ""}, {"desc": "Stop", "noremap": true, "lhs": "us", "mode": "n", "rhs": ""}, {"desc": "Run Nearest Test", "noremap": true, "lhs": "ur", "mode": "n", "rhs": ""}, {"desc": "Toggle Summary", "noremap": true, "lhs": "uS", "mode": "n", "rhs": ""}, {"desc": "Show Output", "noremap": true, "lhs": "uo", "mode": "n", "rhs": ""}, {"desc": "Run Test File", "noremap": true, "lhs": "uf", "mode": "n", "rhs": ""}, {"desc": "Run Current Test", "noremap": true, "lhs": "uc", "mode": "n", "rhs": ""}, {"desc": "Toggle Output Panel", "noremap": true, "lhs": "uO", "mode": "n", "rhs": ""}, {"desc": "Breakpoint", "noremap": true, "lhs": "bb", "mode": "n", "rhs": ""}, {"desc": "Restart Frame", "noremap": true, "lhs": "bR", "mode": "n", "rhs": ""}, {"desc": "Out", "noremap": true, "lhs": "bO", "mode": "n", "rhs": ""}, {"desc": "Exit", "noremap": true, "lhs": "bx", "mode": "n", "rhs": ""}, {"desc": "Debugger", "noremap": true, "lhs": "bt", "mode": "n", "rhs": ""}, {"desc": "Repl", "noremap": true, "lhs": "br", "mode": "n", "rhs": ""}, {"desc": "Over", "noremap": true, "lhs": "bo", "mode": "n", "rhs": ""}, {"desc": "Last", "noremap": true, "lhs": "bl", "mode": "n", "rhs": ""}, {"desc": "Into", "noremap": true, "lhs": "bi", "mode": "n", "rhs": ""}, {"desc": "Continue", "noremap": true, "lhs": "bc", "mode": "n", "rhs": ""}, {"desc": "Tiled line", "noremap": true, "lhs": "Ct", "mode": "v", "rhs": ""}, {"desc": "Tiled line", "noremap": true, "lhs": "Ct", "mode": "n", "rhs": ""}, {"desc": "Comment Box", "noremap": true, "lhs": "Cb", "mode": "v", "rhs": ""}, {"desc": "Comment Box", "noremap": true, "lhs": "Cb", "mode": "n", "rhs": ""}, {"desc": "Delete Comment Style", "noremap": true, "lhs": "Cd", "mode": "v", "rhs": ""}, {"desc": "Delete Comment Style", "noremap": true, "lhs": "Cd", "mode": "n", "rhs": ""}, {"desc": "Catalog", "noremap": true, "lhs": "Cc", "mode": "n", "rhs": ""}, {"desc": "Marked", "noremap": true, "lhs": "Cm", "mode": "v", "rhs": ""}, {"desc": "Marked", "noremap": true, "lhs": "Cm", "mode": "n", "rhs": ""}, {"desc": "Line", "noremap": true, "lhs": "Cl", "mode": "n", "rhs": ""}, {"desc": "All Notes", "noremap": true, "lhs": "nf", "mode": "n", "rhs": ""}, {"desc": "Today's Entry", "noremap": true, "lhs": "ne", "mode": "n", "rhs": ""}, {"desc": "Today's Todo", "noremap": true, "lhs": "nd", "mode": "n", "rhs": ""}, {"desc": "Toggle Todo", "noremap": true, "lhs": "nx", "mode": "n", "rhs": ""}, {"desc": "Incomplete Todos", "noremap": true, "lhs": "nt", "mode": "n", "rhs": ""}, {"desc": "New Note", "noremap": true, "lhs": "nn", "mode": "n", "rhs": ""}, {"desc": "Tomorrow's Todo", "noremap": true, "lhs": "nl", "mode": "n", "rhs": ""}, {"desc": "Yesterday's Todo", "noremap": true, "lhs": "nh", "mode": "n", "rhs": ""}, {"desc": "Find Notes", "noremap": true, "lhs": "ng", "mode": "n", "rhs": ""}, {"desc": "Maximize/minimize a split", "noremap": true, "lhs": "mm", "mode": "n", "rhs": ""}, {"desc": "Horizontal Terminal", "noremap": true, "lhs": "th", "mode": "n", "rhs": ""}, {"desc": "Vertical Terminal", "noremap": true, "lhs": "tv", "mode": "n", "rhs": ""}, {"desc": "toggle markdown preview", "noremap": true, "lhs": "cm", "mode": "n", "rhs": ""}, {"desc": "Toggle Terminal", "noremap": true, "lhs": "t2", "mode": "n", "rhs": ""}, {"desc": "Toggle Terminal", "noremap": true, "lhs": "t1", "mode": "n", "rhs": ""}, {"desc": "DB Rename buffer", "noremap": true, "lhs": "dr", "mode": "n", "rhs": ""}, {"desc": "DB Find buffer", "noremap": true, "lhs": "db", "mode": "n", "rhs": ""}, {"desc": "Toggle DB UI", "noremap": true, "lhs": "du", "mode": "n", "rhs": ""}, {"desc": "DB Last query", "noremap": true, "lhs": "dl", "mode": "n", "rhs": ""}, {"desc": "Toggle keys", "noremap": true, "lhs": "kt", "mode": "n", "rhs": "Screenkey"}, {"desc": "Close Code Run ", "noremap": true, "lhs": "rx", "mode": "n", "rhs": "RunClose"}, {"desc": "Run Code Project ", "noremap": true, "lhs": "rp", "mode": "n", "rhs": "RunProject"}, {"desc": "Run Code File ", "noremap": true, "lhs": "rf", "mode": "n", "rhs": "RunFile"}, {"desc": "Run Code ", "noremap": true, "lhs": "rc", "mode": "n", "rhs": "RunCode"}, {"desc": " Insert Macro Breakpoint.", "noremap": true, "lhs": "##", "mode": "n", "rhs": ""}, {"desc": ":help v_#-default", "noremap": true, "lhs": "#", "mode": "x", "rhs": ""}, {"desc": "", "noremap": false, "lhs": "%", "mode": "x", "rhs": "(MatchitVisualForward)"}, {"desc": "", "noremap": false, "lhs": "%", "mode": "n", "rhs": "(MatchitNormalForward)"}, {"desc": ":help &-default", "noremap": true, "lhs": "&", "mode": "n", "rhs": ":&&"}, {"desc": ":help v_star-default", "noremap": true, "lhs": "*", "mode": "x", "rhs": ""}, {"desc": "", "noremap": true, "lhs": ",", "mode": "x", "rhs": ""}, {"desc": "", "noremap": true, "lhs": ",", "mode": "n", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "-", "mode": "x", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "-", "mode": "n", "rhs": ""}, {"desc": "", "noremap": true, "lhs": ";", "mode": "x", "rhs": ""}, {"desc": "", "noremap": true, "lhs": ";", "mode": "n", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "<", "mode": "v", "rhs": "gv"}, {"desc": "", "noremap": true, "lhs": "=", "mode": "x", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "=", "mode": "n", "rhs": ""}, {"desc": "", "noremap": true, "lhs": ">", "mode": "v", "rhs": ">gv"}, {"desc": ":help v_@-default", "noremap": true, "lhs": "@", "mode": "x", "rhs": "mode() ==# 'V' ? ':normal! @'.getcharstr().'' : '@'"}, {"desc": "", "noremap": true, "lhs": "F", "mode": "x", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "F", "mode": "n", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "J", "mode": "x", "rhs": ":move '>+1gv-gv"}, {"desc": "", "noremap": true, "lhs": "J", "mode": "n", "rhs": "mzJ`z"}, {"desc": "LSP Hover", "noremap": true, "lhs": "K", "mode": "n", "rhs": "Lspsaga hover_doc"}, {"desc": "", "noremap": true, "lhs": "K", "mode": "x", "rhs": ":move '-2gv-gv"}, {"desc": "Prev search result", "noremap": true, "lhs": "N", "mode": "x", "rhs": "'nN'[v:searchforward]"}, {"desc": "Prev search result", "noremap": true, "lhs": "N", "mode": "n", "rhs": "'nN'[v:searchforward]"}, {"desc": "Put yanked text before cursor", "noremap": true, "lhs": "P", "mode": "n", "rhs": "(YankyPutBefore)"}, {"desc": "Put yanked text before cursor", "noremap": true, "lhs": "P", "mode": "x", "rhs": "(YankyPutBefore)"}, {"desc": " Play Macro", "noremap": true, "lhs": "Q", "mode": "n", "rhs": ""}, {"desc": ":help v_Q-default", "noremap": true, "lhs": "Q", "mode": "x", "rhs": "mode() ==# 'V' ? ':normal! @=reg_recorded()' : 'Q'"}, {"desc": "", "noremap": true, "lhs": "T", "mode": "x", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "T", "mode": "n", "rhs": ""}, {"desc": "Redo", "noremap": true, "lhs": "U", "mode": "n", "rhs": "redo"}, {"desc": ":help Y-default", "noremap": true, "lhs": "Y", "mode": "n", "rhs": "y$"}, {"desc": "Undo backward", "noremap": true, "lhs": "[u", "mode": "n", "rhs": "lua MiniBracketed.undo('backward')"}, {"desc": "Undo first", "noremap": true, "lhs": "[U", "mode": "n", "rhs": "lua MiniBracketed.undo('first')"}, {"desc": "Treesitter backward", "noremap": true, "lhs": "[n", "mode": "x", "rhs": "lua MiniBracketed.treesitter('backward')"}, {"desc": "Treesitter backward", "noremap": true, "lhs": "[n", "mode": "n", "rhs": "lua MiniBracketed.treesitter('backward')"}, {"desc": "Treesitter first", "noremap": true, "lhs": "[N", "mode": "x", "rhs": "lua MiniBracketed.treesitter('first')"}, {"desc": "Treesitter first", "noremap": true, "lhs": "[N", "mode": "n", "rhs": "lua MiniBracketed.treesitter('first')"}, {"desc": "Location backward", "noremap": true, "lhs": "[l", "mode": "n", "rhs": "lua MiniBracketed.location('backward')"}, {"desc": "Location first", "noremap": true, "lhs": "[L", "mode": "n", "rhs": "lua MiniBracketed.location('first')"}, {"desc": "Oldfile backward", "noremap": true, "lhs": "[o", "mode": "n", "rhs": "lua MiniBracketed.oldfile('backward')"}, {"desc": "Oldfile first", "noremap": true, "lhs": "[O", "mode": "n", "rhs": "lua MiniBracketed.oldfile('first')"}, {"desc": "Jump first", "noremap": true, "lhs": "[J", "mode": "n", "rhs": "lua MiniBracketed.jump('first')"}, {"desc": "Indent backward", "noremap": true, "lhs": "[i", "mode": "x", "rhs": "lua MiniBracketed.indent('backward')"}, {"desc": "Indent backward", "noremap": true, "lhs": "[i", "mode": "n", "rhs": "lua MiniBracketed.indent('backward')"}, {"desc": "Indent first", "noremap": true, "lhs": "[I", "mode": "x", "rhs": "lua MiniBracketed.indent('first')"}, {"desc": "Indent first", "noremap": true, "lhs": "[I", "mode": "n", "rhs": "lua MiniBracketed.indent('first')"}, {"desc": "Diagnostic backward", "noremap": true, "lhs": "[d", "mode": "x", "rhs": "lua MiniBracketed.diagnostic('backward')"}, {"desc": "Diagnostic first", "noremap": true, "lhs": "[D", "mode": "x", "rhs": "lua MiniBracketed.diagnostic('first')"}, {"desc": "Diagnostic first", "noremap": true, "lhs": "[D", "mode": "n", "rhs": "lua MiniBracketed.diagnostic('first')"}, {"desc": "Conflict backward", "noremap": true, "lhs": "[x", "mode": "x", "rhs": "lua MiniBracketed.conflict('backward')"}, {"desc": "Conflict backward", "noremap": true, "lhs": "[x", "mode": "n", "rhs": "lua MiniBracketed.conflict('backward')"}, {"desc": "Conflict first", "noremap": true, "lhs": "[X", "mode": "x", "rhs": "lua MiniBracketed.conflict('first')"}, {"desc": "Conflict first", "noremap": true, "lhs": "[X", "mode": "n", "rhs": "lua MiniBracketed.conflict('first')"}, {"desc": "Comment backward", "noremap": true, "lhs": "[c", "mode": "x", "rhs": "lua MiniBracketed.comment('backward')"}, {"desc": "Comment backward", "noremap": true, "lhs": "[c", "mode": "n", "rhs": "lua MiniBracketed.comment('backward')"}, {"desc": "Comment first", "noremap": true, "lhs": "[C", "mode": "x", "rhs": "lua MiniBracketed.comment('first')"}, {"desc": "Comment first", "noremap": true, "lhs": "[C", "mode": "n", "rhs": "lua MiniBracketed.comment('first')"}, {"desc": "Edit", "noremap": true, "lhs": "[e", "mode": "n", "rhs": "g;"}, {"desc": "Buffer first", "noremap": true, "lhs": "[B", "mode": "n", "rhs": "lua MiniBracketed.buffer('first')"}, {"desc": "Buffer backward", "noremap": true, "lhs": "[b", "mode": "n", "rhs": "lua MiniBracketed.buffer('backward')"}, {"desc": "Diagnostic backward", "noremap": true, "lhs": "[d", "mode": "n", "rhs": "lua MiniBracketed.diagnostic('backward')"}, {"desc": "Jump backward", "noremap": true, "lhs": "[j", "mode": "n", "rhs": "lua MiniBracketed.jump('backward')"}, {"desc": "", "noremap": false, "lhs": "[%", "mode": "x", "rhs": "(MatchitVisualMultiBackward)"}, {"desc": "", "noremap": false, "lhs": "[%", "mode": "n", "rhs": "(MatchitNormalMultiBackward)"}, {"desc": "Previous Trouble/Quickfix Item", "noremap": true, "lhs": "[q", "mode": "n", "rhs": ""}, {"desc": "Undo forward", "noremap": true, "lhs": "]u", "mode": "n", "rhs": "lua MiniBracketed.undo('forward')"}, {"desc": "Undo last", "noremap": true, "lhs": "]U", "mode": "n", "rhs": "lua MiniBracketed.undo('last')"}, {"desc": "Treesitter forward", "noremap": true, "lhs": "]n", "mode": "x", "rhs": "lua MiniBracketed.treesitter('forward')"}, {"desc": "Treesitter forward", "noremap": true, "lhs": "]n", "mode": "n", "rhs": "lua MiniBracketed.treesitter('forward')"}, {"desc": "Treesitter last", "noremap": true, "lhs": "]N", "mode": "x", "rhs": "lua MiniBracketed.treesitter('last')"}, {"desc": "Treesitter last", "noremap": true, "lhs": "]N", "mode": "n", "rhs": "lua MiniBracketed.treesitter('last')"}, {"desc": "Location forward", "noremap": true, "lhs": "]l", "mode": "n", "rhs": "lua MiniBracketed.location('forward')"}, {"desc": "Location last", "noremap": true, "lhs": "]L", "mode": "n", "rhs": "lua MiniBracketed.location('last')"}, {"desc": "Oldfile forward", "noremap": true, "lhs": "]o", "mode": "n", "rhs": "lua MiniBracketed.oldfile('forward')"}, {"desc": "Oldfile last", "noremap": true, "lhs": "]O", "mode": "n", "rhs": "lua MiniBracketed.oldfile('last')"}, {"desc": "Jump last", "noremap": true, "lhs": "]J", "mode": "n", "rhs": "lua MiniBracketed.jump('last')"}, {"desc": "Indent forward", "noremap": true, "lhs": "]i", "mode": "x", "rhs": "lua MiniBracketed.indent('forward')"}, {"desc": "Indent forward", "noremap": true, "lhs": "]i", "mode": "n", "rhs": "lua MiniBracketed.indent('forward')"}, {"desc": "Indent last", "noremap": true, "lhs": "]I", "mode": "x", "rhs": "lua MiniBracketed.indent('last')"}, {"desc": "Indent last", "noremap": true, "lhs": "]I", "mode": "n", "rhs": "lua MiniBracketed.indent('last')"}, {"desc": "Diagnostic forward", "noremap": true, "lhs": "]d", "mode": "x", "rhs": "lua MiniBracketed.diagnostic('forward')"}, {"desc": "Diagnostic last", "noremap": true, "lhs": "]D", "mode": "x", "rhs": "lua MiniBracketed.diagnostic('last')"}, {"desc": "Diagnostic last", "noremap": true, "lhs": "]D", "mode": "n", "rhs": "lua MiniBracketed.diagnostic('last')"}, {"desc": "Conflict forward", "noremap": true, "lhs": "]x", "mode": "x", "rhs": "lua MiniBracketed.conflict('forward')"}, {"desc": "Conflict forward", "noremap": true, "lhs": "]x", "mode": "n", "rhs": "lua MiniBracketed.conflict('forward')"}, {"desc": "Conflict last", "noremap": true, "lhs": "]X", "mode": "x", "rhs": "lua MiniBracketed.conflict('last')"}, {"desc": "Conflict last", "noremap": true, "lhs": "]X", "mode": "n", "rhs": "lua MiniBracketed.conflict('last')"}, {"desc": "Comment forward", "noremap": true, "lhs": "]c", "mode": "x", "rhs": "lua MiniBracketed.comment('forward')"}, {"desc": "Comment forward", "noremap": true, "lhs": "]c", "mode": "n", "rhs": "lua MiniBracketed.comment('forward')"}, {"desc": "Comment last", "noremap": true, "lhs": "]C", "mode": "x", "rhs": "lua MiniBracketed.comment('last')"}, {"desc": "Comment last", "noremap": true, "lhs": "]C", "mode": "n", "rhs": "lua MiniBracketed.comment('last')"}, {"desc": "Buffer last", "noremap": true, "lhs": "]B", "mode": "n", "rhs": "lua MiniBracketed.buffer('last')"}, {"desc": "Buffer forward", "noremap": true, "lhs": "]b", "mode": "n", "rhs": "lua MiniBracketed.buffer('forward')"}, {"desc": "Diagnostic forward", "noremap": true, "lhs": "]d", "mode": "n", "rhs": "lua MiniBracketed.diagnostic('forward')"}, {"desc": "Edit", "noremap": true, "lhs": "]e", "mode": "n", "rhs": "g,"}, {"desc": "Jump forward", "noremap": true, "lhs": "]j", "mode": "n", "rhs": "lua MiniBracketed.jump('forward')"}, {"desc": "", "noremap": false, "lhs": "]%", "mode": "x", "rhs": "(MatchitVisualMultiForward)"}, {"desc": "", "noremap": false, "lhs": "]%", "mode": "n", "rhs": "(MatchitNormalMultiForward)"}, {"desc": "Next Trouble/Quickfix Item", "noremap": true, "lhs": "]q", "mode": "n", "rhs": ""}, {"desc": "Around last textobject", "noremap": false, "lhs": "al", "mode": "x", "rhs": ""}, {"desc": "Around next textobject", "noremap": false, "lhs": "an", "mode": "x", "rhs": ""}, {"desc": "Around textobject", "noremap": false, "lhs": "a", "mode": "x", "rhs": ""}, {"desc": "", "noremap": false, "lhs": "a%", "mode": "x", "rhs": "(MatchitVisualTextObject)"}, {"desc": " Edit Macro", "noremap": true, "lhs": "cq", "mode": "n", "rhs": ""}, {"desc": "Change without replacing clipboad", "noremap": true, "lhs": "c", "mode": "n", "rhs": "\"_c"}, {"desc": " Delete All Macros", "noremap": true, "lhs": "dq", "mode": "n", "rhs": ""}, {"desc": "Delete without replacing clipboad", "noremap": true, "lhs": "d", "mode": "n", "rhs": "\"_d"}, {"desc": "", "noremap": true, "lhs": "f", "mode": "x", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "f", "mode": "n", "rhs": ""}, {"desc": "Put yanked text after selection", "noremap": true, "lhs": "gp", "mode": "n", "rhs": "(YankyGPutAfter)"}, {"desc": "Put yanked text before selection", "noremap": true, "lhs": "gP", "mode": "n", "rhs": "(YankyGPutBefore)"}, {"desc": "Put yanked text before selection", "noremap": true, "lhs": "gP", "mode": "x", "rhs": "(YankyGPutBefore)"}, {"desc": "Put yanked text after selection", "noremap": true, "lhs": "gp", "mode": "x", "rhs": "(YankyGPutAfter)"}, {"desc": "Highlight next surrounding", "noremap": true, "lhs": "gshn", "mode": "n", "rhs": ""}, {"desc": "Find next left surrounding", "noremap": true, "lhs": "gsFn", "mode": "n", "rhs": ""}, {"desc": "Find next right surrounding", "noremap": true, "lhs": "gsfn", "mode": "n", "rhs": ""}, {"desc": "Replace next surrounding", "noremap": true, "lhs": "gsrn", "mode": "n", "rhs": ""}, {"desc": "Delete next surrounding", "noremap": true, "lhs": "gsdn", "mode": "n", "rhs": ""}, {"desc": "Highlight previous surrounding", "noremap": true, "lhs": "gshl", "mode": "n", "rhs": ""}, {"desc": "Find previous left surrounding", "noremap": true, "lhs": "gsFl", "mode": "n", "rhs": ""}, {"desc": "Find previous right surrounding", "noremap": true, "lhs": "gsfl", "mode": "n", "rhs": ""}, {"desc": "Replace previous surrounding", "noremap": true, "lhs": "gsrl", "mode": "n", "rhs": ""}, {"desc": "Delete previous surrounding", "noremap": true, "lhs": "gsdl", "mode": "n", "rhs": ""}, {"desc": "Add surrounding to selection", "noremap": true, "lhs": "gsa", "mode": "x", "rhs": ":lua MiniSurround.add('visual')"}, {"desc": "Update `MiniSurround.config.n_lines`", "noremap": true, "lhs": "gsn", "mode": "n", "rhs": ""}, {"desc": "Highlight surrounding", "noremap": true, "lhs": "gsh", "mode": "n", "rhs": ""}, {"desc": "Find left surrounding", "noremap": true, "lhs": "gsF", "mode": "n", "rhs": ""}, {"desc": "Find right surrounding", "noremap": true, "lhs": "gsf", "mode": "n", "rhs": ""}, {"desc": "Replace surrounding", "noremap": true, "lhs": "gsr", "mode": "n", "rhs": ""}, {"desc": "Delete surrounding", "noremap": true, "lhs": "gsd", "mode": "n", "rhs": ""}, {"desc": "Add surrounding", "noremap": true, "lhs": "gsa", "mode": "n", "rhs": ""}, {"desc": "Move to right \"around\"", "noremap": false, "lhs": "g]", "mode": "x", "rhs": ""}, {"desc": "Move to right \"around\"", "noremap": false, "lhs": "g]", "mode": "n", "rhs": ""}, {"desc": "Move to left \"around\"", "noremap": false, "lhs": "g[", "mode": "x", "rhs": ""}, {"desc": "Move to left \"around\"", "noremap": false, "lhs": "g[", "mode": "n", "rhs": ""}, {"desc": "", "noremap": false, "lhs": "g%", "mode": "x", "rhs": "(MatchitVisualBackward)"}, {"desc": "", "noremap": false, "lhs": "g%", "mode": "n", "rhs": "(MatchitNormalBackward)"}, {"desc": "Beginning of line", "noremap": true, "lhs": "gh", "mode": "x", "rhs": "^"}, {"desc": "Beginning of line", "noremap": true, "lhs": "gh", "mode": "n", "rhs": "^"}, {"desc": "End of line", "noremap": true, "lhs": "gl", "mode": "x", "rhs": "$"}, {"desc": "End of line", "noremap": true, "lhs": "gl", "mode": "n", "rhs": "$"}, {"desc": "Comment line", "noremap": true, "lhs": "gcc", "mode": "n", "rhs": ""}, {"desc": "Comment selection", "noremap": true, "lhs": "gc", "mode": "x", "rhs": ""}, {"desc": "Comment", "noremap": true, "lhs": "gc", "mode": "n", "rhs": ""}, {"desc": "Opens filepath or URI under cursor with the system handler (file explorer, web browser, …)", "noremap": true, "lhs": "gx", "mode": "x", "rhs": ""}, {"desc": "Opens filepath or URI under cursor with the system handler (file explorer, web browser, …)", "noremap": true, "lhs": "gx", "mode": "n", "rhs": ""}, {"desc": "Inside last textobject", "noremap": false, "lhs": "il", "mode": "x", "rhs": ""}, {"desc": "Inside next textobject", "noremap": false, "lhs": "in", "mode": "x", "rhs": ""}, {"desc": "Inside textobject", "noremap": false, "lhs": "i", "mode": "x", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "j", "mode": "v", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "j", "mode": "n", "rhs": "v:count == 0 ? 'gj' : 'j'"}, {"desc": "", "noremap": true, "lhs": "k", "mode": "v", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "k", "mode": "n", "rhs": "v:count == 0 ? 'gk' : 'k'"}, {"desc": "Next search result", "noremap": true, "lhs": "n", "mode": "x", "rhs": "'Nn'[v:searchforward]"}, {"desc": "Next search result", "noremap": true, "lhs": "n", "mode": "n", "rhs": "'Nn'[v:searchforward]"}, {"desc": "Put yanked text after cursor", "noremap": true, "lhs": "p", "mode": "n", "rhs": "(YankyPutAfter)"}, {"desc": "Put yanked text after cursor", "noremap": true, "lhs": "p", "mode": "x", "rhs": "(YankyPutAfter)"}, {"desc": " Start/Stop Recording", "noremap": true, "lhs": "q", "mode": "n", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "t", "mode": "x", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "t", "mode": "n", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "u", "mode": "n", "rhs": "ulua MiniBracketed.register_undo_state()"}, {"desc": "Cut without replacing clipboad", "noremap": true, "lhs": "x", "mode": "n", "rhs": "\"_x"}, {"desc": "", "noremap": true, "lhs": "x", "mode": "x", "rhs": "\"_x"}, {"desc": "Yank text", "noremap": true, "lhs": "y", "mode": "n", "rhs": "(YankyYank)"}, {"desc": "Yank text", "noremap": true, "lhs": "y", "mode": "x", "rhs": "(YankyYank)"}, {"desc": " Yank Macro", "noremap": true, "lhs": "yq", "mode": "n", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "", "mode": "n", "rhs": "(YankyCycleBackward)"}, {"desc": "", "noremap": true, "lhs": "", "mode": "n", "rhs": "(YankyCycleForward)"}, {"desc": "Move line up", "noremap": true, "lhs": "", "mode": "n", "rhs": "lua MiniMove.move_line('up')"}, {"desc": "Move line down", "noremap": true, "lhs": "", "mode": "n", "rhs": "lua MiniMove.move_line('down')"}, {"desc": "Move line right", "noremap": true, "lhs": "", "mode": "n", "rhs": "lua MiniMove.move_line('right')"}, {"desc": "Move line left", "noremap": true, "lhs": "", "mode": "n", "rhs": "lua MiniMove.move_line('left')"}, {"desc": "Move up", "noremap": true, "lhs": "", "mode": "x", "rhs": "lua MiniMove.move_selection('up')"}, {"desc": "Move down", "noremap": true, "lhs": "", "mode": "x", "rhs": "lua MiniMove.move_selection('down')"}, {"desc": "Move right", "noremap": true, "lhs": "", "mode": "x", "rhs": "lua MiniMove.move_selection('right')"}, {"desc": "Move left", "noremap": true, "lhs": "", "mode": "x", "rhs": "lua MiniMove.move_selection('left')"}, {"desc": "", "noremap": true, "lhs": "", "mode": "n", "rhs": "lua MiniBracketed.register_undo_state()"}, {"desc": " Switch Macro Slot", "noremap": true, "lhs": "", "mode": "n", "rhs": ""}, {"desc": "Decrease window width", "noremap": true, "lhs": "", "mode": "n", "rhs": "vertical resize -10"}, {"desc": "Increase window width", "noremap": true, "lhs": "", "mode": "n", "rhs": "vertical resize +10"}, {"desc": "Increase window height", "noremap": true, "lhs": "", "mode": "n", "rhs": "resize +10"}, {"desc": "Find Files", "noremap": true, "lhs": "", "mode": "n", "rhs": "Telescope find_files"}, {"desc": "Previous Buffer", "noremap": true, "lhs": "", "mode": "n", "rhs": "bprevious"}, {"desc": "Find browser", "noremap": true, "lhs": "", "mode": "n", "rhs": "Telescope file_browser"}, {"desc": "Decrease window height", "noremap": true, "lhs": "", "mode": "n", "rhs": "resize -10"}, {"desc": "", "noremap": true, "lhs": "", "mode": "n", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "", "mode": "n", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "", "mode": "n", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "", "mode": "n", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "", "mode": "n", "rhs": "zz"}, {"desc": "", "noremap": true, "lhs": "", "mode": "n", "rhs": "zz"}, {"desc": "Save File", "noremap": true, "lhs": "", "mode": "n", "rhs": "up"}, {"desc": "", "noremap": true, "lhs": "", "mode": "n", "rhs": "ggVG"}, {"desc": "Show diagnostics under the cursor", "noremap": false, "lhs": "", "mode": "n", "rhs": "d"}, {"desc": "Show diagnostics under the cursor", "noremap": true, "lhs": "d", "mode": "n", "rhs": ""}, {"desc": "", "noremap": true, "lhs": "", "mode": "n", "rhs": ""}], "treesitterParsers": ["bash", "c", "cpp", "css", "html", "java", "javascript", "json", "lua", "markdown", "markdown_inline", "python", "scss", "toml", "tsx", "typescript", "vim", "vimdoc"], "pluginManager": "lazy.nvim", "leaderKey": "", "lspServers": ["bashls", "clangd", "cssls", "emmet_ls", "html", "lua_ls", "prismals", "pyright", "svelte", "tailwindcss", "tsserver"]} \ No newline at end of file diff --git a/lua/configs/cmp.lua b/lua/configs/cmp.lua index 5e5ceac..46ff4d2 100644 --- a/lua/configs/cmp.lua +++ b/lua/configs/cmp.lua @@ -1,90 +1,84 @@ -local cmp = require('cmp') -local luasnip = require('luasnip') -require('luasnip/loaders/from_vscode').lazy_load() +local cmp = require("cmp") +local luasnip = require("luasnip") +local lspkind = require("lspkind") +require("luasnip/loaders/from_vscode").lazy_load() cmp.setup({ - completion = { - keyword_length = 1, - completeopt = 'menu,menuone', - }, - window = { - completion = cmp.config.window.bordered(), - documentation = cmp.config.window.bordered(), - }, - formatting = { - fields = { 'kind', 'abbr', 'menu' }, - format = function(entry, vim_item) - local kind = require('lspkind').cmp_format({ mode = 'symbol_text', maxwidth = 50 })(entry, vim_item) - local strings = vim.split(kind.kind, '%s', { trimempty = true }) - kind.kind = ' ' .. (strings[1] or '') .. ' ' - kind.menu = ' (' .. (strings[2] or '') .. ')' - - return kind - end, - }, - snippet = { -- configure how nvim-cmp interacts with snippet engine - expand = function(args) - luasnip.lsp_expand(args.body) - end, - }, - mapping = { - [''] = cmp.mapping.select_prev_item(), - [''] = cmp.mapping.select_next_item(), - [''] = cmp.mapping(cmp.mapping.scroll_docs(-1), { 'i', 'c' }), - [''] = cmp.mapping(cmp.mapping.scroll_docs(1), { 'i', 'c' }), - [''] = cmp.mapping(cmp.mapping.complete(), { 'i', 'c' }), - [''] = cmp.mapping.scroll_docs(-4), - [''] = cmp.mapping.scroll_docs(4), - [''] = cmp.config.disable, - [''] = cmp.mapping({ - i = cmp.mapping.abort(), - c = cmp.mapping.close(), - }), - [''] = cmp.mapping.confirm({ - behavior = cmp.ConfirmBehavior.Replace, - select = false, - }), - [''] = cmp.mapping(function(fallback) - if cmp.visible() then - cmp.select_next_item() - elseif luasnip.expandable() then - luasnip.expand() - elseif luasnip.expand_or_jumpable() then - luasnip.expand_or_jump() - else - fallback() - end - end, { 'i', 's' }), - [''] = 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' }), - }, - cmp.setup.cmdline(':', { - mapping = cmp.mapping.preset.cmdline(), - sources = { - { name = 'cmdline' }, - }, - }), - cmp.setup.cmdline('/', { - mapping = cmp.mapping.preset.cmdline(), - sources = { - { name = 'buffer' }, - }, - }), - -- sources for autocompletion - sources = { - { name = 'nvim_lsp' }, - { name = 'luasnip' }, -- snippets - { name = 'buffer' }, -- text within current buffer - { name = 'path' }, -- file system paths - { name = 'codeium' }, -- AI for autocompletion - -- { name = "nvim_lsp_signature_help" }, - -- { name = "calc" }, --for maths calculations - }, + completion = { + completeopt = "menu,menuone,preview,noselect", + }, + window = { -- making ui stuff for completion bordered + completion = cmp.config.window.bordered(), + documentation = cmp.config.window.bordered(), + }, + -- configure lspkind for vs-code like pictograms in completion menu + formatting = { + format = lspkind.cmp_format({ + maxwidth = 50, + ellipsis_char = "...", + }), + }, + snippet = { -- configure how nvim-cmp interacts with snippet engine + expand = function(args) + luasnip.lsp_expand(args.body) + end, + }, + mapping = { + [""] = cmp.mapping.select_prev_item(), -- previous suggestion + [""] = cmp.mapping.select_next_item(), -- next suggestion + [""] = cmp.mapping.scroll_docs(-4), + [""] = cmp.mapping.scroll_docs(4), + [""] = cmp.mapping.complete(), -- show completion suggestions + [""] = cmp.config.disable, + [""] = cmp.mapping({ -- close completion window + i = cmp.mapping.abort(), + c = cmp.mapping.close(), + }), + [""] = cmp.mapping.confirm({ + behavior = cmp.ConfirmBehavior.Replace, + select = false, + }), + [""] = cmp.mapping(function(fallback) + if cmp.visible() then + cmp.select_next_item() + elseif luasnip.expandable() then + luasnip.expand() + elseif luasnip.expand_or_jumpable() then + luasnip.expand_or_jump() + else + fallback() + end + end, { "i", "s" }), + [""] = 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" }), + }, + cmp.setup.cmdline(":", { + mapping = cmp.mapping.preset.cmdline(), + sources = { + { name = "cmdline" }, + }, + }), + -- cmp.setup.cmdline("/", { + -- mapping = cmp.mapping.preset.cmdline(), + -- sources = { + -- { name = "buffer" }, + -- }, + -- }), + -- sources for autocompletion + sources = { + { name = "nvim_lsp" }, + { name = "nvim_lsp_signature_help" }, -- parameter hints + { name = "luasnip" }, -- snippets + { name = "buffer" }, -- text within current buffer + { name = "path" }, -- file system paths + { name = "codeium" }, -- AI for autocompletion + -- { name = "calc" }, --for maths calculations + }, }) diff --git a/lua/configs/lsp.lua b/lua/configs/lsp.lua index 503e339..24897b4 100644 --- a/lua/configs/lsp.lua +++ b/lua/configs/lsp.lua @@ -1,7 +1,8 @@ local lspconfig = require("lspconfig") -- import cmp-nvim-lsp plugin local cmp_nvim_lsp = require("cmp_nvim_lsp") - +-- import mason_lspconfig plugin +local mason_lspconfig = require("mason-lspconfig") local keymap = vim.keymap -- for conciseness vim.api.nvim_create_autocmd("LspAttach", { @@ -18,6 +19,14 @@ vim.api.nvim_create_autocmd("LspAttach", { opts.desc = "Go to declaration" keymap.set("n", "lD", vim.lsp.buf.declaration, opts) -- go to declaration + opts.desc = "Inlay hint" + keymap.set( + "n", + "lh", + "lua vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled())", + opts + ) + opts.desc = "Show LSP definitions" keymap.set("n", "ld", "Telescope lsp_definitions", opts) -- show lsp definitions @@ -28,10 +37,10 @@ vim.api.nvim_create_autocmd("LspAttach", { keymap.set("n", "lt", "Telescope lsp_type_definitions", opts) -- show lsp type definitions opts.desc = "See available code actions" - keymap.set({ "n", "v" }, "la", vim.lsp.buf.code_action, opts) -- see available code actions, in visual mode will apply to selection + keymap.set({ "n", "v" }, "ca", vim.lsp.buf.code_action, opts) -- see available code actions, in visual mode will apply to selection opts.desc = "Smart rename" - keymap.set("n", "mr", vim.lsp.buf.rename, opts) -- smart rename + keymap.set("n", "mR", vim.lsp.buf.rename, opts) -- smart rename opts.desc = "Show buffer diagnostics" keymap.set("n", "lD", "Telescope diagnostics bufnr=0", opts) -- show diagnostics for file @@ -50,111 +59,51 @@ vim.api.nvim_create_autocmd("LspAttach", { -- used to enable autocompletion (assign to every lsp server config) local capabilities = cmp_nvim_lsp.default_capabilities() --- configure matlab server -lspconfig["clangd"].setup({ - capabilities = capabilities, -}) --- configure bash server -lspconfig["bashls"].setup({ - capabilities = capabilities, -}) --- configure html server -lspconfig["html"].setup({ - capabilities = capabilities, -}) --- configure typescript server with plugin -lspconfig["tsserver"].setup({ - capabilities = capabilities, -}) +-- Change the Diagnostic symbols in the sign column (gutter) +local signs = { Error = " ", Warn = " ", Hint = "󰠠 ", Info = " " } +for type, icon in pairs(signs) do + local hl = "DiagnosticSign" .. type + vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = "" }) +end --- configure css server -lspconfig["cssls"].setup({ - capabilities = capabilities, -}) +mason_lspconfig.setup_handlers({ + -- default handler for installed servers + function(server_name) + lspconfig[server_name].setup({ + capabilities = capabilities, + }) + end, --- configure tailwindcss server -lspconfig["tailwindcss"].setup({ - capabilities = capabilities, -}) - --- configure svelte server -lspconfig["svelte"].setup({ - capabilities = capabilities, - on_attach = function(client, bufnr) - vim.api.nvim_create_autocmd("BufWritePost", { - pattern = { "*.js", "*.ts" }, - callback = function(ctx) - if client.name == "svelte" then - client.notify("$/onDidChangeTsOrJsFile", { uri = ctx.file }) - end - end, + ["lua_ls"] = function() + -- configure lua server (with special settings) + lspconfig["lua_ls"].setup({ + capabilities = capabilities, + settings = { + Lua = { + -- make the language server recognize "vim" global + diagnostics = { + globals = { "vim" }, + }, + hint = { enable = true }, + completion = { + callSnippet = "Replace", + }, + }, + }, + }) + end, + ["basedpyright"] = function() + -- configure pyright server (with special settings) + lspconfig["basedpyright"].setup({ + capabilities = capabilities, + settings = { + python = { + hint = { enable = true }, + }, + }, + handlers = { + ["textDocument/publishDiagnostics"] = function() end, + }, }) end, }) - --- configure prisma orm server -lspconfig["prismals"].setup({ - capabilities = capabilities, -}) - --- configure emmet language server -lspconfig["emmet_ls"].setup({ - capabilities = capabilities, - filetypes = { "html", "typescriptreact", "javascriptreact", "css", "sass", "scss", "less", "svelte" }, -}) - --- configure python server -lspconfig["pyright"].setup({ - capabilities = capabilities, -}) - --- configure lua server (with special settings) -lspconfig["lua_ls"].setup({ - capabilities = capabilities, - settings = { -- custom settings for lua - Lua = { - -- make the language server recognize "vim" global - diagnostics = { - globals = { "vim" }, - }, - workspace = { - -- make language server aware of runtime files - library = { - [vim.fn.expand("$VIMRUNTIME/lua")] = true, - [vim.fn.stdpath("config") .. "/lua"] = true, - }, - }, - }, - }, -}) - -local x = vim.diagnostic.severity -local config = { - -- Enable virtual text - virtual_text = { -- or false for disable - prefix = "", -- ■  󰊠 - suffix = "", - format = function(diagnostic) - local prefix = "󰊠 " - local suffix = " " - -- return full message with custom prefix & suffix - return prefix .. diagnostic.message .. suffix - end, - }, - update_in_insert = true, - signs = { text = { [x.ERROR] = "", [x.WARN] = "", [x.HINT] = "󰌵", [x.INFO] = "" } }, - underline = false, - severity_sort = true, - float = { - focusable = false, - style = "minimal", - border = "rounded", - source = "always", - header = "", - prefix = "", - }, -} - -vim.diagnostic.config(config) --- add borders to lsp info window -require("lspconfig.ui.windows").default_options.border = "single" diff --git a/lua/configs/mason.lua b/lua/configs/mason.lua index 141abed..2c79626 100644 --- a/lua/configs/mason.lua +++ b/lua/configs/mason.lua @@ -1,48 +1,42 @@ -local mason = require("mason") -local mason_lspconfig = require("mason-lspconfig") -local mason_tool_installer = require("mason-tool-installer") +local mason = require('mason') +local mason_lspconfig = require('mason-lspconfig') +local mason_tool_installer = require('mason-tool-installer') -- enable mason and configure icons mason.setup({ - automatic_installation = true, - ui = { - border = "rounded", - icons = { - package_installed = "✓", - package_pending = "➜", - package_uninstalled = "✗", - }, - }, + automatic_installation = true, + ui = { + border = 'rounded', + icons = { + package_installed = '✓', + package_pending = '➜', + package_uninstalled = '✗', + }, + }, }) mason_lspconfig.setup({ - -- list of servers for mason to install - ensure_installed = { - "tsserver", - "html", - "cssls", - "tailwindcss", - "svelte", - "lua_ls", - "pyright", - "jdtls", - "bashls", - "jsonls", - "clangd", - "emmet_ls", - "prismals", - }, + -- list of servers for mason to install + ensure_installed = { + 'tsserver', + 'lua_ls', + 'basedpyright', + 'jdtls', + 'bashls', + 'jsonls', + 'clangd', + }, }) mason_tool_installer.setup({ - ensure_installed = { - "prettier", -- prettier formatter - "biome", -- js formatter - "stylua", -- lua formatter - "black", -- python formatter - "isort", -- python formatter - "clang-format", -- c/c++ formatter - "pylint", - "eslint_d", - }, + ensure_installed = { + 'prettier', -- prettier formatter + 'stylua', -- lua formatter + 'black', -- python formatter + 'isort', -- python formatter + 'clang-format', -- c/c++ formatter + 'ruff', -- python linter + 'mypy', -- type checking + 'eslint_d', --js linter + }, }) diff --git a/lua/configs/none-ls.lua b/lua/configs/none-ls.lua index 8b0efaa..ccbb5ad 100644 --- a/lua/configs/none-ls.lua +++ b/lua/configs/none-ls.lua @@ -1,63 +1,64 @@ -local mason_null_ls = require("mason-null-ls") +local mason_null_ls = require('mason-null-ls') -local null_ls = require("null-ls") +local null_ls = require('null-ls') -local null_ls_utils = require("null-ls.utils") +local null_ls_utils = require('null-ls.utils') mason_null_ls.setup({ - ensure_installed = { - "prettier", -- prettier formatter - "biome", -- js formatter - "clang-format", -- c/c++ formatter - "stylua", -- lua formatter - "black", -- python formatter - "pylint", -- python linter - "google-java-format", -- java formatter - -- "eslint_d", -- js linter - }, + ensure_installed = { + 'prettier', -- prettier formatter + 'clang-format', -- c/c++ formatter + 'stylua', -- lua formatter + 'black', -- python formatter + 'pylint', -- python linter + 'google-java-format', -- java formatter + -- "eslint_d", -- js linter + }, }) -- for conciseness local formatting = null_ls.builtins.formatting -- to setup formatters local diagnostics = null_ls.builtins.diagnostics -- to setup linters +local hover = null_ls.builtins.hover -- to setup format on save -local augroup = vim.api.nvim_create_augroup("LspFormatting", {}) +local augroup = vim.api.nvim_create_augroup('LspFormatting', {}) -- configure null_ls null_ls.setup({ - root_dir = null_ls_utils.root_pattern(".null-ls-root", "Makefile", ".git", "package.json"), - sources = { - formatting.prettier, -- js/ts formatter - formatting.stylua, -- lua formatter - formatting.isort, - formatting.black, - formatting.clang_format, - formatting.google_java_format, - diagnostics.pylint, - -- diagnostics.eslint_d.with({ -- js/ts linter - -- condition = function(utils) - -- return utils.root_has_file({ ".eslintrc.js", ".eslintrc.cjs" }) -- only enable if root has .eslintrc.js or .eslintrc.cjs - -- end, - -- }), - }, - -- configure format on save - on_attach = function(current_client, bufnr) - if current_client.supports_method("textDocument/formatting") then - vim.api.nvim_clear_autocmds({ group = augroup, buffer = bufnr }) - vim.api.nvim_create_autocmd("BufWritePre", { - group = augroup, - buffer = bufnr, - callback = function() - vim.lsp.buf.format({ - filter = function(client) - -- only use null-ls for formatting instead of lsp server - return client.name == "null-ls" - end, - bufnr = bufnr, - }) - end, - }) - end - end, + root_dir = null_ls_utils.root_pattern('.null-ls-root', 'Makefile', '.git', 'package.json'), + sources = { + formatting.prettier, -- js/ts formatter + formatting.stylua, -- lua formatter + formatting.isort, + formatting.black, + formatting.clang_format, + formatting.google_java_format, + diagnostics.pylint, + hover.printenv, + -- diagnostics.eslint_d.with({ -- js/ts linter + -- condition = function(utils) + -- return utils.root_has_file({ ".eslintrc.js", ".eslintrc.cjs" }) -- only enable if root has .eslintrc.js or .eslintrc.cjs + -- end, + -- }), + }, + -- configure format on save + on_attach = function(current_client, bufnr) + if current_client.supports_method('textDocument/formatting') then + vim.api.nvim_clear_autocmds({ group = augroup, buffer = bufnr }) + vim.api.nvim_create_autocmd('BufWritePre', { + group = augroup, + buffer = bufnr, + callback = function() + vim.lsp.buf.format({ + filter = function(client) + -- only use null-ls for formatting instead of lsp server + return client.name == 'null-ls' + end, + bufnr = bufnr, + }) + end, + }) + end + end, }) diff --git a/lua/core/autocmd.lua b/lua/core/autocmd.lua index 788db00..8b5eb69 100644 --- a/lua/core/autocmd.lua +++ b/lua/core/autocmd.lua @@ -8,7 +8,7 @@ vim.api.nvim_create_autocmd({ "BufWritePre" }, { pattern = { "*" }, callback = function() vim.cmd([[ %s/\s\+$//e ]]) - end, + end, }) -- Check if we need to reload the file when it changed diff --git a/lua/lock.json b/lua/lock.json index 8fe65f9..2f9c2ce 100644 --- a/lua/lock.json +++ b/lua/lock.json @@ -6,12 +6,14 @@ "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, "cmp-cmdline": { "branch": "main", "commit": "d250c63aa13ead745e3a40f61fdd3470efde3923" }, "cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" }, + "cmp-nvim-lsp-signature-help": { "branch": "main", "commit": "031e6ba70b0ad5eee49fd2120ff7a2e325b17fa7" }, "cmp-nvim-lua": { "branch": "main", "commit": "f12408bdb54c39c23e67cab726264c10db33ada8" }, "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, "code_runner.nvim": { "branch": "main", "commit": "6c5bfe44a6c7523350cd706e6b3b8101166eed99" }, "codeium.vim": { "branch": "main", "commit": "8bed5fb5708c94cd69f418d1381d6fbf07cb0313" }, "comment-box.nvim": { "branch": "main", "commit": "06bb771690bc9df0763d14769b779062d8f12bc5" }, + "conform.nvim": { "branch": "master", "commit": "62eba813b7501b39612146cbf29cd07f1d4ac29c" }, "dashboard-nvim": { "branch": "master", "commit": "fabf5feec96185817c732d47d363f34034212685" }, "dotfyle-metadata.nvim": { "branch": "main", "commit": "342ef8f3f98f3ccc451c9cf2be74e95149ced05d" }, "dressing.nvim": { "branch": "master", "commit": "c5775a888adbc50652cb370073fcfec963eca93e" }, @@ -29,12 +31,11 @@ "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" }, "mason-lock.nvim": { "branch": "main", "commit": "86614f76c3442fba1c5c8d79aa1efcb3ad69de1c" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "482350b050bd413931c2cdd4857443c3da7d57cb" }, - "mason-null-ls.nvim": { "branch": "main", "commit": "de19726de7260c68d94691afb057fa73d3cc53e7" }, "mason-tool-installer.nvim": { "branch": "main", "commit": "c5e07b8ff54187716334d585db34282e46fa2932" }, "mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" }, "mini.files": { "branch": "main", "commit": "7ed15315247775b4c5fcfaf4c8fe45d3a0dde9ad" }, "mini.icons": { "branch": "main", "commit": "12e7b5d47bfc1b4c5ba4278fb49ec9100138df14" }, - "mini.nvim": { "branch": "main", "commit": "3cf9265bbde75d1358d126701eb6055034491df6" }, + "mini.nvim": { "branch": "main", "commit": "2c55015a518e11ea9d49bb96078f5ede51f5d2af" }, "modes.nvim": { "branch": "main", "commit": "3188692abf02a8838ec75e59d68c2ce3e4323f5c" }, "neo-tree.nvim": { "branch": "main", "commit": "206241e451c12f78969ff5ae53af45616ffc9b72" }, "neotest": { "branch": "master", "commit": "32ff2ac21135a372a42b38ae131e531e64833bd3" }, @@ -43,19 +44,19 @@ "neotest-rspec": { "branch": "main", "commit": "53fc108a06ae43d7f873d42ee5189c2301e33623" }, "nerdy.nvim": { "branch": "main", "commit": "b467d6609b78d6a5f1e12cbc08fcc1ac87af20f5" }, "noice.nvim": { "branch": "main", "commit": "448bb9c524a7601035449210838e374a30153172" }, - "none-ls.nvim": { "branch": "main", "commit": "3cc6c6ae11c89a6963f0b5a25ad2ce211039faf2" }, "nui.nvim": { "branch": "main", "commit": "61574ce6e60c815b0a0c4b5655b8486ba58089a1" }, "numb.nvim": { "branch": "master", "commit": "3f7d4a74bd456e747a1278ea1672b26116e0824d" }, "nvim-cmp": { "branch": "main", "commit": "ae644feb7b67bf1ce4260c231d1d4300b19c6f30" }, "nvim-dap": { "branch": "master", "commit": "281a2e4cd1e7a17cea7ecb1745d84a8ab1249925" }, "nvim-dap-ui": { "branch": "master", "commit": "a5606bc5958db86f8d92803bea7400ee26a8d7e4" }, + "nvim-lint": { "branch": "master", "commit": "debabca63c0905b59ce596a55a8e33eafdf66342" }, "nvim-lsp-file-operations": { "branch": "master", "commit": "92a673de7ecaa157dd230d0128def10beb56d103" }, "nvim-lspconfig": { "branch": "master", "commit": "911167921d49cd5c1c9b2436031d0da3945e787f" }, "nvim-nio": { "branch": "master", "commit": "a428f309119086dc78dd4b19306d2d67be884eee" }, "nvim-notify": { "branch": "master", "commit": "d333b6f167900f6d9d42a59005d82919830626bf" }, "nvim-recorder": { "branch": "main", "commit": "ce96792c1ff750977fc3affc56f0561b0c20a7e2" }, "nvim-spectre": { "branch": "master", "commit": "ba7fb777edff6c1fbbeffd343e113af64c04e90a" }, - "nvim-treesitter": { "branch": "master", "commit": "e085c614fcd716eedb8e2e55bae2ccad4becd40d" }, + "nvim-treesitter": { "branch": "master", "commit": "397982d197768ebdefc0e2db396d95c4d371ca86" }, "nvim-treesitter-context": { "branch": "master", "commit": "0f3332788e0bd37716fbd25f39120dcfd557c90f" }, "nvim-treesitter-textobjects": { "branch": "master", "commit": "41e3abf6bfd9a9a681eb1f788bdeba91c9004b2b" }, "nvim-ts-autotag": { "branch": "main", "commit": "0cb76eea80e9c73b88880f0ca78fbd04c5bdcac7" }, @@ -82,6 +83,7 @@ "vim-dadbod-completion": { "branch": "master", "commit": "880f7e9f2959e567c718d52550f9fae1aa07aa81" }, "vim-dadbod-ui": { "branch": "master", "commit": "2f344874918a3ab6bbe68fb866b3f003a639a5d2" }, "vim-maximizer": { "branch": "master", "commit": "2e54952fe91e140a2e69f35f22131219fcd9c5f1" }, + "vim-visual-multi": { "branch": "master", "commit": "38b0e8d94a5499ccc17d6159763d32c79f53417b" }, "vim-wakatime": { "branch": "master", "commit": "53bba6bb8342de9cbdafc82142a9b5e82008d858" }, "which-key.nvim": { "branch": "main", "commit": "6c1584eb76b55629702716995cca4ae2798a9cca" }, "yanky.nvim": { "branch": "main", "commit": "73215b77d22ebb179cef98e7e1235825431d10e4" }, diff --git a/lua/plugins/coding.lua b/lua/plugins/coding.lua index 494e91e..60f42e3 100644 --- a/lua/plugins/coding.lua +++ b/lua/plugins/coding.lua @@ -14,6 +14,64 @@ return { end, }, }, + { + "mg979/vim-visual-multi", + event = "BufReadPre", + keys = { + { + "", + ":call vm#commands#add_cursor_down(0, v:count1)", + desc = "Add Cursor Down", + mode = { "n" }, + noremap = true, + silent = true, + }, + { + "", + ":call vm#commands#add_cursor_up(0, v:count1)", + desc = "Add Cursor Up", + mode = { "n" }, + noremap = true, + silent = true, + }, + { + "", + ":call vm#commands#add_cursor_down(0, v:count1)", + desc = "Add Cursor Down", + mode = { "n" }, + noremap = true, + silent = true, + }, + { + "", + ":call vm#commands#add_cursor_up(0, v:count1)", + desc = "Add Cursor Down", + mode = { "n" }, + noremap = true, + silent = true, + }, + { + "", + ":call vm#commands#ctrln(v:count1)", + desc = "Multi Edit Next", + mode = { "n" }, + noremap = true, + silent = true, + }, + }, + config = function() + vim.g.VM_default_mappings = 0 + vim.g.VM_silent_exit = 1 + vim.g.VM_set_statusline = 0 + vim.g.VM_maps = { + ["Find Under"] = "", + } + + vim.g.VM_maps["I BS"] = "" + vim.g.VM_maps["I CtrlC"] = "" + vim.g.VM_maps["I CtrlN"] = "" + end, + }, { "CRAG666/code_runner.nvim", config = true, @@ -65,23 +123,18 @@ return { }, { "hrsh7th/nvim-cmp", - event = { "InsertEnter" }, + event = { "InsertEnter", "CmdlineEnter" }, dependencies = { - -- autocomplete plugins - "hrsh7th/cmp-buffer", - "hrsh7th/cmp-path", + "hrsh7th/cmp-buffer", -- source for text in buffer + "hrsh7th/cmp-path", -- source for file system paths "hrsh7th/cmp-cmdline", "hrsh7th/cmp-nvim-lsp", "hrsh7th/cmp-nvim-lua", - "saadparwaiz1/cmp_luasnip", - -- "hrsh7th/cmp-nvim-lsp-signature-help", - -- "hrsh7th/cmp-calc", - - -- vscode like icons to autocomplete list - "onsails/lspkind.nvim", - -- snippet plugin - { "L3MON4D3/LuaSnip", event = { "BufReadPost", "BufNewFile" } }, - { "rafamadriz/friendly-snippets", event = { "BufReadPost", "BufNewFile" } }, + "saadparwaiz1/cmp_luasnip", --for autocomplete + "hrsh7th/cmp-nvim-lsp-signature-help", + "onsails/lspkind.nvim", -- vs-code like pictograms + "L3MON4D3/LuaSnip", -- snippets + "rafamadriz/friendly-snippets", -- useful snippets }, config = function() require("configs.cmp") diff --git a/lua/plugins/extra.lua b/lua/plugins/extra.lua new file mode 100644 index 0000000..e5a7af9 --- /dev/null +++ b/lua/plugins/extra.lua @@ -0,0 +1,174 @@ +return { + { + 'ThePrimeagen/refactoring.nvim', + config = function() + require('refactoring').setup() + -- vim.keymap.set("x", "re", ":Refactor extract ") + -- vim.keymap.set("x", "rf", ":Refactor extract_to_file ") + -- vim.keymap.set("x", "rv", ":Refactor extract_var ") + -- vim.keymap.set({ "n", "x" }, "ri", ":Refactor inline_var") + -- vim.keymap.set("n", "rI", ":Refactor inline_func") + -- vim.keymap.set("n", "rb", ":Refactor extract_block") + -- vim.keymap.set("n", "rbf", ":Refactor extract_block_to_file") + -- load refactoring Telescope extension + require('telescope').load_extension('refactoring') + + vim.keymap.set({ 'n', 'x' }, 'rr', function() + require('telescope').extensions.refactoring.refactors() + end, { desc = 'Refactor' }) + end, + }, + { + 'zapling/mason-lock.nvim', + cmd = { 'MasonLock', 'MasonLockRestore' }, + opts = {}, + }, + { + '2kabhishek/nerdy.nvim', + dependencies = { 'stevearc/dressing.nvim' }, + cmd = 'Nerdy', + }, + { + 'folke/persistence.nvim', + event = 'BufReadPre', + opts = { options = vim.opt.sessionoptions:get() }, + keys = { + { + 'ms', + function() + require('persistence').load() + end, + desc = 'Restore Session', + }, + { + 'ml', + function() + require('persistence').load({ last = true }) + end, + desc = 'Restore Last Session', + }, + { + 'md', + function() + require('persistence').stop() + end, + desc = "Don't Save Current Session", + }, + }, + }, + { + 'nvim-lua/plenary.nvim', + lazy = true, + }, + { + 'iamcco/markdown-preview.nvim', + build = 'cd app && yarn install', + ft = { 'markdown' }, + keys = { + { + 'cm', + 'MarkdownPreviewToggle', + desc = 'toggle markdown preview', + }, + }, + }, + { + 'nvim-pack/nvim-spectre', + build = false, + cmd = 'Spectre', + opts = { open_cmd = 'noswapfile vnew' }, + keys = { + { + 'mr', + function() + require('spectre').open() + end, + desc = 'Replace in Files (Spectre)', + }, + }, + }, + { + 'szw/vim-maximizer', + + keys = { + { 'mm', 'MaximizerToggle', desc = 'Maximize/minimize a split' }, + }, + }, + { + 'folke/zen-mode.nvim', + cmd = { 'ZenMode' }, + opts = {}, + keys = { + { 'wz', 'ZenMode', desc = 'Toggle zen mode' }, + }, + }, + { + 'creativenull/dotfyle-metadata.nvim', + cmd = { 'DotfyleGenerate', 'DotfyleOpen' }, + }, + { + 'willothy/flatten.nvim', + priority = 1001, + opts = { + window = { + open = 'alternate', + }, + }, + }, + { + 'wakatime/vim-wakatime', + event = { 'VimEnter' }, + lazy = false, + }, + { + 'mvllow/modes.nvim', + event = { 'BufReadPost', 'BufNewFile' }, + tag = 'v0.2.0', + config = function() + require('modes').setup({ + + colors = { + visual = '#f5c359', + delete = '#c75c6a', + copy = '#78ccc5', + insert = '#c5739a', + }, + line_opacity = 0.15, + set_cursor = true, + set_cursorline = true, + set_number = true, + ignore_filetypes = { 'NvimTree', 'TelescopePrompt' }, + }) + end, + }, + { + 'LunarVim/bigfile.nvim', + event = { 'BufEnter', 'WinEnter' }, + opts = { + -- Disables LSP/treesitter, etc for files above 5000 lives (even if they have really long lines) + pattern = function(bufnr, filesize_mib) + if filesize_mib >= 2 then + return true + end + -- you can't use `nvim_buf_line_count` because this runs on BufReadPre + local file_contents = vim.fn.readfile(vim.api.nvim_buf_get_name(bufnr)) + local file_length = #file_contents + if file_length > 5000 then + return true + end + + return false + end, + }, + }, + { + 'm4xshen/hardtime.nvim', + config = function() + require('hardtime').setup({ enabled = true }) + end, + cmd = 'Hardtime', + init = function() + vim.keymap.set('n', 'ch', 'HardtimeToggle', { desc = 'Toggle Hardtime' }) + end, + }, +} diff --git a/lua/plugins/formater.lua b/lua/plugins/formater.lua index f16931f..ef48cb5 100644 --- a/lua/plugins/formater.lua +++ b/lua/plugins/formater.lua @@ -1,63 +1,67 @@ return { - "stevearc/conform.nvim", - enabled = false, - event = { "BufReadPre", "BufNewFile" }, - config = function() - local conform = require("conform") + 'stevearc/conform.nvim', + enabled = true, + event = { 'BufReadPre', 'BufNewFile' }, + config = function() + local conform = require('conform') - conform.setup({ - formatters_by_ft = { - cpp = { "clang-format" }, - c = { "clang-format" }, - javascript = { "prettier" }, - typescript = { "prettier" }, - javascriptreact = { "prettier", "biome" }, - typescriptreact = { "prettier" }, - css = { "prettier" }, - html = { "prettier" }, - json = { "prettier" }, - markdown = { "markdownlint", "prettier" }, - lua = { "stylua" }, - python = { "isort", "black" }, - php = { "php-cs-fixer" }, - java = { "google-java-formatter", "trivy" }, - graphql = { "prettier" }, - }, - format_on_save = function(bufnr) - -- Disable with a global or buffer-local variable - if vim.g.disable_autoformat or vim.b[bufnr].disable_autoformat then - return - end - return { - lsp_fallback = true, - async = false, - timeout_ms = 500, - } - end, - }) + conform.setup({ + formatters_by_ft = { + cpp = { 'clang-format' }, + c = { 'clang-format' }, + javascript = { 'prettier' }, + typescript = { 'prettier' }, + javascriptreact = { 'prettier' }, + typescriptreact = { 'prettier' }, + css = { 'prettier' }, + html = { 'prettier' }, + json = { 'prettier' }, + yaml = { 'prettier' }, + markdown = { 'prettier' }, + lua = { 'stylua' }, + python = { 'isort', 'black' }, + php = { 'php-cs-fixer' }, + java = { 'google-java-formatter' }, + graphql = { 'prettier' }, + liquid = { 'prettier' }, + bash = { 'shfmt' }, + sh = { 'shfmt' }, + }, + format_on_save = function(bufnr) + -- Disable with a global or buffer-local variable + if vim.g.disable_autoformat or vim.b[bufnr].disable_autoformat then + return + end + return { + lsp_fallback = true, + async = false, + timeout_ms = 500, + } + end, + }) - vim.keymap.set({ "n", "v" }, "cf", function() - conform.format({ - lsp_fallback = true, - async = true, - timeout_ms = 1000, - }) - end, { desc = "Format file or range (in visual mode)" }) + vim.keymap.set({ 'n', 'v' }, 'cff', function() + conform.format({ + lsp_fallback = true, + async = true, + timeout_ms = 1000, + }) + end, { desc = 'Format file or range (in visual mode)' }) - vim.keymap.set({ "n" }, "cfb", function() - vim.b.disable_autoformat = not vim.b.disable_autoformat - vim.notify( - "Buffer auto-format on-save: " .. (vim.b.disable_autoformat and "OFF" or "ON"), - vim.log.levels.INFO - ) - end, { desc = "Toggle auto-format on-save for buffer." }) + vim.keymap.set({ 'n' }, 'cfb', function() + vim.b.disable_autoformat = not vim.b.disable_autoformat + vim.notify( + 'Buffer auto-format on-save: ' .. (vim.b.disable_autoformat and 'OFF' or 'ON'), + vim.log.levels.INFO + ) + end, { desc = 'Toggle auto-format on-save for buffer.' }) - vim.keymap.set({ "n" }, "ftg", function() - vim.g.disable_autoformat = not vim.g.disable_autoformat - vim.notify( - "Global auto-format on-save: " .. (vim.g.disable_autoformat and "OFF" or "ON"), - vim.log.levels.INFO - ) - end, { desc = "Toggle auto-format on-save globally." }) - end, + vim.keymap.set({ 'n' }, 'cft', function() + vim.g.disable_autoformat = not vim.g.disable_autoformat + vim.notify( + 'Global auto-format on-save: ' .. (vim.g.disable_autoformat and 'OFF' or 'ON'), + vim.log.levels.INFO + ) + end, { desc = 'Toggle auto-format on-save globally.' }) + end, } diff --git a/lua/plugins/lint.lua b/lua/plugins/lint.lua index dca7d28..88baac4 100644 --- a/lua/plugins/lint.lua +++ b/lua/plugins/lint.lua @@ -1,27 +1,34 @@ return { - "mfussenegger/nvim-lint", - enabled = false, - event = { "BufReadPre", "BufNewFile" }, - opts = { - linters_by_ft = { - lua = { "selene" }, - cpp = { "cpplint" }, - c = { "cpplint" }, - javascript = { "eslint_d" }, - typescript = { "eslint_d" }, - javascriptreact = { "eslint_d" }, - typescriptreact = { "eslint_d" }, - python = { "pylint" }, - markdown = { "markdownlint" }, - java = { "trivy" }, - php = { "phpcs" }, - }, - }, - config = function() - local lint = require("lint") - -- TODO create auto command ran after Buffer Wrote - vim.keymap.set("n", "cl", function() - lint.try_lint() - end, { desc = "Trigger linting for current file" }) - end, + 'mfussenegger/nvim-lint', + event = { 'BufReadPre', 'BufNewFile' }, + opts = { + linters_by_ft = { + lua = { 'selene' }, + cpp = { 'cpplint' }, + c = { 'cpplint' }, + javascript = { 'eslint_d' }, + typescript = { 'eslint_d' }, + javascriptreact = { 'eslint_d' }, + typescriptreact = { 'eslint_d' }, + python = { 'ruff', 'mypy' }, + markdown = { 'markdownlint' }, + java = { 'trivy' }, + php = { 'phpcs' }, + }, + }, + config = function() + local lint = require('lint') + local lint_augroup = vim.api.nvim_create_augroup('lint', { clear = true }) + + vim.api.nvim_create_autocmd({ 'BufEnter', 'BufWritePost', 'InsertLeave' }, { + group = lint_augroup, + callback = function() + lint.try_lint() + end, + }) + + vim.keymap.set('n', 'cl', function() + lint.try_lint() + end, { desc = 'Trigger linting for current file' }) + end, } diff --git a/lua/plugins/linter_formatter.lua b/lua/plugins/linter_formatter.lua deleted file mode 100644 index 61bf368..0000000 --- a/lua/plugins/linter_formatter.lua +++ /dev/null @@ -1,24 +0,0 @@ -return { - { - "williamboman/mason.nvim", - cmd = { "Mason", "MasonInstall", "MasonInstallAll", "MasonUpdate" }, - dependencies = { - { "williamboman/mason-lspconfig.nvim", event = { "BufReadPre", "BufNewFile" } }, - { "WhoIsSethDaniel/mason-tool-installer.nvim" }, - { "zapling/mason-lock.nvim", cmd = { "MasonLock", "MasonLockRestore" }, opts = {} }, - }, - config = function() - require("mason").setup() - end, - }, - { - "nvimtools/none-ls.nvim", -- configure formatters & linters - event = { "BufRead", "FileType" }, - dependencies = { - "jay-babu/mason-null-ls.nvim", - }, - config = function() - require("configs.none-ls") - end, - }, -} diff --git a/lua/plugins/lsp.lua b/lua/plugins/lsp.lua index 59d56a1..ad6878b 100644 --- a/lua/plugins/lsp.lua +++ b/lua/plugins/lsp.lua @@ -10,4 +10,25 @@ return { require('configs.lsp') end, }, + { + 'williamboman/mason.nvim', + cmd = { 'Mason', 'MasonInstall', 'MasonInstallAll', 'MasonUpdate' }, + dependencies = { + 'williamboman/mason-lspconfig.nvim', + 'WhoIsSethDaniel/mason-tool-installer.nvim', + }, + config = function() + require('mason').setup() + end, + }, + -- { + -- "nvimtools/none-ls.nvim", -- configure formatters & linters + -- event = { "BufRead", "FileType" }, + -- dependencies = { + -- "jay-babu/mason-null-ls.nvim", + -- }, + -- config = function() + -- require("configs.none-ls") + -- end, + -- }, } diff --git a/lua/plugins/other.lua b/lua/plugins/other.lua deleted file mode 100644 index d94ec4d..0000000 --- a/lua/plugins/other.lua +++ /dev/null @@ -1,199 +0,0 @@ -return { - { - "ThePrimeagen/refactoring.nvim", - config = function() - require("refactoring").setup() - -- vim.keymap.set("x", "re", ":Refactor extract ") - -- vim.keymap.set("x", "rf", ":Refactor extract_to_file ") - -- - -- vim.keymap.set("x", "rv", ":Refactor extract_var ") - -- - -- vim.keymap.set({ "n", "x" }, "ri", ":Refactor inline_var") - -- - -- vim.keymap.set("n", "rI", ":Refactor inline_func") - -- - -- vim.keymap.set("n", "rb", ":Refactor extract_block") - -- vim.keymap.set("n", "rbf", ":Refactor extract_block_to_file") - -- load refactoring Telescope extension - require("telescope").load_extension("refactoring") - - vim.keymap.set({ "n", "x" }, "rr", function() - require("telescope").extensions.refactoring.refactors() - end, { desc = "Refactor" }) - end, - }, - { - "2kabhishek/nerdy.nvim", - dependencies = { "stevearc/dressing.nvim" }, - cmd = "Nerdy", - }, - { - "folke/persistence.nvim", - event = "BufReadPre", - opts = { options = vim.opt.sessionoptions:get() }, - keys = { - { - "ms", - function() - require("persistence").load() - end, - desc = "Restore Session", - }, - { - "ml", - function() - require("persistence").load({ last = true }) - end, - desc = "Restore Last Session", - }, - { - "md", - function() - require("persistence").stop() - end, - desc = "Don't Save Current Session", - }, - }, - }, - { - "nvim-lua/plenary.nvim", - lazy = true, - }, - { - "iamcco/markdown-preview.nvim", - build = "cd app && yarn install", - ft = { "markdown" }, - keys = { - { - "cm", - "MarkdownPreviewToggle", - desc = "toggle markdown preview", - }, - }, - }, - { - "nvim-pack/nvim-spectre", - build = false, - cmd = "Spectre", - opts = { open_cmd = "noswapfile vnew" }, - keys = { - { - "mr", - function() - require("spectre").open() - end, - desc = "Replace in Files (Spectre)", - }, - }, - }, - { - "szw/vim-maximizer", - - keys = { - { "mm", "MaximizerToggle", desc = "Maximize/minimize a split" }, - }, - }, - { - "folke/zen-mode.nvim", - cmd = { "ZenMode" }, - opts = {}, - keys = { - { "wz", "ZenMode", desc = "Toggle zen mode" }, - }, - }, - { - "chrisgrieser/nvim-recorder", - dependencies = { "rcarriga/nvim-notify" }, - event = "VeryLazy", - vscode = true, - keys = { - { "q", desc = "Start Recording" }, - { "Q", desc = "Play Recording" }, - { "", desc = "Switch Slot" }, - { "cq", desc = "Edit Macro" }, - { "yq", desc = "Yank Macro" }, - { "dq", desc = "Delete All Macros" }, - }, - opts = { - useNerdFontsIcons = false, - slots = { "a", "b", "c", "d" }, - mapping = { - startStopRecording = "q", - playMacro = "Q", - editMacro = "cq", - switchSlot = "", - deleteAllMacros = "dq", - yankMacro = "yq", - }, - }, - }, - { - "creativenull/dotfyle-metadata.nvim", - cmd = { "DotfyleGenerate", "DotfyleOpen" }, - }, - { - "willothy/flatten.nvim", - priority = 1001, - opts = { - window = { - open = "alternate", - }, - }, - }, - { - "wakatime/vim-wakatime", - event = { "VimEnter" }, - lazy = false, - }, - { - "mvllow/modes.nvim", - event = { "BufReadPost", "BufNewFile" }, - tag = "v0.2.0", - config = function() - require("modes").setup({ - - colors = { - visual = "#f5c359", - delete = "#c75c6a", - copy = "#78ccc5", - insert = "#c5739a", - }, - line_opacity = 0.15, - set_cursor = true, - set_cursorline = true, - set_number = true, - ignore_filetypes = { "NvimTree", "TelescopePrompt" }, - }) - end, - }, - { - "LunarVim/bigfile.nvim", - event = { "BufEnter", "WinEnter" }, - opts = { - -- Disables LSP/treesitter, etc for files above 5000 lives (even if they have really long lines) - pattern = function(bufnr, filesize_mib) - if filesize_mib >= 2 then - return true - end - -- you can't use `nvim_buf_line_count` because this runs on BufReadPre - local file_contents = vim.fn.readfile(vim.api.nvim_buf_get_name(bufnr)) - local file_length = #file_contents - if file_length > 5000 then - return true - end - - return false - end, - }, - }, - { - "m4xshen/hardtime.nvim", - config = function() - require("hardtime").setup({ enabled = true }) - end, - cmd = "Hardtime", - init = function() - vim.keymap.set("n", "ch", "HardtimeToggle", { desc = "Toggle Hardtime" }) - end, - }, -} diff --git a/lua/plugins/treesitter.lua b/lua/plugins/treesitter.lua index 930ed5a..6f7a9e1 100644 --- a/lua/plugins/treesitter.lua +++ b/lua/plugins/treesitter.lua @@ -37,6 +37,7 @@ return { 'scss', 'lua', 'python', + 'liquid', }, auto_install = true, playground = { @@ -74,7 +75,7 @@ return { { 'nvim-treesitter/nvim-treesitter-context', event = 'VeryLazy', - config = function(_, opts) + config = function() require('treesitter-context').setup({ mode = 'cursor', max_lines = 3 }) end, }, diff --git a/mason-lock.json b/mason-lock.json index 5531827..be5ff1e 100644 --- a/mason-lock.json +++ b/mason-lock.json @@ -10,6 +10,7 @@ "eslint-lsp": "4.10.0", "eslint_d": "14.0.3", "google-java-format": "v1.23.0", + "graphql-language-service-cli": "3.5.0", "hadolint": "v2.12.0", "html-lsp": "4.10.0", "isort": "5.13.2", @@ -21,7 +22,7 @@ "prettierd": "0.25.3", "pylint": "3.2.6", "pyright": "1.1.377", - "python-lsp-server": "1.11.0", + "python-lsp-server": "1.12.0", "selene": "0.27.1", "shfmt": "v3.9.0", "stylua": "v0.20.0",