Jonas Helming, Maximilian Koegel and Philip Langer co-lead EclipseSource. They work as consultants and software engineers for building web-based and desktop-based tools. …
Eclipse Theia 1.31.1 Release: News and Noteworthy
November 14, 2022 | 4 min ReadWe are happy to announce the Eclipse Theia 1.31.1 release! The release contains 34 merged pull requests and we welcome eight new contributors. In this article we will highlight some selected improvements and provide an overview of the latest news around Theia.
You don’t know about Eclipse Theia, yet? It is the next-generation platform for building IDEs and tools for the web or desktop, based on modern state-of-the-art web technologies. For more details, please refer to this article and visit the Theia website.
We are getting ready for TheiaCon 2022, the annual virtual conference focused around the Eclipse Theia ecosystem. It brings together a diverse group of Theia developers, adopters, and other contributors. The program will feature a mix of full-length talks, expert panel discussions and short lightning talks featuring project contributor insights, adopter stories, and work being done in the broader ecosystem.
The TheiaCon event to be held November 30 - December 1, 2022. This is a two-day virtual event, make sure you register today!
If you are looking for a simple way to check out the new release, please download Theia Blueprint, which has just been updated to 1.31.
Eclipse Theia 1.31: Selected features and improvements
In the following, we will highlight some selected improvements in the new release. As usual we cannot mention all 34 improvements, however we will focus on the most notable changes as well as changes visible to end users. The corresponding pull requests are linked under the respective heading.
Support for detachable Terminals
Detaching views from a tool or IDE can be very useful to use the available screen space. However, the feature is not very common in modern IDEs anymore. In Theia, as a flexible platform, we want to allow adopters to provide support for secondary windows in their custom tools, if required. In Theia 1.30, we added experimental support for detachable WebViews. In Theia 1.31, we add additional support for detaching the terminal from the main window (see following screenshot). The terminal was selected as a next step, because it is used in many tools, but on the other hand it typically is only used from time to time. Therefore, it is often a perfect candidate for moving it from the main window to a second screen.
The Theia team is planning to improve the support for additional views. If you are an adopter of Theia, you can also decide to make your own views detachable.
Confirmation on exit while debugging
Most tools ask for explicit confirmation on exit, if there are unsaved changes. This prevents losing ongoing work. In developer tools, another critical use case is ongoing debugging sessions, which might require some time to reproduce, too. Therefore, Theia 1.31 asks the user for confirmation, when a debug session is currently running. This additional dialog can be configured using an explicit setting.
Support for Inlay Hints
Via the VS Code extension API, Theia 1.31 supports so-called Inlay Hints. VS Code extensions (which can be hosted in Theia) can use this to augment the code editor with useful additional information. As an example, the TypeScript extension can display the names of variables in function calls for a better understanding (see following screenshot). As another example, Inlay Hints can display the inferred type of variables which do not have an explicit type.
Support for Terminal Link Provider
Theia 1.31 adds support for Terminal Links. This enables extensions to add clickable links to specific expressions shown in the terminal. A simple example that worked even before 1.31 is following a web link. However, you can now trigger custom actions from within the terminal, too. As shown in the following screenshot, you could for example open a specific file which was mentioned in the terminal output. As also shown in the following screenshot, you can even trigger custom action, such as opening a notification in the example.
Terminal Links are provided via the VS Code Extension API.
As always the 1.31 release contains much more than described in this article, e.g. the support for TypeHierarchyProviders. All these features and improvements (in total 34) were the result of one month of intensive development. Eclipse Theia follows a monthly release schedule. We are looking forward to the next release due at the end of November, stay tuned! To be notified about future releases, follow Theia on Twitter and register to our mailing list.
If you are interested in building custom tools or IDEs based on Eclipse Theia, EclipseSource provides consulting and implementation services for Eclipse Theia as well as for web-based tools in general. Furthermore, if you want to extend Theia with features such as the toolbar or the test framework, EclipseSource provides sponsored development for Theia, too. Get in contact with us, to discuss your use case!