cloudcmd/client/modules/edit-file-vim.js
2020-12-24 19:06:35 +02:00

45 lines
749 B
JavaScript

/* global CloudCmd */
CloudCmd.EditFileVim = exports;
import Events from '../dom/events.js';
const {Key} = CloudCmd;
const ConfigView = {
bindKeys: false,
beforeClose: () => {
Events.rmKey(listener);
CloudCmd.EditFile.isChanged();
},
};
export const init = async () => {
await CloudCmd.EditFile();
};
export const show = () => {
Events.addKey(listener);
CloudCmd.EditFile
.show(ConfigView)
.getEditor()
.setKeyMap('vim');
};
export function hide() {
CloudCmd.Edit.hide();
}
function listener(event) {
const {
keyCode,
shiftKey,
} = event;
if (shiftKey && keyCode === Key.ESC) {
event.preventDefault();
hide();
}
}