diff --git a/.gitignore b/.gitignore index 68486fc3d35..7526560698e 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,6 @@ spell/ # lazy-lock.json in version control - see https://lazy.folke.io/usage/lockfile # For the official `nvim-lua/kickstart.nvim` git repository, we leave it ignored to avoid unneeded # merge conflicts. -lazy-lock.json +#lazy-lock.json .DS_Store diff --git a/init.lua b/init.lua index 8d1f19a10d4..7b0c7be2f84 100644 --- a/init.lua +++ b/init.lua @@ -1,97 +1,21 @@ ---[[ - -===================================================================== -==================== READ THIS BEFORE CONTINUING ==================== -===================================================================== -======== .-----. ======== -======== .----------------------. | === | ======== -======== |.-""""""""""""""""""-.| |-----| ======== -======== || || | === | ======== -======== || KICKSTART.NVIM || |-----| ======== -======== || || | === | ======== -======== || || |-----| ======== -======== ||:Tutor || |:::::| ======== -======== |'-..................-'| |____o| ======== -======== `"")----------------(""` ___________ ======== -======== /::::::::::| |::::::::::\ \ no mouse \ ======== -======== /:::========| |==hjkl==:::\ \ required \ ======== -======== '""""""""""""' '""""""""""""' '""""""""""' ======== -======== ======== -===================================================================== -===================================================================== - -What is Kickstart? - - Kickstart.nvim is *not* a distribution. - - Kickstart.nvim is a starting point for your own configuration. - The goal is that you can read every line of code, top-to-bottom, understand - what your configuration is doing, and modify it to suit your needs. - - Once you've done that, you can start exploring, configuring and tinkering to - make Neovim your own! That might mean leaving Kickstart just the way it is for a while - or immediately breaking it into modular pieces. It's up to you! - - If you don't know anything about Lua, I recommend taking some time to read through - a guide. One possible example which will only take 10-15 minutes: - - https://learnxinyminutes.com/docs/lua/ - - After understanding a bit more about Lua, you can use `:help lua-guide` as a - reference for how Neovim integrates Lua. - - :help lua-guide - - (or HTML version): https://neovim.io/doc/user/lua-guide.html - -Kickstart Guide: - - TODO: The very first thing you should do is to run the command `:Tutor` in Neovim. - - If you don't know what this means, type the following: - - - - : - - Tutor - - - - (If you already know the Neovim basics, you can skip this step.) - - Once you've completed that, you can continue working through **AND READING** the rest - of the kickstart init.lua. - - Next, run AND READ `:help`. - This will open up a help window with some basic information - about reading, navigating and searching the builtin help documentation. - - This should be the first place you go to look when you're stuck or confused - with something. It's one of my favorite Neovim features. - - MOST IMPORTANTLY, we provide a keymap "sh" to [s]earch the [h]elp documentation, - which is very useful when you're not exactly sure of what you're looking for. - - I have left several `:help X` comments throughout the init.lua - These are hints about where to find more information about the relevant settings, - plugins or Neovim features used in Kickstart. - - NOTE: Look for lines like this - - Throughout the file. These are for you, the reader, to help you understand what is happening. - Feel free to delete them once you know what you're doing, but they should serve as a guide - for when you are first encountering a few different constructs in your Neovim config. - -If you experience any errors while trying to install kickstart, run `:checkhealth` for more info. - -I hope you enjoy your Neovim journey, -- TJ - -P.S. You can delete this when you're done too. It's your config now! :) ---]] - --- Set as the leader key -- See `:help mapleader` -- NOTE: Must happen before plugins are loaded (otherwise wrong leader will be used) vim.g.mapleader = ' ' vim.g.maplocalleader = ' ' - +vim.opt.guicursor = '' + +-- my personal color scheme setup +-- vim.cmd 'colorscheme quiet' +-- vim.api.nvim_set_hl(0, 'Normal', { bg = 'none' }) +-- vim.o.background = 'dark' +-- vim.api.nvim_set_hl(0, 'SignColumn', { bg = 'none' }) +-- vim.api.nvim_set_hl(0, 'NormalFloat', { bg = 'none', fg = '#ffffff' }) +-- vim.api.nvim_set_hl(0, 'FloatBorder', { fg = 'none', bg = '#1e1e1e' }) +-- vim.api.nvim_set_hl(0, 'Pmenu', { bg = '#1e1e1e', fg = '#ffffff' }) +-- vim.api.nvim_set_hl(0, 'PmenuSel', { bg = '#3d59a1', fg = '#ffffff' }) +-- -- 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` @@ -102,13 +26,15 @@ vim.g.have_nerd_font = false 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' -- Don't show the mode, since it's already in the status line vim.o.showmode = false +-- soft and elegant Neotree toggle +vim.keymap.set('n', 'e', 'Neotree toggle') -- Sync clipboard between OS and Neovim. -- Schedule the setting after `UiEnter` because it can increase startup-time. @@ -116,11 +42,23 @@ vim.o.showmode = false -- See `:help 'clipboard'` vim.schedule(function() vim.o.clipboard = 'unnamedplus' end) +-- Navigating highlighted text after vap or v-j or k +vim.keymap.set('v', '', ":m '>+1gv=gv") +vim.keymap.set('v', '', ":m '<-2gv=gv") +vim.keymap.set('v', '', 'bd', vim.cmd.bdelete) + +-- find all Todo's in with Telescope +vim.keymap.set('n', 'ft', 'TodoTelescope') -- Enable break indent vim.o.breakindent = true -- Enable undo/redo changes even after closing and reopening a file vim.o.undofile = true +vim.opt.swapfile = false +vim.opt.undodir = os.getenv 'HOME' .. '/.vim/undodir' -- Case-insensitive searching UNLESS \C or one or more capital letters in the search term vim.o.ignorecase = true @@ -129,11 +67,14 @@ vim.o.smartcase = true -- Keep signcolumn on by default vim.o.signcolumn = 'yes' +-- color column +vim.opt.colorcolumn = '100' + -- Decrease update time vim.o.updatetime = 250 -- Decrease mapped sequence wait time -vim.o.timeoutlen = 300 +vim.o.timeoutlen = 500 -- Configure how new splits should be opened vim.o.splitright = true @@ -147,8 +88,12 @@ vim.o.splitbelow = true -- It is very similar to `vim.o` but offers an interface for conveniently interacting with tables. -- See `:help lua-options` -- and `:help lua-guide-options` -vim.o.list = true -vim.opt.listchars = { tab = '» ', trail = '·', nbsp = '␣' } +-- vim.o.list = true +-- vim.opt.listchars = { tab = '» ', trail = '·', nbsp = '␣' } +vim.opt.tabstop = 4 +vim.opt.softtabstop = 4 +vim.opt.shiftwidth = 4 +vim.opt.expandtab = false -- Preview substitutions live, as you type! vim.o.inccommand = 'split' @@ -198,10 +143,10 @@ vim.keymap.set('n', 'q', vim.diagnostic.setloclist, { desc = 'Open diagn vim.keymap.set('t', '', '', { desc = 'Exit terminal mode' }) -- TIP: Disable arrow keys in normal mode --- vim.keymap.set('n', '', 'echo "Use h to move!!"') --- vim.keymap.set('n', '', 'echo "Use l to move!!"') --- vim.keymap.set('n', '', 'echo "Use k to move!!"') --- vim.keymap.set('n', '', 'echo "Use j to move!!"') +vim.keymap.set('n', '', 'echo "Use h to move!!"') +vim.keymap.set('n', '', 'echo "Use l to move!!"') +vim.keymap.set('n', '', 'echo "Use k to move!!"') +vim.keymap.set('n', '', 'echo "Use j to move!!"') -- Keybinds to make split navigation easier. -- Use CTRL+ to switch between windows @@ -212,6 +157,14 @@ vim.keymap.set('n', '', '', { desc = 'Move focus to the right win vim.keymap.set('n', '', '', { desc = 'Move focus to the lower window' }) vim.keymap.set('n', '', '', { desc = 'Move focus to the upper window' }) +-- Handling splits +vim.opt.splitright = true +-- NOTE: I used the arrow keys because my terminal has this set to some distint keycodes... just as TJ said in the NOTE below +vim.keymap.set('n', '', 'H', { desc = 'Move window to the left' }) +vim.keymap.set('n', '', 'L', { desc = 'Move window to the right' }) +vim.keymap.set('n', '', 'J', { desc = 'Move window to the lower' }) +vim.keymap.set('n', '', 'K', { desc = 'Move window to the upper' }) + -- NOTE: Some terminals have colliding keymaps or are not able to send distinct keycodes -- vim.keymap.set("n", "", "H", { desc = "Move window to the left" }) -- vim.keymap.set("n", "", "L", { desc = "Move window to the right" }) @@ -303,27 +256,27 @@ require('lazy').setup({ -- Then, because we use the `opts` key (recommended), the configuration runs -- after the plugin has been loaded as `require(MODULE).setup(opts)`. - { -- Useful plugin to show you pending keybinds. - 'folke/which-key.nvim', - event = 'VimEnter', - ---@module 'which-key' - ---@type wk.Opts - ---@diagnostic disable-next-line: missing-fields - opts = { - -- delay between pressing a key and opening which-key (milliseconds) - delay = 0, - icons = { mappings = vim.g.have_nerd_font }, - - -- Document existing key chains - spec = { - { 's', group = '[S]earch', mode = { 'n', 'v' } }, - { 't', group = '[T]oggle' }, - { 'h', group = 'Git [H]unk', mode = { 'n', 'v' } }, -- Enable gitsigns recommended keymaps first - { 'gr', group = 'LSP Actions', mode = { 'n' } }, - }, - }, - }, - + -- { -- Useful plugin to show you pending keybinds. + -- 'folke/which-key.nvim', + -- event = 'VimEnter', + -- ---@module 'which-key' + -- ---@type wk.Opts + -- ---@diagnostic disable-next-line: missing-fields + -- opts = { + -- -- delay between pressing a key and opening which-key (milliseconds) + -- delay = 0, + -- icons = { mappings = vim.g.have_nerd_font }, + -- + -- -- Document existing key chains + -- spec = { + -- { 's', group = '[S]earch', mode = { 'n', 'v' } }, + -- { 't', group = '[T]oggle' }, + -- { 'h', group = 'Git [H]unk', mode = { 'n', 'v' } }, -- Enable gitsigns recommended keymaps first + -- { 'gr', group = 'LSP Actions', mode = { 'n' } }, + -- }, + -- }, + -- }, + -- -- NOTE: Plugins can specify dependencies. -- -- The dependencies are proper plugin specifications as well - anything @@ -612,7 +565,8 @@ require('lazy').setup({ -- ts_ls = {}, stylua = {}, -- Used to format Lua code - + gdscript = {}, + -- -- Special Lua Config, as recommended by neovim help docs lua_ls = { on_init = function(client) @@ -655,12 +609,19 @@ require('lazy').setup({ -- :Mason -- -- You can press `g?` for help in this menu. - local ensure_installed = vim.tbl_keys(servers or {}) - vim.list_extend(ensure_installed, { - -- You can add other tools here that you want Mason to install - }) - require('mason-tool-installer').setup { ensure_installed = ensure_installed } + -- 1. Get all keys from your servers table (includes 'gdscript') + local all_servers = vim.tbl_keys(servers or {}) + + -- 2. Create a filtered list for Mason (excludes 'gdscript') + local mason_ensure_installed = vim.tbl_filter(function(name) return name ~= 'gdscript' end, all_servers) + + -- 3. Add your extra formatting tools to the MASON list + vim.list_extend(mason_ensure_installed, { + 'stylua', + 'gdtoolkit', -- Mason can find this! + }) + require('mason-tool-installer').setup { ensure_installed = mason_ensure_installed } for name, server in pairs(servers) do vim.lsp.config(name, server) @@ -702,6 +663,8 @@ require('lazy').setup({ }, -- You can also specify external formatters in here. formatters_by_ft = { + lua = { 'stylua' }, + typerscript = { 'biome' }, -- rust = { 'rustfmt' }, -- Conform can also run multiple formatters sequentially -- python = { "isort", "black" }, @@ -810,21 +773,21 @@ require('lazy').setup({ -- 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, + -- '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 @@ -842,9 +805,14 @@ require('lazy').setup({ 'nvim-mini/mini.nvim', config = function() -- Better Around/Inside textobjects - -- + -- var of bread in 'food' and (joints) as well as bread -- Examples: -- - va) - [V]isually select [A]round [)]paren + -- - yinq - [Y]ank [I]nside [N]ext [Q]uote + -- - ci' - [C]hange [I]nside ["]quote + require('mini.ai').setup { n_lines = 500 } + -- this is not mini but yuh, good to know, cib, cab, vib vab yib, yab: [A]round and [I]nside [B]rackets, doesnt matter what bracket that is, just be on or inside it + -- If you wnat ot be specific, then yuh, use {} or [] or () -- - yiiq - [Y]ank [I]nside [I]+1 [Q]uote -- - ci' - [C]hange [I]nside [']quote require('mini.ai').setup { @@ -857,24 +825,24 @@ require('lazy').setup({ } -- Add/delete/replace surroundings (brackets, quotes, etc.) - -- - -- - saiw) - [S]urround [A]dd [I]nner [W]ord [)]Paren + -- "quotes' on [ quotes ] + -- - saiw) - [(S)][ urround ] [A]dd [I]nner [W]ord [)]Paren -- - sd' - [S]urround [D]elete [']quotes - -- - sr)' - [S]urround [R]eplace [)] ['] + -- - sr)" - [S]urround [R]eplace [)] ["], this an be used with any symbols of your choice require('mini.surround').setup() -- Simple and easy statusline. -- You could remove this setup call if you don't like it, -- and try some other statusline plugin - local statusline = require 'mini.statusline' + -- local statusline = require 'mini.statusline' -- set use_icons to true if you have a Nerd Font - statusline.setup { use_icons = vim.g.have_nerd_font } + -- statusline.setup { use_icons = vim.g.have_nerd_font } -- You can configure sections in the statusline by overriding their -- default behavior. For example, here we set the section for -- cursor location to LINE:COLUMN ---@diagnostic disable-next-line: duplicate-set-field - statusline.section_location = function() return '%2l:%-2v' end + -- statusline.section_location = function() return '%2l:%-2v' end -- ... and there is more! -- Check out: https://github.com/nvim-mini/mini.nvim @@ -949,16 +917,16 @@ require('lazy').setup({ -- -- require 'kickstart.plugins.debug', -- require 'kickstart.plugins.indent_line', - -- require 'kickstart.plugins.lint', - -- require 'kickstart.plugins.autopairs', - -- require 'kickstart.plugins.neo-tree', + require 'kickstart.plugins.lint', + require 'kickstart.plugins.autopairs', + require 'kickstart.plugins.neo-tree', -- require 'kickstart.plugins.gitsigns', -- adds gitsigns recommended 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/lazy-lock.json b/lazy-lock.json new file mode 100644 index 00000000000..26bc37fe833 --- /dev/null +++ b/lazy-lock.json @@ -0,0 +1,35 @@ +{ + "LuaSnip": { "branch": "master", "commit": "5a1e39223db9a0498024a77b8441169d260c8c25" }, + "black-metal-theme-neovim": { "branch": "main", "commit": "87e21420c449e414a00ab78e395debf48f372169" }, + "blink.cmp": { "branch": "main", "commit": "451168851e8e2466bc97ee3e026c3dcb9141ce07" }, + "catppuccin": { "branch": "main", "commit": "426dbebe06b5c69fd846ceb17b42e12f890aedf1" }, + "conform.nvim": { "branch": "master", "commit": "086a40dc7ed8242c03be9f47fbcee68699cc2395" }, + "fidget.nvim": { "branch": "main", "commit": "7fa433a83118a70fe24c1ce88d5f0bd3453c0970" }, + "flash.nvim": { "branch": "main", "commit": "fcea7ff883235d9024dc41e638f164a450c14ca2" }, + "gitsigns.nvim": { "branch": "main", "commit": "7c4faa3540d0781a28588cafbd4dd187a28ac6e3" }, + "guess-indent.nvim": { "branch": "main", "commit": "84a4987ff36798c2fc1169cbaff67960aed9776f" }, + "harpoon": { "branch": "master", "commit": "1bc17e3e42ea3c46b33c0bbad6a880792692a1b3" }, + "kanagawa.nvim": { "branch": "master", "commit": "aef7f5cec0a40dbe7f3304214850c472e2264b10" }, + "lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" }, + "lualine.nvim": { "branch": "master", "commit": "a905eeebc4e63fdc48b5135d3bf8aea5618fb21c" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "a676ab7282da8d651e175118bcf54483ca11e46d" }, + "mason-tool-installer.nvim": { "branch": "main", "commit": "443f1ef8b5e6bf47045cb2217b6f748a223cf7dc" }, + "mason.nvim": { "branch": "main", "commit": "44d1e90e1f66e077268191e3ee9d2ac97cc18e65" }, + "mini.nvim": { "branch": "main", "commit": "9990c41f10f54f29a888d13024c9f765037bde23" }, + "neo-tree.nvim": { "branch": "main", "commit": "ba6871d15528e36657d19a3112cc1697c59da19a" }, + "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, + "nvim-autopairs": { "branch": "master", "commit": "59bce2eef357189c3305e25bc6dd2d138c1683f5" }, + "nvim-lint": { "branch": "master", "commit": "606b823a57b027502a9ae00978ebf4f5d5158098" }, + "nvim-lspconfig": { "branch": "master", "commit": "1d13d2b0df9a0a02904c76d7ad6810f71d404406" }, + "nvim-treesitter": { "branch": "main", "commit": "c9fea86a5a3c2d7f52e5cd53448edfaf7953bc75" }, + "nvim-web-devicons": { "branch": "master", "commit": "d7462543c9e366c0d196c7f67a945eaaf5d99414" }, + "osaka-jade-nvim": { "branch": "master", "commit": "211601183981606f35197262d24826c9d7f11d6b" }, + "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, + "rose-pine": { "branch": "main", "commit": "cf2a288696b03d0934da713d66c6d71557b5c997" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "6fea601bd2b694c6f2ae08a6c6fab14930c60e2c" }, + "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, + "telescope.nvim": { "branch": "master", "commit": "5255aa27c422de944791318024167ad5d40aad20" }, + "todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" }, + "undotree": { "branch": "main", "commit": "0e6d41d55ad147407e4ba00a292973de8db0b836" }, + "vim-fugitive": { "branch": "master", "commit": "3b753cf8c6a4dcde6edee8827d464ba9b8c4a6f0" } +} diff --git a/lazyvim.json b/lazyvim.json new file mode 100644 index 00000000000..dc3e179d8bd --- /dev/null +++ b/lazyvim.json @@ -0,0 +1,9 @@ +{ + "extras": [ + + ], + "news": { + "NEWS.md": "11866" + }, + "version": 8 +} \ No newline at end of file diff --git a/lua/custom/plugins/black-metal.lua b/lua/custom/plugins/black-metal.lua new file mode 100644 index 00000000000..0c5567cd12c --- /dev/null +++ b/lua/custom/plugins/black-metal.lua @@ -0,0 +1,14 @@ +-- Using lazy.nvim +return { + 'metalelf0/black-metal-theme-neovim', + lazy = false, + priority = 1000, + config = function() + require('black-metal').setup { + -- optional configuration here + transparent = false, + } + require('black-metal').load() + vim.cmd 'colorscheme taake' + end, +} diff --git a/lua/custom/plugins/catpuccin.lua b/lua/custom/plugins/catpuccin.lua new file mode 100644 index 00000000000..7f83a6138a4 --- /dev/null +++ b/lua/custom/plugins/catpuccin.lua @@ -0,0 +1,11 @@ +return { + 'catppuccin/nvim', + name = 'catppuccin', + priority = 1000, + config = function() + require('catppuccin').setup { + transparent_backgruond = false, + } + -- vim.cmd.colorscheme 'catppuccin-nvim' + end, +} diff --git a/lua/custom/plugins/flash.lua b/lua/custom/plugins/flash.lua new file mode 100644 index 00000000000..69b1e96a753 --- /dev/null +++ b/lua/custom/plugins/flash.lua @@ -0,0 +1,13 @@ +return { + 'folke/flash.nvim', + event = 'VeryLazy', + ---@type Flash.Config + opts = {}, + keys = { + { 's', mode = { 'n', 'x', 'o' }, function() require('flash').jump() end, desc = 'Flash' }, + { 'S', mode = { 'n', 'x', 'o' }, function() require('flash').treesitter() end, desc = 'Flash Treesitter' }, + { 'r', mode = 'o', function() require('flash').remote() end, desc = 'Remote Flash' }, + { 'R', mode = { 'o', 'x' }, function() require('flash').treesitter_search() end, desc = 'Treesitter Search' }, + { '', mode = { 'c' }, function() require('flash').toggle() end, desc = 'Toggle Flash Search' }, + }, +} diff --git a/lua/custom/plugins/fugitive.lua b/lua/custom/plugins/fugitive.lua new file mode 100644 index 00000000000..4f162827450 --- /dev/null +++ b/lua/custom/plugins/fugitive.lua @@ -0,0 +1,4 @@ +return { + 'tpope/vim-fugitive', + config = function() vim.keymap.set('n', 'gs', vim.cmd.Git, { desc = 'fugitive git status' }) end, +} diff --git a/lua/custom/plugins/harpoon.lua b/lua/custom/plugins/harpoon.lua new file mode 100644 index 00000000000..445127c1680 --- /dev/null +++ b/lua/custom/plugins/harpoon.lua @@ -0,0 +1,19 @@ +return { + 'ThePrimeagen/harpoon', + -- No branch needed; defaults to master (Harpoon 1) + dependencies = { 'nvim-lua/plenary.nvim' }, + config = function() + local mark = require 'harpoon.mark' + local ui = require 'harpoon.ui' + + -- Keymaps for Harpoon 1 + vim.keymap.set('n', 'h', mark.add_file) + vim.keymap.set('n', 'H', ui.toggle_quick_menu) + + -- Quick Jumps + vim.keymap.set('n', '1', function() ui.nav_file(1) end) + vim.keymap.set('n', '2', function() ui.nav_file(2) end) + vim.keymap.set('n', '3', function() ui.nav_file(3) end) + -- Add more as needed + end, +} diff --git a/lua/custom/plugins/kanagawa.lua b/lua/custom/plugins/kanagawa.lua new file mode 100644 index 00000000000..380f77759c0 --- /dev/null +++ b/lua/custom/plugins/kanagawa.lua @@ -0,0 +1,9 @@ +return { + 'rebelot/kanagawa.nvim', + priority = 1000, + config = function() + require('kanagawa').setup { theme = 'wave', transparent = true } + vim.o.termguicolors = true + -- vim.cmd 'colorscheme kanagawa-dragon' + end, +} diff --git a/lua/custom/plugins/lualine.lua b/lua/custom/plugins/lualine.lua new file mode 100644 index 00000000000..a0ecf768c46 --- /dev/null +++ b/lua/custom/plugins/lualine.lua @@ -0,0 +1,15 @@ +return { + 'nvim-lualine/lualine.nvim', + dependencies = { 'nvim-tree/nvim-web-devicons' }, + config = function() + require('lualine').setup { + options = { + -- theme = 'everforest', + icons_enabled = false, + -- component_separators = { left = '|', right = '|'}, + -- section_separators = { left = '', right = '' }, + path = 1, + }, + } + end, +} diff --git a/lua/custom/plugins/osakajade.lua b/lua/custom/plugins/osakajade.lua new file mode 100644 index 00000000000..17e67e26bf1 --- /dev/null +++ b/lua/custom/plugins/osakajade.lua @@ -0,0 +1,5 @@ +return { + 'ReallySnazzy/osaka-jade-nvim', + lazy = false, + -- init = function() vim.cmd.colorscheme 'osaka-jade' end, +} diff --git a/lua/custom/plugins/rosepine.lua b/lua/custom/plugins/rosepine.lua new file mode 100644 index 00000000000..b60ab90e2d4 --- /dev/null +++ b/lua/custom/plugins/rosepine.lua @@ -0,0 +1,15 @@ +-- lua/plugins/rose-pine.lua +return { + 'rose-pine/neovim', + name = 'rose-pine', + config = function() + require('rose-pine').setup { + styles = { + transparency = true, + italic = false, + bold = false, + }, + } + -- vim.cmd 'colorscheme rose-pine-moon' + end, +} diff --git a/lua/custom/plugins/undotree.lua b/lua/custom/plugins/undotree.lua new file mode 100644 index 00000000000..76c162a4bb0 --- /dev/null +++ b/lua/custom/plugins/undotree.lua @@ -0,0 +1,9 @@ +return { + 'jiaoshijie/undotree', + opts = { + -- your options + }, + keys = { -- load the plugin only when using it's keybinding: + { 'u', "lua require('undotree').toggle()" }, + }, +}