return { 'stevearc/oil.nvim', lazy = false, dependencies = { 'nvim-tree/nvim-web-devicons' }, ---@module 'oil' ---@type oil.SetupOpts opts = { -- Substitutes netrw as the default browser default_file_explorer = true, -- Visible buffer columns columns = { 'icon', -- 'permissions', -- 'size', -- 'mtime', }, -- Oil buffer options buf_options = { buflisted = false, bufhidden = 'hide', }, -- Floating window float = { padding = 2, max_width = 80, max_height = 30, border = 'rounded', win_options = { winblend = 0, }, }, view_options = { show_hidden = true, -- show hidden files/dirs is_always_hidden = function(name, _) -- always hide the .git dir return name == '.git' end }, keymaps = { ['g?'] = 'actions.show_help', [''] = 'actions.select', [''] = 'actions.select_vsplit', [''] = 'actions.select_split', [''] = 'actions.select_tab', [''] = 'actions.preview', [''] = 'actions.close', [''] = 'actions.refresh', ['-'] = 'actions.parent', ['_'] = 'actions.open_cwd', ['g.'] = 'actions.toggle_hidden', }, use_default_keymaps = false, }, keys = { { '-', 'Oil', desc = 'Open parent directory' }, { '-', function() require('oil').open_float() end, desc = 'Open parent directory (float)' } } }