From c2c7818d2bfaaa03cb23f54957ff00a4f07834a5 Mon Sep 17 00:00:00 2001 From: Blake Ridgway Date: Mon, 6 Jul 2026 12:55:07 -0500 Subject: [PATCH] fixes and removed unwanted stuff --- .gitconfig-advancedmetrics | 4 +- aliases.bash | 2 +- bashrc | 92 ++++++--------- bashrc.old | 85 ++++++++++++++ gitconfig | 2 + nvim/lazy-lock.json | 34 +++--- nvim/lua/plugins/init.lua | 81 +++++++++++-- nvim/lua/plugins/init.lua.old | 213 ++++++++++++++++++++++++++++++++++ 8 files changed, 425 insertions(+), 88 deletions(-) create mode 100644 bashrc.old create mode 100644 nvim/lua/plugins/init.lua.old diff --git a/.gitconfig-advancedmetrics b/.gitconfig-advancedmetrics index 2fee681..8e3592f 100644 --- a/.gitconfig-advancedmetrics +++ b/.gitconfig-advancedmetrics @@ -2,5 +2,5 @@ email = blake.ridgway@ametrics.org name = Blake Ridgway # optional – set your name too -[core] - sshCommand = ssh -i ~/.ssh/id_rsa_ametrics -o IdentitiesOnly=yes +#[core] +# sshCommand = ssh -i ~/.ssh/id_rsa_ametrics -o IdentitiesOnly=yes diff --git a/aliases.bash b/aliases.bash index b36b863..68b515e 100644 --- a/aliases.bash +++ b/aliases.bash @@ -11,7 +11,7 @@ alias cpu='btop' alias mem='btop' # Get your current public IP -alias ip="curl -4 icanhazip.com" +#alias ip="curl -4 icanhazip.com" alias ip6="curl -6 icanhazip.com" # Git diff --git a/bashrc b/bashrc index 80e9970..26f4f40 100644 --- a/bashrc +++ b/bashrc @@ -1,82 +1,62 @@ # If not running interactively, don't do anything case $- in - *i*) ;; + *i*) ;; *) return ;; esac -# Set default user +# ── Identity ─────────────────────────────────────────── DEFAULT_USER="$USER" -# Editor +# ── Editor ───────────────────────────────────────────── export EDITOR='nvim' -# Environment variables +# ── PATH additions ───────────────────────────────────── export GOPATH="$HOME/go" export PATH="$PATH:$GOPATH/bin:/usr/local/go/bin" - -# Local bin export PATH="$PATH:$HOME/.local/bin" +export PATH="$PATH:$HOME/.pulumi/bin" +export CPLUS_INCLUDE_PATH=/usr/local/include -# Node.js and NVM configuration +# ── NVM ──────────────────────────────────────────────── export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" [ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion" -# Rust/Cargo -[ -f "$HOME/.cargo/env" ] && source "$HOME/.cargo/env" +# ── Rust/Cargo ───────────────────────────────────────── +[ -f "$HOME/.cargo/env" ] && . "$HOME/.cargo/env" -# SSH agent -if [ -z "$SSH_AGENT_PID" ]; then - eval "$(ssh-agent -s)" - ssh-add -A 2>/dev/null +# ── SSH agent ────────────────────────────────────────── +if [ -z "$SSH_AGENT_PID" ] || ! kill -0 "$SSH_AGENT_PID" 2>/dev/null; then + eval "$(ssh-agent -s)" + ssh-add 2>/dev/null fi -# FZF (if installed) -[ -f ~/.fzf.bash ] && source ~/.fzf.bash +# ── Secrets (keep this file chmod 600) ───────────────── +[ -f "$HOME/.secrets" ] && . "$HOME/.secrets" -# Oh My Posh prompt +# ── FZF ──────────────────────────────────────────────── +[ -f ~/.fzf.bash ] && . ~/.fzf.bash + +# ── Git completion ───────────────────────────────────── +[ -f /usr/share/bash-completion/completions/git ] \ + && . /usr/share/bash-completion/completions/git + +# ── Oh My Posh ───────────────────────────────────────── eval "$(oh-my-posh init bash --config ~/.config/oh-my-posh/theme.omp.json)" -# Bash completion for Git -if [ -f /usr/share/bash-completion/completions/git ]; then - source /usr/share/bash-completion/completions/git -fi - -# Custom aliases -if [ -f "$HOME/dotfiles/aliases.bash" ]; then - source "$HOME/dotfiles/aliases.bash" -fi - -# Key timeout -export KEYTIMEOUT=1 - -# C++ include path -export CPLUS_INCLUDE_PATH=/usr/local/include +# ── Aliases ──────────────────────────────────────────── +[ -f "$HOME/dotfiles/aliases.bash" ] && . "$HOME/dotfiles/aliases.bash" +# ── work() helper ────────────────────────────────────── work() { - set +e - - local proj="$HOME/Drives/500GB/PycharmProjects/time_logix" - cd "$proj" || { echo "No such dir: $proj" >&2; return 1; } - - [ -d venv ] || python3 -m venv venv || { echo "venv create failed" >&2; return 1; } - - . venv/bin/activate - trap 'deactivate 2>/dev/null || true' RETURN - - python main.py - local code=$? - - cd ~ || true - - if [ $code -ne 0 ]; then - echo "main.py exited with code $code" - fi + set +e + local proj="$HOME/Drives/500GB/PycharmProjects/time_logix" + cd "$proj" || { echo "No such dir: $proj" >&2; return 1; } + [ -d venv ] || python3 -m venv venv || { echo "venv create failed" >&2; return 1; } + . venv/bin/activate + trap 'deactivate 2>/dev/null || true' RETURN + python main.py + local code=$? + cd ~ || true + [ $code -ne 0 ] && echo "main.py exited with code $code" } - -# add Pulumi to the PATH -export PATH=$PATH:/home/proc/.pulumi/bin - -# deepseek -export DEEPSEEK_API_KEY="sk-d75aeba06fc546a88a7ff171b9bbc098" - diff --git a/bashrc.old b/bashrc.old new file mode 100644 index 0000000..08f703e --- /dev/null +++ b/bashrc.old @@ -0,0 +1,85 @@ +# If not running interactively, don't do anything +case $- in + *i*) ;; + *) return ;; +esac + +# Set default user +DEFAULT_USER="$USER" + +# Editor +export EDITOR='nvim' + +# Environment variables +export GOPATH="$HOME/go" +export PATH="$PATH:$GOPATH/bin:/usr/local/go/bin" + +# Local bin +export PATH="$PATH:$HOME/.local/bin" + +# Node.js and NVM configuration +export NVM_DIR="$HOME/.nvm" +[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" +[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion" + +# Rust/Cargo +[ -f "$HOME/.cargo/env" ] && source "$HOME/.cargo/env" + +# SSH agent +if [ -z "$SSH_AGENT_PID" ]; then + eval "$(ssh-agent -s)" + ssh-add -A 2>/dev/null +fi + +# FZF (if installed) +[ -f ~/.fzf.bash ] && source ~/.fzf.bash + +# Oh My Posh prompt +eval "$(oh-my-posh init bash --config ~/.config/oh-my-posh/theme.omp.json)" + +# Bash completion for Git +if [ -f /usr/share/bash-completion/completions/git ]; then + source /usr/share/bash-completion/completions/git +fi + +# Custom aliases +if [ -f "$HOME/dotfiles/aliases.bash" ]; then + source "$HOME/dotfiles/aliases.bash" +fi + +# Key timeout +export KEYTIMEOUT=1 + +# C++ include path +export CPLUS_INCLUDE_PATH=/usr/local/include + +work() { + set +e + + local proj="$HOME/Drives/500GB/PycharmProjects/time_logix" + cd "$proj" || { echo "No such dir: $proj" >&2; return 1; } + + [ -d venv ] || python3 -m venv venv || { echo "venv create failed" >&2; return 1; } + + . venv/bin/activate + trap 'deactivate 2>/dev/null || true' RETURN + + python main.py + local code=$? + + cd ~ || true + + if [ $code -ne 0 ]; then + echo "main.py exited with code $code" + fi +} + +# add Pulumi to the PATH +export PATH=$PATH:/home/proc/.pulumi/bin + +# deepseek +export DEEPSEEK_API_KEY="sk-9d18c60c04b84c17ab199ccc6493b676" + +. "$HOME/.cargo/env" + + diff --git a/gitconfig b/gitconfig index 681cc25..07fd830 100644 --- a/gitconfig +++ b/gitconfig @@ -10,3 +10,5 @@ [includeIf "gitdir:~/dev/AdvancedMetrics/"] path = ~/dotfiles/.gitconfig-advancedmetrics +[pull] + rebase = true diff --git a/nvim/lazy-lock.json b/nvim/lazy-lock.json index 800660c..8677a3a 100644 --- a/nvim/lazy-lock.json +++ b/nvim/lazy-lock.json @@ -1,44 +1,44 @@ { - "LuaSnip": { "branch": "master", "commit": "a62e1083a3cfe8b6b206e7d3d33a51091df25357" }, - "NvChad": { "branch": "v2.5", "commit": "d042cc975247c2aa55fcb228e5d146dc1dc6c648" }, - "avante.nvim": { "branch": "main", "commit": "b69b0166275a36febdde1de0c92e1ef9588de963" }, + "LuaSnip": { "branch": "master", "commit": "0abc8f390b278c3b4aabc4c004ac8a088b65cf24" }, + "NvChad": { "branch": "v2.5", "commit": "add44b952d631981614bbb8cfc6f7002f296dfe6" }, + "avante.nvim": { "branch": "main", "commit": "0222885dff8ff17def0a78ccdeaf02c32230a55a" }, "base46": { "branch": "v3.0", "commit": "884b990dcdbe07520a0892da6ba3e8d202b46337" }, - "cmp-async-path": { "branch": "main", "commit": "f8af3f726e07f2e9d37672eaa9102581aefce149" }, + "cmp-async-path": { "branch": "main", "commit": "98185a91d49ff5dd249aebf2f7456e18063fa2a0" }, "cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" }, "cmp-nvim-lsp": { "branch": "main", "commit": "cbc7b02bb99fae35cb42f514762b89b5126651ef" }, "cmp-nvim-lua": { "branch": "main", "commit": "e3a22cb071eb9d6508a156306b102c45cd2d573d" }, "cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" }, - "conform.nvim": { "branch": "master", "commit": "dca1a190aa85f9065979ef35802fb77131911106" }, + "conform.nvim": { "branch": "master", "commit": "619363c30309d29ffa631e67c8183f2a72caa373" }, "dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" }, "friendly-snippets": { "branch": "main", "commit": "6cd7280adead7f586db6fccbd15d2cac7e2188b9" }, - "gitsigns.nvim": { "branch": "main", "commit": "dd3f588bacbeb041be6facf1742e42097f62165d" }, + "gitsigns.nvim": { "branch": "main", "commit": "eb60cc7b94c46005237fd34170d76f3a089a90aa" }, "harpoon": { "branch": "harpoon2", "commit": "87b1a3506211538f460786c23f98ec63ad9af4e5" }, "indent-blankline.nvim": { "branch": "master", "commit": "d28a3f70721c79e3c5f6693057ae929f3d9c0a03" }, "lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" }, "lazygit.nvim": { "branch": "main", "commit": "a04ad0dbc725134edbee3a5eea29290976695357" }, - "mason.nvim": { "branch": "main", "commit": "cb8445f8ce85d957416c106b780efd51c6298f89" }, + "mason.nvim": { "branch": "main", "commit": "2a6940af80375532e5e9e7c1f2fc6319a1b7a69d" }, "menu": { "branch": "main", "commit": "7a0a4a2896b715c066cfbe320bdc048091874cc6" }, "minty": { "branch": "main", "commit": "aafc9e8e0afe6bf57580858a2849578d8d8db9e0" }, - "minuet-ai.nvim": { "branch": "main", "commit": "7e696b717082e524286192ddaf397f709427f1a5" }, + "minuet-ai.nvim": { "branch": "main", "commit": "d29dec4c36be2b41aa10e70938b7b09a03f0bdba" }, "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, - "nvim-autopairs": { "branch": "master", "commit": "59bce2eef357189c3305e25bc6dd2d138c1683f5" }, + "nvim-autopairs": { "branch": "master", "commit": "7b9923abad60b903ece7c52940e1321d39eccc79" }, "nvim-cmp": { "branch": "main", "commit": "a1d504892f2bc56c2e79b65c6faded2fd21f3eca" }, - "nvim-dap": { "branch": "master", "commit": "45a69eba683a2c448dd9ecfc4de89511f0646b5f" }, + "nvim-dap": { "branch": "master", "commit": "9e848e09a697ee95302a3ef2dd43fd6eb709e570" }, "nvim-dap-go": { "branch": "main", "commit": "b4421153ead5d726603b02743ea40cf26a51ed5f" }, "nvim-dap-ui": { "branch": "master", "commit": "1a66cabaa4a4da0be107d5eda6d57242f0fe7e49" }, - "nvim-lspconfig": { "branch": "master", "commit": "31026a13eefb20681124706a79fc1df6bf11ab27" }, + "nvim-lspconfig": { "branch": "master", "commit": "292f44408498103c47996ff5c18fd366293840d8" }, "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" }, - "nvim-tree.lua": { "branch": "master", "commit": "f9bfc0059eca24546b69a7006110463da4808f8f" }, + "nvim-tree.lua": { "branch": "master", "commit": "7ff7040bf6c246671eb55cb1727de4fd9f92a106" }, "nvim-treesitter": { "branch": "main", "commit": "4916d6592ede8c07973490d9322f187e07dfefac" }, - "nvim-web-devicons": { "branch": "master", "commit": "4fc505ac7bd7692824a142e96e5f529c133862f8" }, - "oil.nvim": { "branch": "master", "commit": "0fcc83805ad11cf714a949c98c605ed717e0b83e" }, + "nvim-web-devicons": { "branch": "master", "commit": "dad71387de386a946b123079d0e53f23028f3abd" }, + "oil.nvim": { "branch": "master", "commit": "b73018b75affd13fa38e2fc94ef753b465f770d7" }, "plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" }, - "render-markdown.nvim": { "branch": "main", "commit": "3f3eea97b80839f629c951ca660ffd125bfa5b34" }, - "telescope.nvim": { "branch": "master", "commit": "f04ab730b8f9c6bf3f54a206d0dcddfd70c52d59" }, + "render-markdown.nvim": { "branch": "main", "commit": "f422cb5c6855f150e2ddcfaf44e7157b98b34f6a" }, + "telescope.nvim": { "branch": "master", "commit": "427b576c16792edad01a92b89721d923c19ad60f" }, "todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" }, "toggleterm.nvim": { "branch": "main", "commit": "50ea089fc548917cc3cc16b46a8211833b9e3c7c" }, "trouble.nvim": { "branch": "main", "commit": "bd67efe408d4816e25e8491cc5ad4088e708a69a" }, - "ui": { "branch": "v3.0", "commit": "cb75908a86720172594b30de147272c1b3a7f452" }, + "ui": { "branch": "v3.0", "commit": "3e67e9d5325fd47fdbc90ca00a147db2f3525754" }, "volt": { "branch": "main", "commit": "620de1321f275ec9d80028c68d1b88b409c0c8b1" }, "which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" } } diff --git a/nvim/lua/plugins/init.lua b/nvim/lua/plugins/init.lua index 89018bb..d612be6 100644 --- a/nvim/lua/plugins/init.lua +++ b/nvim/lua/plugins/init.lua @@ -58,14 +58,21 @@ return { { "folke/trouble.nvim", cmd = "Trouble", - opts = { use_diagnostic_signs = true }, + opts = { + signs = { + error = "", + warn = "", + hint = "", + info = "", + }, + }, }, -- Floating terminal { "akinsho/toggleterm.nvim", version = "*", - cmd = "ToggleTerm", + cmd = { "ToggleTerm", "TermExec" }, keys = { [[]] }, opts = { open_mapping = [[]], @@ -91,6 +98,12 @@ return { }, config = function() require "configs.dap" + + -- Auto-open/close DAP UI with debug sessions + local dap, dapui = require("dap"), require("dapui") + dap.listeners.after.event_initialized["dapui_config"] = dapui.open + dap.listeners.before.event_terminated["dapui_config"] = dapui.close + dap.listeners.before.event_exited["dapui_config"] = dapui.close end, }, @@ -108,6 +121,51 @@ return { branch = "harpoon2", dependencies = { "nvim-lua/plenary.nvim" }, opts = {}, + keys = { + { + "ha", + function() require("harpoon"):list():add() end, + desc = "Harpoon: add file", + }, + { + "hh", + function() + local h = require("harpoon") + h.ui:toggle_quick_menu(h:list()) + end, + desc = "Harpoon: quick menu", + }, + { + "1", + function() require("harpoon"):list():select(1) end, + desc = "Harpoon: file 1", + }, + { + "2", + function() require("harpoon"):list():select(2) end, + desc = "Harpoon: file 2", + }, + { + "3", + function() require("harpoon"):list():select(3) end, + desc = "Harpoon: file 3", + }, + { + "4", + function() require("harpoon"):list():select(4) end, + desc = "Harpoon: file 4", + }, + { + "]", + function() require("harpoon"):list():next() end, + desc = "Harpoon: next file", + }, + { + "[", + function() require("harpoon"):list():prev() end, + desc = "Harpoon: prev file", + }, + }, }, -- ── AI ─────────────────────────────────────────────────────────────────────── @@ -132,13 +190,12 @@ return { providers = { deepseek = { __inherited_from = "openai", - api_key_name = "cmd:grep -m1 DEEPSEEK_API_KEY ~/.bashrc | grep -oP '(?<=\")[^\"]*(?=\")'", + api_key_name = "DEEPSEEK_API_KEY", endpoint = "https://api.deepseek.com/v1", - model = "deepseek-chat", + model = "deepseek-v4-pro", extra_request_body = { temperature = 0, max_tokens = 8192 }, }, }, - -- Use dressing for concealed API-key prompts (native provider has a bug) input = { provider = "dressing" }, }, config = function(_, opts) @@ -158,21 +215,21 @@ return { provider = "openai_compatible", provider_options = { openai_compatible = { - api_key = "DEEPSEEK_API_KEY", + api_key_name = "DEEPSEEK_API_KEY", end_point = "https://api.deepseek.com/chat/completions", - model = "deepseek-chat", + model = "deepseek-v4-pro", name = "DeepSeek", optional = { max_tokens = 256, top_p = 0.9 }, }, }, virtualtext = { - auto_trigger_ft = {}, -- manual trigger only () + auto_trigger_ft = {}, -- manual trigger only keymap = { - accept = "", + accept = "", accept_line = "", - prev = "", - next = "", - dismiss = "", + prev = "", + next = "", + dismiss = "", }, }, }, diff --git a/nvim/lua/plugins/init.lua.old b/nvim/lua/plugins/init.lua.old new file mode 100644 index 0000000..85bee0e --- /dev/null +++ b/nvim/lua/plugins/init.lua.old @@ -0,0 +1,213 @@ +return { + -- Treesitter: syntax highlighting + code understanding + { + "nvim-treesitter/nvim-treesitter", + opts = { + ensure_installed = { + "vim", "lua", "vimdoc", + "go", "gomod", "gowork", "gosum", + "c_sharp", + "yaml", + "bash", + "json", "jsonc", + "toml", + "markdown", "markdown_inline", + }, + }, + }, + + -- LSP servers + { + "neovim/nvim-lspconfig", + config = function() + require "configs.lspconfig" + end, + }, + + -- Formatting (with format-on-save) + { + "stevearc/conform.nvim", + event = "BufWritePre", + opts = require "configs.conform", + }, + + -- Mason: auto-install LSPs, formatters, and DAP adapters + { + "williamboman/mason.nvim", + opts = { + ensure_installed = { + -- LSPs + "gopls", + "omnisharp", + "yaml-language-server", + "bash-language-server", + -- Formatters / linters + "goimports", + "csharpier", + "prettier", + "shfmt", + "stylua", + -- DAP adapters + "delve", -- Go debugger + "netcoredbg", -- .NET debugger + }, + }, + }, + + -- Diagnostics panel + { + "folke/trouble.nvim", + cmd = "Trouble", + opts = { use_diagnostic_signs = true }, + }, + + -- Floating terminal + { + "akinsho/toggleterm.nvim", + version = "*", + cmd = "ToggleTerm", + keys = { [[]] }, + opts = { + open_mapping = [[]], + direction = "float", + float_opts = { border = "curved" }, + }, + }, + + -- Lazygit inside Neovim + { + "kdheepak/lazygit.nvim", + cmd = "LazyGit", + dependencies = { "nvim-lua/plenary.nvim" }, + }, + + -- DAP core + UI + { + "mfussenegger/nvim-dap", + dependencies = { + "rcarriga/nvim-dap-ui", + "nvim-neotest/nvim-nio", -- required by dap-ui + "leoluz/nvim-dap-go", + }, + config = function() + require "configs.dap" + end, + }, + + -- Highlight TODO/FIXME/HACK/NOTE comments + { + "folke/todo-comments.nvim", + dependencies = { "nvim-lua/plenary.nvim" }, + event = "BufReadPost", + opts = {}, + }, + + -- Harpoon2: quick-jump between pinned files per project + { + "ThePrimeagen/harpoon", + branch = "harpoon2", + dependencies = { "nvim-lua/plenary.nvim" }, + opts = {}, + }, + + -- ── AI ─────────────────────────────────────────────────────────────────────── + + -- Avante: AI sidebar chat + inline editing (DeepSeek) + { + "yetone/avante.nvim", + event = "VeryLazy", + build = "make BUILD_FROM_SOURCE=true", + dependencies = { + "stevearc/dressing.nvim", + "nvim-lua/plenary.nvim", + "MunifTanjim/nui.nvim", + { + "MeanderingProgrammer/render-markdown.nvim", + opts = { file_types = { "markdown", "Avante" } }, + ft = { "markdown", "Avante" }, + }, + }, + opts = { + provider = "deepseek", + disabled_tools = { "str_replace", "attempt_completion" }, + providers = { + deepseek = { + __inherited_from = "openai", + api_key_name = "cmd:grep -m1 DEEPSEEK_API_KEY ~/.bashrc | grep -oP '(?<=\")[^\"]*(?=\")'", + endpoint = "https://api.deepseek.com/v1", + model = "deepseek-v4-pro", + extra_request_body = { temperature = 0, max_tokens = 8192 }, + }, + }, + -- Disable image embedding (DeepSeek does not support vision yet) + image = { embed_as_base64 = false }, + -- Use explicit tokenizer to avoid Unicode errors + -- tokenizer = "cl100k_base", + -- Use dressing for concealed API-key prompts (native provider has a bug) + input = { provider = "dressing" }, + }, + config = function(_, opts) + require("avante").setup(opts) + -- DeepSeek is a REST API provider, not an ACP agent — remove ACP-only keys + pcall(vim.keymap.del, "n", "aM") + pcall(vim.keymap.del, "n", "am") + end, + }, + + -- Minuet: inline ghost-text completions (DeepSeek via OpenAI-compat endpoint) + { + "milanglacier/minuet-ai.nvim", + event = "BufReadPost", + dependencies = { "nvim-lua/plenary.nvim" }, + opts = { + provider = "openai_compatible", + disabled_tools = { "str_replace", "attempt_completion" }, + provider_options = { + openai_compatible = { + api_key = "DEEPSEEK_API_KEY", + end_point = "https://api.deepseek.com/chat/completions", + model = "deepseek-v4-pro", + name = "DeepSeek", + optional = { max_tokens = 256, top_p = 0.9 }, + }, + }, + virtualtext = { + auto_trigger_ft = {}, -- manual trigger only () + keymap = { + accept = "", + accept_line = "", + prev = "", + next = "", + dismiss = "", + }, + }, + }, + }, + + -- Expose minuet as a nvim-cmp source + { + "hrsh7th/nvim-cmp", + opts = function(_, opts) + table.insert(opts.sources, { name = "minuet" }) + return opts + end, + }, + + -- Oil: edit the filesystem like a buffer + { + "stevearc/oil.nvim", + lazy = false, + dependencies = { "nvim-tree/nvim-web-devicons" }, + opts = { + -- Keep nvim-tree as the default explorer; oil opens on demand via `-` + default_file_explorer = false, + columns = { "icon", "permissions", "size", "mtime" }, + view_options = { show_hidden = true }, + -- Don't clobber window-navigation keys + keymaps = { + [""] = false, + [""] = false, + }, + }, + }, +}