forked from rafi/vim-config
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdiffview.lua
More file actions
65 lines (60 loc) · 1.79 KB
/
diffview.lua
File metadata and controls
65 lines (60 loc) · 1.79 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
-- plugin: diffview.nvim
-- see: https://github.com/sindrets/diffview.nvim
-- rafi settings
local cb = require('diffview.config').diffview_callback
local function setup()
vim.cmd [[
augroup user-diffview
autocmd!
autocmd WinEnter,BufEnter diffview://* setlocal cursorline
autocmd WinEnter,BufEnter diffview:///panels/* setlocal winhighlight=CursorLine:WildMenu
augroup END
]]
require('diffview').setup({
enhanced_diff_hl = true, -- See ':h diffview-config-enhanced_diff_hl'
key_bindings = {
view = {
['q'] = '<cmd>DiffviewClose<CR>',
['<tab>'] = cb('select_next_entry'),
['<s-tab>'] = cb('select_prev_entry'),
[';a'] = cb('focus_files'),
[';e'] = cb('toggle_files'),
},
file_panel = {
['q'] = '<cmd>DiffviewClose<CR>',
['j'] = cb('next_entry'),
['<down>'] = cb('next_entry'),
['k'] = cb('prev_entry'),
['<up>'] = cb('prev_entry'),
['h'] = cb('prev_entry'),
['l'] = cb('select_entry'),
['<cr>'] = cb('select_entry'),
['o'] = cb('focus_entry'),
['gf'] = cb('goto_file'),
['sg'] = cb('goto_file_split'),
['st'] = cb('goto_file_tab'),
['r'] = cb('refresh_files'),
['R'] = cb('refresh_files'),
['<c-r>'] = cb('refresh_files'),
['<tab>'] = cb('select_next_entry'),
['<s-tab>'] = cb('select_prev_entry'),
[';a'] = cb('focus_files'),
[';e'] = cb('toggle_files'),
},
file_history_panel = {
['o'] = cb('focus_entry'),
['l'] = cb('select_entry'),
['<cr>'] = cb('select_entry'),
['O'] = cb('options'),
},
option_panel = {
['<tab>'] = cb('select'),
['q'] = cb('close'),
},
}
})
end
return {
setup = setup,
}
-- vim: set ts=2 sw=2 tw=80 noet :