30 open-source projects similar to coolwanglu/vim.js, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Vim.js alternative.
react-ace is a React component wrapper for the Ace code editor, designed to embed feature-rich text editing and syntax highlighting into web applications. It provides a browser-based editor that applies language-specific coloring and formatting rules to source code and markup files. The project distinguishes itself through support for specialized keyboard interaction modes, including Vim and Emacs, as well as a side-by-side diff viewer for comparing different file versions. It also functions as a tool for code snippets and live autocompletions to accelerate text entry. The component covers a
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
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
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
CodeMirror is a browser-based code editor and extensible text editor framework. It functions as a programmable interface for rendering code and text with support for numerous programming languages, serving as a reusable component for web-based integrated development environments. The project provides a syntax highlighting engine that applies visual styles to text based on programming language rules. It includes a programming API and a CSS theming system to customize the editor's appearance and extend its functionality with custom behaviors. The framework covers capabilities for embedding 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
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.
VsVim is a Visual Studio extension and modal text editor plugin that emulates Vim keyboard shortcuts and navigation commands within the Visual Studio integrated development environment. It functions as a Vim emulator, allowing users to navigate and edit code via a specialized command-based system. The project enables modal editing by separating command mode from insert mode. This system implements Vim keyboard emulation to facilitate text manipulation and navigation without the use of a mouse.
Oni2 is a high-performance, extensible text editor and project-based file manager. It functions as a modal code editor, utilizing a keyboard grammar of verbs and motions to navigate and modify source code without a mouse. It also serves as an LSP client, integrating Language Server Protocol servers to provide code completion, symbol navigation, and refactoring. The editor distinguishes itself by acting as a VSCode extension host, allowing it to load and execute language servers and debuggers from the VSCode ecosystem. It provides a programmable environment where custom functionality is implem
Evil is a modal editing framework and state-machine layer for the Emacs text editor. It functions as a modal text editing layer that separates text entry from navigation and manipulation by routing intercepted keystrokes through a central command dispatching system. The project serves as a Vim keybinding emulator, mapping standard modal editing commands and keyboard shortcuts into the Emacs environment. It utilizes an operator-motion command engine to compose atomic movement and action inputs into complex grammatical editing operations. The framework covers keyboard-driven navigation and tex
This project is a structured learning curriculum and guide designed to transition a user from a beginner to an advanced level of Emacs mastery over the course of one year. It provides a step-by-step study plan, configuration guides, and a workflow manual to help users navigate the complexities of the editor. The guide emphasizes a specific operational model, focusing on the implementation of modal editing through Vim-style keybindings and the use of hierarchical leader-key mapping for command organization. It details the process of transforming the editor into a full development environment 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
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
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
TagSpaces is an offline-first file tagging and organization platform that lets you manage local files with portable metadata stored directly in filenames or sidecar JSON files, eliminating the need for a central database. It functions as a full-text file search engine, a Kanban board file organizer, a local AI file assistant, an S3-compatible cloud file manager, and a web clipper and bookmark manager, all within a single application. The project distinguishes itself through a local-first architecture where all file operations, indexing, and AI processing run entirely on the device, with cloud
Tiny File Manager is a single-script PHP file manager that provides a complete web-based interface for browsing, uploading, editing, and managing files and folders on a server. All functionality is contained in one PHP file with no external dependencies beyond the web server, using constant-based configuration and session authentication for access control. The file manager distinguishes itself through a built-in browser-based code editor with syntax highlighting for over 150 programming languages, an embedded document preview proxy that displays office documents and PDFs through Google or Mic
Cherry Markdown is a web-based Markdown editor and parsing engine that converts markup text into sanitized HTML with a real-time synchronized preview pane. It functions as a rich text interface and WYSIWYG tool, providing a system for transforming markup strings into HTML documents or portable formats. The project distinguishes itself through high-performance rendering and a flexible extensibility model. It uses virtual DOM diffing and partial rendering to maintain responsiveness in large documents, and it allows for the creation of custom parsing rules and specialized HTML components via a p
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
This project is a browser-based Markdown composer and an embeddable JavaScript component designed to replace standard HTML text areas with a formatted editing interface. It serves as a tool for Markdown content authoring, providing a visual environment for creating and formatting text. The editor features a formatting toolbar and keyboard shortcuts for real-time Markdown parsing, along with integrated spell checking to identify errors as the user types. It includes a system for automatic draft management that saves content to local storage at configurable intervals to prevent data loss. The
This repository contains the comprehensive documentation for a code editor focused on AI-assisted software development and remote development workflows. It covers the implementation of AI agents and language models used for autonomous code generation, large-scale refactoring, and task iteration. The project is distinguished by its deep integration of autonomous AI agents capable of web navigation, application logic validation, and orchestrating multi-step development processes. It provides specialized frameworks for tailoring AI behavior through custom instructions, model context protocols, a
bootstrap-wysiwyg is a WYSIWYG HTML editor and browser-based content editor designed to integrate with the Bootstrap CSS framework. It provides a visual interface for creating and formatting rich text content that outputs HTML markup. The editor allows for custom text formatting workflows through the configuration of toolbars and keyboard shortcuts. Users can embed images via drag-and-drop and utilize a dedicated process to clean up redundant tags and whitespace in the generated markup.
Ace is a high-performance, browser-based code editor and JavaScript text editor component designed to be embedded into web applications. It functions as a feature-rich alternative to standard text areas, providing a syntax highlighting engine and support for multiple programming and markup languages. The editor is distinguished by its ability to handle large documents containing millions of lines while maintaining stable performance. It supports multi-cursor editing, allowing simultaneous modifications at multiple selection points across a document. The project covers a broad range of develo
Draft-js is a framework for building customizable rich text editors within React applications. It functions as a content editable framework that separates the underlying data model from the visual rendering layer, acting as a rich text content engine to manage complex text data and formatting. The project utilizes an immutable state management system to ensure consistent updates and predictable undo history. It manages editor state through persistent data structures, providing an immutable data state manager to prevent accidental mutation. The framework includes capabilities for high perform
bootstrap-wysihtml5 is a rich text editor that integrates with the Bootstrap CSS framework to provide a visual interface for formatting HTML content. It functions as a localizable web editor and an HTML content parser that filters and validates tags and attributes to ensure clean content output. The project features a customizable rich text interface that allows for the modification of the toolbar and overall visual presentation through external stylesheets and HTML templates. It includes support for custom locale definitions and translated interface labels to accommodate international users.
Official distribution releases of CKEditor 4.
EpicEditor is a JavaScript-based Markdown editor designed as an embeddable UI component for web applications. It functions as a local-first content manager, utilizing browser local storage for automatic draft saving and offline content persistence. The editor is distinguished by its use of iframes to isolate styles, preventing CSS leakage between the editor and the host application. It features a customizable Markdown parser that allows developers to replace the default parsing engine with custom functions to transform text into specific output formats. The system provides a split-pane inter
A markdown editor. http://lab.lepture.com/editor/
Trix is a rich text editor and WYSIWYG text component designed for composing and formatting documents with inline styling and block elements. It functions as an HTML content editor that manages and sanitizes input to ensure a secure and consistent document structure, while serving as a document state manager that tracks edit history and persists serialized state. The editor integrates directly with standard HTML forms, converting rich text into data for submission. It features a configurable sanitization engine that cleanses input HTML to remove unsupported tags and mitigate security risks.