Fact-checked by Grok 2 weeks ago

GNOME Text Editor

GNOME Text Editor is a free and open-source graphical for , designed to provide a simple and intuitive experience for editing files. It became the default in starting with version 42, released in March 2022, replacing the older gedit application. Developed by Christian Hergert starting in 2020, the editor focuses on robust session management to preserve unsaved changes and application state even after unexpected closures. Key features include for numerous programming languages, search and replace functionality with PCRE2 support, inline spell checking, and document printing capabilities. It integrates seamlessly with the ecosystem, supporting dark mode, automatic session restoration, and configuration options like .editorconfig files, modelines, and optional Vim keybindings for enhanced productivity. The application is built using GTK 4 and libadwaita, ensuring a modern, responsive interface that adheres to 's design guidelines. Released under the , Text Editor is actively maintained by the project community and available via for easy installation across distributions. As of version 49.0, released in September 2025, it continues to evolve with improvements in performance and refinements.

Overview

Description

Text Editor is a and open-source graphical designed for simplicity and a pleasing default experience when editing plain text files. It is licensed under the , allowing users to freely use, modify, and distribute the software. The current stable version, 49.0, was released on September 12, 2025. It serves as the default text editor in the desktop environment. GNOME Text Editor is primarily used for tasks such as editing configuration files, taking notes, and creating simple documents in environments, emphasizing ease of use without unnecessary complexity.

Role in GNOME Ecosystem

The GNOME Text Editor has been a core component of the desktop environment since the release of GNOME 42 in March 2022, where it was added to the default application set as a modern, lightweight utility for basic text editing tasks. This inclusion aligns with GNOME's strategy to update its core applications with contemporary technologies, such as GTK 4 and libadwaita, ensuring consistency across the ecosystem. As part of this set, it serves as an essential tool for users interacting with the desktop, providing a simple interface for viewing and editing files without the complexity of full-featured . In 42, the replaced gedit as the recommended default text editor, marking a shift toward a more streamlined and performant application that better supports the evolving platform. This transition was driven by the need to modernize core apps while maintaining , allowing gedit to remain available for users preferring its established features. The editor's design emphasizes reliability for everyday use, such as quick configuration file edits or note-taking, positioning it as a foundational element in 's user experience. Several major distributions have adopted Text Editor as their standard simple following GNOME 42. For instance, 22.10 (Kinetic Kudu) switched to it as the default, replacing gedit to align with upstream GNOME recommendations and leverage its 4 optimizations. Similarly, Workstation 36 integrated it by default, highlighting its autosave functionality and dark mode support as improvements over predecessors. It is available in the repositories of many other distributions, contributing to widespread availability across the Linux ecosystem. The Text Editor integrates seamlessly with GNOME Shell through its adherence to the GNOME Human Interface Guidelines (HIG), facilitated by libadwaita, which enforces consistent visual styling, color schemes, and interaction patterns. This ensures a cohesive experience, with features like automatic theme adaptation to Shell's light/dark modes and responsive layouts that match the Shell's overview and workspace behaviors. By prioritizing HIG compliance, the editor avoids visual dissonance, allowing users to switch effortlessly between applications while maintaining focus on content editing.

History

Origins and Initial Development

The development of GNOME Text Editor originated as a personal project by Christian Hergert, the creator of , to test the GtkSourceView 5 API, which targets GTK 4, along with just-in-time (JIT) language support and other backend features like the macOS port and GL renderer. The initial prototype emerged with the creation of its repository on April 9, 2020, marking the beginning of hands-on experimentation with these technologies in a practical application context. Hergert officially announced the project on March 6, 2021, through a blog post on the website, presenting it as a technology preview with an initial release tarball, gnome-text-editor-3.39.92. The primary motivation was to develop a modern, lightweight successor to the longstanding text editor gedit, leveraging GTK 4 and the libadwaita library to align with contemporary design standards while prioritizing a minimalistic approach over feature bloat. This initiative aimed to address gedit's aging architecture by introducing a fresh foundation that supports adaptive interfaces suitable for evolving ecosystems, including potential mobile adaptations. From its inception, the early design principles emphasized simplicity and robust , ensuring the editor tracks user changes, recent documents, and settings—such as those from .editorconfig—even after application closure or crashes, through automatic draft saving and session restoration. The interface drew from mockups crafted by design team, incorporating styling via libadwaita to deliver a clean, intuitive experience focused on core text editing without aspirations to serve as a full-fledged programmer's tool.

