37 lines
943 B
Lua
37 lines
943 B
Lua
function _G.get_oil_winbar()
|
|
local bufnr = vim.api.nvim_win_get_buf(vim.g.statusline_winid)
|
|
local dir = require('oil').get_current_dir(bufnr)
|
|
if dir then
|
|
return vim.fn.fnamemodify(dir, ':~')
|
|
else
|
|
-- If there is no current directory (e.g. over ssh), just show the buffer name
|
|
return vim.api.nvim_buf_get_name(0)
|
|
end
|
|
end
|
|
|
|
local detail = false
|
|
return {
|
|
'stevearc/oil.nvim',
|
|
---@module 'oil'
|
|
---@type oil.SetupOpts
|
|
opts = {},
|
|
-- Optional dependencies
|
|
-- dependencies = { { 'echasnovski/mini.icons', opts = {} } },
|
|
dependencies = { 'nvim-tree/nvim-web-devicons' }, -- use if prefer nvim-web-devicons
|
|
config = function()
|
|
require('oil').setup {
|
|
columns = {
|
|
'icon',
|
|
'mtime',
|
|
},
|
|
vim.keymap.set('n', '<leader>o', ':Oil<CR>'),
|
|
view_options = {
|
|
show_hidden = true,
|
|
},
|
|
win_options = {
|
|
winbar = '%!v:lua.get_oil_winbar()',
|
|
},
|
|
}
|
|
end,
|
|
}
|