diff --git a/init.lua b/init.lua index 363bac9d..f2e68e5a 100644 --- a/init.lua +++ b/init.lua @@ -69,7 +69,7 @@ Kickstart Guide: 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. @@ -92,10 +92,41 @@ I hope you enjoy your Neovim journey, P.S. You can delete this when you're done too. It's your config now! :) --]] +-- Your existing Neovim configurations.. +vim.opt.tabstop = 4 +vim.opt.shiftwidth = 4 +vim.opt.softtabstop = 4 +vim.opt.expandtab = true +-- Function to toggle transparency +function ToggleTransparency() + if vim.g.transparency_enabled then + vim.cmd 'hi Normal guibg=#000000 ctermbg=NONE' -- Replace with your preferred background color + vim.cmd 'hi NormalNC guibg=#000000 ctermbg=NONE' -- Replace with your preferred background color + vim.g.transparency_enabled = false + else + vim.cmd 'hi Normal guibg=NONE ctermbg=NONE' + vim.cmd 'hi NormalNC guibg=NONE ctermbg=NONE' + vim.g.transparency_enabled = true + end +end + +-- Command to toggle transparency +vim.cmd 'command! Transp lua ToggleTransparency()' +vim.cmd [[ + autocmd VimEnter * Neotree position=right +]] + +-- vim.api.nvim_command [[ +-- augroup ChangeBackgroundColour +-- autocmd colorscheme * :hi normal guibg=#000000 +-- augroup END +-- ]] + +vim.o.termguicolors = true +vim.cmd [[silent! colorscheme snow]] -- Set as the leader key -- See `:help mapleader` -- NOTE: Must happen before plugins are loaded (otherwise wrong leader will be used) - vim.o.autoread = true vim.api.nvim_create_autocmd('BufEnter', { group = vim.api.nvim_create_augroup('lazyvim_auto_reload', { clear = true }), @@ -483,6 +514,7 @@ require('lazy').setup({ vim.lsp.buf.format() end, }) + vim.keymap.set('n', 'gl', 'lua vim.diagnostic.open_float()', { noremap = true }) -- LSP is an initialism you've probably heard, but might not understand what it is. -- -- LSP stands for Language Server Protocol. It's a protocol that helps editors @@ -843,8 +875,9 @@ require('lazy').setup({ -- 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' - + -- vim.cmd.colorscheme 'tokyonight-night' + vim.cmd.colorscheme 'kanagawa' + -- vim.cmd.colorscheme 'tokyonight' -- You can configure highlights by doing something like: vim.cmd.hi 'Comment gui=none' end, @@ -936,7 +969,7 @@ 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` diff --git a/lua/custom/plugins/base4tone.lua b/lua/custom/plugins/base4tone.lua new file mode 100644 index 00000000..a5c61a83 --- /dev/null +++ b/lua/custom/plugins/base4tone.lua @@ -0,0 +1,43 @@ +return { 'atelierbram/Base4Tone-nvim' } + +-- vim.cmd("colorscheme base4tone_classic_a_dark") +-- or any of the other themes: +-- vim.cmd("colorscheme base4tone_classic_b_dark") +-- vim.cmd("colorscheme base4tone_classic_c_dark") +-- vim.cmd("colorscheme base4tone_classic_d_dark") +-- vim.cmd("colorscheme base4tone_classic_e_dark") +-- vim.cmd("colorscheme base4tone_classic_f_dark") +-- vim.cmd("colorscheme base4tone_classic_i_dark") +-- vim.cmd("colorscheme base4tone_classic_l_dark") +-- vim.cmd("colorscheme base4tone_classic_o_dark") +-- vim.cmd("colorscheme base4tone_classic_p_dark") +-- vim.cmd("colorscheme base4tone_classic_q_dark") +-- vim.cmd("colorscheme base4tone_classic_r_dark") +-- vim.cmd("colorscheme base4tone_classic_s_dark") +-- vim.cmd("colorscheme base4tone_classic_t_dark") +-- vim.cmd("colorscheme base4tone_classic_u_dark") +-- vim.cmd("colorscheme base4tone_classic_w_dark") +-- vim.cmd("colorscheme base4tone_modern_c_dark") +-- vim.cmd("colorscheme base4tone_modern_n_dark") +-- vim.cmd("colorscheme base4tone_modern_w_dark") + +-- light +-- vim.cmd("colorscheme base4tone_classic_a_light") +-- vim.cmd("colorscheme base4tone_classic_b_light") +-- vim.cmd("colorscheme base4tone_classic_c_light") +-- vim.cmd("colorscheme base4tone_classic_d_light") +-- vim.cmd("colorscheme base4tone_classic_e_light") +-- vim.cmd("colorscheme base4tone_classic_f_light") +-- vim.cmd("colorscheme base4tone_classic_i_light") +-- vim.cmd("colorscheme base4tone_classic_l_light") +-- vim.cmd("colorscheme base4tone_classic_o_light") +-- vim.cmd("colorscheme base4tone_classic_p_light") +-- vim.cmd("colorscheme base4tone_classic_q_light") +-- vim.cmd("colorscheme base4tone_classic_r_light") +-- vim.cmd("colorscheme base4tone_classic_s_light") +-- vim.cmd("colorscheme base4tone_classic_t_light") +-- vim.cmd("colorscheme base4tone_classic_u_light") +-- vim.cmd("colorscheme base4tone_classic_w_light") +-- vim.cmd("colorscheme base4tone_modern_c_light") +-- vim.cmd("colorscheme base4tone_modern_n_light") +-- vim.cmd("colorscheme Base4Tone_Modern_w_light") diff --git a/lua/custom/plugins/bore.lua b/lua/custom/plugins/bore.lua new file mode 100644 index 00000000..d2a0c660 --- /dev/null +++ b/lua/custom/plugins/bore.lua @@ -0,0 +1 @@ +return { 'sixfourtwelve/bore.vim' } diff --git a/lua/custom/plugins/cyberdream.lua b/lua/custom/plugins/cyberdream.lua new file mode 100644 index 00000000..65fc02df --- /dev/null +++ b/lua/custom/plugins/cyberdream.lua @@ -0,0 +1,8 @@ +return { + 'scottmckendry/cyberdream.nvim', + lazy = false, + priority = 1000, + options = { + theme = 'auto', -- "auto" will set the theme dynamically based on the colorscheme + }, +} diff --git a/lua/custom/plugins/darkrose.lua b/lua/custom/plugins/darkrose.lua new file mode 100644 index 00000000..b7f3b7ce --- /dev/null +++ b/lua/custom/plugins/darkrose.lua @@ -0,0 +1,5 @@ +return { + 'water-sucks/darkrose.nvim', + lazy = false, + priority = 1000, +} diff --git a/lua/custom/plugins/everforest.lua b/lua/custom/plugins/everforest.lua new file mode 100644 index 00000000..e9e886e1 --- /dev/null +++ b/lua/custom/plugins/everforest.lua @@ -0,0 +1 @@ +return { 'sainnhe/everforest' } diff --git a/lua/custom/plugins/farout.lua b/lua/custom/plugins/farout.lua new file mode 100644 index 00000000..98be6b7e --- /dev/null +++ b/lua/custom/plugins/farout.lua @@ -0,0 +1 @@ +return { 'fcpg/vim-farout' } diff --git a/lua/custom/plugins/gotham.lua b/lua/custom/plugins/gotham.lua new file mode 100644 index 00000000..d1e209f2 --- /dev/null +++ b/lua/custom/plugins/gotham.lua @@ -0,0 +1 @@ +return { 'whatyouhide/vim-gotham' } diff --git a/lua/custom/plugins/jellybeans.lua b/lua/custom/plugins/jellybeans.lua new file mode 100644 index 00000000..1cdca9c2 --- /dev/null +++ b/lua/custom/plugins/jellybeans.lua @@ -0,0 +1,6 @@ +return { + { + 'metalelf0/jellybeans-nvim', + dependencies = { 'rktjmp/lush.nvim' }, + }, +} diff --git a/lua/custom/plugins/kanagawa.lua b/lua/custom/plugins/kanagawa.lua index c52ff3df..9549058d 100644 --- a/lua/custom/plugins/kanagawa.lua +++ b/lua/custom/plugins/kanagawa.lua @@ -1 +1,34 @@ -return { 'rebelot/kanagawa.nvim' } +return { + 'rebelot/kanagawa.nvim', + config = function() + require('kanagawa').setup { + colors = { + palette = { + -- change all usages of these colors + sumiInk0 = '#0D0D0D', + fujiWhite = '#FFFFFF', + }, + theme = { + -- change specific usages for a certain theme, or for all of them + wave = { + ui = { + float = { + bg = 'none', + }, + }, + }, + dragon = { + syn = { + parameter = 'yellow', + }, + }, + all = { + ui = { + bg_gutter = 'none', + }, + }, + }, + }, + } + end, +} diff --git a/lua/custom/plugins/kimbox.lua b/lua/custom/plugins/kimbox.lua new file mode 100644 index 00000000..3179e047 --- /dev/null +++ b/lua/custom/plugins/kimbox.lua @@ -0,0 +1 @@ +return { 'lmburns/kimbox' } diff --git a/lua/custom/plugins/lillilac.lua b/lua/custom/plugins/lillilac.lua new file mode 100644 index 00000000..1aa36091 --- /dev/null +++ b/lua/custom/plugins/lillilac.lua @@ -0,0 +1 @@ +return {'Love-Pengy/lillilac.nvim'} diff --git a/lua/custom/plugins/monotone.lua b/lua/custom/plugins/monotone.lua new file mode 100644 index 00000000..c22db71c --- /dev/null +++ b/lua/custom/plugins/monotone.lua @@ -0,0 +1 @@ +return { 'Lokaltog/vim-monotone' } diff --git a/lua/custom/plugins/nvim-highlight-colors.lua b/lua/custom/plugins/nvim-highlight-colors.lua new file mode 100644 index 00000000..404bfceb --- /dev/null +++ b/lua/custom/plugins/nvim-highlight-colors.lua @@ -0,0 +1 @@ +return { 'brenoprata10/nvim-highlight-colors' } diff --git a/lua/custom/plugins/oceanic-material.lua b/lua/custom/plugins/oceanic-material.lua new file mode 100644 index 00000000..0165a96d --- /dev/null +++ b/lua/custom/plugins/oceanic-material.lua @@ -0,0 +1 @@ +return { 'nvimdev/oceanic-material' } diff --git a/lua/custom/plugins/rainbow-delimeters.lua b/lua/custom/plugins/rainbow-delimeters.lua index 3cc0819d..54ac01e4 100644 --- a/lua/custom/plugins/rainbow-delimeters.lua +++ b/lua/custom/plugins/rainbow-delimeters.lua @@ -1,2 +1 @@ --- return { 'HiPhish/rainbow-delimiters.nvim' } -return {} +return { 'HiPhish/rainbow-delimiters.nvim' } diff --git a/lua/custom/plugins/tomorrow-theme.lua b/lua/custom/plugins/tomorrow-theme.lua index bb644927..da7262e7 100644 --- a/lua/custom/plugins/tomorrow-theme.lua +++ b/lua/custom/plugins/tomorrow-theme.lua @@ -1,3 +1,3 @@ return { - 'timmajani/tokyonightnoir-vim', + 'owickstrom/vim-colors-paramount', } diff --git a/lua/custom/plugins/vim-colors-paramount.lua b/lua/custom/plugins/vim-colors-paramount.lua new file mode 100644 index 00000000..f4914431 --- /dev/null +++ b/lua/custom/plugins/vim-colors-paramount.lua @@ -0,0 +1 @@ +return { 'timmajani/tokyonightnoir-vim' } diff --git a/lua/custom/plugins/vim-mellow.lua b/lua/custom/plugins/vim-mellow.lua new file mode 100644 index 00000000..1e545c55 --- /dev/null +++ b/lua/custom/plugins/vim-mellow.lua @@ -0,0 +1 @@ +return { 'adigitoleo/vim-mellow' } diff --git a/lua/kickstart/plugins/neo-tree.lua b/lua/kickstart/plugins/neo-tree.lua index f126d68a..3e99b470 100644 --- a/lua/kickstart/plugins/neo-tree.lua +++ b/lua/kickstart/plugins/neo-tree.lua @@ -1,25 +1,214 @@ --- Neo-tree is a Neovim plugin to browse the file system --- https://github.com/nvim-neo-tree/neo-tree.nvim - return { 'nvim-neo-tree/neo-tree.nvim', - version = '*', - dependencies = { + branch = 'v3.x', + requires = { 'nvim-lua/plenary.nvim', 'nvim-tree/nvim-web-devicons', -- not strictly required, but recommended 'MunifTanjim/nui.nvim', - }, - cmd = 'Neotree', - keys = { - { '\\', ':Neotree reveal', desc = 'NeoTree reveal' }, - }, - opts = { - filesystem = { - window = { - mappings = { - ['\\'] = 'close_window', - }, - }, + { + 's1n7ax/nvim-window-picker', + version = '2.*', + config = function() + require('window-picker').setup { + filter_rules = { + include_current_win = false, + autoselect_one = true, + bo = { + filetype = { 'neo-tree', 'neo-tree-popup', 'notify' }, + buftype = { 'terminal', 'quickfix' }, + }, + }, + } + end, }, }, + config = function() + vim.fn.sign_define('DiagnosticSignError', { text = ' ', texthl = 'DiagnosticSignError' }) + vim.fn.sign_define('DiagnosticSignWarn', { text = ' ', texthl = 'DiagnosticSignWarn' }) + vim.fn.sign_define('DiagnosticSignInfo', { text = ' ', texthl = 'DiagnosticSignInfo' }) + vim.fn.sign_define('DiagnosticSignHint', { text = '󰌵', texthl = 'DiagnosticSignHint' }) + + require('neo-tree').setup { + close_if_last_window = false, + popup_border_style = 'rounded', + enable_git_status = true, + enable_diagnostics = true, + open_files_do_not_replace_types = { 'terminal', 'trouble', 'qf' }, + sort_case_insensitive = false, + sort_function = nil, + default_component_configs = { + container = { enable_character_fade = true }, + indent = { + indent_size = 2, + padding = 1, + with_markers = true, + indent_marker = '│', + last_indent_marker = '└', + highlight = 'NeoTreeIndentMarker', + with_expanders = nil, + expander_collapsed = '', + expander_expanded = '', + expander_highlight = 'NeoTreeExpander', + }, + icon = { + folder_closed = '', + folder_open = '', + folder_empty = '󰜌', + default = '*', + highlight = 'NeoTreeFileIcon', + }, + modified = { + symbol = '[+]', + highlight = 'NeoTreeModified', + }, + name = { + trailing_slash = false, + use_git_status_colors = true, + highlight = 'NeoTreeFileName', + }, + git_status = { + symbols = { + added = '', + modified = '', + deleted = '✖', + renamed = '󰁕', + untracked = '', + ignored = '', + unstaged = '󰄱', + staged = '', + conflict = '', + }, + }, + file_size = { enabled = true, required_width = 64 }, + type = { enabled = true, required_width = 122 }, + last_modified = { enabled = true, required_width = 88 }, + created = { enabled = true, required_width = 110 }, + symlink_target = { enabled = false }, + }, + commands = {}, + window = { + position = 'right', -- Set the position of Neo-tree window to the right + mapping_options = { + noremap = true, + nowait = true, + }, + mappings = { + [''] = { 'toggle_node', nowait = false }, + ['<2-LeftMouse>'] = 'open', + [''] = 'open', + [''] = 'cancel', + ['P'] = { 'toggle_preview', config = { use_float = true, use_image_nvim = true } }, + ['l'] = 'focus_preview', + ['S'] = 'open_split', + ['s'] = 'open_vsplit', + ['t'] = 'open_tabnew', + ['w'] = 'open_with_window_picker', + ['C'] = 'close_node', + ['z'] = 'close_all_nodes', + ['a'] = { + 'add', + config = { show_path = 'none' }, + }, + ['A'] = 'add_directory', + ['d'] = 'delete', + ['r'] = 'rename', + ['y'] = 'copy_to_clipboard', + ['x'] = 'cut_to_clipboard', + ['p'] = 'paste_from_clipboard', + ['c'] = 'copy', + ['m'] = 'move', + ['q'] = 'close_window', + ['R'] = 'refresh', + ['?'] = 'show_help', + ['<'] = 'prev_source', + ['>'] = 'next_source', + ['i'] = 'show_file_details', + }, + }, + nesting_rules = {}, + filesystem = { + filtered_items = { + visible = false, + hide_dotfiles = true, + hide_gitignored = true, + hide_hidden = true, + }, + follow_current_file = { enabled = false, leave_dirs_open = false }, + group_empty_dirs = false, + hijack_netrw_behavior = 'open_default', + use_libuv_file_watcher = false, + window = { + mappings = { + [''] = 'navigate_up', + ['.'] = 'set_root', + ['H'] = 'toggle_hidden', + ['/'] = 'fuzzy_finder', + ['D'] = 'fuzzy_finder_directory', + ['#'] = 'fuzzy_sorter', + ['f'] = 'filter_on_submit', + [''] = 'clear_filter', + ['[g'] = 'prev_git_modified', + [']g'] = 'next_git_modified', + ['o'] = { 'show_help', nowait = false, config = { title = 'Order by', prefix_key = 'o' } }, + ['oc'] = { 'order_by_created', nowait = false }, + ['od'] = { 'order_by_diagnostics', nowait = false }, + ['og'] = { 'order_by_git_status', nowait = false }, + ['om'] = { 'order_by_modified', nowait = false }, + ['on'] = { 'order_by_name', nowait = false }, + ['os'] = { 'order_by_size', nowait = false }, + ['ot'] = { 'order_by_type', nowait = false }, + }, + fuzzy_finder_mappings = { + [''] = 'move_cursor_down', + [''] = 'move_cursor_down', + [''] = 'move_cursor_up', + [''] = 'move_cursor_up', + }, + }, + commands = {}, + }, + buffers = { + follow_current_file = { enabled = true, leave_dirs_open = false }, + group_empty_dirs = true, + show_unloaded = true, + window = { + mappings = { + ['bd'] = 'buffer_delete', + [''] = 'navigate_up', + ['.'] = 'set_root', + ['o'] = { 'show_help', nowait = false, config = { title = 'Order by', prefix_key = 'o' } }, + ['oc'] = { 'order_by_created', nowait = false }, + ['od'] = { 'order_by_diagnostics', nowait = false }, + ['om'] = { 'order_by_modified', nowait = false }, + ['on'] = { 'order_by_name', nowait = false }, + ['os'] = { 'order_by_size', nowait = false }, + ['ot'] = { 'order_by_type', nowait = false }, + }, + }, + }, + git_status = { + window = { + position = 'float', + mappings = { + ['A'] = 'git_add_all', + ['gu'] = 'git_unstage_file', + ['ga'] = 'git_add_file', + ['gr'] = 'git_revert_file', + ['gc'] = 'git_commit', + ['gp'] = 'git_push', + ['gg'] = 'git_commit_and_push', + ['o'] = { 'show_help', nowait = false, config = { title = 'Order by', prefix_key = 'o' } }, + ['oc'] = { 'order_by_created', nowait = false }, + ['od'] = { 'order_by_diagnostics', nowait = false }, + ['om'] = { 'order_by_modified', nowait = false }, + ['on'] = { 'order_by_name', nowait = false }, + ['os'] = { 'order_by_size', nowait = false }, + ['ot'] = { 'order_by_type', nowait = false }, + }, + }, + }, + } + + vim.cmd [[nnoremap \ :Neotree reveal]] + end, }