Major Releases and Adoption

The GNOME Text Editor transitioned to the default for the GNOME desktop environment with the release of GNOME 42 on March 23, 2022. Prior to this, preview versions aligned with GNOME 41, released in September 2021, provided early access to the editor's core functionality, including basic and session management. This shift replaced Gedit as the standard tool, emphasizing a modern GTK4-based interface designed for simplicity and reliability. Following its debut, the editor saw steady updates synchronized with GNOME's biannual release cycle. Version 47 arrived alongside 47 on September 18, 2024, introducing refinements to and overall stability. Subsequent releases included version 48.0 with 48 in March 2025, followed by the point release 48.3 on May 29, 2025, which addressed minor bugs and performance tweaks. The latest major update, version 49.0, was released on , 2025, coinciding with 49 and incorporating further polish to user workflows. Adoption extended rapidly beyond the core GNOME environment into major Linux distributions. It became the default in 22.10, released in October 2022, marking a deliberate move to leverage its GTK4 compatibility and autosave features over Gedit. Similarly, Workstation 36, launched in May 2022, integrated it as the primary editor, praising its session restoration and modern design. This momentum continued, with the editor remaining standard in 24.04 (April 2024) and all subsequent releases from version 40 onward (April 2024), reflecting its growing acceptance in enterprise and consumer Linux ecosystems. Early releases from versions 42 to 45 focused on foundational enhancements, such as robust autosave capabilities that preserve unsaved drafts and seamless support for 's global dark mode preference introduced in version 42. These improvements ensured better integration with the desktop's theming and reduced risks during sessions. Starting with version 47 and continuing in later iterations, received targeted upgrades, expanding support for additional languages and improving accuracy for code visibility in diverse file types.

Features

Core Editing Functions

The GNOME Text Editor provides essential file management operations through an integrated popover menu accessible from the header bar, allowing users to create new documents, open existing from local or remote locations, save changes to the current or as a new one, and close individual s or the entire application. It supports multiple open documents via a tabbed interface, where each represents a separate , enabling efficient switching between them without losing context. Additionally, the editor features session restoration, automatically reopening previously edited and upon relaunch, even if the application was quit unexpectedly or crashed, to preserve user workflow continuity. Autosave is a core mechanism in Text Editor, automatically backing up changes to open documents at regular intervals without user intervention, ensuring that progress is safeguarded against . In of a , forced quit, or interruption, the editor recovers these autosaved versions upon restart, prompting users to restore unsaved or modified content to resume editing seamlessly. This functionality emphasizes reliability for everyday text manipulation tasks. Text capabilities allow users to adjust the display size of content dynamically, with options available in the main for increasing or decreasing magnification to improve readability, and support for shortcuts or wheel gestures while holding the Ctrl . Integrated search and replace tools facilitate efficient text navigation and modification, invoked via Ctrl+F for search or Ctrl+H for replace, with results updating as the user types and options for case-sensitive matching, whole-word searches, or regular expressions via a gear . These tools appear as overlay panels within the editing area, minimizing disruption to the workflow. The editor primarily handles plain text files, such as those with .txt or .conf extensions, focusing on unformatted content without support for rich text or binary formats. It defaults to encoding for compatibility with modern systems, with basic detection and handling of other common encodings during file opening to prevent display issues. Access to these core functions is primarily through the popover menu and keyboard shortcuts, integrating seamlessly with the application's minimalistic user interface.

User Interface Elements

The Text Editor employs a minimalist layout designed for simplicity and focus on content, featuring a single-window interface with a tab bar for managing multiple open files. This approach eliminates traditional toolbars and excess clutter, adhering to the (HIG) to provide a clean, distraction-free editing environment. File operations and preferences are accessed via popover-based menus, which appear as compact overlays triggered by buttons or keyboard actions, conserving screen space while enabling efficient navigation. For instance, the "Open" popover allows quick file selection and is keyboard-navigable, supporting seamless integration without disrupting the main editing view. The interface follows the theme, leveraging Libadwaita for a consistent, modern appearance that aligns with the desktop environment. It includes support for dark mode, automatically adapting to system preferences for reduced eye strain in low-light conditions. Core actions are facilitated by standard shortcuts, such as Ctrl+S for saving files and Ctrl+F for initiating search, promoting efficient without reliance on interactions; a full list is accessible via the hamburger menu or Ctrl+?.

