in core/src/com/jediterm/terminal/emulator/JediEmulator.java [331:400]
private void processTwoCharSequence(char ch, Terminal terminal) throws IOException {
char secondCh = myDataStream.getChar();
switch (ch) {
case ' ':
switch (secondCh) {
//About different character sets: http://en.wikipedia.org/wiki/ISO/IEC_2022
case 'F': //7-bit controls
unsupported("Switching to 7-bit");
break;
case 'G': //8-bit controls
unsupported("Switching to 8-bit");
break;
//About ANSI conformance levels: http://www.vt100.net/docs/vt510-rm/ANSI
case 'L': //Set ANSI conformance level 1
terminal.setAnsiConformanceLevel(1);
break;
case 'M': //Set ANSI conformance level 2
terminal.setAnsiConformanceLevel(2);
break;
case 'N': //Set ANSI conformance level 3
terminal.setAnsiConformanceLevel(3);
break;
default:
unsupported(ch, secondCh);
}
break;
case '#':
if (secondCh == '8') {
terminal.fillScreen('E');
} else {
unsupported(ch, secondCh);
}
break;
case '%':
switch (secondCh) {
case '@': // Select default character set. That is ISO 8859-1
case 'G': // Select UTF-8 character set
unsupported("Selecting charset is unsupported: " + escapeSequenceToString(ch, secondCh));
break;
default:
unsupported(ch, secondCh);
}
break;
case '(':
terminal.designateCharacterSet(0, secondCh); //Designate G0 Character set (VT100)
break;
case ')':
terminal.designateCharacterSet(1, secondCh); //Designate G1 Character set (VT100)
break;
case '*':
terminal.designateCharacterSet(2, secondCh); //Designate G2 Character set (VT220)
break;
case '+':
terminal.designateCharacterSet(3, secondCh); //Designate G3 Character set (VT220)
break;
case '-':
terminal.designateCharacterSet(1, secondCh); //Designate G1 Character set (VT300)
break;
case '.':
terminal.designateCharacterSet(2, secondCh); //Designate G2 Character set (VT300)
break;
case '/':
terminal.designateCharacterSet(3, secondCh); //Designate G3 Character set (VT300)
break;
case '$':
case '@':
unsupported(ch, secondCh);
}
}