mirror of
https://github.com/Baipyrus/nvim-config.git
synced 2025-02-21 13:21:45 +00:00
Merge remote-tracking branch 'modular/master'
This commit is contained in:
commit
c4c90f8138
11
.github/ISSUE_TEMPLATE/bug_report.md
vendored
11
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@ -9,6 +9,13 @@ assignees: ''
|
|||||||
|
|
||||||
<!-- Any bug report not following this template will be immediately closed. Thanks -->
|
<!-- Any bug report not following this template will be immediately closed. Thanks -->
|
||||||
|
|
||||||
|
## Before Reporting an Issue
|
||||||
|
- I have read the kickstart.nvim README.md.
|
||||||
|
- I have read the appropiate plugin's documentation.
|
||||||
|
- I have searched that this issue has not been reported before.
|
||||||
|
|
||||||
|
- [ ] **By checking this, I confirm that the above steps are completed. I understand leaving this unchecked will result in this report being closed immediately.**
|
||||||
|
|
||||||
## Describe the bug
|
## Describe the bug
|
||||||
<!-- A clear and concise description of what the bug is. -->
|
<!-- A clear and concise description of what the bug is. -->
|
||||||
|
|
||||||
@ -18,8 +25,8 @@ assignees: ''
|
|||||||
|
|
||||||
## Desktop
|
## Desktop
|
||||||
<!-- please complete the following information. -->
|
<!-- please complete the following information. -->
|
||||||
- OS:
|
- OS:
|
||||||
- Terminal:
|
- Terminal:
|
||||||
|
|
||||||
## Neovim Version
|
## Neovim Version
|
||||||
<!-- Output of running `:version` from inside of neovim. -->
|
<!-- Output of running `:version` from inside of neovim. -->
|
||||||
|
10
README.md
10
README.md
@ -18,7 +18,7 @@ If you are experiencing issues, please make sure you have the latest versions.
|
|||||||
External Requirements:
|
External Requirements:
|
||||||
- Basic utils: `git`, `make`, `unzip`, C Compiler (`gcc`)
|
- Basic utils: `git`, `make`, `unzip`, C Compiler (`gcc`)
|
||||||
- [ripgrep](https://github.com/BurntSushi/ripgrep#installation)
|
- [ripgrep](https://github.com/BurntSushi/ripgrep#installation)
|
||||||
- Clipboard tool (xclip/xsel/win32yank or other depending on platform)
|
- Clipboard tool (xclip/xsel/win32yank or other depending on the platform)
|
||||||
- A [Nerd Font](https://www.nerdfonts.com/): provides various icons
|
- A [Nerd Font](https://www.nerdfonts.com/): provides various icons
|
||||||
- Language utils: `rustup`, `npm`, `dotnet`, `python`, `golang`, `composer`
|
- Language utils: `rustup`, `npm`, `dotnet`, `python`, `golang`, `composer`
|
||||||
- Optionally, install [Alacritty](https://github.com/alacritty/alacritty#installation)
|
- Optionally, install [Alacritty](https://github.com/alacritty/alacritty#installation)
|
||||||
@ -78,13 +78,13 @@ nvim
|
|||||||
```
|
```
|
||||||
|
|
||||||
That's it! Lazy will install all the plugins you have. Use `:Lazy` to view
|
That's it! Lazy will install all the plugins you have. Use `:Lazy` to view
|
||||||
current plugin status. Hit `q` to close the window.
|
the current plugin status. Hit `q` to close the window.
|
||||||
|
|
||||||
### FAQ
|
### FAQ
|
||||||
|
|
||||||
* What should I do if I already have a pre-existing neovim configuration?
|
* What should I do if I already have a pre-existing Neovim configuration?
|
||||||
* You should back it up and then delete all associated files.
|
* You should back it up and then delete all associated files.
|
||||||
* This includes your existing init.lua and the neovim files in `~/.local`
|
* This includes your existing init.lua and the Neovim files in `~/.local`
|
||||||
which can be deleted with `rm -rf ~/.local/share/nvim/` or their
|
which can be deleted with `rm -rf ~/.local/share/nvim/` or their
|
||||||
windows counterparts in `AppData\Local\nvim-data`
|
windows counterparts in `AppData\Local\nvim-data`
|
||||||
* Can I keep my existing configuration in parallel to kickstart?
|
* Can I keep my existing configuration in parallel to kickstart?
|
||||||
@ -138,7 +138,7 @@ run in cmd as **admin**:
|
|||||||
winget install --accept-source-agreements chocolatey.chocolatey
|
winget install --accept-source-agreements chocolatey.chocolatey
|
||||||
```
|
```
|
||||||
|
|
||||||
2. install all requirements using choco, exit previous cmd and
|
2. install all requirements using choco, exit the previous cmd and
|
||||||
open a new one so that choco path is set, and run in cmd as **admin**:
|
open a new one so that choco path is set, and run in cmd as **admin**:
|
||||||
```
|
```
|
||||||
choco install -y neovim git ripgrep wget fd unzip gzip mingw make
|
choco install -y neovim git ripgrep wget fd unzip gzip mingw make
|
||||||
|
@ -44,10 +44,10 @@ return {
|
|||||||
-- visual mode
|
-- visual mode
|
||||||
map('v', '<leader>hs', function()
|
map('v', '<leader>hs', function()
|
||||||
gitsigns.stage_hunk { vim.fn.line '.', vim.fn.line 'v' }
|
gitsigns.stage_hunk { vim.fn.line '.', vim.fn.line 'v' }
|
||||||
end, { desc = 'stage git hunk' })
|
end, { desc = 'git [s]tage hunk' })
|
||||||
map('v', '<leader>hr', function()
|
map('v', '<leader>hr', function()
|
||||||
gitsigns.reset_hunk { vim.fn.line '.', vim.fn.line 'v' }
|
gitsigns.reset_hunk { vim.fn.line '.', vim.fn.line 'v' }
|
||||||
end, { desc = 'reset git hunk' })
|
end, { desc = 'git [r]eset hunk' })
|
||||||
-- normal mode
|
-- normal mode
|
||||||
map('n', '<leader>hs', gitsigns.stage_hunk, { desc = 'git [s]tage hunk' })
|
map('n', '<leader>hs', gitsigns.stage_hunk, { desc = 'git [s]tage hunk' })
|
||||||
map('n', '<leader>hr', gitsigns.reset_hunk, { desc = 'git [r]eset hunk' })
|
map('n', '<leader>hr', gitsigns.reset_hunk, { desc = 'git [r]eset hunk' })
|
||||||
|
@ -18,7 +18,12 @@ return {
|
|||||||
vim.api.nvim_create_autocmd({ 'BufEnter', 'BufWritePost', 'InsertLeave' }, {
|
vim.api.nvim_create_autocmd({ 'BufEnter', 'BufWritePost', 'InsertLeave' }, {
|
||||||
group = lint_augroup,
|
group = lint_augroup,
|
||||||
callback = function()
|
callback = function()
|
||||||
lint.try_lint(nil, { ignore_errors = true })
|
-- Only run the linter in buffers that you can modify in order to
|
||||||
|
-- avoid superfluous noise, notably within the handy LSP pop-ups that
|
||||||
|
-- describe the hovered symbol using Markdown.
|
||||||
|
if vim.opt_local.modifiable:get() then
|
||||||
|
lint.try_lint(nil, { ignore_errors = true })
|
||||||
|
end
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
end,
|
end,
|
||||||
|
@ -18,7 +18,9 @@ return {
|
|||||||
'neovim/nvim-lspconfig',
|
'neovim/nvim-lspconfig',
|
||||||
dependencies = {
|
dependencies = {
|
||||||
-- Automatically install LSPs and related tools to stdpath for Neovim
|
-- Automatically install LSPs and related tools to stdpath for Neovim
|
||||||
{ 'williamboman/mason.nvim', config = true }, -- NOTE: Must be loaded before dependants
|
-- Mason must be loaded before its dependents so we need to set it up here.
|
||||||
|
-- NOTE: `opts = {}` is the same as calling `require('mason').setup({})`
|
||||||
|
{ 'williamboman/mason.nvim', opts = {} },
|
||||||
'williamboman/mason-lspconfig.nvim',
|
'williamboman/mason-lspconfig.nvim',
|
||||||
'WhoIsSethDaniel/mason-tool-installer.nvim',
|
'WhoIsSethDaniel/mason-tool-installer.nvim',
|
||||||
{ 'mfussenegger/nvim-jdtls', ft = 'java' },
|
{ 'mfussenegger/nvim-jdtls', ft = 'java' },
|
||||||
@ -165,6 +167,16 @@ return {
|
|||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
-- Change diagnostic symbols in the sign column (gutter)
|
||||||
|
-- if vim.g.have_nerd_font then
|
||||||
|
-- local signs = { ERROR = '', WARN = '', INFO = '', HINT = '' }
|
||||||
|
-- local diagnostic_signs = {}
|
||||||
|
-- for type, icon in pairs(signs) do
|
||||||
|
-- diagnostic_signs[vim.diagnostic.severity[type]] = icon
|
||||||
|
-- end
|
||||||
|
-- vim.diagnostic.config { signs = { text = diagnostic_signs } }
|
||||||
|
-- end
|
||||||
|
|
||||||
-- LSP servers and clients are able to communicate to each other what features they support.
|
-- LSP servers and clients are able to communicate to each other what features they support.
|
||||||
-- By default, Neovim doesn't support everything that is in the LSP specification.
|
-- By default, Neovim doesn't support everything that is in the LSP specification.
|
||||||
-- When you add nvim-cmp, luasnip, etc. Neovim now has *more* capabilities.
|
-- When you add nvim-cmp, luasnip, etc. Neovim now has *more* capabilities.
|
||||||
@ -203,8 +215,8 @@ return {
|
|||||||
-- https://github.com/pmizio/typescript-tools.nvim
|
-- https://github.com/pmizio/typescript-tools.nvim
|
||||||
|
|
||||||
lua_ls = {
|
lua_ls = {
|
||||||
-- cmd = {...},
|
-- cmd = { ... },
|
||||||
-- filetypes = { ...},
|
-- filetypes = { ... },
|
||||||
-- capabilities = {},
|
-- capabilities = {},
|
||||||
settings = {
|
settings = {
|
||||||
Lua = {
|
Lua = {
|
||||||
@ -298,13 +310,16 @@ return {
|
|||||||
end
|
end
|
||||||
|
|
||||||
-- Ensure the servers and tools above are installed
|
-- Ensure the servers and tools above are installed
|
||||||
-- To check the current status of installed tools and/or manually install
|
--
|
||||||
-- other tools, you can run
|
-- To check the current status of installed tools and/or manually install
|
||||||
|
-- other tools, you can run
|
||||||
-- :Mason
|
-- :Mason
|
||||||
--
|
--
|
||||||
-- You can press `g?` for help in this menu.
|
-- You can press `g?` for help in this menu.
|
||||||
require('mason').setup()
|
--
|
||||||
|
-- `mason` had to be setup earlier: to configure its options see the
|
||||||
|
-- `dependencies` table for `nvim-lspconfig` above.
|
||||||
|
--
|
||||||
-- You can add other tools here that you want Mason to install
|
-- You can add other tools here that you want Mason to install
|
||||||
-- for you, so that they are available from within Neovim.
|
-- for you, so that they are available from within Neovim.
|
||||||
local ensure_installed = vim.tbl_keys(servers or {})
|
local ensure_installed = vim.tbl_keys(servers or {})
|
||||||
|
@ -9,20 +9,22 @@
|
|||||||
-- which loads which-key before all the UI elements are loaded. Events can be
|
-- which loads which-key before all the UI elements are loaded. Events can be
|
||||||
-- normal autocommands events (`:help autocmd-events`).
|
-- normal autocommands events (`:help autocmd-events`).
|
||||||
--
|
--
|
||||||
-- Then, because we use the `config` key, the configuration only runs
|
-- Then, because we use the `opts` key (recommended), the configuration runs
|
||||||
-- after the plugin has been loaded:
|
-- after the plugin has been loaded as `require(MODULE).setup(opts)`.
|
||||||
-- config = function() ... end
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
{ -- Useful plugin to show you pending keybinds.
|
{ -- Useful plugin to show you pending keybinds.
|
||||||
'folke/which-key.nvim',
|
'folke/which-key.nvim',
|
||||||
event = 'VimEnter', -- Sets the loading event to 'VimEnter'
|
event = 'VimEnter', -- Sets the loading event to 'VimEnter'
|
||||||
opts = {
|
opts = {
|
||||||
|
-- delay between pressing a key and opening which-key (milliseconds)
|
||||||
|
-- this setting is independent of vim.opt.timeoutlen
|
||||||
|
delay = 0,
|
||||||
icons = {
|
icons = {
|
||||||
-- set icon mappings to true if you have a Nerd Font
|
-- set icon mappings to true if you have a Nerd Font
|
||||||
mappings = vim.g.have_nerd_font,
|
mappings = vim.g.have_nerd_font,
|
||||||
-- If you are using a Nerd Font: set icons.keys to an empty table which will use the
|
-- If you are using a Nerd Font: set icons.keys to an empty table which will use the
|
||||||
-- default whick-key.nvim defined Nerd Font icons, otherwise define a string table
|
-- default which-key.nvim defined Nerd Font icons, otherwise define a string table
|
||||||
keys = vim.g.have_nerd_font and {} or {
|
keys = vim.g.have_nerd_font and {} or {
|
||||||
Up = '<Up> ',
|
Up = '<Up> ',
|
||||||
Down = '<Down> ',
|
Down = '<Down> ',
|
||||||
|
@ -47,7 +47,7 @@ require('lazy').setup({
|
|||||||
|
|
||||||
require 'kickstart/plugins/treesitter',
|
require 'kickstart/plugins/treesitter',
|
||||||
|
|
||||||
-- The following two comments only work if you have downloaded the kickstart repo, not just copy pasted the
|
-- The following comments only work if you have downloaded the kickstart repo, not just copy pasted the
|
||||||
-- init.lua. If you want these files, they are in the repository, so you can just download them and
|
-- init.lua. If you want these files, they are in the repository, so you can just download them and
|
||||||
-- place them in the correct locations.
|
-- place them in the correct locations.
|
||||||
|
|
||||||
@ -63,8 +63,12 @@ require('lazy').setup({
|
|||||||
-- This is the easiest way to modularize your config.
|
-- This is the easiest way to modularize your config.
|
||||||
--
|
--
|
||||||
-- Uncomment the following line and add your plugins to `lua/custom/plugins/*.lua` to get going.
|
-- Uncomment the following line and add your plugins to `lua/custom/plugins/*.lua` to get going.
|
||||||
-- For additional information, see `:help lazy.nvim-lazy.nvim-structuring-your-plugins`
|
|
||||||
{ import = 'custom.plugins' },
|
{ import = 'custom.plugins' },
|
||||||
|
|
||||||
|
-- For additional information with loading, sourcing and examples see `:help lazy.nvim-🔌-plugin-spec`
|
||||||
|
-- Or use telescope!
|
||||||
|
-- In normal mode type `<space>sh` then write `lazy.nvim-plugin`
|
||||||
|
-- you can continue same window with `<space>sr` which resumes last telescope search
|
||||||
}, {
|
}, {
|
||||||
ui = {
|
ui = {
|
||||||
-- If you are using a Nerd Font: set icons to an empty table which will use the
|
-- If you are using a Nerd Font: set icons to an empty table which will use the
|
||||||
|
@ -62,7 +62,6 @@ vim.opt.signcolumn = 'yes'
|
|||||||
vim.opt.updatetime = 250
|
vim.opt.updatetime = 250
|
||||||
|
|
||||||
-- Decrease mapped sequence wait time
|
-- Decrease mapped sequence wait time
|
||||||
-- Displays which-key popup sooner
|
|
||||||
vim.opt.timeoutlen = 300
|
vim.opt.timeoutlen = 300
|
||||||
|
|
||||||
-- Configure how new splits should be opened
|
-- Configure how new splits should be opened
|
||||||
|
Loading…
Reference in New Issue
Block a user