diff --git a/private_dot_config/nvim/init.lua b/private_dot_config/nvim/init.lua index e72883d..a4cf7ca 100644 --- a/private_dot_config/nvim/init.lua +++ b/private_dot_config/nvim/init.lua @@ -29,6 +29,9 @@ require("lazy").setup({ { "edluffy/hologram.nvim", lazy=true }, { "echasnovski/mini.nvim", version = "*"}, { "mg979/vim-visual-multi", branch = "master"}, + { "ethanholz/nvim-lastplace" }, + { "rmagatti/auto-session" }, + { "antonme/auto-session-nvim-tree" }, { "williamboman/mason.nvim", build = ":MasonUpdate", -- :MasonUpdate updates registry contents @@ -58,6 +61,13 @@ require("lazy").setup({ { "neovim/nvim-lspconfig" }, }) +require'nvim-lastplace'.setup { + lastplace_ignore_buftype = {"quickfix", "nofile", "help"}, + lastplace_ignore_filetype = {"gitcommit", "gitrebase", "svn", "hgcommit"}, + lastplace_open_folds = true +} + + require("hop").setup() require("mini.ai").setup() require("mini.pairs").setup() @@ -69,6 +79,7 @@ require("mini.bracketed").setup() require("mini.surround").setup() require("mini.completion").setup() + require('hologram').setup{ auto_display = true -- WIP automatic markdown image display, may be prone to breaking } @@ -132,10 +143,11 @@ vim.keymap.set("n", "fh", builtin.help_tags, {}) --- set termguicolors to enable highlight groups vim.opt.termguicolors = true + require("nvim-tree").setup({ sort_by = "case_insensitive", view = { - width = 50, + width = 22, }, renderer = { group_empty = true, @@ -144,11 +156,43 @@ require("nvim-tree").setup({ dotfiles = false, }, }) + + vim.api.nvim_set_keymap("n", "e", ":NvimTreeToggle", { noremap = true, silent = true }) -vim.api.nvim_set_keymap("n", "q", ":q", { 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.o.sessionoptions="blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal,localoptions" + +local auto_session = require("auto-session") +local auto_session_nvim_tree = require("auto-session-nvim-tree") + +-- auto_session.setup { +-- log_level = "error", +-- auto_session_root_dir=vim.fn.stdpath('data').."/sessions/", +-- auto_session_enabled = true, +-- auto_save_enabled = true, +-- auto_restore_enabled = true, +-- auto_session_suppress_dirs = nil, +-- auto_session_use_git_branch = nil, +-- cwd_change_handling = { +-- restore_upcoming_session = true, -- This is necessary!! +-- }, +-- -- the configs below are lua only +-- bypass_session_save_file_types = nil +-- } +auto_session.setup { + log_level = "error", + cwd_change_handling = { + restore_upcoming_session = true, -- This is necessary!! + }, +} +auto_session_nvim_tree.setup(auto_session) + + + vim.cmd([[highlight IndentBlanklineIndent1 guifg=#443838 gui=nocombine]]) vim.opt.tabstop = 4