UNPKG

vt

Version:

terminal emulation library for javascript.

103 lines (102 loc) 4.68 kB
// function(cmd, value) function mode(s) { return function(cmd, value) { this.buffer.setMode(s, value); }; } module.exports = { // '0': // Error this command is ignored '1': mode('appKeypad'), // Application Key Pad - Guarded Area Transmit Mode, send all (VT132) (GATM) '?1': function() {}, // Cursor Keys Mode (DECCKM) // '2': // Keyboard Action Mode , disable keyboard input (KAM) // '?2': // ANSI Mode, use ESC < to switch VT52 to ANSI (DECANM) // '3': , // Enable or disable control characters to be displayed // '?3': mode('132col'), // Column mode - 132 col (DECOLM) '4': mode('insert'), // Insert/Replace Mode (IRM) // '?4': , // Scrolling Mode - Smooth (DECSCLM) //'5': // Status Report Transfer Mode, report after DCS (STRM) '?5': mode('reverse'), // Screen Mode - Reverse (DECSCNM) //'?6': mode('relative'), // Origin Mode, line 1 is relative to scroll region (DECOM) '7': mode('wrap'), // Wraparound - On - Vertical Editing Mode (VEM) //'?7': // AutoWrap Mode, start newline after column 80 (DECWAM) //'8': // reserved //'?8': // Auto Repeat Mode, key will autorepeat (DECARM) //'9': // reserved //'?9': mode('interlace'), // INterLace Mode, interlaced for taking photos //'10': // (HEM) //'?10': // EDit Mode, VT132 is in EDIT mode (DECEDM) //'11': // (PUM) //'?11': // Line Transmit Mode, ignore TTM, send line (DECLTM) //'12': // (SRM), // Local Echo: Send/Receive Mode '?12': mode('cursorBlink'), // Blink Cursor //'13': // Format Effector Action Mode, FE's are stored (FEAM) //'?13': // Space Compression/Field Delimiting on (DECSCFDM) //'14': // Format Effector Transfer Mode, send only if stored (FETM) //'?14': // Transmit Execution Mode, transmit on ENTER (DECTEM) //'15': // Multiple Area Transfer Mode, send all areas (MATM) //'16': // Transmit Termination Mode, send scrolling region (TTM) //'17': // Send Area Transmit Mode, send entire buffer (SATM) //'18': // Tabulation Stop Mode, lines are independent (TSM) //'?18': // Print FormFeed mode, send FF after printscreen (DECPFF) - Print Form Feed Mode //'19': // Editing Boundry Mode, all of memory affected (EBM) //'?19': // Printer Extent Mode (DECPEX) (DECPEXT) '20': mode('crlf'), // Automatic Linefeed Mode (LNM) // '?20': // Overstrike, overlay characters on GIGI (OV1) // '?21': // Local BASIC, GIGI to keyboard and screen (BA1) // '?22': // Host BASIC, GIGI to host computer (BA2) // '?23': // GIGI numeric keypad sends reprogrammable sequences (PK1) // '?24': // Autohardcopy before erasing or rolling GIGI screen (AH1 '?25': mode('cursor'), // Visible Cursor (DECTCEM) // '34': // Normal Cursor visibility (DECRLM) // '?35': // (DECHEBM) - Hebrew/N-A Keyboard Mapping // '?36': // (DECHEM) - Hebrew Encoding Mode // '?38': // (DECTEK)- TEKtronix mode graphics // '?42': // (DECNRCM) - Enable operation in 7-bit or 8-bit character mode '?47': function(cmd, value) { this.buffer.buffer = value ? this.buffer.altBuffer : this.buffer.defaultBuffer; }, // '?57': // (DECNAKB) - Greek/N-A Keyboard Mapping // '?60': // (DECHCCM) - Page Cursor-Coupling Mode // '?61': // (DECVCCM) - Vertical Cursor-Coupling Mode // '?64': // (DECPCCM) - Page Cursor-Coupling Mode // '?66': // (DECNKM) - Numeric Keypad Mode // '?67': // (DECKBUM) - Typewriter or Data Processing Keys // '?68': // (DECLRMM) (DECVSSM) - Left Right Margin Mode // '?73': // (DECXRLMM) // '?95': // (DECNCSM) - Set/Reset No Clearing Screen On Column Change // '?96': // (DECRLCM) - Right-to-Left Copy // '?97': // (DECCRTSM) - Set/Reset CRT Save Mode // '?98': // (DECARSM) - Set/Reset Auto Resize Mode // '?99': // (DECMCM) - Set/Reset Modem Control Mode // '?100': // (DECAAM) - Set/Reset Auto Answerback Mode // '?101': // (DECCANSM) - Conceal Answerback Message Mode // '?102': // (DECNULM) - Set/Reset Ignoring Null Mode // '?103': // (DECHDPXM) - Set/Reset Half-Duplex Mode // '?104': // (DECESKM) - Enable Secondary Keyboard Language Mode // '?106': // (DECOSNM) '?1000': mode('mousebtn'), // VT200 Mouse tracking '?1002': mode('mousemtn'), '?1034': function() {}, // Don't interpret meta key // Use Normal Screen Buffer, clearing screen first if in the Alternate Screen. '1047': function(cmd, value) { this.buffer.switchBuffer(value); }, '1048': function(cmd, v) { if(v) this.buffer.saveCursor(); else this.buffer.restoreCursor(); }, '?1049': function(cmd, v) { this.callHandler('mode', '1048', v); this.callHandler('mode', '1047', v); if(v) this.buffer.setCursor(0, 0); }, '1049': function(cmd, v) { this.callHandler('mode', '1048', v); this.callHandler('mode', '1047', v); if(v) this.buffer.setCursor(0, 0); } };