本文整理汇总了TypeScript中xterm.Terminal.attachCustomKeyEventHandler方法的典型用法代码示例。如果您正苦于以下问题:TypeScript Terminal.attachCustomKeyEventHandler方法的具体用法?TypeScript Terminal.attachCustomKeyEventHandler怎么用?TypeScript Terminal.attachCustomKeyEventHandler使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类xterm.Terminal
的用法示例。
在下文中一共展示了Terminal.attachCustomKeyEventHandler方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: Terminal
t.off('refresh', (data: {element: HTMLElement, start: number, end: number}) => console.log(data));
t.off('resize', () => {});
t.off('resize', (data: {terminal: Terminal, cols: number, rows: number}) => console.log(data));
t.off('scroll', () => {});
t.off('scroll', (ydisp: number) => console.log(ydisp));
t.off('title', () => {});
t.off('title', (title: string) => console.log(title));
}
{
const t: Terminal = new Terminal();
const e: HTMLElement = null;
t.open(e);
}
{
const t: Terminal = new Terminal();
t.attachCustomKeyEventHandler((e: KeyboardEvent) => true);
t.attachCustomKeyEventHandler((e: KeyboardEvent) => false);
}
namespace options {
{
const t: Terminal = new Terminal();
const r01: string = t.getOption('cursorStyle');
const r02: string = t.getOption('termName');
const r03: boolean = t.getOption('cancelEvents');
const r04: boolean = t.getOption('convertEol');
const r05: boolean = t.getOption('cursorBlink');
const r06: boolean = t.getOption('debug');
const r07: boolean = t.getOption('disableStdin');
const r08: boolean = t.getOption('popOnBell');
const r09: boolean = t.getOption('screenKeys');
const r10: boolean = t.getOption('useFlowControl');
示例2: Terminal
socket.on('connect', () => {
const term = new Terminal();
term.open(document.getElementById('terminal'));
const defaultOptions = { fontSize: 14 };
let options: any;
try {
if (localStorage.options === undefined) {
options = defaultOptions;
} else {
options = JSON.parse(localStorage.options);
}
} catch {
options = defaultOptions;
}
Object.keys(options).forEach(key => {
const value = options[key];
term.setOption(key, value);
});
const code = JSON.stringify(options, null, 2);
const editor = document.querySelector('#options .editor');
editor.value = code;
editor.addEventListener('keyup', e => {
try {
const updated = JSON.parse(editor.value);
const updatedCode = JSON.stringify(updated, null, 2);
editor.value = updatedCode;
editor.classList.remove('error');
localStorage.options = updatedCode;
Object.keys(updated).forEach(key => {
const value = updated[key];
term.setOption(key, value);
});
resize();
} catch {
// skip
editor.classList.add('error');
}
});
document.getElementById('overlay').style.display = 'none';
document.querySelector('#options .toggler').addEventListener('click', e => {
document.getElementById('options').classList.toggle('opened');
e.preventDefault();
});
window.addEventListener('beforeunload', handler, false);
/*
term.scrollPort_.screen_.setAttribute('contenteditable', 'false');
*/
term.attachCustomKeyEventHandler(e => {
// Ctrl + Shift + C
if (e.ctrlKey && e.shiftKey && e.keyCode === 67) {
e.preventDefault();
document.execCommand('copy');
return false;
}
return true;
});
function resize(): void {
fit(term);
socket.emit('resize', { cols: term.cols, rows: term.rows });
}
window.onresize = resize;
resize();
term.focus();
function kill(data: string): void {
disconnect(data);
}
term.on('data', data => {
socket.emit('input', data);
});
term.on('resize', size => {
socket.emit('resize', size);
});
socket
.on('data', (data: string) => {
term.write(data);
})
.on('login', () => {
term.writeln('');
resize();
})
.on('logout', kill)
.on('disconnect', kill)
.on('error', (err: string | null) => {
if (err) disconnect(err);
});
});