Speaker
Description
Jollpi is a lightweight text editor that I first developed in 2010 using Python 2, GTK 2, and GtkSourceView 2. After more than a decade away from programming, in 2025 I rewrote the project from scratch with Python 3, GTK 4, and GtkSourceView 5.
The new version follows the same minimal-dependency approach (only three core libraries) but is fully functional as a modern text editor. Its focus is to remain lightweight and responsive, even when working with text files of up to ±1 million lines (~150 MB).
Technical aspects covered in this session include:
- Async file handling with GtkSourceView.FileLoader and cancellable support, keeping the UI responsive during text loading.
- Async search & replace with GtkSourceView.SearchContext, ensuring interactive search.
- Real-time file monitoring using Gio.FileMonitor to detect external changes.
- Modern GTK 4 widgets, such as Gtk.HeaderBar for a cleaner interface and Gtk.Overlay as a replacement for the traditional status bar.
- GtkSourceView extension via a built-in scheme (jollpi.xml) as an example of editor customization.
This session is aimed at developers interested in how GTK 4 can be used to build Python desktop applications that are lightweight, responsive, and easy to maintain, with techniques that can be adapted to other small-scale, high-performance projects.
| Category | Application Development and Deployment |
|---|---|
| Talk Description | Jollpi is a lightweight Python text editor rebuilt with GTK 4 and GtkSourceView 5. I will share how async file handling, search, and real-time monitoring keep it responsive and minimal-dependency, with techniques applicable to other Python desktop apps. |
| Author(s) Bio | Creator of Jollpi text editor (2010), now rewriting it with a modern Python & GTK stack |
| Pronouns | He/Him |
| Where are you located? | Singkawang, West Kalimantan, Indonesia |
| Do you need travel sponsorship from GNOME Foundation in order to join our event? | No |