For text editors, the strongest matches are curlpipe/ox (Ox is an extensible terminal-based code editor written in), atom/atom (Atom is an open-source hackable text and code editor) and lapce/lapce (Lapce is a high-performance, extensible code editor built in). microsoft/vscode and textmate/textmate round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Hand-picked open-source text editors for developers, ranked by GitHub stars and activity. Compare the top tools and find the right one.
Ox is an extensible code editor and integrated development environment. It functions as a terminal-integrated text editor that combines source code editing with an embedded interactive command-line shell. The editor is distinguished by its programmable nature, utilizing a custom scripting API to integrate external functionality such as AI assistance and productivity tools. It further enables automation through an event-capture macro system for recording and playing back editing sequences. Core capabilities include multi-cursor editing, rule-based syntax highlighting, and a hierarchical file
Ox is an extensible terminal-based code editor written in Rust that provides syntax highlighting, multi-cursor editing, file tree navigation, an integrated terminal, and a scriptable architecture.
Atom is an extensible code IDE and hackable text editor designed for source code editing and the creation of custom development environments. It functions as a syntax highlighting editor and a version control integrated editor that tracks file changes and synchronizes code with remote repositories. The editor allows for the modification of its own core functionality and supports a package-based plugin system for creating custom themes and snippets. It also serves as a Markdown preview editor, providing side-by-side visual rendering for content authoring. The platform includes capabilities fo
Atom is an open-source hackable text and code editor featuring syntax highlighting, an extensible package-based architecture, file navigation, and search and replace capabilities.
Lapce is a high-performance text editor built with Rust that utilizes hardware acceleration for fast rendering and responsiveness. It functions as a modal text editor with Vim-style keybindings to minimize hand movement, an LSP client for language intelligence, and a remote development environment for editing files and executing code on distant servers. The editor features an extensible architecture based on the WebAssembly System Interface, allowing it to execute plugins compiled to WASI for cross-language functionality. It further distinguishes itself by implementing the Debug Adapter Proto
Lapce is a high-performance, extensible code editor built in Rust that covers the requested syntax highlighting, file tree, search and replace, multi-cursor editing, integrated terminal, and plugin architecture.
This project is a cross-platform code editor designed for software development, offering a comprehensive suite of tools for text editing, workspace management, and task automation. It includes native support for version control, an integrated terminal, and a flexible task runner that allows for the execution of build, test, and deployment workflows directly within the environment. The editor features an extensive AI-driven development assistant system, which provides conversational chat interfaces, inline code suggestions, and autonomous agents capable of executing multi-step coding tasks. Th
Visual Studio Code is a cross-platform code editor that squarely provides syntax highlighting, an extensible architecture, file tree navigation, an integrated terminal, search and replacement, and multi-cursor editing.
TextMate is a programmable text editor designed for software development and project management. It functions as a highly customizable environment where users can define language-specific behaviors, syntax highlighting rules, and automated workflows to suit their individual development needs. The editor distinguishes itself through a modular, bundle-based extensibility model that allows for deep integration with system shell commands. By piping document buffers through external scripts and command-line tools, users can perform complex text transformations, automate file lifecycle tasks, and b
TextMate is a classic programmable and extensible code editor for macOS with syntax highlighting and bundle-based customization, though it lacks built-in features like an integrated terminal.
Vis is a terminal-based modal text editor that utilizes vi keybindings and a system of structural regular expressions. It functions as a scriptable environment where Lua is used for configuration, custom key mappings, and plugin development. The editor distinguishes itself through a syntax highlighting system based on Parsing Expression Grammars and a pattern matching engine that treats text as a structure for complex search and replace operations. It also integrates directly with the system shell, allowing users to pipe text ranges to external commands and capture the resulting output. The
Vis is a terminal-based modal text editor offering syntax highlighting, extensible Lua scripting, and powerful pattern-based search and replace, though it lacks built-in file tree navigation and an integrated terminal.
Oni is a modal code editor and integrated development environment that uses Neovim as its core editing engine. It combines the text manipulation and modal interaction model of Neovim with the capabilities of a full IDE, including a Language Server Protocol implementation for code intelligence, automatic completion, and error highlighting. The editor is distinguished by its integrated web rendering, allowing users to view documentation, browse the web, and render live previews of code and unit tests directly within the interface. It also utilizes TextMate grammars for syntax highlighting. The
Oni is a modal code editor built on top of Neovim with an extensible architecture and syntax highlighting, matching the core text editor category even though the project has been archived.
Kakoune is a scriptable, modal text editor for the terminal that employs a client-server architecture. This model allows multiple terminal windows to connect to a single editing session, providing a programmable environment for managing source code and text. The editor is distinguished by its selection-first logic, where a text region must be predefined before a command is applied. It leverages regular expressions to manage multiple cursors and perform bulk edits across complex text patterns, and it integrates deeply with the shell by piping selections through external programs and filters.
Kakoune is a modal terminal-based code editor with a selection-first editing model and multi-cursor support, making it a strong fit despite lacking a built-in file tree or integrated terminal out of the box.
Zed is an AI-native, high-performance code editor designed for extreme responsiveness and keyboard-centric workflows. It functions as an extensible text processing workspace that integrates autonomous agents and predictive models directly into the development environment to automate complex engineering tasks, refactoring, and code generation. The editor distinguishes itself through a GPU-accelerated rendering pipeline and an asynchronous multi-threaded architecture that ensures low-latency interaction even with large-scale projects. It features built-in support for real-time, multi-user colla
Zed is an open-source, high-performance code editor featuring syntax highlighting, an extensible architecture, file tree navigation, an integrated terminal, search and replace, and multi-cursor editing.
Vim is a keyboard-driven text editor designed for the high-speed manipulation of source code and plain text files. It utilizes a modal interface that interprets keystrokes as either text insertion or complex navigation and editing commands. Built on a portable C core, the software maintains a consistent experience across diverse operating systems and terminal emulators through an abstraction layer that manages text in memory-mapped buffers. The editor functions as a highly modular platform that supports extensive customization through a built-in scripting engine and a plugin-based architectur
Vim is a legendary, keyboard-driven text editor that features syntax highlighting, a plugin architecture for extensibility, and modal editing for rapid code manipulation.
Emacs is an extensible real-time text editor that displays each character as it is typed across multiple windows and frames. It is fundamentally a scriptable editing environment, allowing users to write custom code that adds new commands or modifies behavior dynamically without restarting the editor. Beyond text editing, the editor includes an interactive help and manual browser that opens contextual documentation for any command or setting on demand, as well as a live configuration customization panel that applies adjustments to settings and themes instantly.
Emacs is a classic, highly extensible open-source text and code editor that features syntax highlighting, a tree-based file and window layout, multi-cursor capabilities, search and replace, and an integrated terminal via its rich ecosystem.
Micro is a terminal-based text editor designed for use within command-line interfaces. It provides a keyboard-centric environment for creating and modifying source code and configuration files without requiring a graphical desktop system. The editor features a modular architecture centered on a plugin-driven system and an embedded scripting engine. Users can extend core functionality, automate workflows, and customize editor behavior by writing scripts or installing external extensions through a centralized package management system. This extensibility allows for the integration of custom com
Micro is a terminal-based code and text editor that provides syntax highlighting, extensible plugin support, and command-line file editing, though it lacks an integrated terminal since it runs inside one directly.
Helix is a terminal-based modal text editor designed for efficient code manipulation and navigation. It centers on a selection-first editing model, where operations are performed on active ranges rather than individual cursor positions, allowing for precise control over text and code structures. The editor distinguishes itself through deep integration with structural parsing and language intelligence. By utilizing an incremental parsing library, it builds concrete syntax trees that enable advanced features like structural code navigation, intelligent indentation, and syntax-aware text object
Helix is a terminal-based modal text editor that provides syntax highlighting and file tree navigation through its built-in picker, though it lacks an integrated terminal and relies on external tools for some features.
Brackets is an extensible JavaScript IDE and front-end code editor specifically designed for authoring HTML, CSS, and JavaScript. It serves as a web development text editor that provides a specialized environment for building websites. The editor is distinguished by its live preview capabilities, which render code changes in a browser in real time for immediate visual feedback. It further supports front-end workflows through inline style editing and the ability to synchronize code changes across multiple browser windows for cross-browser testing. The project includes a wide range of developm
Brackets is an open-source front-end code editor with support for syntax highlighting, multi-cursor editing, and an extensible architecture, though it lacks a built-in integrated terminal.
Zed is a terminal-based code editor built in Rust that provides a full-featured editing experience with familiar keybindings, mouse support, and multiple cursors. It runs entirely in the terminal while offering capabilities typically found in graphical editors, including split panes, a command palette, and integrated language server protocol support for real-time diagnostics, completions, go-to-definition, and code actions across multiple languages. The editor distinguishes itself through a plugin system that runs sandboxed TypeScript plugins in a QuickJS runtime, with an asynchronous bridge
This terminal-based code editor provides syntax highlighting, file navigation, and multi-cursor editing in Rust, though it runs in the terminal rather than as a graphical application.
Marktext is a cross-platform desktop application designed for markdown document authoring and structured note-taking. It functions as a WYSIWYG text processor, providing a distraction-free interface that renders formatted content in real-time while hiding the underlying markup syntax. The application utilizes a multi-process architecture that separates system integration from the user interface, ensuring consistent performance across Windows, macOS, and Linux. By employing a custom editor core built on native browser capabilities and a structured syntax tree, it manages complex document eleme
Marktext is a cross-platform desktop markdown editor with a distraction-free WYSIWYG interface, though it focuses specifically on markdown authoring rather than general-purpose code editing.
Xi Editor is a high-performance text editor core written in Rust. It employs a decoupled architecture that separates core logic from the presentation layer using a JSON-based client-server protocol. The project features a language-agnostic plugin system that communicates with external extensions via JSON messages over pipes. It manages text buffers using a persistent rope data structure to enable efficient editing of very large files. The system supports asynchronous editor workflows by running expensive operations in background threads using data snapshots. This prevents background processi
Xi Editor is a high-performance text editor core written in Rust with a decoupled, extensible architecture, though as a backend engine it requires a separate frontend client to provide a complete user interface.
notepad-- is a cross-platform plain text editor designed for creating and modifying unstructured text files. It functions as a lightweight productivity tool that allows users to write and save documents across Windows, Linux, and macOS. The application utilizes a buffer-based editing model to decouple file storage from the visual display. This approach enables a consistent user interface for local file management and plain text document creation regardless of the underlying operating system.
Notepad-- is a cross-platform text editor designed for local file management and plain text document creation, though it lacks the advanced features like an integrated terminal and multi-cursor editing found in full-featured code editors.
Notepad++ is a high-performance, lightweight source code editor designed for local development on Windows. Built as a native desktop application, it utilizes a specialized editing component to manage text buffers and render syntax highlighting for large files with minimal resource overhead. The editor distinguishes itself through a robust plugin architecture that allows users to extend core functionality by loading external binary modules at runtime. It also provides extensive support for custom language definitions, enabling users to map unique syntax rules and keywords to the rendering engi
Notepad++ is a lightweight, native Windows text and code editor featuring syntax highlighting, an extensible plugin architecture, and search capabilities, though it lacks an integrated terminal and built-in file tree navigation out of the box.
NotepadNext is a desktop productivity application designed for creating and modifying plain text documents. It functions as a lightweight tool for managing local files, providing a consistent editing environment across Windows, macOS, and Linux operating systems. The application utilizes a cross-platform interface framework to ensure native-looking components and reliable file operations regardless of the host environment. By separating the underlying text data structures from the visual representation, the software maintains a clear distinction between document management logic and the user
NotepadNext is a cross-platform text editor inspired by Notepad++ that provides lightweight document editing and file management, though it lacks some advanced IDE features like an integrated terminal.
Neovim is a text editing environment designed for extensibility and performance. It provides a core engine for text manipulation, multi-window management, and complex editing commands, while maintaining compatibility with existing paradigms. The project features a stable interface that allows external clients to interact with the application state, enabling the development of custom user interfaces and integrated tools. The architecture decouples the core editing logic from the user interface through an asynchronous protocol. This system supports external rendering processes, including termin
Neovim is a highly extensible, keyboard-driven text and code editor with a powerful core engine and asynchronous plugin architecture, though it relies on terminal environments or external frontends rather than a built-in graphical file tree or integrated terminal out of the box.
A fast and lightweight IDE
Geany is a fast and lightweight integrated development environment that provides essential code-editing capabilities like syntax highlighting, file tree navigation, and search and replace, making it a solid fit for a lightweight text editor.
Sakura is a native desktop text editor built directly on the Win32 API for the Windows operating system, with specialized support for Japanese character sets and encodings. It provides a dedicated environment for writing and modifying software source code and text files. The application renders text directly onto native window handles and utilizes window subclassing for custom keyboard input behavior and text selection. It handles massive log and data files efficiently by mapping large text streams directly into virtual memory segments. Additionally, it parses programming code against regular
Sakura Editor is a traditional Windows text editor offering core editing and search features, though it has a narrower and more regional focus than a modern extensible code editor.
Yi is a text editor written and scriptable in the Haskell programming language. It provides an extensible editing environment that allows developers to write custom features, keybindings, and workflows directly using the host language, separating core editing logic from interchangeable textual and graphical user interface frontends. The editor supports customizable input sequences through event-driven keymap emulation schemes such as vi, Emacs, and CUA. Configuration management includes options for dynamic runtime code recompilation, which detects user file changes at startup and injects new
Yi is a code and text editor written and scriptable in Haskell that offers core editing capabilities, though its functional ecosystem is quite distinct from mainstream extensible editors.
Android simple text editor
This Java-based Android application provides a basic text editor with file access, though it lacks advanced features like an integrated terminal or multi-cursor editing.
ⵣ Ki Editor - Multi-cursor combinatoric modal editor.
Ki Editor is a modal code and text editor written in Rust that supports multi-cursor editing, though it lacks some of the broader out-of-the-box features like an integrated terminal or full file tree navigation.
A text editor for ChromeOS and Chrome
This repository provides a lightweight browser-based text editor tailored for ChromeOS, featuring a file-handling interface and editing capabilities though lacking advanced IDE features like an integrated terminal.
Leo is an outline-oriented editor written in 100% Python.
Leo is an outline-oriented text and code editor written in Python that provides extensible architecture and file tree navigation through its unique outlining system, though it lacks some modern features like an integrated terminal.
A modern text editor for the terminal written in Rust
Zee is a terminal-based code editor written in Rust that provides text-editing capabilities, though it lacks several advanced features like an integrated terminal and multi-cursor editing.
Pen is a visual WYSIWYG markdown editor and live editing interface that converts markdown patterns into rich text elements in real-time. It serves as a tool for markdown content authoring and transforming editor state into standard markdown strings for export. The editor features a customizable text interface with a formatting toolbar for text-styling actions. It includes systems for hyperlink management and the automatic conversion of specific character sequences into structured headings, lists, blockquotes, and code blocks during the input process. The project provides capabilities for rea
Pen is a live-rendering markdown and rich text editor with a customizable formatting toolbar and real-time input formatting, though it focuses specifically on visual markdown authoring rather than a general-purpose code editor.
| المستودع | النجوم | اللغة | الترخيص | آخر تحديث |
|---|---|---|---|---|
| curlpipe/ox | 3.7K | Rust | GPL-2.0 | |
| atom/atom | 60.8K | JavaScript | MIT | |
| lapce/lapce | 38.6K | Rust | Apache-2.0 | |
| microsoft/vscode | 186.4K | TypeScript | MIT | |
| textmate/textmate | 14.8K | Objective-C++ | gpl-3.0 | |
| martanne/vis | 4.6K | C | NOASSERTION | |
| onivim/oni | 11.2K | TypeScript | MIT | |
| mawww/kakoune | 10.9K | C++ | Unlicense | |
| zed-industries/zed | 85.3K | Rust | NOASSERTION | |
| vim/vim | 40.5K | Vim Script | Vim |