Advanced Capabilities

The GNOME Text Editor provides for a variety of common programming and markup languages, enabling users to distinguish code elements such as keywords, strings, and comments through color coding. This feature is powered by GtkSourceView, which supports languages including , XML, , , and , among others, with highlighting determined automatically based on file extensions or user selection. Unlike full integrated development environments, it offers this capability without advanced or tools, focusing on readability for basic code editing. It also includes inline spell checking to identify and underline potential spelling errors in , aiding in the creation of error-free text documents. The editor supports configuration options such as .editorconfig files for project-specific settings, modelines within files to define editor behavior on a per-file basis, and optional Vim keybindings that enable modal editing for users familiar with Vim commands. Theme support in the GNOME Text Editor includes built-in light and dark modes that integrate with the system's overall appearance preferences, ensuring consistent visual aesthetics across the . Users can further customize the editor's color schemes through style schemes defined in XML files, which influence both and application-wide colors like backgrounds and text; these custom schemes can be selected via the application's preferences and added by placing files in the user's local styles directory. Session management is a core advanced feature, designed to preserve the user's work state across application sessions. The editor automatically saves open files, cursor positions, and unsaved changes in a background process, allowing seamless restoration upon relaunch even if the application was closed unexpectedly; this includes handling multiple tabs and recent modifications without requiring manual intervention. For output options, the Text Editor includes a basic printing dialog accessible via the standard print operation, which supports direct printing to physical devices as well as exporting documents to PDF format by selecting the "Print to File" option and specifying PDF as the output. This integrates with the desktop's printing system for straightforward document sharing or archiving, building on its core file handling capabilities.

Development

Technical Architecture

The GNOME Text Editor is constructed using the GTK 4 framework, which serves as the primary toolkit, and the libadwaita library, enabling adherence to contemporary design guidelines through its widget set for adaptive and responsive interfaces. These components facilitate cross-platform compatibility and efficient rendering on and X11 display servers, forming the foundational layer for the application's visual and interactive elements. The codebase is primarily authored in Vala, a high-level object-oriented language that generates C code and leverages the type system for seamless integration with GNOME's ecosystem, promoting developer productivity while maintaining low-level control. Performance-critical sections, such as text rendering optimizations and core engine functions, are implemented directly in C to ensure efficiency and minimize overhead in resource-intensive operations. This hybrid approach balances modern language features with the runtime performance required for a lightweight . Development and maintenance occur via the project's GitLab repository at gitlab.gnome.org/GNOME/gnome-text-editor, which supports collaborative workflows through merge requests for code reviews and an integrated issue tracker for bug reports and feature requests. The build process relies on the Meson build system (version >= 0.60.0), which handles compilation, dependency resolution, and packaging; key runtime dependencies include libadwaita >= 1.8.alpha for UI theming, GTK 4 >= 4.19.4 for core widgets, and additional libraries such as gtksourceview-5 >= 5.15.0 for syntax highlighting support. This architecture ensures modular construction, allowing for straightforward integration with Flatpak for distribution and easy extension through GNOME's standard tooling.

Licensing and Community

The GNOME Text Editor is distributed under the GNU General Public License version 3.0 or later (GPL-3.0-or-later), a license that permits free redistribution, modification, and use, while requiring that any derivative works also be made available under the same terms to promote open-source collaboration. This licensing choice aligns with the broader project's commitment to principles, ensuring the editor remains accessible and adaptable for users and developers worldwide. The primary maintainer of the project is Christian Hergert, a prominent GNOME contributor known for developing tools like , who oversees core development and integrates community input. Contributions from the wider community occur primarily through the project's repository, where developers submit merge requests for features, fixes, and improvements, fostering collaborative evolution of the software. Community engagement is facilitated through various channels, including bug reporting and issue tracking on , where users are encouraged to test nightly builds before filing reports to streamline triage. Translations are handled via the project's Damned Lies platform, enabling volunteer teams to localize the interface into multiple languages using the Translation Robot for automated integration. Additionally, participants join hackfests and remote hacking sessions to collaborate on enhancements, design discussions via whiteboards, and broader ecosystem integration. Official resources, such as the Apps website for downloads and documentation, and the repository for , serve as central hubs for involvement.

Comparisons

