From 85495e7de27536de29d54392d8cede417ce0123e Mon Sep 17 00:00:00 2001 From: Anton Volnuhin Date: Sun, 21 May 2023 20:14:47 +0300 Subject: [PATCH] switch to another undotree, expanding undo length --- private_dot_config/nvim/init.lua | 36 +++++++++++++++++++++++++++----- 1 file changed, 31 insertions(+), 5 deletions(-) diff --git a/private_dot_config/nvim/init.lua b/private_dot_config/nvim/init.lua index dec1ebe..45598c1 100644 --- a/private_dot_config/nvim/init.lua +++ b/private_dot_config/nvim/init.lua @@ -7,6 +7,12 @@ vim.o.scrolloff = 3 vim.o.sidescrolloff = 2 vim.loader.enable() +vim.o.background = "dark" -- or "light" for light mode +vim.opt.undofile = true +vim.opt.undolevels = 100000 +vim.opt.undoreload = 1000000 + +-- Loading Lazy plugin manager itself local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" if not vim.loop.fs_stat(lazypath) then vim.fn.system({ @@ -20,15 +26,17 @@ if not vim.loop.fs_stat(lazypath) then end vim.opt.rtp:prepend(lazypath) +--Loading plugin manager and the plugins require("lazy").setup({ + -- Gruvbox colorscheme { "ellisonleao/gruvbox.nvim", priority = 1000 }, + -- Treesitter for better highlighting and moving { "nvim-treesitter/nvim-treesitter", run = ":TSUpdate" }, { "nvim-telescope/telescope.nvim", tag = "0.1.1", dependencies = { "nvim-lua/plenary.nvim" } }, { "ojroques/nvim-osc52" }, { "nvim-tree/nvim-tree.lua" }, { "jeffkreeftmeijer/vim-numbertoggle" }, { "lukas-reineke/indent-blankline.nvim" }, - { "mbbill/undotree" }, { "phaazon/hop.nvim" }, { "edluffy/hologram.nvim", lazy = true }, { "echasnovski/mini.nvim", version = "*" }, @@ -38,6 +46,7 @@ require("lazy").setup({ { "codota/tabnine-nvim", build = "./dl_binaries.sh" }, { "akinsho/toggleterm.nvim", version = "*", config = true }, { "antonme/auto-session-nvim-tree" }, + { "jiaoshijie/undotree" }, { "williamboman/mason.nvim", build = ":MasonUpdate", -- :MasonUpdate updates registry contents @@ -67,6 +76,25 @@ require("lazy").setup({ { "neovim/nvim-lspconfig" }, }) +require('undotree').setup({ + float_diff = false, -- using float window previews diff, set this `true` will disable layout option + layout = "left_left_bottom", -- "left_bottom", "left_left_bottom" + ignore_filetype = { 'undotree', 'undotreeDiff', 'qf', 'TelescopePrompt', 'spectre_panel', 'tsplayground' }, + window = { + winblend = 0, + }, + keymaps = { + ['j'] = "move_next", + ['k'] = "move_prev", + ['J'] = "move_change_next", + ['K'] = "move_change_prev", + [''] = "action_enter", + ['p'] = "enter_diffbuf", + ['q'] = "quit", + }, +}) + +vim.cmd([[colorscheme gruvbox]]) require("nvim-lastplace").setup({ lastplace_ignore_buftype = { "quickfix", "nofile", "help" }, lastplace_ignore_filetype = { "gitcommit", "gitrebase", "svn", "hgcommit" }, @@ -151,9 +179,6 @@ local hop = require("hop") vim.keymap.set("n", "s", function() hop.hint_words() end, { remap = true }) -vim.o.background = "dark" -- or "light" for light mode -vim.cmd([[colorscheme gruvbox]]) -vim.cmd([[set undofile]]) local builtin = require("telescope.builtin") @@ -181,7 +206,8 @@ vim.api.nvim_set_keymap("n", "e", ":NvimTreeToggle", { noremap = tru vim.api.nvim_set_keymap("n", "t", ":ToggleTerm", { noremap = true, silent = true }) vim.api.nvim_set_keymap("n", "q", ":qa", { noremap = true, silent = true }) vim.api.nvim_set_keymap("n", "w", ":w", { noremap = true, silent = true }) -vim.keymap.set("n", "u", vim.cmd.UndotreeToggle) +-- vim.keymap.set("n", "u", vim.cmd.UndotreeToggle) +vim.keymap.set('n', 'u', require('undotree').toggle, { noremap = true, silent = true }) vim.o.sessionoptions = "blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal,localoptions"