From 7ba7c63acceb4fd8ef86b9eff0bdb6f9ba0424ab Mon Sep 17 00:00:00 2001 From: Test User Date: Fri, 23 May 2025 05:27:11 +0300 Subject: [PATCH 01/10] setup fold, install rust, enable number, setup nerd fonts, lemonade projects shortcut --- init.lua | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/init.lua b/init.lua index b98ffc6198a..1a669df428a 100644 --- a/init.lua +++ b/init.lua @@ -90,8 +90,12 @@ P.S. You can delete this when you're done too. It's your config now! :) vim.g.mapleader = ' ' vim.g.maplocalleader = ' ' +vim.wo.foldmethod = 'expr' +vim.wo.foldexpr = 'v:lua.vim.treesitter.foldexpr()' +vim.wo.foldenable = false + -- Set to true if you have a Nerd Font installed and selected in the terminal -vim.g.have_nerd_font = false +vim.g.have_nerd_font = true -- [[ Setting options ]] -- See `:help vim.o` @@ -99,10 +103,10 @@ vim.g.have_nerd_font = false -- For more options, you can see `:help option-list` -- Make line numbers default -vim.o.number = true +-- vim.o.number = true -- You can also add relative line numbers, to help with jumping. -- Experiment for yourself to see if you like it! --- vim.o.relativenumber = true +vim.o.relativenumber = true -- Enable mouse mode, can be useful for resizing splits for example! vim.o.mouse = 'a' @@ -459,6 +463,11 @@ require('lazy').setup({ vim.keymap.set('n', 'sn', function() builtin.find_files { cwd = vim.fn.stdpath 'config' } end, { desc = '[S]earch [N]eovim files' }) + + -- TODO: open project, and move to a dedicated folder with all Lemonade related setups + vim.keymap.set('n', 'sl', function() + builtin.find_files { cwd = '~/Lemonade', find_command = { 'fd', '--type', 'd', '--max-depth', '1' } } + end, { desc = '[S]earch [L]emonade projects' }) end, }, @@ -674,7 +683,7 @@ require('lazy').setup({ -- clangd = {}, -- gopls = {}, -- pyright = {}, - -- rust_analyzer = {}, + rust_analyzer = {}, -- ... etc. See `:help lspconfig-all` for a list of all the pre-configured LSPs -- -- Some languages (like typescript) have entire language plugins that can be useful: @@ -944,7 +953,7 @@ require('lazy').setup({ main = 'nvim-treesitter.configs', -- Sets main module to use for opts -- [[ Configure Treesitter ]] See `:help nvim-treesitter` opts = { - ensure_installed = { 'bash', 'c', 'diff', 'html', 'lua', 'luadoc', 'markdown', 'markdown_inline', 'query', 'vim', 'vimdoc' }, + ensure_installed = { 'bash', 'c', 'diff', 'html', 'lua', 'luadoc', 'markdown', 'markdown_inline', 'query', 'vim', 'vimdoc', 'rust', 'toml' }, -- Autoinstall languages that are not installed auto_install = true, highlight = { @@ -976,7 +985,7 @@ require('lazy').setup({ -- require 'kickstart.plugins.debug', -- require 'kickstart.plugins.indent_line', -- require 'kickstart.plugins.lint', - -- require 'kickstart.plugins.autopairs', + require 'kickstart.plugins.autopairs', -- require 'kickstart.plugins.neo-tree', -- require 'kickstart.plugins.gitsigns', -- adds gitsigns recommend keymaps From 0499cbeaac0844190604fd2a2fce4588cf7b3d16 Mon Sep 17 00:00:00 2001 From: Test User Date: Sat, 28 Jun 2025 10:09:14 +0300 Subject: [PATCH 02/10] chore: enable custom plugins, add nginx treesiter --- init.lua | 10 +++------- lua/custom/plugins/folding.lua | 11 +++++++++++ lua/custom/plugins/wakatime.lua | 6 ++++++ 3 files changed, 20 insertions(+), 7 deletions(-) create mode 100644 lua/custom/plugins/folding.lua create mode 100644 lua/custom/plugins/wakatime.lua diff --git a/init.lua b/init.lua index 1a669df428a..64d7cf70a4a 100644 --- a/init.lua +++ b/init.lua @@ -90,10 +90,6 @@ P.S. You can delete this when you're done too. It's your config now! :) vim.g.mapleader = ' ' vim.g.maplocalleader = ' ' -vim.wo.foldmethod = 'expr' -vim.wo.foldexpr = 'v:lua.vim.treesitter.foldexpr()' -vim.wo.foldenable = false - -- Set to true if you have a Nerd Font installed and selected in the terminal vim.g.have_nerd_font = true @@ -953,7 +949,7 @@ require('lazy').setup({ main = 'nvim-treesitter.configs', -- Sets main module to use for opts -- [[ Configure Treesitter ]] See `:help nvim-treesitter` opts = { - ensure_installed = { 'bash', 'c', 'diff', 'html', 'lua', 'luadoc', 'markdown', 'markdown_inline', 'query', 'vim', 'vimdoc', 'rust', 'toml' }, + ensure_installed = { 'bash', 'c', 'diff', 'html', 'lua', 'luadoc', 'markdown', 'markdown_inline', 'query', 'vim', 'vimdoc', 'rust', 'toml', 'nginx' }, -- Autoinstall languages that are not installed auto_install = true, highlight = { @@ -986,14 +982,14 @@ require('lazy').setup({ -- require 'kickstart.plugins.indent_line', -- require 'kickstart.plugins.lint', require 'kickstart.plugins.autopairs', - -- require 'kickstart.plugins.neo-tree', + require 'kickstart.plugins.neo-tree', -- require 'kickstart.plugins.gitsigns', -- adds gitsigns recommend keymaps -- NOTE: The import below can automatically add your own plugins, configuration, etc from `lua/custom/plugins/*.lua` -- 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. - -- { import = 'custom.plugins' }, + { import = 'custom.plugins' }, -- -- For additional information with loading, sourcing and examples see `:help lazy.nvim-🔌-plugin-spec` -- Or use telescope! diff --git a/lua/custom/plugins/folding.lua b/lua/custom/plugins/folding.lua new file mode 100644 index 00000000000..91e1b3de26a --- /dev/null +++ b/lua/custom/plugins/folding.lua @@ -0,0 +1,11 @@ +return { + { + 'nvim-treesitter/nvim-treesitter', + init = function() + vim.opt.foldmethod = 'expr' + vim.opt.foldexpr = 'v:lua.vim.treesitter.foldexpr()' + vim.opt.foldenable = false + end, + }, +} + diff --git a/lua/custom/plugins/wakatime.lua b/lua/custom/plugins/wakatime.lua new file mode 100644 index 00000000000..f316ef263a6 --- /dev/null +++ b/lua/custom/plugins/wakatime.lua @@ -0,0 +1,6 @@ +return { + { + 'wakatime/vim-wakatime', + lazy = false, + }, +} From 4db89b3e7c79fae7d37fb1cde5ba245956826fe7 Mon Sep 17 00:00:00 2001 From: Test User Date: Sat, 5 Jul 2025 22:29:27 +0300 Subject: [PATCH 03/10] feat: git blame --- lua/custom/plugins/git_blame.lua | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 lua/custom/plugins/git_blame.lua diff --git a/lua/custom/plugins/git_blame.lua b/lua/custom/plugins/git_blame.lua new file mode 100644 index 00000000000..97a16202f23 --- /dev/null +++ b/lua/custom/plugins/git_blame.lua @@ -0,0 +1,17 @@ +return { + 'f-person/git-blame.nvim', + -- load the plugin at startup + event = 'VeryLazy', + -- Because of the keys part, you will be lazy loading this plugin. + -- The plugin will only load once one of the keys is used. + -- If you want to load the plugin at startup, add something like event = "VeryLazy", + -- or lazy = false. One of both options will work. + opts = { + -- your configuration comes here + -- for example + enabled = true, -- if you want to enable the plugin + message_template = ' • • • <>', -- template for the blame message, check the Message template section for more options + date_format = '%m-%d-%Y %H:%M:%S', -- template for the date, check Date format section for more options + virtual_text_column = 1, -- virtual text start column, check Start virtual text at column section for more options + }, +} From 52e4271ea9b2ac4698683e5d5a54f9a0b7d8c893 Mon Sep 17 00:00:00 2001 From: Test User Date: Fri, 25 Jul 2025 13:44:26 +0300 Subject: [PATCH 04/10] move theme configuration to a separate colors plugins --- init.lua | 22 ----------------- lua/custom/plugins/colors.lua | 46 +++++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+), 22 deletions(-) create mode 100644 lua/custom/plugins/colors.lua diff --git a/init.lua b/init.lua index 64d7cf70a4a..89eeb0c4fdd 100644 --- a/init.lua +++ b/init.lua @@ -881,28 +881,6 @@ require('lazy').setup({ }, }, - { -- You can easily change to a different colorscheme. - -- Change the name of the colorscheme plugin below, and then - -- change the command in the config to whatever the name of that colorscheme is. - -- - -- If you want to see what colorschemes are already installed, you can use `:Telescope colorscheme`. - 'folke/tokyonight.nvim', - priority = 1000, -- Make sure to load this before all the other start plugins. - config = function() - ---@diagnostic disable-next-line: missing-fields - require('tokyonight').setup { - styles = { - comments = { italic = false }, -- Disable italics in comments - }, - } - - -- Load the colorscheme here. - -- Like many other themes, this one has different styles, and you could load - -- any other, such as 'tokyonight-storm', 'tokyonight-moon', or 'tokyonight-day'. - vim.cmd.colorscheme 'tokyonight-night' - end, - }, - -- Highlight todo, notes, etc in comments { 'folke/todo-comments.nvim', event = 'VimEnter', dependencies = { 'nvim-lua/plenary.nvim' }, opts = { signs = false } }, diff --git a/lua/custom/plugins/colors.lua b/lua/custom/plugins/colors.lua new file mode 100644 index 00000000000..ac2ea082c26 --- /dev/null +++ b/lua/custom/plugins/colors.lua @@ -0,0 +1,46 @@ +return { + -- { -- You can easily change to a different colorscheme. + -- -- Change the name of the colorscheme plugin below, and then + -- -- change the command in the config to whatever the name of that colorscheme is. + -- -- + -- -- If you want to see what colorschemes are already installed, you can use `:Telescope colorscheme`. + -- 'folke/tokyonight.nvim', + -- priority = 1000, -- Make sure to load this before all the other start plugins. + -- config = function() + -- ---@diagnostic disable-next-line: missing-fields + -- require('tokyonight').setup { + -- styles = { + -- comments = { italic = false }, -- Disable italics in comments + -- }, + -- } + -- + -- -- Load the colorscheme here. + -- -- Like many other themes, this one has different styles, and you could load + -- -- any other, such as 'tokyonight-storm', 'tokyonight-moon', or 'tokyonight-day'. + -- vim.cmd.colorscheme 'tokyonight-night' + -- end, + -- }, + { + 'scottmckendry/cyberdream.nvim', + lazy = false, + priority = 1000000, + opts = { + borderless_pickers = false, + saturation = 0.95, + cache = true, + }, + init = function() + vim.cmd 'colorscheme cyberdream' + vim.api.nvim_set_hl(0, 'TroubleNormal', { bg = 'none', ctermbg = 'none' }) + vim.api.nvim_set_hl(0, 'TroubleNormalNC', { bg = 'none', ctermbg = 'none' }) + vim.api.nvim_set_hl(0, 'TroubleNormal', { bg = 'none', ctermbg = 'none' }) + vim.api.nvim_set_hl(0, 'TroubleNormalNC', { bg = 'none', ctermbg = 'none' }) + vim.api.nvim_set_hl(0, 'WinSeparator', { fg = '#3c4048', bg = 'none' }) + vim.api.nvim_set_hl(0, 'IndentBlanklineChar', { fg = '#7b8496' }) + vim.api.nvim_set_hl(0, 'TreesitterContext', { bg = '#232429' }) + vim.api.nvim_set_hl(0, 'TreesitterContextLineNumber', { bg = '#232429' }) + vim.api.nvim_set_hl(0, 'TreesitterContextBottom', { bg = '#232429', underline = true }) + vim.api.nvim_set_hl(0, 'CursorLineNr', { fg = '#ffffff' }) + end, + }, +} From 49a344c061903aaf240b05b034ad5a991e7f5a08 Mon Sep 17 00:00:00 2001 From: Test User Date: Fri, 25 Jul 2025 13:51:10 +0300 Subject: [PATCH 05/10] search in buffers: sort buffers by access order --- init.lua | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/init.lua b/init.lua index 64d7cf70a4a..ce3e3db808f 100644 --- a/init.lua +++ b/init.lua @@ -435,7 +435,10 @@ require('lazy').setup({ vim.keymap.set('n', 'sd', builtin.diagnostics, { desc = '[S]earch [D]iagnostics' }) vim.keymap.set('n', 'sr', builtin.resume, { desc = '[S]earch [R]esume' }) vim.keymap.set('n', 's.', builtin.oldfiles, { desc = '[S]earch Recent Files ("." for repeat)' }) - vim.keymap.set('n', '', builtin.buffers, { desc = '[ ] Find existing buffers' }) + vim.keymap.set('n', '', function() + builtin.buffers { sort_mru = true } + end, { desc = '[ ] Find existing buffers' }) + -- vim.keymap.set('n', '', builtin.buffers, { desc = '[ ] Find existing buffers' }) -- Slightly advanced example of overriding default behavior and theme vim.keymap.set('n', '/', function() From 9cb5c91b1711ea3e94d245304f7f505e59c3ae23 Mon Sep 17 00:00:00 2001 From: Test User Date: Fri, 14 Nov 2025 19:00:32 +0200 Subject: [PATCH 06/10] feat: render spaces as . --- init.lua | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/init.lua b/init.lua index 1e1607bd52e..15d1ade29c7 100644 --- a/init.lua +++ b/init.lua @@ -110,6 +110,10 @@ vim.o.mouse = 'a' -- Don't show the mode, since it's already in the status line vim.o.showmode = false +-- Renders spaces as "·" +vim.opt.list = true +vim.opt.listchars = vim.opt.listchars + 'space:·' + -- 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. @@ -435,9 +439,9 @@ require('lazy').setup({ vim.keymap.set('n', 'sd', builtin.diagnostics, { desc = '[S]earch [D]iagnostics' }) vim.keymap.set('n', 'sr', builtin.resume, { desc = '[S]earch [R]esume' }) vim.keymap.set('n', 's.', builtin.oldfiles, { desc = '[S]earch Recent Files ("." for repeat)' }) - vim.keymap.set('n', '', function() - builtin.buffers { sort_mru = true } - end, { desc = '[ ] Find existing buffers' }) + vim.keymap.set('n', '', function() + builtin.buffers { sort_mru = true } + end, { desc = '[ ] Find existing buffers' }) -- vim.keymap.set('n', '', builtin.buffers, { desc = '[ ] Find existing buffers' }) -- Slightly advanced example of overriding default behavior and theme From 6f12afbce0098155daa8e21a209234fe09c825d1 Mon Sep 17 00:00:00 2001 From: Test User Date: Fri, 14 Nov 2025 19:05:57 +0200 Subject: [PATCH 07/10] chore: move comments highlight to a separate plugin --- init.lua | 3 --- lua/custom/plugins/todo-comments.lua | 8 ++++++++ 2 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 lua/custom/plugins/todo-comments.lua diff --git a/init.lua b/init.lua index 15d1ade29c7..b67c393e006 100644 --- a/init.lua +++ b/init.lua @@ -888,9 +888,6 @@ require('lazy').setup({ }, }, - -- Highlight todo, notes, etc in comments - { 'folke/todo-comments.nvim', event = 'VimEnter', dependencies = { 'nvim-lua/plenary.nvim' }, opts = { signs = false } }, - { -- Collection of various small independent plugins/modules 'echasnovski/mini.nvim', config = function() diff --git a/lua/custom/plugins/todo-comments.lua b/lua/custom/plugins/todo-comments.lua new file mode 100644 index 00000000000..8d7b97a9b91 --- /dev/null +++ b/lua/custom/plugins/todo-comments.lua @@ -0,0 +1,8 @@ +return { + { + 'folke/todo-comments.nvim', + event = 'VimEnter', + dependencies = { 'nvim-lua/plenary.nvim' }, + opts = { signs = false }, + }, +} From 9a7240b92604fe62fe96e49cde7024a449bac497 Mon Sep 17 00:00:00 2001 From: Test User Date: Thu, 4 Dec 2025 19:31:31 +0200 Subject: [PATCH 08/10] show the actual line number --- init.lua | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/init.lua b/init.lua index b67c393e006..31ba220a72a 100644 --- a/init.lua +++ b/init.lua @@ -98,10 +98,7 @@ vim.g.have_nerd_font = true -- NOTE: You can change these options as you wish! -- For more options, you can see `:help option-list` --- Make line numbers default --- vim.o.number = true --- You can also add relative line numbers, to help with jumping. --- Experiment for yourself to see if you like it! +vim.o.number = true vim.o.relativenumber = true -- Enable mouse mode, can be useful for resizing splits for example! From a0e32a553cf891ca79fc6a75c0acee5d021d5f50 Mon Sep 17 00:00:00 2001 From: Test User Date: Fri, 5 Dec 2025 08:50:07 +0200 Subject: [PATCH 09/10] add python server --- init.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/init.lua b/init.lua index 31ba220a72a..49a72a786af 100644 --- a/init.lua +++ b/init.lua @@ -682,7 +682,7 @@ require('lazy').setup({ local servers = { -- clangd = {}, -- gopls = {}, - -- pyright = {}, + pyright = {}, rust_analyzer = {}, -- ... etc. See `:help lspconfig-all` for a list of all the pre-configured LSPs -- From 724942e215a74b69ab41859137bb06ef789907a4 Mon Sep 17 00:00:00 2001 From: Sasha Kruglyak Date: Mon, 22 Dec 2025 03:24:41 +0200 Subject: [PATCH 10/10] fix: clone cmd --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 4113950550d..2e9dd39822c 100644 --- a/README.md +++ b/README.md @@ -74,7 +74,7 @@ too - it's ignored in the kickstart repo to make maintenance easier, but it's
Linux and Mac ```sh -git clone https://github.com/nvim-lua/kickstart.nvim.git "${XDG_CONFIG_HOME:-$HOME/.config}"/nvim +git clone https://github.com/sashaaKr/kickstart.nvim.git "${XDG_CONFIG_HOME:-$HOME/.config}"/nvim ```