With Gedit

GNOME Text Editor serves as a streamlined successor to gedit, prioritizing and modern design for basic text editing within the GNOME desktop environment. While gedit includes a robust system that enables extensibility through add-ons such as spell checkers, Python consoles, and file browsers, GNOME Text Editor deliberately forgoes any architecture to emphasize a clean, lightweight without the complexity of third-party extensions. In terms of underlying technology, Text Editor is constructed using GTK4 and the libadwaita library, delivering a responsive interface with features like adaptive theming and rounded elements that conform to 's current design guidelines, whereas gedit is based on the preceding GTK3 toolkit, which limits its adaptability to newer visual standards. Performance-wise, Text Editor achieves a lighter resource footprint through its minimalistic design, sidestepping the accumulated feature bloat in gedit that can arise from plugin integrations and legacy code, resulting in faster startup times and smoother handling of standard documents. It also enhances session management by automatically reopening files from the previous session upon launch, with user-configurable options to restore or discard states, offering a more seamless continuity than gedit's conventional save-based recovery mechanisms. This evolution positions GNOME Text Editor as an efficient default choice for routine tasks like and quick edits, while gedit persists as an option for users needing greater and advanced tools.

With Other Text Editors

GNOME Text Editor distinguishes itself from terminal-based editors like and Vim through its , which supports mouse interactions and visual navigation for editing text files. In contrast, prioritizes command-line simplicity for quick, lightweight modifications without requiring a , making it ideal for remote servers or minimal setups. Vim, a editor renowned for its efficiency and extensibility in terminal environments, excels in keyboard-driven workflows but demands a steep ; however, GNOME Text Editor incorporates optional Vim keybindings to bridge this gap, allowing users to apply familiar commands in a more accessible graphical context. This positions GNOME Text Editor as a hybrid option for those transitioning from terminal tools to desktop use. When compared to full-featured integrated development environments (IDEs) like , Text Editor opts for , lacking support for extensions, built-in debugging, or language server protocols that enable advanced code intelligence and . 's extensibility caters to professional developers handling large codebases with integrated terminals and , whereas Text Editor focuses on straightforward file editing without these overheads, resulting in faster startup and lower resource usage for casual tasks. Its session management automatically saves changes and restores states upon relaunch, providing reliability without the complexity of configurations. In relation to other graphical editors such as KDE's , Text Editor emphasizes seamless integration with the desktop, including adherence to the (HIG) for consistent theming and autosave functionality to prevent data loss. , by comparison, offers a multi-document interface with split views, embedded terminals, and plugin-based enhancements for tasks like debugging and LSP integration, appealing to users needing robust multi-file handling in KDE environments. Text Editor's single-window, distraction-free design avoids such multiplicity, prioritizing a lightweight footprint suitable for quick edits. Overall, Text Editor's strengths lie in its mobile-adaptive layout and HIG compliance, which ensure a polished across devices and align it well for casual users seeking a reliable, no-frills graphical editor over command-line or heavyweight alternatives.

