From 68920817367ad475255e2d94444c5bf81ae26d31 Mon Sep 17 00:00:00 2001 From: Oscar Wallberg Date: Mon, 4 Sep 2023 16:22:37 +0200 Subject: [PATCH] Clean up aerial --- lua/config/aerial.lua | 217 +----------------------------------------- 1 file changed, 1 insertion(+), 216 deletions(-) diff --git a/lua/config/aerial.lua b/lua/config/aerial.lua index 2369bad..a100a56 100644 --- a/lua/config/aerial.lua +++ b/lua/config/aerial.lua @@ -17,150 +17,15 @@ -- https://github.com/stevearc/aerial.nvim require("aerial").setup({ - -- Priority list of preferred backends for aerial. - -- This can be a filetype map (see :help aerial-filetype-map) - backends = { "treesitter", "lsp", "markdown", }, - layout = { - -- These control the width of the aerial window. - -- They can be integers or a float between 0 and 1 (e.g. 0.4 for 40%) - -- min_width and max_width can be a list of mixed types. - -- max_width = {40, 0.2} means "the lesser of 40 columns or 20% of total" - max_width = { 40, 0.2, }, - width = nil, min_width = 40, - - -- Determines the default direction to open the aerial window. The 'prefer' - -- options will open the window in the other direction *if* there is a - -- different buffer in the way of the preferred direction - -- Enum: prefer_right, prefer_left, right, left, float - default_direction = "left", - - -- Determines where the aerial window will be opened - -- edge - open aerial at the far right/left of the editor - -- window - open aerial to the right/left of the current window placement = "edge", }, - - -- Determines how the aerial window decides which buffer to display symbols for - -- window - aerial window will display symbols for the buffer in the window from which it was opened - -- global - aerial window will display symbols for the current window - attach_mode = "window", - - -- List of enum values that configure when to auto-close the aerial window - -- unfocus - close aerial when you leave the original source window - -- switch_buffer - close aerial when you change buffers in the source window - -- unsupported - close aerial when attaching to a buffer that has no symbol source - close_automatic_events = {}, - - -- Set to false to remove the default keybindings for the aerial buffer - default_bindings = true, - - -- Disable aerial on files with this many lines - disable_max_lines = 10000, - - -- Disable aerial on files this size or larger (in bytes) - disable_max_size = 10000000, -- Default 2MB - - -- A list of all symbols to display. Set to false to display all symbols. - -- This can be a filetype map (see :help aerial-filetype-map) - -- To see all available values, see :help SymbolKind - filter_kind = { - "Class", - "Constructor", - "Enum", - "Function", - "Interface", - "Module", - "Method", - "Struct", - }, - - -- Determines line highlighting mode when multiple splits are visible. - -- split_width Each open window will have its cursor location marked in the - -- aerial buffer. Each line will only be partially highlighted - -- to indicate which window is at that location. - -- full_width Each open window will have its cursor location marked as a - -- full-width highlight in the aerial buffer. - -- last Only the most-recently focused window will have its location - -- marked in the aerial buffer. - -- none Do not show the cursor locations in the aerial window. - highlight_mode = "split_width", - - -- Highlight the closest symbol if the cursor is not exactly on one. - highlight_closest = true, - - -- Highlight the symbol in the source buffer when cursor is in the aerial win + disable_max_size = 10000000, highlight_on_hover = true, - - -- When jumping to a symbol, highlight the line for this many ms. - -- Set to false to disable - highlight_on_jump = 300, - - -- Define symbol icons. You can also specify "Collapsed" to change the - -- icon when the tree is collapsed at that symbol, or "Collapsed" to specify a - -- default collapsed icon. The default icon set is determined by the - -- "nerd_font" option below. - -- If you have lspkind-nvim installed, it will be the default icon set. - -- This can be a filetype map (see :help aerial-filetype-map) - icons = {}, - - -- Control which windows and buffers aerial should ignore. - -- If attach_mode is "global", focusing an ignored window/buffer will - -- not cause the aerial window to update. - -- If open_automatic is true, focusing an ignored window/buffer will not - -- cause an aerial window to open. - -- If open_automatic is a function, ignore rules have no effect on aerial - -- window opening behavior; it's entirely handled by the open_automatic - -- function. ignore = { - -- Ignore unlisted buffers. See :help buflisted unlisted_buffers = true, - - -- List of filetypes to ignore. - filetypes = {}, - - -- Ignored buftypes. - -- Can be one of the following: - -- false or nil - No buftypes are ignored. - -- "special" - All buffers other than normal buffers are ignored. - -- table - A list of buftypes to ignore. See :help buftype for the - -- possible values. - -- function - A function that returns true if the buffer should be - -- ignored or false if it should not be ignored. - -- Takes two arguments, `bufnr` and `buftype`. - buftypes = "special", - - -- Ignored wintypes. - -- Can be one of the following: - -- false or nil - No wintypes are ignored. - -- "special" - All windows other than normal windows are ignored. - -- table - A list of wintypes to ignore. See :help win_gettype() for the - -- possible values. - -- function - A function that returns true if the window should be - -- ignored or false if it should not be ignored. - -- Takes two arguments, `winid` and `wintype`. - wintypes = "special", }, - - -- When you fold code with za, zo, or zc, update the aerial tree as well. - -- Only works when manage_folds = true - link_folds_to_tree = true, - - -- Fold code when you open/collapse symbols in the tree. - -- Only works when manage_folds = true - link_tree_to_folds = true, - - -- Use symbol tree for folding. Set to true or false to enable/disable - -- 'auto' will manage folds if your previous foldmethod was 'manual' - manage_folds = false, - - -- Set default symbol icns to use patched font icons (see https://www.nerdfonts.com/) - -- "auto" will set it to true if nvim-web-devicons or lspkind-nvim is installed. - nerd_font = "auto", - - -- Call this function when aerial attaches to a buffer. - -- Useful for setting keymaps. Takes a single `bufnr` argument. on_attach = function (bufnr) -- Toggle the aerial window with a vim.api.nvim_buf_set_keymap(bufnr, "n", "at", "AerialToggle!", {}) @@ -171,85 +36,5 @@ require("aerial").setup({ vim.api.nvim_buf_set_keymap(bufnr, "n", "[[", "AerialPrevUp", {}) vim.api.nvim_buf_set_keymap(bufnr, "n", "]]", "AerialNextUp", {}) end, - - -- Call this function when aerial first sets symbols on a buffer. - -- Takes a single `bufnr` argument. - on_first_symbols = nil, - - -- Automatically open aerial when entering supported buffers. - -- This can be a function (see :help aerial-open-automatic) - open_automatic = false, - - -- Run this command after jumping to a symbol (false will disable) - post_jump_cmd = "normal! zz", - - -- When true, aerial will automatically close after jumping to a symbol - close_on_select = false, - - -- Show box drawing characters for the tree hierarchy show_guides = true, - - -- The autocmds that trigger symbols update (not used for LSP backend) - update_events = "TextChanged,InsertLeave", - - -- Customize the characters used when show_guides = true - guides = { - -- When the child item has a sibling below it - mid_item = "├─", - -- When the child item is the last in the list - last_item = "└─", - -- When there are nested child guides to the right - nested_top = "│ ", - -- Raw indentation - whitespace = " ", - }, - - -- Options for opening aerial in a floating win - float = { - -- Controls border appearance. Passed to nvim_open_win - border = "rounded", - - -- Determines location of floating window - -- cursor - Opens float on top of the cursor - -- editor - Opens float centered in the editor - -- win - Opens float centered in the window - relative = "cursor", - - -- These control the height of the floating window. - -- They can be integers or a float between 0 and 1 (e.g. 0.4 for 40%) - -- min_height and max_height can be a list of mixed types. - -- min_height = {8, 0.1} means "the greater of 8 rows or 10% of total" - max_height = 0.9, - height = nil, - min_height = { 8, 0.1, }, - - override = function (conf, source_winid) - -- This is the config that will be passed to nvim_open_win. - -- Change values here to customize the layout - return conf - end, - }, - - lsp = { - -- Fetch document symbols when LSP diagnostics update. - -- If false, will update on buffer changes. - diagnostics_trigger_update = true, - - -- Set to false to not update the symbols when there are LSP errors - update_when_errors = true, - - -- How long to wait (in ms) after a buffer change before updating - -- Only used when diagnostics_trigger_update = false - update_delay = 300, - }, - - treesitter = { - -- How long to wait (in ms) after a buffer change before updating - update_delay = 300, - }, - - markdown = { - -- How long to wait (in ms) after a buffer change before updating - update_delay = 300, - }, })