Abo
  • Services:
Anzeige
Termkit: Neue Generation von Unix-Werkzeugen

Termkit nutzt Node.js, Socket.IO und Webkit

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.

Anzeige

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.

  • Termkit-Mockup
  • Termkit-Mockup
  • Termkit-Mockup
  • Klassisches Terminal: Bash
  • Termkit: Verzeichnisinhalt per ls
  • Klassische Unix Pipes
  • Pipe-Konzept in Termkit
  • ls und grep kombiniert in Termkit
  • Asynchrone Architektur von Termkit
  • PNGs mit cat anzeigen in Termkit
  • ls und grep kombiniert in Termkit
  • Architektur: Termkit nutzt Node.js, Socket.IO und Webkit
Termkit-Mockup

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

eye home zur Startseite
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. :-)



Anzeige

Stellenmarkt
  1. Robert Bosch GmbH, Abstatt
  2. über Hanseatisches Personalkontor Osnabrück, Bielefeld
  3. Swiss Post Solutions GmbH, Bamberg
  4. Consors Finanz, München


Anzeige
Blu-ray-Angebote
  1. 9,97€ (ohne Prime bzw. unter 29€ Einkauf zzgl. 3€ Versand)
  2. (u. a. Hobbit Trilogie Blu-ray 43,89€ und Batman Dark Knight Trilogy Blu-ray 17,99€)

Folgen Sie uns
       


  1. Streaming

    Netflix gewinnt weiter Millionen Neukunden

  2. Zusammenlegung

    So soll das Netz von O2 einmal aussehen

  3. Kohlendioxid

    Island hat ein Kraftwerk mit negativen Emissionen

  4. Definitive Edition

    Veröffentlichung von Age of Empires kurzfristig verschoben

  5. Elex im Test

    Schroffe Schale und postapokalyptischer Kern

  6. Raven Ridge

    HP bringt Convertible mit AMDs Ryzen Mobile

  7. Medion E6436 und P10602

    Preiswertes Notebook und Tablet bei Aldi Süd

  8. Smartphone mit KI

    Huawei stellt neues Mate 10 Pro für 800 Euro vor

  9. KRACK

    WPA2 ist kaputt, aber nicht gebrochen

  10. Medion Akoya E2228T

    280-Euro-Convertible von Aldi hat 1080p



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Cybercrime: Neun Jahre Jagd auf Bayrob
Cybercrime
Neun Jahre Jagd auf Bayrob
  1. Antivirus Symantec will keine Code-Reviews durch Regierungen mehr
  2. Verschlüsselung Google schmeißt Symantec aus Chrome raus
  3. Übernahme Digicert kauft Zertifikatssparte von Symantec

Verschlüsselung: Niemand hat die Absicht, TLS zu knacken
Verschlüsselung
Niemand hat die Absicht, TLS zu knacken
  1. TLS-Zertifikate Zertifizierungsstellen müssen CAA-Records prüfen
  2. Apache-Lizenz 2.0 OpenSSL-Lizenzwechsel führt zu Code-Entfernungen
  3. Certificate Transparency Webanwendungen hacken, bevor sie installiert sind

ZFS ausprobiert: Ein Dateisystem fürs Rechenzentrum im privaten Einsatz
ZFS ausprobiert
Ein Dateisystem fürs Rechenzentrum im privaten Einsatz
  1. Librem 5 Purism zeigt Funktionsprototyp für freies Linux-Smartphone
  2. Pipewire Fedora bekommt neues Multimedia-Framework
  3. Linux-Desktops Gnome 3.26 räumt die Systemeinstellungen auf

  1. Re: 1 Mio klar

    berritorre | 02:07

  2. Re: Mietzahlungen der Telekom?

    berritorre | 02:06

  3. Tradfri RGBW Lightstrip-Controller DIY

    oleurgast | 02:02

  4. Re: Privatdaten?

    berritorre | 01:59

  5. Re: Was wohl Printwerbung kostet

    berritorre | 01:55


  1. 23:03

  2. 19:01

  3. 18:35

  4. 18:21

  5. 18:04

  6. 17:27

  7. 17:00

  8. 15:00


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel