Termkit nutzt Node.js, Socket.IO und Webkit

Anzeige

Die sogenannten "View Pipes" transportieren Widgets und UI-Kommandos von und zum Frontend via JSON. Damit die Daten in lesbarer Form dargestellt werden können, kann Termkit auf eine Bibliothek von Ausgabeformatierern zugreifen, die sich jeweils um eine bestimmte Art von Daten kümmern, beispielsweise Text, Code und Bilder. Termkit wählt die richtige Komponente anhand des übermittelten Content-Type aus und generiert daraus einen Stream von View-Updates, die über die View Out Pipe an die Ausgabe weitergeleitet werden.

So kann unter anderem mit dem Befehl "cat" eine PNG-Grafik angezeigt werden, ohne dass Termkit wissen muss, wie man eine PNG-Grafik anzeigt. Auch HTTP-GET- und POST-Requests lassen sich auf diesem Weg verarbeiten.

Während in einem traditionellen Unix-Terminal die gesamte Interaktion synchron abläuft, setzt Termkit auf eine Trennung von Front- und Backend. So kann das Frontend lokal auf dem System laufen, das Backend auf einem in der Ferne stehenden Server. Die Verbindung wird über SSH getunnelt.

Sämtliche Display-Updates und Queries laufen dabei asynchron ab, das auf Webkit basierende HTML-Display besteht dafür aus mehreren View-Komponenten und die View-Pipes jedes Subprozesses werden zu ihren eigenen Views geroutet. Zugleich kann jedes Widget Callback-Nachrichten an seinen eigenen Prozess senden, sofern dieser noch läuft.

Bessere Syntax für die Kommandozeile

Für die Eingabe setzt Termkit auf ein Widget namens tokenfield.js und kommt ohne Escaping aus, da Kommandos immer als Tokens behandelt werden. Tasten mit spezieller Bedeutung wie Hochkomma werden doppelt gedrückt, wenn nur das jeweilige Zeichen geschrieben werden soll. Zudem bietet tokenfield.js eine automatische Vervollständigung und unterstützt Icon-Badges.

Statt unnötiger Abkürzungen und inkonsistenter Argumente (beispielsweise -r und -R) soll Termkit eine bessere Usability bieten. So könnten beim Tippen der jeweils relevante Teil einer Manpage als Tooltip eingeblendet und gefährliche Schalter in Rot eingefärbt werden.

Es geht nicht um Äußerlichkeiten

Wittens betont, es gehe ihm bei Termkit nicht um ein schickes Aussehen, sondern um grundlegende Verbesserungen "unter der Haube". Derzeit sei Termkit nur eine eher holprige Alphaversion, die in den nächsten Monaten viel mehr können soll. Die Architektur dafür sei vorhanden, schreibt Wittens in einem Blogeintrag. Wittens selbst arbeitet seit rund einem Jahr an Termkit, dessen Code auf Github zu finden ist. Die Software nutzt Node.js, Socket.IO, jQuery und Webkit.

 Termkit: Neue Generation von Unix-Werkzeugen

Hello_World 23. Mai 2011

Es ist der allgemeine Konsens zwischen allen Leuten, die etwas davon verstehen, dass die...

Hello_World 23. Mai 2011

Die Shell ist unter Unix ein ganz gewöhnlicher Prozess, der nicht mehr und nicht weniger...

samy 22. Mai 2011

Findest du die Signatur etwa lustig??

frostbitten king 21. Mai 2011

Lol, Vim for firefox quasi. Nur, die meisten Leute kommen mit sowas nicht zurecht (ich...

redex 20. Mai 2011

Wow, dankeschön. War interessant zu lesen. :-)

Kommentieren




Anzeige
  1. Wissenschaftliche Mitarbeiterin / wissenschaftlicher Mitarbeiter "Bildgestützte Echtzeitsysteme"
    Fraunhofer-Institut für Optronik, Systemtechnik und Bildauswertung IOSB, Karlsruhe
  2. Lead-Softwareentwickler(in)
    HELBAKO GmbH, Heiligenhaus
  3. Senior SAP CRM Consultant (m/w)
    NEO Business Partners GmbH, deutschlandweit (Home-Office möglich)
  4. Datenbankadministrator Konzerncontrolling (m/w)
    KSB Aktiengesellschaft, Frankenthal

 

Detailsuche


Folgen Sie uns
       


  1. KDE Plasma Workspaces

    4.11 wird letzte Version vor Qt5-Wechsel

  2. Chrome

    Google spricht und hört zu

  3. Logitech

    iPad-Tastatur mit Kabel

  4. Filesharing

    Schweiz will Internetsperren auf das Urheberrecht ausweiten

  5. Oslic und Oscad

    Ratgeber für freie Lizenzen

  6. Datenschutz-Grundverordnung

    Chaos Computer Club fürchtet Datenschutzauflösung durch EU

  7. 3M

    Quantenpunkte sollen LCDs farbiger machen

  8. Solar Impulse

    Solarflugzeug fliegt nach Dallas

  9. Telekom

    Bundestagspetition gegen Drosselung gestartet

  10. Linuxtag 2013

    Univention Absolventenpreis für Stauvermeidung



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Cast AR: Gefeuerte Valve-Entwickler zeigen Räumliche-Objekte-Brille
Cast AR
Gefeuerte Valve-Entwickler zeigen Räumliche-Objekte-Brille

Zwei ehemalige Valve-Mitarbeiter haben auf einer Entwicklermesse eine revolutionäre AR-Brille gezeigt. Damit sollen sich computergenerierte Objekte räumlich korrekt in die Echtwelt einblenden lassen.


Linuxtag 2013: Univention Absolventenpreis für Stauvermeidung
Linuxtag 2013
Univention Absolventenpreis für Stauvermeidung

Linuxtag 2013 Der erste Preis des Univention-Absolventenpreises geht an das Projekt Antscout von Alexander Bertram, das Openstreetmap um dynamisches Routing erweitern kann. Damit sollen sich Staus vermeiden lassen.

  1. Linuxtag 2013 Vorträge zu Openstack, Storage und Linux in Autos

Hochauflösend: Samsung zeigt Notebookdisplay mit 3.200 x 1.800 Pixeln
Hochauflösend
Samsung zeigt Notebookdisplay mit 3.200 x 1.800 Pixeln

Samsung will auf der Messe Display Week ein Display im Format 13,3 Zoll vorstellen, das Apples Retina-Modelle in den Schatten stellt. Es soll eine Auflösung von 3.200 x 1.800 Pixeln bieten. Auch für Tablets und Smartphones werden neue Displays präsentiert.

  1. LG Flexibles OLED für gewölbte Smartphones
  2. Lotus XT Glas Neues Corning-Schutzglas für 2 Meter breite Bildschirme
  3. Krystalboard Elektronische Schultafel wird per Knopfdruck gesäubert

Zum Artikel