Skip to content
/ jsvt Public

Javascript VT100/Xterm emulator using pure DOM rendering

Notifications You must be signed in to change notification settings

krockot/jsvt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Simple javascript VT100 (subset) emulator.

Instantiate a new jsvt.Terminal() object and embed its .display property (a DOM object)
somewhere in your document.

Calling .Write(str) on the terminal will of course write to the display.

A substantial subset of ANSI control sequences are supported, including:

- SGR character attributes
- Switching between application and normal input modes
- Switching to an alternate screen buffer
- Cursor positioning
- Scroll regions
- Other commonly used terminal manipulation sequences

Also provided is an input translation mechanism that depends on jquery.keyboard.
This allows various control keypresses to be translated into appropriate input
sequences before being sent to e.g. a remote terminal device.

Simply call .InputString(e) where e is a jquery.keyboard event.  The appropriate
ANSI string to send will be returned.

Visual bell is also supported.  If the bell character ('\a' or '\x07') is written
to the terminal via Write(), the display element will invert for 200 milliseconds.

This implementation is sloooooooow and messy.  And quite functional.

A work in progress.

About

Javascript VT100/Xterm emulator using pure DOM rendering

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published