-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathoil-config.lua
More file actions
77 lines (73 loc) · 1.97 KB
/
oil-config.lua
File metadata and controls
77 lines (73 loc) · 1.97 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
local M = {
'MomePP/oil.nvim',
dependencies = { 'mini.icons' },
}
M.opts = {
columns = {
'permissions',
'size',
'mtime',
'icon',
},
view_options = {
show_hidden = true,
},
float = {
border = 'solid',
override = function(conf)
conf.width = vim.o.columns - 2 -- NOTE: this offset cause by padding = 2
conf.height = vim.o.lines - 3
conf.col = 0
conf.row = 0
return conf
end,
win_options = {
winhighlight = 'Normal:NormalFloat,FloatTitle:OilTitle',
winblend = vim.opt.winblend:get(),
},
get_win_title = function(_)
return ''
end,
preview_split = 'right',
preview_title_pos = 'center',
},
preview_win = {
win_options = {
winhighlight = 'Normal:OilPreviewNormal,FloatBorder:OilPreviewBorder,FloatTitle:OilPreviewTitle',
},
},
keymaps = {
['<Space>'] = 'actions.close',
['q'] = 'actions.close',
['<C-u>'] = 'actions.preview_scroll_up',
['<C-d>'] = 'actions.preview_scroll_down',
['<C-y>'] = 'actions.copy_to_system_clipboard',
['<C-p>'] = 'actions.paste_from_system_clipboard',
['<C-o>'] = {
callback = function()
local dir = require('oil').get_current_dir()
if not dir or not vim.ui.open then
return
end
vim.ui.open(dir)
end,
desc = 'Reveal directory'
},
}
}
M.keys = function()
local oil_keymap = require('config.keymaps').oil
return {
{
oil_keymap.open_float,
function()
if vim.w.is_oil_win then
require('oil').close()
else
require('oil').open_float(nil, { preview = {} })
end
end
},
}
end
return M