diff --git a/config/nvim/lazy-lock.json b/config/nvim/lazy-lock.json index be1702a..a60d1fc 100644 --- a/config/nvim/lazy-lock.json +++ b/config/nvim/lazy-lock.json @@ -1,6 +1,7 @@ { "LuaSnip": { "branch": "master", "commit": "80a8528f084a97b624ae443a6f50ff8074ba486b" }, "alpha-nvim": { "branch": "main", "commit": "234822140b265ec4ba3203e3e0be0e0bb826dff5" }, + "auto-session": { "branch": "main", "commit": "3eb26b949e1b90798e84926848551046e2eb0721" }, "bufferline.nvim": { "branch": "main", "commit": "357cc8f8eeb64702e6fcf2995e3b9becee99a5d3" }, "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, "cmp-cmdline": { "branch": "main", "commit": "8ee981b4a91f536f52add291594e89fb6645e451" }, diff --git a/config/nvim/lua/aleidk/options.lua b/config/nvim/lua/aleidk/options.lua index 44214d2..59c0c9f 100644 --- a/config/nvim/lua/aleidk/options.lua +++ b/config/nvim/lua/aleidk/options.lua @@ -11,62 +11,64 @@ local opt = vim.opt opt.autowrite = true -- Enable auto write --opt.clipboard = "unnamedplus" -- Sync with system clipboard opt.completeopt = "menu,menuone,noselect" -opt.conceallevel = 3 -- Hide * markup for bold and italic -opt.confirm = true -- Confirm to save changes before exiting modified buffer -opt.cursorline = true -- Enable highlighting of the current line -opt.expandtab = true -- Use spaces instead of tabs -opt.formatoptions = "jcroqlnt" -- tcqj +opt.conceallevel = 3 -- Hide * markup for bold and italic +opt.confirm = true -- Confirm to save changes before exiting modified buffer +opt.cursorline = true -- Enable highlighting of the current line +opt.expandtab = true -- Use spaces instead of tabs +opt.formatoptions = "jcroqlnt" -- tcqj opt.grepformat = "%f:%l:%c:%m" opt.grepprg = "rg --vimgrep" -opt.ignorecase = true -- Ignore case -opt.inccommand = "nosplit" -- preview incremental substitute +opt.ignorecase = true -- Ignore case +opt.inccommand = "nosplit" -- preview incremental substitute opt.laststatus = 0 -opt.list = true -- Show some invisible characters (tabs... -opt.mouse = "a" -- Enable mouse mode -opt.number = true -- Print line number -opt.pumblend = 10 -- Popup blend -opt.pumheight = 10 -- Maximum number of entries in a popup -opt.relativenumber = true -- Relative line numbers -opt.scrolloff = 8 -- Lines of context +opt.list = true -- Show some invisible characters (tabs... +opt.mouse = "a" -- Enable mouse mode +opt.number = true -- Print line number +opt.pumblend = 10 -- Popup blend +opt.pumheight = 10 -- Maximum number of entries in a popup +opt.relativenumber = true -- Relative line numbers +opt.scrolloff = 8 -- Lines of context opt.sessionoptions = { "buffers", "curdir", "tabpages", "winsize" } -opt.shiftround = true -- Round indent -opt.shiftwidth = 2 -- Size of an indent +opt.shiftround = true -- Round indent +opt.shiftwidth = 2 -- Size of an indent opt.shortmess:append({ W = true, I = true, c = true }) -opt.showmode = false -- Dont show mode since we have a statusline -opt.sidescrolloff = 8 -- Columns of context -opt.signcolumn = "yes" -- Always show the signcolumn, otherwise it would shift the text each time -opt.smartcase = true -- Don't ignore case with capitals -opt.smartindent = true -- Insert indents automatically +opt.showmode = false -- Dont show mode since we have a statusline +opt.sidescrolloff = 8 -- Columns of context +opt.signcolumn = "yes" -- Always show the signcolumn, otherwise it would shift the text each time +opt.smartcase = true -- Don't ignore case with capitals +opt.smartindent = true -- Insert indents automatically opt.spelllang = { "en" } -opt.splitbelow = true -- Put new windows below current -opt.splitright = true -- Put new windows right of current -opt.tabstop = 2 -- Number of spaces tabs count for -opt.termguicolors = true -- True color support +opt.splitbelow = true -- Put new windows below current +opt.splitright = true -- Put new windows right of current +opt.tabstop = 2 -- Number of spaces tabs count for +opt.termguicolors = true -- True color support opt.timeoutlen = 300 opt.undofile = true opt.undolevels = 10000 -opt.updatetime = 200 -- Save swap file and trigger CursorHold -opt.wildmode = "longest:full,full" -- Command-line completion mode -opt.winminwidth = 5 -- Minimum window width -opt.wrap = false -- Disable line wrap +opt.updatetime = 200 -- Save swap file and trigger CursorHold +opt.wildmode = "longest:full,full" -- Command-line completion mode +opt.winminwidth = 5 -- Minimum window width +opt.wrap = false -- Disable line wrap + +vim.o.sessionoptions = "blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal,localoptions" vim.filetype.add({ - -- Detect and assign filetype based on the extension of the filename - extension = { - mdx = "mdx", - log = "log", - conf = "conf", - env = "dotenv", - }, - -- Detect and apply filetypes based on the entire filename - filename = { - [".env"] = "dotenv", - ["env"] = "dotenv", - ["tsconfig.json"] = "jsonc", - }, - -- Detect and apply filetypes based on certain patterns of the filenames - pattern = { - -- INFO: Match filenames like - ".env.example", ".env.local" and so on - ["%.env%.[%w_.-]+"] = "dotenv", - }, + -- Detect and assign filetype based on the extension of the filename + extension = { + mdx = "mdx", + log = "log", + conf = "conf", + env = "dotenv", + }, + -- Detect and apply filetypes based on the entire filename + filename = { + [".env"] = "dotenv", + ["env"] = "dotenv", + ["tsconfig.json"] = "jsonc", + }, + -- Detect and apply filetypes based on certain patterns of the filenames + pattern = { + -- INFO: Match filenames like - ".env.example", ".env.local" and so on + ["%.env%.[%w_.-]+"] = "dotenv", + }, }) diff --git a/config/nvim/lua/aleidk/plugins/completion.lua b/config/nvim/lua/aleidk/plugins/completion.lua index 6505c1d..f4f8eaa 100644 --- a/config/nvim/lua/aleidk/plugins/completion.lua +++ b/config/nvim/lua/aleidk/plugins/completion.lua @@ -10,6 +10,7 @@ return { "petertriho/cmp-git", "hrsh7th/cmp-cmdline", "saadparwaiz1/cmp_luasnip", + "L3MON4D3/LuaSnip", }, config = function() vim.api.nvim_set_hl(0, "CmpGhostText", { link = "Comment", default = true }) diff --git a/config/nvim/lua/aleidk/plugins/init.lua b/config/nvim/lua/aleidk/plugins/init.lua index 92285e9..f50beaa 100644 --- a/config/nvim/lua/aleidk/plugins/init.lua +++ b/config/nvim/lua/aleidk/plugins/init.lua @@ -1,16 +1,9 @@ return { - -- NOTE: First, some plugins that don't require any configuration - -- Detect tabstop and shiftwidth automatically "tpope/vim-sleuth", { - -- Autocompletion - "hrsh7th/nvim-cmp", - dependencies = { "hrsh7th/cmp-nvim-lsp", "L3MON4D3/LuaSnip", "saadparwaiz1/cmp_luasnip" }, - }, - - { + -- Highlight word under cursor "RRethy/vim-illuminate", event = { "BufReadPost", "BufNewFile" }, opts = { delay = 200 }, diff --git a/config/nvim/lua/aleidk/plugins/sessions.lua b/config/nvim/lua/aleidk/plugins/sessions.lua new file mode 100644 index 0000000..d66be94 --- /dev/null +++ b/config/nvim/lua/aleidk/plugins/sessions.lua @@ -0,0 +1,10 @@ +return { + -- sessions + "rmagatti/auto-session", + config = function() + require("auto-session").setup({ + log_level = "error", + auto_session_suppress_dirs = { "~/", "~/Downloads", "/" }, + }) + end, +} diff --git a/config/tmux/plugins/.gitkeep b/config/tmux/plugins/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/config/tmux/tmux.conf b/config/tmux/tmux.conf index 4f0a60c..d204edf 100644 --- a/config/tmux/tmux.conf +++ b/config/tmux/tmux.conf @@ -23,7 +23,7 @@ set -g prefix C-Space # Reload Config unbind R -bind R source-file ~/.tmux.conf \; display "Reloaded ~/.tmux.conf" +bind R source-file ~/.config/tmux/tmux.conf \; display "Reloaded ~/.config/tmux/tmux.conf" # Copy Mode unbind [ @@ -71,8 +71,8 @@ bind l next-window if "test ! -d ~/.config/tmux/plugins/tpm" \ "run 'git clone https://github.com/tmux-plugins/tpm ~/.config/tmux/plugins/tpm && ~/.config/tmux/plugins/tpm/bin/install_plugins'" -set-environment -g TMUX_PLUGIN_MANAGER_PATH '~/.config/tmux/plugins/tpm' run -b '~/.config/tmux/plugins/tpm/tpm' +set -g @plugin 'tmux-plugins/tpm' set -g @plugin 'catppuccin/tmux' # set -g @plugin 'rwxd/catppuccin-tmux' @@ -82,8 +82,8 @@ set -g @plugin 'laktak/extrakto' set -g @plugin 'christoomey/vim-tmux-navigator' set -g @plugin 'sainnhe/tmux-fzf' set -g @plugin 'tmux-plugins/tmux-resurrect' +set -g @plugin 'tmux-plugins/tmux-continuum' -set -g @plugin 'tmux-plugins/tpm' ## Plugin Config set -g @catppuccin_flavour 'macchiato' @@ -94,10 +94,12 @@ set -g @catppuccin_status_right_separator "" set -g @catppuccin_status_right_separator_inverse "no" set -g @catppuccin_status_fill "icon" set -g @catppuccin_status_connect_separator "no" +set -g @continuum-restore 'on' +set -g @resurrect-processes 'vi vim nvim man "~pnpm dev->pnpm dev *"' TMUX_FZF_LAUNCH_KEY="w" TMUX_FZF_OPTIONS="-p -w 80% -h 60% -m" # Tmux Managment -bind-key "f" run-shell -b "$HOME/.tmux/plugins/tmux-fzf/scripts/session.sh switch" -bind-key "F" run-shell -b "$HOME/.tmux/plugins/tmux-fzf/scripts/window.sh switch" +bind-key "f" run-shell -b "$HOME/.config/tmux/plugins/tmux-fzf/scripts/session.sh switch" +bind-key "F" run-shell -b "$HOME/.config/tmux/plugins/tmux-fzf/scripts/window.sh switch"