diff --git a/client/key/vim/index.js b/client/key/vim/index.js index 132792ced0..e8b0155830 100644 --- a/client/key/vim/index.js +++ b/client/key/vim/index.js @@ -4,6 +4,10 @@ /* global DOM */ const vim = require('./vim'); const finder = require('./find'); +const { + setCurrent, + selectFileNotParent, +} = require('./set-current'); const {Dialog} = DOM; @@ -120,36 +124,3 @@ const getOperations = (event, deps) => { }; module.exports.selectFile = selectFileNotParent; - -function selectFileNotParent(current, {getCurrentName, selectFile} = DOM) { - const name = getCurrentName(current); - - if (name === '..') - return; - - selectFile(current); -} - -function setCurrent(sibling, {count, isVisual, isDelete}, {Info, setCurrentFile, unselectFiles, Operation}) { - let current = Info.element; - const select = isVisual ? selectFileNotParent : unselectFiles; - - select(current); - - const position = `${sibling}Sibling`; - - for (let i = 0; i < count; i++) { - const next = current[position]; - - if (!next) - break; - - current = next; - select(current); - } - - setCurrentFile(current); - - if (isDelete) - Operation.show('delete'); -} diff --git a/client/key/vim/set-current.js b/client/key/vim/set-current.js new file mode 100644 index 0000000000..b761cc0783 --- /dev/null +++ b/client/key/vim/set-current.js @@ -0,0 +1,36 @@ +'use strict'; + +/* global DOM */ +module.exports.selectFileNotParent = selectFileNotParent; +function selectFileNotParent(current, {getCurrentName, selectFile} = DOM) { + const name = getCurrentName(current); + + if (name === '..') + return; + + selectFile(current); +} + +module.exports.setCurrent = (sibling, {count, isVisual, isDelete}, {Info, setCurrentFile, unselectFiles, Operation}) => { + let current = Info.element; + const select = isVisual ? selectFileNotParent : unselectFiles; + + select(current); + + const position = `${sibling}Sibling`; + + for (let i = 0; i < count; i++) { + const next = current[position]; + + if (!next) + break; + + current = next; + select(current); + } + + setCurrentFile(current); + + if (isDelete) + Operation.show('delete'); +};