Skip to content

Commit 51c5e57

Browse files
authored
Merge pull request #62 from kyazdani42/refacto/cleanup-on_keypress
cleanup on_keypress function
2 parents 9a9a57c + 6ac8e25 commit 51c5e57

File tree

1 file changed

+17
-31
lines changed

1 file changed

+17
-31
lines changed

lua/tree.lua

Lines changed: 17 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -38,42 +38,28 @@ local function gen_go_to(mode)
3838
end
3939
end
4040

41-
local go_to_prev_git_item = gen_go_to('prev_git_item')
42-
local go_to_next_git_item = gen_go_to('next_git_item')
41+
local keypress_funcs = {
42+
create = fs.create,
43+
remove = fs.remove,
44+
rename = fs.rename,
45+
copy = fs.copy,
46+
cut = fs.cut,
47+
paste = fs.paste,
48+
toggle_ignored = lib.toggle_ignored,
49+
prev_git_item = gen_go_to('prev_git_item'),
50+
next_git_item = gen_go_to('next_git_item'),
51+
preview = function(node)
52+
if node.entries ~= nil or node.name == '..' then return end
53+
return lib.open_file('preview', node.absolute_path)
54+
end,
55+
}
4356

4457
function M.on_keypress(mode)
4558
local node = lib.get_node_at_cursor()
4659
if not node then return end
4760

48-
if mode == 'create' then
49-
return fs.create(node)
50-
elseif mode == 'remove' then
51-
return fs.remove(node)
52-
elseif mode == 'rename' then
53-
return fs.rename(node)
54-
elseif mode == 'copy' then
55-
return fs.copy(node)
56-
elseif mode == 'cut' then
57-
return fs.cut(node)
58-
elseif mode == 'paste' then
59-
return fs.paste(node)
60-
end
61-
62-
if mode == 'preview' then
63-
if node.entries ~= nil or node.name == '..' then return end
64-
return lib.open_file(mode, node.absolute_path)
65-
end
66-
67-
if mode == 'toggle_ignored' then
68-
return lib.toggle_ignored()
69-
end
70-
71-
if mode == 'prev_git_item' then
72-
return go_to_prev_git_item()
73-
end
74-
75-
if mode == 'next_git_item' then
76-
return go_to_next_git_item()
61+
if keypress_funcs[mode] then
62+
return keypress_funcs[mode](node)
7763
end
7864

7965
if node.name == ".." then

0 commit comments

Comments
 (0)