30 open-source projects similar to macvim-dev/macvim, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Macvim alternative.
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.
MacVim is a native Cocoa application that implements the Vim modal text editor as a graphical user interface on macOS. It integrates the editor engine directly into a native window and event loop, allowing it to operate without a terminal emulator. The project functions as both a programming text editor and a hexadecimal binary editor. It provides tools for modifying raw binary data via a visual hexadecimal grid and applying patches to binary files. The editor features modal input handling, pattern-based syntax highlighting, and rectangular block selection. Additional capabilities include mu
CotEditor is a native macOS plain text editor designed for lightweight file modification and developer use. It is a desktop application built specifically for the macOS operating system to ensure high performance and system integration. The project functions as a text encoding manager, providing the ability to process and convert a wide range of plain text formats and legacy character encodings to prevent corruption and display errors. Its capabilities cover plain text editing, lightweight code editing for scripts and configuration files, and general macOS text processing.
Runestone is a web-based code editor component and rendering engine designed for browser-based text editing. It functions as a customizable interface that handles the visual representation of code, including line numbering, indentation, and line wrapping. The project features a rule-based syntax highlighting engine that applies colors to text ranges based on language grammar definitions. It also includes a regex-based text search engine that locates specific patterns and applies visual highlights to matching character offsets. The editor manages text input through automatic character pairing
CodeEdit is an open-source integrated development environment and native macOS code editor. It provides a workspace for writing and modifying source code, combining a text editor with project management tools. The editor is built specifically for macOS using native frameworks to ensure performance. It features a plugin system that allows for the addition of specialized features and custom logic to extend the editing experience. The environment includes an integrated terminal emulator for executing development commands and debugging tools. It also provides project-wide file indexing for globa
Vim-galore is a comprehensive technical reference and curated guide for mastering the Vim text editor. It serves as a central resource for users seeking to understand the philosophy, command structure, and advanced customization capabilities required to operate professional-grade modal text editors effectively. The project distinguishes itself by providing a deep dive into efficient editing workflows, plugin management, and automation strategies within a terminal-based environment. It covers the full spectrum of editor mastery, from fundamental modal navigation and text manipulation to comple
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
Micro is an extensible terminal text editor that supports mouse interaction and intuitive keyboard shortcuts for editing files in a command line environment. It functions as a multi-cursor editor with syntax highlighting and a plugin system for adding custom functionality and automation scripts. The editor distinguishes itself through simultaneous editing across multiple cursors and a script-based extension system. It enables the automation of repetitive editing tasks via macro recording and playback of keystroke sequences. The project covers workspace management through split-screen panes a
CodeMirror 5 is a browser-based code editor and extensible UI component. It functions as a syntax highlighting engine and a programmable text surface, providing a professional coding experience embedded within web pages. The project is distinguished by its ability to act as a collaborative text editor, synchronizing document changes across multiple users in real time. It also includes a dedicated Vim emulation layer that implements modal keyboard interactions, motions, and operators. The system covers broad capability areas including language support for autocompletion and error analysis, co
Vditor is a browser-based Markdown editor and rendering engine that supports multiple editing interfaces, including a visual rich-text experience, instant rendering, and a traditional side-by-side split-view preview. It serves as an authoring tool for technical documentation and a component for web-based editor integration. The project is distinguished by its support for complex technical content, utilizing specialized rendering for mathematical formulas, flowcharts, sequence diagrams, and mind maps. It also functions as a collaborative document review tool, enabling users to attach anchored
CodeMirror is a browser-based code editor framework and modular extension system used to embed full-featured text editors into web pages. It functions as a syntax tree parsing engine and a language server protocol client, enabling structural language analysis and deep integration with external programming language services. The project is distinguished by its modular architecture, which uses a system of extensions and compartments for dynamic reconfiguration at runtime. It supports real-time collaborative editing and state synchronization through an operational transformation framework, allow
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
Macdown is a markdown text editor and HTML renderer designed for structured document composition. It provides a workspace for writing in lightweight markup syntax while simultaneously generating a live HTML preview of the rendered output. The editor distinguishes itself through a programmable interface, offering a command line utility to open files or pipe text directly into the application. It further supports extensibility via a plugin system that allows for the addition of custom features and functional modules at runtime. The application handles technical documentation requirements inclu
Tabulator is an interactive data table library and virtual DOM data grid used to create high-performance tables from JSON or arrays. It functions as a hierarchical data viewer and a spreadsheet interface component, capable of rendering thousands of records efficiently through viewport-based virtualization and progressive loading. The library distinguishes itself by providing a full spreadsheet interface mode with multi-sheet management, cell range selection, and bulk copy-paste capabilities. It supports complex data architectures, including nested data field mapping, expandable tree structure
SlackTextViewController is a specialized iOS user interface framework and UIKit text input component designed for markdown editing and messaging input management. It provides a view controller subclass that bundles text input logic and layout management into a reusable component for iOS applications. The framework implements specific messaging interface behaviors, including inverted scroll layouts that anchor content from the bottom up and animated typing indicators. It supports a rich text input workflow with markdown formatting, prefix-based autocompletion, and the ability to insert images
Opentui is a terminal user interface framework for building interactive command line applications. It provides a component-based system featuring a flexbox layout engine, a virtual node component tree, and a low-level 2D cell array renderer. The project is distinguished by a sophisticated keyboard binding engine that maps complex multi-stroke sequences and chords to named commands using prioritized, reactive layers. It also implements a plugin architecture that allows external modules to inject custom UI components into designated layout slots and extend input logic at runtime. Its capabilit
Syntaxhighlighter is a JavaScript-based frontend library used to render readable source code on web pages. It functions as a client-side syntax highlighter that applies language-specific colors and formatting to plain text code blocks within a browser. The library allows for the generation of a minimal distribution of language brushes and visual themes tailored to specific project needs. This enables the creation of a custom build containing only the required scripts and stylesheets. The system handles source code highlighting for web-based documentation and supports custom asset bundling to
This repository contains a collection of extensions and configurations for a text editor plugin ecosystem. It provides a framework for adding language support and custom behavior through a system of customizable key bindings, a project indexing engine, and a syntax highlighting framework. The project utilizes a Python API to enable the development of custom plugins, menus, and tools. It supports a functional extension framework where users can create custom themes, syntax definitions, and resource overrides to expand the editor's visual styles and capabilities. The system covers advanced tex
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
python-prompt-toolkit is a Python library and terminal user interface framework used for building interactive command line interfaces. It provides a toolkit for constructing complex terminal applications with advanced input handling and layout management. The project features a real-time syntax highlighting engine and a rendering system that ensures correct alignment and display of double-width Unicode characters. It includes specialized capabilities for command line autocompletion, providing ghost text suggestions and searchable input history. The framework covers a broad range of interface
PSReadLine is a command line editor for PowerShell that provides advanced line editing and command history management. It functions as a suite of tools for enhancing the interactive shell experience through a Bash-inspired implementation of editing, completion, mapping, synchronization, and highlighting. The project includes an interactive completion engine for navigating suggestions via a menu system and a keyboard mapping tool for assigning shortcuts to custom actions. It also features a session history synchronizer that automatically saves and shares command history across multiple active
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
react-page is a browser-based visual content editor and schema-driven page builder developed with React and TypeScript. It provides a framework for creating web pages through a what-you-see-is-what-you-get interface, utilizing a responsive twelve-column grid engine for arranging elements via drag-and-drop manipulation. The system features a plugin-based architecture that allows for the integration of custom components. These components are managed through a schema-driven system that automatically generates data entry forms based on predefined property definitions, separating the rendering vie
IINA is a high-performance media player for macOS built on the mpv engine. It serves as a video player with broad codec support and a web media streamer that uses plugins to stream and download online video content for local playback. The application features a customizable multimedia interface with flexible themes and layouts tailored for the macOS desktop. It integrates a JavaScript scripting engine and a plugin system to extend player functionality and parse media URLs from the web. Core capabilities include multimedia playback with support for subtitles and playlists, as well as a pictur
gui.cs is a .NET terminal user interface toolkit and framework used to build interactive, cross-platform text-based applications. It provides a structured system for composing terminal views using a view hierarchy and a dedicated layout engine. The library distinguishes itself through a component-based widget system and a constraint-based layout engine that allows interfaces to remain responsive across different terminal window dimensions. It employs a virtual-screen buffer to minimize flickering during redraws and uses state-driven theme configurations to maintain persistent visual styles.
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
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.
Awesome Emacs is a curated directory of community-driven resources, packages, and configurations designed to extend the functionality of the Emacs text editor. It serves as a comprehensive index for users seeking to transform their editor into a specialized development environment or a highly personalized productivity workspace. The collection highlights tools that enable deep customization of the Emacs experience, ranging from ergonomic key binding schemes and visual interface themes to advanced window management and navigation utilities. It provides a centralized reference for discovering e