References

  1. [1]
    Text Editor - Apps for GNOME
    GNOME Text Editor is a simple text editor focused on a pleasing default experience. Get involved. Get the app. Install the latest version from Flathub.
  2. [2]
    Introducing GNOME 42 - GNOME Release Notes
    For GNOME 42, we have two new apps in the default app set: Text Editor and Console. Text Editor has previously been made available as a preview release, and is ...
  3. [3]
    GNOME 'Text Editor' - GitLab
    Apr 9, 2020 · Text Editor is a simple text editor that focuses on session management. It works hard to keep track of changes and state even if you quit the application.
  4. [4]
    Install Text Editor on Linux - Flathub
    Edit text files. GNOME Text Editor is a simple text editor focused on a pleasing default experience. Changes in version 49.0.
  5. [5]
    Releases · GNOME / gnome-text-editor - GitLab
    Released date. Released date; Created date. Sort by: 49.0. Assets 4 ... Release notes. Release 49.0. 31a0c737 · 49.0. Released 1 month ago. by chergert's avatar ...
  6. [6]
    Ubuntu 22.10 Replaces Gedit with New Text Editor
    May 30, 2022 · Gedit has been out-of-the-box since the very first Ubuntu release back in 2004. The tool does offer more customisation and edge-case support ...
  7. [7]
    What's new in Fedora Workstation 36
    May 10, 2022 · Text Editor replaces Gedit by default. Text Editor is an all-new app built in GTK 4 and libadwaita. You can always reinstall Gedit by searching ...
  8. [8]
    GNOME 42 text editor and console - Arch Linux Forums
    Apr 8, 2022 · GNOME 42 text editor and console. The GNOME 42 release notes page (https://release.gnome.org/42/) says that now gnome-text-editor (https ...
  9. [9]
    Libadwaita: Splitting GTK and Design Language | TheEvilSkeleton
    Jun 3, 2024 · Libadwaita is targeted exclusively at the GNOME ecosystem, courtesy of the GNOME HIG. Apps built with libadwaita are intended to run best on ...<|control11|><|separator|>
  10. [10]
    A GTK 4 based Text Editor - GNOME Blogs
    Mar 6, 2021 · A GTK 4 based Text Editor ... It started as an application for me to verify the correctness of the GtkSourceView 5 API (which targets GTK 4).Missing: announcement blog
  11. [11]
  12. [12]
    Introducing GNOME 47, “Denver” - GNOME Release Notes
    Sep 18, 2024 · September 18, 2024. The GNOME project is thrilled to unveil GNOME 47, the newest release that reflects six months of dedicated effort from ...Missing: Text | Show results with:Text
  13. [13]
    Workstation has a new text editor - please test it! - Fedora Discussion
    Jan 18, 2022 · The default text editor has been switched from gedit to gnome-text-editor. The new editor has some nice features, including GTK 4, autosave, and a dark mode.<|control11|><|separator|>
  14. [14]
    Package "gnome-text-editor" (noble 24.04) - UbuntuUpdates
    Jul 23, 2024 · Package "gnome-text-editor" ; Description: simple text editor for GNOME ; Latest version: 46.3-0ubuntu2 ; Release: noble (24.04) ; Level: updates.
  15. [15]
    Proposal: GNOME Text Editor as default text editor - Ubuntu Discourse
    May 10, 2022 · GNOME switched its recommended text editor to gnome-text-editor for the 42 release. I propose that we switch our default text editor from gedit to gnome-text- ...
  16. [16]
    help/C/edit-search-and-replace.page · main · GNOME / gnome-text-editor · GitLab
    ### Summary of Search and Replace Functionality in GNOME Text Editor
  17. [17]
    GNOME Human Interface Guidelines
    The GNOME Human Interface Guidelines are the primary source of design documentation for those creating software with the GNOME development platform.
  18. [18]
    Text Editor Happenings - GNOME Blogs
    Dec 3, 2021 · Recent Text Editor updates include an improved preferences dialog, a slimmer open popover, a GSetting for spaces, a Vim emulation easter egg, ...Missing: menus | Show results with:menus
  19. [19]
    Popovers - GNOME Human Interface Guidelines
    A popover is a type of container that is overlaid on top of a window and which can be opened and closed using a button, to which it is attached.Missing: layout | Show results with:layout
  20. [20]
    Projects/GtkSourceView - GNOME Wiki
    Accurate syntax highlighting for most popular programming languages (C, C++, Java, C#, Fortran, etc.), scripting languages (sh, Python, Perl, Ruby, PHP, TCL, ...
  21. [21]
  22. [22]
    gnome-text-editor - Fedora Packages
    Upstream: https://gitlab.gnome.org/GNOME/gnome-text-editor · License(s): GPL-3.0-or-later AND CC-BY-SA-3.0 AND CC0-1.0 · Maintainers: linkdupont, kalev, ngompa ...
  23. [23]
    Hands on With GNOME's New Text Editor for Linux Users - It's FOSS
    Yes, GNOME has a brand-new text editor and it is called, well, Text Editor. While Gedit is still the default, this new editor has made an entry with the release ...<|control11|><|separator|>
  24. [24]
    New GNOME Text Editor - Everything You Need to Know
    Aug 14, 2022 · GNOME 42 version onwards, Gedit is replaced with a new editor – Gnome Text Editor. So the distributions which are based on GNOME should not have ...
  25. [25]
    GNOME has a Brand New Text Editor and it is Likely to Replace ...
    Dec 6, 2021 · Gedit is the default text editor for the GNOME desktop environment. It is a popular option and an effective text editor that offers all the ...
  26. [26]
    Kate - Get an Edge in Editing
    ### Summary of Kate's Features