Cascadia font, default colors, light theme
Warning
- This is a sample code, not a production-ready solution. Please read Bugs section before using this extension.
- This addon is developed for Embarcadero RAD Studio version 12, and I am not sure whether it works in previous versions or not.
- UPD. Addon works in Alexandria, but it doesn't draw a disabled code inside
IFDEF-ENDIFdue to a lack of necessary interfaces.
- UPD. Addon works in Alexandria, but it doesn't draw a disabled code inside
There are multiple free programming fonts created and designed for writing and reading code efficiently. Many of these fonts offer ligatures to improve symbols appearance, such as Cascadia Code, Fira Code, Iosevka, JetBrains Mono, and many more.
Unfortunately, Embarcadero RAD Studio editor does not support rendering font ligatures, so even if you install any of the fonts above, you won't see their true value. This add-on is addressed to fix this and move RAD Studio editor one step forward on the long road to excellence.
The package enhances the RAD Studio editor by utilizing Open Tools API to replace the default font rendering process, enabling it to display ligated characters when the selected font supports them. This code is an adopted version of the sample package from the ToolsAPI PaintText Event Demo. It was created to show just how incredibly difficult it is to get ligature-enabled fonts working in the IDE.
Note
Fonts like Lucida Console, Courier New, and Consolas do not support ligatures. This extension will not show any effect when you use such fonts.
Download the repository, open project EditorLigatures.dproj, and compile it. Right click on EditorLigatures.bpl project in the Projects window and choose Install option from the menu.
Go to menu Component -> Install packages..., find EditorLigatures.bpl and disable or remove it from the packages list.
Below are sample screenshots of how some popular fonts can look in RAD Studio IDE with ligatures enabled.
| BEFORE Ligatures Off 😖 |
AFTER Ligatures On 🤩 |
|---|---|
| Cascadia Code | Cascadia Code |
![]() Cascadia Code, Default colors, Light theme |
![]() Cascadia Code, Default colors, Light theme |
| Fira Code | Fira Code |
![]() |
![]() |
| Iosevka | Iosevka |
![]() |
![]() |
| JetBrains Mono | JetBrains Mono |
![]() |
![]() |
| BEFORE Ligatures Off 😖 |
AFTER Ligatures On 🤩 |
|---|---|
| Cascadia Code | Cascadia Code |
![]() |
![]() |
| Fira Code | Fira Code |
![]() |
![]() |
| Iosevka | Iosevka |
![]() |
![]() |
| JetBrains Mono | JetBrains Mono |
![]() |
![]() |
I prefer Monaco Editor over the default color scheme shipped with RAD Studio. There are registry files monako-theme.reg and monako-theme-dark.reg if you want to add this color set to your RAD Studio IDE.
- Line drawing broken when non-ASCII characters appear in it. This is an error deep in OTAPI's
PaintTextfunction related to the misinterpretation of Unicode strings. -
Inactive code is painted incorrectly with dark theme - Color SpeedSetting doesn't display selected color scheme in editor's options dialog
-
Highlighting the same words sometimes works incorrectly - There are glitches with rendering some fonts (Lucida Console)
- Transparent selection with syntax highlighting (the editor doesn't highlight syntax while code is in a selected state) - now it's not possible to implement due to lack of necessary OTAPI functions.




















