Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Experimental html based terminal emulator using pyte and webkit.
JavaScript Python Clojure
branch: master

Allow setting the iframes url when entering frame mode.

With this we do not need to use a meta refresh header to redirect to the
apps start url in the WSGI adapter.
Allow adding more iframe settings in the future.
latest commit f1c9f00b71
@hoeck authored


A Linux compatible terminal emulator which exposes additional HTML rendering modes to client programs.

Uses Python, PyQT and ClojureScript.


Requires Python 2.7 and PyQT4

Get the source:

$ git clone

Optionally install xsel ( or apt-get install xsel) to be able to paste the current X selection using Shift-Insert. Middle-click selection works without additional programs.


$ cd schirm
$ python -m schirm

or install and then run it:

$ python install
$ schirm

Runs all your favorite commandline applications, including:

mc, htop, vim, grep --color ...

Example Programs

See the demos in support/

  • they use the lib to show HTML documents in the terminal

  • add them to your PATH:

    $ PATH="$PATH:<path-to-schirm>/support"

    or invoke them with <path-to-schirm>/support/<sXXX>

  • get and view some html:

    $ curl | sview
  • preview a Markdown document:

    $ markdown | sview
  • show a tree of a directory (uses d3.js, slow/crashing for large directories):

    $ stree .


    $ stree --circle
  • view an image:

    $ sview schirm-logo.png

    with interactive rescaling buttons:

    $ sview -i schirm-logo.png
  • edit text using codemirror:

    $ sedit


Place your own styles into ~/.schirm/user.css and restart the terminal. See schirm/resources/user.css for the default stylesheet.

In the terminal window, right click for the context menu and select inspect to open the webkit devtools. Right-click on the very left of the terminal window to open a context menu containing the reload item to restart the terminal

Client API

Escape-sequence based, works with every programming language which can write bytes to stdout. See support/

Missing Features/Defects

  • no terminal mouse click support
  • only 16 colors
  • only UTF-8
  • slow Application mode (e.g. fullscreen ncurses apps)
  • cat <1G file> will bring everything to a halt
  • emulation glitches (e.g. when resizing htop)

Similar Programs


Copyright (C) 2012 Erik Soehnel

Licenced under the GPLv3.

Client library is BSD licenced.

Something went wrong with that request. Please try again.