Merge branch 'master' of github.com:nvim-lua/kickstart.nvim into new-main
This commit is contained in:
		
						commit
						b54b0a6b68
					
				|  | @ -46,8 +46,8 @@ Neovim's configurations are located under the following paths, depending on your | |||
| | OS | PATH | | ||||
| | :- | :--- | | ||||
| | Linux, MacOS | `$XDG_CONFIG_HOME/nvim`, `~/.config/nvim` | | ||||
| | Windows (cmd)| `%userprofile%\AppData\Local\nvim\` | | ||||
| | Windows (powershell)| `$env:USERPROFILE\AppData\Local\nvim\` | | ||||
| | Windows (cmd)| `%localappdata%\nvim\` | | ||||
| | Windows (powershell)| `$env:LOCALAPPDATA\nvim\` | | ||||
| 
 | ||||
| #### Recommended Step | ||||
| 
 | ||||
|  | @ -77,13 +77,13 @@ git clone https://github.com/nvim-lua/kickstart.nvim.git "${XDG_CONFIG_HOME:-$HO | |||
| If you're using `cmd.exe`: | ||||
| 
 | ||||
| ``` | ||||
| git clone https://github.com/nvim-lua/kickstart.nvim.git %userprofile%\AppData\Local\nvim\ | ||||
| git clone https://github.com/nvim-lua/kickstart.nvim.git %localappdata%\nvim\ | ||||
| ``` | ||||
| 
 | ||||
| If you're using `powershell.exe` | ||||
| 
 | ||||
| ``` | ||||
| git clone https://github.com/nvim-lua/kickstart.nvim.git $env:USERPROFILE\AppData\Local\nvim\ | ||||
| git clone https://github.com/nvim-lua/kickstart.nvim.git $env:LOCALAPPDATA\nvim\ | ||||
| ``` | ||||
| 
 | ||||
| </details> | ||||
|  |  | |||
							
								
								
									
										70
									
								
								init.lua
								
								
								
								
							
							
						
						
									
										70
									
								
								init.lua
								
								
								
								
							|  | @ -111,9 +111,12 @@ vim.opt.mouse = 'a' | |||
| vim.opt.showmode = false | ||||
| 
 | ||||
| -- Sync clipboard between OS and Neovim. | ||||
| --  Schedule the setting after `UiEnter` because it can increase startup-time. | ||||
| --  Remove this option if you want your OS clipboard to remain independent. | ||||
| --  See `:help 'clipboard'` | ||||
| -- vim.opt.clipboard = 'unnamedplus' | ||||
| vim.schedule(function() | ||||
|   vim.opt.clipboard = 'unnamedplus' | ||||
| end) | ||||
| 
 | ||||
| -- Enable break indent | ||||
| vim.opt.breakindent = true | ||||
|  | @ -157,14 +160,11 @@ vim.opt.scrolloff = 10 | |||
| -- [[ Basic Keymaps ]] | ||||
| --  See `:help vim.keymap.set()` | ||||
| 
 | ||||
| -- Set highlight on search, but clear on pressing <Esc> in normal mode | ||||
| vim.opt.hlsearch = true | ||||
| -- Clear highlights on search when pressing <Esc> in normal mode | ||||
| --  See `:help hlsearch` | ||||
| vim.keymap.set('n', '<Esc>', '<cmd>nohlsearch<CR>') | ||||
| 
 | ||||
| -- Diagnostic keymaps | ||||
| vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, { desc = 'Go to previous [D]iagnostic message' }) | ||||
| vim.keymap.set('n', ']d', vim.diagnostic.goto_next, { desc = 'Go to next [D]iagnostic message' }) | ||||
| vim.keymap.set('n', '<leader>e', vim.diagnostic.open_float, { desc = 'Show diagnostic [E]rror messages' }) | ||||
| vim.keymap.set('n', '<leader>q', vim.diagnostic.setloclist, { desc = 'Open diagnostic [Q]uickfix list' }) | ||||
| 
 | ||||
| -- Exit terminal mode in the builtin terminal with a shortcut that is a bit easier | ||||
|  | @ -207,7 +207,7 @@ vim.api.nvim_create_autocmd('TextYankPost', { | |||
| -- [[ Install `lazy.nvim` plugin manager ]] | ||||
| --    See `:help lazy.nvim.txt` or https://github.com/folke/lazy.nvim for more info | ||||
| local lazypath = vim.fn.stdpath 'data' .. '/lazy/lazy.nvim' | ||||
| if not vim.loop.fs_stat(lazypath) then | ||||
| if not vim.uv.fs_stat(lazypath) then | ||||
|   local lazyrepo = 'https://github.com/folke/lazy.nvim.git' | ||||
|   local out = vim.fn.system { 'git', 'clone', '--filter=blob:none', '--branch=stable', lazyrepo, lazypath } | ||||
|   if vim.v.shell_error ~= 0 then | ||||
|  | @ -237,11 +237,6 @@ require('lazy').setup({ | |||
|   -- | ||||
|   -- Use `opts = {}` to force a plugin to be loaded. | ||||
|   -- | ||||
|   --  This is equivalent to: | ||||
|   --    require('Comment').setup({}) | ||||
| 
 | ||||
|   -- "gc" to comment visual regions/lines | ||||
|   { 'numToStr/Comment.nvim', opts = {} }, | ||||
| 
 | ||||
|   -- Here is a more advanced example where we pass configuration | ||||
|   -- options to `gitsigns.nvim`. This is equivalent to the following Lua: | ||||
|  | @ -476,7 +471,22 @@ require('lazy').setup({ | |||
|     end, | ||||
|   }, | ||||
| 
 | ||||
|   { -- LSP Configuration & Plugins | ||||
|   -- LSP Plugins | ||||
|   { | ||||
|     -- `lazydev` configures Lua LSP for your Neovim config, runtime and plugins | ||||
|     -- used for completion, annotations and signatures of Neovim apis | ||||
|     'folke/lazydev.nvim', | ||||
|     ft = 'lua', | ||||
|     opts = { | ||||
|       library = { | ||||
|         -- Load luvit types when the `vim.uv` word is found | ||||
|         { path = 'luvit-meta/library', words = { 'vim%.uv' } }, | ||||
|       }, | ||||
|     }, | ||||
|   }, | ||||
|   { 'Bilal2453/luvit-meta', lazy = true }, | ||||
|   { | ||||
|     -- Main LSP Configuration | ||||
|     'neovim/nvim-lspconfig', | ||||
|     dependencies = { | ||||
|       -- Automatically install LSPs and related tools to stdpath for Neovim | ||||
|  | @ -488,9 +498,8 @@ require('lazy').setup({ | |||
|       -- NOTE: `opts = {}` is the same as calling `require('fidget').setup({})` | ||||
|       { 'j-hui/fidget.nvim', opts = {} }, | ||||
| 
 | ||||
|       -- `neodev` configures Lua LSP for your Neovim config, runtime and plugins | ||||
|       -- used for completion, annotations and signatures of Neovim apis | ||||
|       { 'folke/neodev.nvim', opts = {} }, | ||||
|       -- Allows extra capabilities provided by nvim-cmp | ||||
|       'hrsh7th/cmp-nvim-lsp', | ||||
|     }, | ||||
|     config = function() | ||||
|       -- Brief aside: **What is LSP?** | ||||
|  | @ -567,10 +576,6 @@ require('lazy').setup({ | |||
|           -- or a suggestion from your LSP for this to activate. | ||||
|           map('<leader>ca', vim.lsp.buf.code_action, '[C]ode [A]ction') | ||||
| 
 | ||||
|           -- Opens a popup that displays documentation about the word under your cursor | ||||
|           --  See `:help K` for why this keymap. | ||||
|           map('K', vim.lsp.buf.hover, 'Hover Documentation') | ||||
| 
 | ||||
|           -- WARN: This is not Goto Definition, this is Goto Declaration. | ||||
|           --  For example, in C this would take you to the header. | ||||
|           map('gD', vim.lsp.buf.declaration, '[G]oto [D]eclaration') | ||||
|  | @ -581,7 +586,7 @@ require('lazy').setup({ | |||
|           -- | ||||
|           -- When you move your cursor, the highlights will be cleared (the second autocommand). | ||||
|           local client = vim.lsp.get_client_by_id(event.data.client_id) | ||||
|           if client and client.server_capabilities.documentHighlightProvider then | ||||
|           if client and client.supports_method(vim.lsp.protocol.Methods.textDocument_documentHighlight) then | ||||
|             local highlight_augroup = vim.api.nvim_create_augroup('kickstart-lsp-highlight', { clear = false }) | ||||
|             vim.api.nvim_create_autocmd({ 'CursorHold', 'CursorHoldI' }, { | ||||
|               buffer = event.buf, | ||||
|  | @ -604,13 +609,13 @@ require('lazy').setup({ | |||
|             }) | ||||
|           end | ||||
| 
 | ||||
|           -- The following autocommand is used to enable inlay hints in your | ||||
|           -- The following code creates a keymap to toggle inlay hints in your | ||||
|           -- code, if the language server you are using supports them | ||||
|           -- | ||||
|           -- This may be unwanted, since they displace some of your code | ||||
|           if client and client.server_capabilities.inlayHintProvider and vim.lsp.inlay_hint then | ||||
|           if client and client.supports_method(vim.lsp.protocol.Methods.textDocument_inlayHint) then | ||||
|             map('<leader>th', function() | ||||
|               vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled()) | ||||
|               vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled { bufnr = event.buf }) | ||||
|             end, '[T]oggle Inlay [H]ints') | ||||
|           end | ||||
|         end, | ||||
|  | @ -695,7 +700,8 @@ require('lazy').setup({ | |||
| 
 | ||||
|   { -- Autoformat | ||||
|     'stevearc/conform.nvim', | ||||
|     lazy = false, | ||||
|     event = { 'BufWritePre' }, | ||||
|     cmd = { 'ConformInfo' }, | ||||
|     keys = { | ||||
|       { | ||||
|         '<leader>f', | ||||
|  | @ -723,9 +729,8 @@ require('lazy').setup({ | |||
|         -- Conform can also run multiple formatters sequentially | ||||
|         -- python = { "isort", "black" }, | ||||
|         -- | ||||
|         -- You can use a sub-list to tell conform to run *until* a formatter | ||||
|         -- is found. | ||||
|         -- javascript = { { "prettierd", "prettier" } }, | ||||
|         -- You can use 'stop_after_first' to run the first available formatter from the list | ||||
|         -- javascript = { "prettierd", "prettier", stop_after_first = true }, | ||||
|       }, | ||||
|     }, | ||||
|   }, | ||||
|  | @ -833,6 +838,11 @@ require('lazy').setup({ | |||
|           --    https://github.com/L3MON4D3/LuaSnip?tab=readme-ov-file#keymaps | ||||
|         }, | ||||
|         sources = { | ||||
|           { | ||||
|             name = 'lazydev', | ||||
|             -- set group index to 0 to skip loading LuaLS completions as lazydev recommends it | ||||
|             group_index = 0, | ||||
|           }, | ||||
|           { name = 'nvim_lsp' }, | ||||
|           { name = 'luasnip' }, | ||||
|           { name = 'path' }, | ||||
|  | @ -869,7 +879,7 @@ require('lazy').setup({ | |||
|       -- | ||||
|       -- Examples: | ||||
|       --  - va)  - [V]isually select [A]round [)]paren | ||||
|       --  - yinq - [Y]ank [I]nside [N]ext [']quote | ||||
|       --  - yinq - [Y]ank [I]nside [N]ext [Q]uote | ||||
|       --  - ci'  - [C]hange [I]nside [']quote | ||||
|       require('mini.ai').setup { n_lines = 500 } | ||||
| 
 | ||||
|  | @ -941,8 +951,6 @@ require('lazy').setup({ | |||
|     config = function(_, opts) | ||||
|       -- [[ Configure Treesitter ]] See `:help nvim-treesitter` | ||||
| 
 | ||||
|       -- Prefer git instead of curl in order to improve connectivity in some environments | ||||
|       require('nvim-treesitter.install').prefer_git = true | ||||
|       ---@diagnostic disable-next-line: missing-fields | ||||
|       require('nvim-treesitter.configs').setup(opts) | ||||
| 
 | ||||
|  |  | |||
|  | @ -6,13 +6,13 @@ | |||
| --]] | ||||
| 
 | ||||
| local check_version = function() | ||||
|   local verstr = string.format('%s.%s.%s', vim.version().major, vim.version().minor, vim.version().patch) | ||||
|   if not vim.version.cmp then | ||||
|   local verstr = tostring(vim.version()) | ||||
|   if not vim.version.ge then | ||||
|     vim.health.error(string.format("Neovim out of date: '%s'. Upgrade to latest stable or nightly", verstr)) | ||||
|     return | ||||
|   end | ||||
| 
 | ||||
|   if vim.version.cmp(vim.version(), { 0, 9, 4 }) >= 0 then | ||||
|   if vim.version.ge(vim.version(), '0.10-dev') then | ||||
|     vim.health.ok(string.format("Neovim version is: '%s'", verstr)) | ||||
|   else | ||||
|     vim.health.error(string.format("Neovim out of date: '%s'. Upgrade to latest stable or nightly", verstr)) | ||||
|  |  | |||
|  | @ -24,6 +24,28 @@ return { | |||
|     -- Add your own debuggers here | ||||
|     'leoluz/nvim-dap-go', | ||||
|   }, | ||||
|   keys = function(_, keys) | ||||
|     local dap = require 'dap' | ||||
|     local dapui = require 'dapui' | ||||
|     return { | ||||
|       -- Basic debugging keymaps, feel free to change to your liking! | ||||
|       { '<F5>', dap.continue, desc = 'Debug: Start/Continue' }, | ||||
|       { '<F1>', dap.step_into, desc = 'Debug: Step Into' }, | ||||
|       { '<F2>', dap.step_over, desc = 'Debug: Step Over' }, | ||||
|       { '<F3>', dap.step_out, desc = 'Debug: Step Out' }, | ||||
|       { '<leader>b', dap.toggle_breakpoint, desc = 'Debug: Toggle Breakpoint' }, | ||||
|       { | ||||
|         '<leader>B', | ||||
|         function() | ||||
|           dap.set_breakpoint(vim.fn.input 'Breakpoint condition: ') | ||||
|         end, | ||||
|         desc = 'Debug: Set Breakpoint', | ||||
|       }, | ||||
|       -- Toggle to see last session result. Without this, you can't see session output in case of unhandled exception. | ||||
|       { '<F7>', dapui.toggle, desc = 'Debug: See last session result.' }, | ||||
|       unpack(keys), | ||||
|     } | ||||
|   end, | ||||
|   config = function() | ||||
|     local dap = require 'dap' | ||||
|     local dapui = require 'dapui' | ||||
|  | @ -45,16 +67,6 @@ return { | |||
|       }, | ||||
|     } | ||||
| 
 | ||||
|     -- Basic debugging keymaps, feel free to change to your liking! | ||||
|     vim.keymap.set('n', '<F5>', dap.continue, { desc = 'Debug: Start/Continue' }) | ||||
|     vim.keymap.set('n', '<F1>', dap.step_into, { desc = 'Debug: Step Into' }) | ||||
|     vim.keymap.set('n', '<F2>', dap.step_over, { desc = 'Debug: Step Over' }) | ||||
|     vim.keymap.set('n', '<F3>', dap.step_out, { desc = 'Debug: Step Out' }) | ||||
|     vim.keymap.set('n', '<leader>b', dap.toggle_breakpoint, { desc = 'Debug: Toggle Breakpoint' }) | ||||
|     vim.keymap.set('n', '<leader>B', function() | ||||
|       dap.set_breakpoint(vim.fn.input 'Breakpoint condition: ') | ||||
|     end, { desc = 'Debug: Set Breakpoint' }) | ||||
| 
 | ||||
|     -- Dap UI setup | ||||
|     -- For more information, see |:help nvim-dap-ui| | ||||
|     dapui.setup { | ||||
|  | @ -77,9 +89,6 @@ return { | |||
|       }, | ||||
|     } | ||||
| 
 | ||||
|     -- Toggle to see last session result. Without this, you can't see session output in case of unhandled exception. | ||||
|     vim.keymap.set('n', '<F7>', dapui.toggle, { desc = 'Debug: See last session result.' }) | ||||
| 
 | ||||
|     dap.listeners.after.event_initialized['dapui_config'] = dapui.open | ||||
|     dap.listeners.before.event_terminated['dapui_config'] = dapui.close | ||||
|     dap.listeners.before.event_exited['dapui_config'] = dapui.close | ||||
|  |  | |||
|  | @ -47,7 +47,7 @@ return { | |||
|       vim.api.nvim_create_autocmd({ 'BufEnter', 'BufWritePost', 'InsertLeave' }, { | ||||
|         group = lint_augroup, | ||||
|         callback = function() | ||||
|           require('lint').try_lint() | ||||
|           lint.try_lint() | ||||
|         end, | ||||
|       }) | ||||
|     end, | ||||
|  |  | |||
|  | @ -11,7 +11,7 @@ return { | |||
|   }, | ||||
|   cmd = 'Neotree', | ||||
|   keys = { | ||||
|     { '\\', ':Neotree reveal<CR>', { desc = 'NeoTree reveal' } }, | ||||
|     { '\\', ':Neotree reveal<CR>', desc = 'NeoTree reveal' }, | ||||
|   }, | ||||
|   opts = { | ||||
|     filesystem = { | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue