import { Editor, Key, matchesKey } from "@mariozechner/pi-tui" ;
export class CustomEditor extends Editor {
onEscape?: () => void ;
onCtrlC?: () => void ;
onCtrlD?: () => void ;
onCtrlG?: () => void ;
onCtrlL?: () => void ;
onCtrlO?: () => void ;
onCtrlP?: () => void ;
onCtrlT?: () => void ;
onShiftTab?: () => void ;
onAltEnter?: () => void ;
onAltUp?: () => void ;
handleInput(data: string): void {
if (matchesKey(data, Key.alt("enter" )) && this .onAltEnter) {
this .onAltEnter();
return ;
}
if (matchesKey(data, Key.alt("up" )) && this .onAltUp) {
this .onAltUp();
return ;
}
if (matchesKey(data, Key.ctrl("l" )) && this .onCtrlL) {
this .onCtrlL();
return ;
}
if (matchesKey(data, Key.ctrl("o" )) && this .onCtrlO) {
this .onCtrlO();
return ;
}
if (matchesKey(data, Key.ctrl("p" )) && this .onCtrlP) {
this .onCtrlP();
return ;
}
if (matchesKey(data, Key.ctrl("g" )) && this .onCtrlG) {
this .onCtrlG();
return ;
}
if (matchesKey(data, Key.ctrl("t" )) && this .onCtrlT) {
this .onCtrlT();
return ;
}
if (matchesKey(data, Key.shift("tab" )) && this .onShiftTab) {
this .onShiftTab();
return ;
}
if (matchesKey(data, Key.escape) && this .onEscape && !this .isShowingAutocomplete()) {
this .onEscape();
return ;
}
if (matchesKey(data, Key.ctrl("c" )) && this .onCtrlC) {
this .onCtrlC();
return ;
}
if (matchesKey(data, Key.ctrl("d" ))) {
if (this .getText().length === 0 && this .onCtrlD) {
this .onCtrlD();
}
return ;
}
super .handleInput(data);
}
}
Messung V0.5 in Prozent C=99 H=99 G=98
¤ Dauer der Verarbeitung: 0.1 Sekunden
(vorverarbeitet am 2026-05-26)
¤
*© Formatika GbR, Deutschland