From 2f695def41b749a669e6dd751e62c9ea17f49d4a Mon Sep 17 00:00:00 2001 From: Paul Trowbridge Date: Sun, 10 May 2026 21:35:23 -0400 Subject: [PATCH] Add aerial.nvim for document outline Add aerial.nvim plugin spec with Telescope picker (O) and side panel toggle (o). Extend deploy_nvim in _lib.sh to also symlink dotfiles/nvim/plugins/ into ~/.config/nvim/lua/plugins/. Co-Authored-By: Claude Sonnet 4.6 --- _lib.sh | 7 +++++++ dotfiles/nvim/plugins/aerial.lua | 25 +++++++++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 dotfiles/nvim/plugins/aerial.lua diff --git a/_lib.sh b/_lib.sh index 3ccf356..b2bce63 100755 --- a/_lib.sh +++ b/_lib.sh @@ -79,4 +79,11 @@ deploy_nvim() { [[ -f "$mod" ]] || continue create_symlink "$mod" ~/.config/nvim/lua/"$(basename "$mod")" done + if [[ -d "$src_dir/plugins" ]]; then + mkdir -p ~/.config/nvim/lua/plugins + for mod in "$src_dir/plugins"/*.lua; do + [[ -f "$mod" ]] || continue + create_symlink "$mod" ~/.config/nvim/lua/plugins/"$(basename "$mod")" + done + fi } diff --git a/dotfiles/nvim/plugins/aerial.lua b/dotfiles/nvim/plugins/aerial.lua new file mode 100644 index 0000000..f421580 --- /dev/null +++ b/dotfiles/nvim/plugins/aerial.lua @@ -0,0 +1,25 @@ +return { + { + "stevearc/aerial.nvim", + dependencies = { + "nvim-treesitter/nvim-treesitter", + "nvim-telescope/telescope.nvim", + }, + keys = { + { "O", "Telescope aerial", desc = "Document outline picker" }, + { "o", "AerialToggle", desc = "Document outline panel" }, + }, + config = function() + require("aerial").setup({ + backends = { "treesitter" }, + show_guides = true, + filter_kind = false, + layout = { + min_width = 20, + max_width = { 40, 0.2 }, + }, + }) + require("telescope").load_extension("aerial") + end, + }, +}