Vier Monate Wrap-up

Theia IDE: Was gibt es Neues bei der Entwicklungsumgebung?

Sven Efftinge

© Shutterstock.com / Standard Studio

Es ist schon ein Weilchen her, seit es Neuigkeiten von Theia gab, was allerdings nicht bedeutet, dass das Projekt stillsteht. Im Gegenteil: Theia hat einen Umzug vor sich, außerdem gibt es Neuigkeiten dazu, wie Theia mit Eclipse Che interagiert. Und natürlich gibt es eine Menge neue Features. Sven Efftinge, Co-Founder von TypeFox, gibt einen kleinen Einblick in den derzeitigen Stand der Dinge bei der IDE für Cloud & Desktop.
 

Dieser Beitrag ist im Original auf dem Blog der TypeFox GmbH erschienen.

Die Entwicklungsumgebung Theia wurde geschaffen, um durch ihre vielseitige Verwendbarkeit, ihre Erweiterbarkeit und den Einsatz moderner Web-Technologien besonders zukunftssicher sein. Die Frage nach Desktop- oder Cloud-IDE soll sich dabei nicht mehr stellen, Theia ist beides.

Eclipse Theia

Ja, es ist wahr: Theia wird zukünftig unter dem Dach der Eclipse Foundation weiterentwickelt. Ein Eclipse-Projekt wurde bereits erstellt und derzeit werden sämtliche Beteiligte gefragt, ob sie eine Relizensierung der Code-Basis (jedes Eclipse-Projekt muss unter der EPL 2.0 stehen, Anm. d. Red.) ihre Zustimmung geben. Bislang wurde Theia unter der Apache-2.0-Lizenz geführt, zukünftig soll das Projekt unter der Doppellizenz EPL 2.0 / GPL stehen. Der GPL-Teil ist allerdings nur dann wichtig, wenn man Theia im GPL-Kontext einsetzen will, da für solche Fälle die EPL 2.0 nicht kompatibel ist. In den meisten Fällen, besonders im kommerziellen Umfeld, wird die EPL 2.0 angewandt werden.

Eclipse Che + Theia

Das Team von Eclipse Che hat damit begonnen, den Workspace-Server von Che für Theia zu öffnen, was großartige Neuigkeiten für die Community sind. Damit kann Theia anstelle der derzeitigen GWT-basierten Che IDE genutzt werden. Es ist darüber hinaus geplant, ab einem bestimmten Zeitpunkt komplett auf Theia zu setzen. Unsere Aufgabe wird es daher in der nächsten Zeit sein, Features in Theia zu implementieren, die bislang zwar in Eclipse Che vorhanden sind, in Theia aber noch nicht.

RedHat

Gemeinsam mit Ericsson und TypeFox hat RedHat nun auch damit begonnen, aktiv an Theia mitzuarbeiten. Neben der Arbeit an einigen kleineren Dinge kümmert sich das Team von RedHat insbesondere um die Entwicklung eines Visual Debuggers, der das Debug Adapter Protocol unterstützt. Der Debugger soll zudem ein Plug-in-System haben, das es erlauben wird, Plug-ins in einer Sandbox-Umgebung laufen zu lassen. Das soll ganz ähnlich der Funktionalität passieren, wie es aus VS Code bekannt ist.

Das neue und etwas restriktivere Plug-in-System wird optional einsetzbar sein und zusätzlich zu dem bereits existierenden Erweiterungsmodell von Theia bereitgestellt werden. Der Grund hierfür ist, dass beide einen unterschiedlichen Use Case abdecken: Plug-ins sollten für kleinere und einfacherere Features genutzt werden, während Extensions praktisch alle Möglichkeiten eröffnen, inklusive eigener White-Label-Produkte.

Das Plug-in API wurde mit dem derzeitigen VS Code API im Kopf designt. Irgendwann sollen so auch VS-Code-Erweiterungen vollständigig unterstützt werden.

Neue Features in Theia

In den letzten vier Monaten haben wir Theia viele neue Features hinzugefügt. Ohne zu sehr ins Detail gehen zu wollen, habe ich hier ein paar News and Noteworthys zusammengestellt:

Die Shell der Workbench wurde neu geschrieben und unterstützt jetzt Drag-and-drop zwischen allen Panels. Neben den Seiten-Panels gibt es jetzt ein unteres Panel, dazu hat mein Kollege Miro Spönemann einen Blogpost geschrieben. Neu sind auch die Funktionen Commit Staging, Git diff und Git history, die der Git-Implementierung hinzugefügt wurden. Annotationen im Navigator und in den Editoren zeigen an, wenn Veränderungen in Git vorgenommen wurden.

Der Navigator unterstützt jetzt auch Drag-and-drop, Quick Search und Auto Reveal in Bezug auf den aktiven Editor. Es ist nun kinderleicht, Dateien hochzuladen – es genügt, sie vom Desktop in den Datei-Navigator zu ziehen. Im Übrigen werden aktuell auch Annotationen im Navigator unterstützt – Fehlermarkierungen und Änderungen in Git werden so auch im Navigator angezeigt.

Die neue Suche macht es möglich, den Workspace nach Text zu durchsuchen. Unter anderem werden Reguläre Ausdrücke, Glob Patterns und die Suchen-&-Ersetzen-Funktion unterstützt. Einen Blick lohnt auch die Call-Hierarchie und die großartige Markdown-Unterstützung.

Theia / Quelle: TypeFox

Zusammenfassung

Die starke Unterstützung durch verschiedene Parteien wie RedHat, Ericsson und TypeFox sowie der Umzug zur Eclipse Foundation sind eine vielversprechende Basis für die Zukunft von Theia. Nach dem ersten Jahr der Entwicklung sind wir sehr glücklich und stolz, dass unser Küken langsam mit den ersten Flugversuchen beginnt.

Theia ist nun reif dafür, als Grundlage für neue Cloud- und Desktop-IDEs zu dienen. Wie genau das funktioniert, kann man auf der diesjährigen EclipseCon France in unserem Tutorial erfahren. Gerne helfe ich auch per E-Mail weiter, oder ihr fragt einfach jemanden in unserem Gitter Channel, auf GitHub findet ihr das Projekt ebenfalls.

PS: Ich wurde oft gefragt, ob ich Theia nutze, um Theia weiterzuentwickeln. Diese Frage kann ich nun endlich mit „JA“ beantworte – und es ist eine Wucht!🙂

Geschrieben von
Sven Efftinge
Sven Efftinge
Sven Efftinge ist Projektleiter von Eclipse Xtext und Xtend. Er ist CEO und Language Architect bei TypeFox. In seiner Freizeit verbringt er gerne viel Zeit mit seinen Kindern oder mit einem Kite auf der Ostsee.
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: