awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
codemirror avatar

codemirror/devArchived

0
View on GitHub↗
7,820 星标·474 分支·JavaScript·5 次浏览codemirror.net↗

Dev

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, allowing multiple users to edit documents simultaneously with conflict resolution.

The framework covers a broad range of editor capabilities, including immutable state management, advanced text manipulation with multiple cursors, and a comprehensive visual layer for document decorations and gutters. It provides extensive language support through syntax highlighting and linting, alongside accessibility features for screen readers and bidirectional text support for internationalization.

A local development server is included to automate bundling and support rapid iteration during development.

Features

  • Modular Extension Systems - Built as a minimal core with all features delivered through a highly flexible modular extension system.
  • Browser-Based Editors - Provides a full-featured, browser-based code editor with syntax highlighting, multiple cursors, and customizable themes.
  • Extension Systems - Implements a modular extension architecture that allows third-party modules to add specialized behavior to the editor core.
  • Collaborative Editors - Enables real-time multi-user synchronization and collaborative editing using an operational transformation framework.
  • Immutable State Containers - Implements an immutable data structure for the document and selection to ensure consistent state transitions.
  • Language Server Protocol Clients - Integrates with language servers to provide IDE-like features such as autocompletion, diagnostics, and symbol navigation.
  • Language Server Integrations - Integrates with the Language Server Protocol to provide advanced intelligence like symbol renaming and navigation.
  • Language Server Protocol Integrations - Integrates with Language Server Protocol servers to provide advanced features like autocompletion, go-to-definition, and real-time diagnostics.
  • Symbol Navigation - Allows users to jump directly to the declaration or reference of a symbol using language server lookups.
  • Code Editors - Allows embedding a full-featured code editor with syntax highlighting and autocompletion directly into web pages.
  • Context-Aware Suggestions - Displays context-aware coding suggestions as the user types to improve development speed.
  • Abstract Syntax Tree Parsing - Generates structural parse trees to enable deep language features like indentation, folding, and highlighting.
  • Atomic Transactional State Commits - Processes all document changes as discrete, immutable transactions to ensure a consistent state and reliable undo/redo.
  • Immutable State Transactions - Updates document content through transactions that replace text ranges or merge changes to maintain an immutable state.
  • Structural Analysis - Generates detailed parse trees for structural language analysis to enable deep integration of language-specific features.
  • Operational Transformation - Implements operational transformation to resolve conflicts during real-time collaborative editing.
  • Syntax Parsing Engines - Functions as a syntax tree parsing engine to enable structural language analysis and advanced editing features.
  • Code Editor Components - Provides a complete code editor UI component featuring syntax highlighting, key bindings, and undo history.
  • Editor Extension Frameworks - Offers a modular framework for building custom code editing features through a minimal core and an extensive plugin system.
  • Real-Time Collaborative Editing - Provides a robust system for multiple users to edit the same document simultaneously with real-time synchronization.
  • Syntax Highlighters - Applies visual syntax highlighting by coloring code tokens based on the programming language grammar.
  • Editor Frameworks - Offers a modular framework and extension system for building highly customizable browser-based text editors.
  • Collaborative Editing Frameworks - Provides a framework for implementing real-time multi-user text editing with synchronization and conflict resolution.
  • Language Server Integrations - Maintains a persistent connection to language servers to synchronize document changes and receive diagnostics.
  • Dynamic Configuration Compartments - Uses a compartment-based system to allow replacing and updating editor extensions at runtime via transactions.
  • Text Search and Replace - Implements search and replace functionality using plain text or regular expressions.
  • Auto-closing Brackets - Automatically inserts matching closing brackets, parentheses, and quotes during typing.
  • Automated Code Formatters - Reformats the entire document based on language server rules to ensure consistent code styling.
  • Basic Text Deletion - Removes the character before or after the cursor or deletes a whole word.
  • Undo-Redo State History - Provides a sequence of state transitions to support reversing and reapplying document changes.
  • Cursor Navigation - Provides mechanisms for navigating the editor cursor using keyboard shortcuts and arrow keys.
  • General Editor Behavior Customizations - Provides a modular system to extend or replace keymaps and rendering pipelines to customize editor behavior.
  • Automatic Signature Help Displays - Automatically displays function parameter hints and return types at the cursor position.
  • In-Editor Linting - Displays real-time error and warning messages directly within the editor to highlight problematic code patterns.
  • Indentation Adjustment - Adds or removes a unit of indentation from all selected lines.
  • Indentation Rules - Computes and applies code indentation based on structural syntax tree properties.
  • Command Key Bindings - Associates keyboard shortcuts with internal command functions across different platforms and modifier combinations.
  • Line Deletion - Removes the lines containing the current selection from the document.
  • Newline Insertion - Replaces the current selection with a newline character.
  • Hover Information Displays - Shows detailed symbol types, signatures, and documentation in popups when hovering over code.
  • Default Editor Bundles - Ships pre-configured bundles of common extensions like keymaps and line numbers to create a functional editor quickly.
  • Snippet Insertions - Injects text templates with tab-stops to allow jumping between placeholders.
  • Code Folding - Enables collapsing and expanding blocks of code to improve navigation and overview of large files.
  • Smart Newline Indentation - Replaces the selection with a newline and automatically indents the new line based on context.
  • State Facets - Combines multiple extension inputs into a single computed value for global editor settings.
  • Symbol Renamers - Provides safe, project-wide identifier renaming by requesting updates from a language server.
  • Runtime Extension Reconfiguration - Uses compartments to allow extensions to be updated or replaced at runtime without resetting the editor.
  • Screen Reader Optimizations - Implements specialized focus and announcement management to ensure the editor is accessible via screen readers.
  • Document Range Mapping - Updates document positions and ranges across changes to keep markers and selections synchronized.
  • Editor Appearance Customization - Allows customization of the editor's visual environment through themes, color schemes, and font styles.
  • Editor Tooltips - Positions floating DOM elements such as tooltips and panels near the cursor to provide contextual information.
  • Web Accessibility Compliance - Implements inclusive web standards supporting screen readers, keyboard-only navigation, and bidirectional text.
  • Search Panels - Provides a dedicated search panel for finding occurrences of text or regular expressions.
  • Non-Destructive Text Decorations - Applies visual marks and inline widgets to text ranges without modifying the actual document content.
  • Theme Management - Provides tools and utilities for managing, switching, and importing visual themes to change the editor's appearance.
  • Editor Text Decorators - Applies visual marks and inline widgets to specific text ranges to provide contextual feedback.
  • Multiple Cursors - Supports simultaneous editing across multiple non-contiguous text selections using multiple cursors.
  • Rectangular Text Selections - Enables selection of text in rectangular block regions across multiple lines using modifier keys.
  • Editor State Fields - Stores metadata in the editor state and defines precise update logic for that data during document transactions.
  • Undo-Redo History - Provides a history of state changes to enable both local and collaborative undo and redo operations.

Star 历史

codemirror/dev 的 Star 历史图表codemirror/dev 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Dev 的开源替代方案

相似的开源项目,按与 Dev 的功能重合度排序。
  • codemirror/codemirror5codemirror 的头像

    codemirror/codemirror5

    27,247在 GitHub 上查看↗

    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

    JavaScript
    在 GitHub 上查看↗27,247
  • sinelaw/freshsinelaw 的头像

    sinelaw/fresh

    5,914在 GitHub 上查看↗

    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

    Rustideterminal-basedtext-editor
    在 GitHub 上查看↗5,914
  • emacs-lsp/lsp-modeemacs-lsp 的头像

    emacs-lsp/lsp-mode

    5,060在 GitHub 上查看↗

    lsp-mode is a Language Server Protocol client and IDE feature set for Emacs. It functions as a semantic code analysis tool and JSON-RPC communication layer that connects the editor to external language servers to provide intelligent code completion and real-time diagnostics. The project also serves as a Debug Adapter Protocol client, enabling interactive debugging sessions and breakpoint management. This allows for stepping through code and inspecting variables via a standardized protocol, including support for debugging within Docker containers. The system covers a broad range of developmen

    Emacs Lispangularcppdart
    在 GitHub 上查看↗5,060
  • microsoft/vscode-tips-and-tricksmicrosoft 的头像

    microsoft/vscode-tips-and-tricks

    9,086在 GitHub 上查看↗

    This project is a comprehensive productivity guide and configuration reference for the VS Code editor. It provides a curated collection of shortcuts, configuration tips, and tutorials designed to improve efficiency and optimize the daily coding workflow. The resource covers advanced AI-assisted development, including the integration of autonomous agents, custom prompt files, and AI-powered coding assistants for task automation and code generation. It also provides specialized guidance on integrated terminal management, such as configuring shell profiles and automating command execution. Addi

    在 GitHub 上查看↗9,086
查看 Dev 的所有 30 个替代方案→

常见问题解答

codemirror/dev 是做什么的?

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.

codemirror/dev 的主要功能有哪些?

codemirror/dev 的主要功能包括:Modular Extension Systems, Browser-Based Editors, Extension Systems, Collaborative Editors, Immutable State Containers, Language Server Protocol Clients, Language Server Integrations, Language Server Protocol Integrations。

codemirror/dev 有哪些开源替代品?

codemirror/dev 的开源替代品包括: codemirror/codemirror5 — CodeMirror 5 is a browser-based code editor and extensible UI component. It functions as a syntax highlighting engine… sinelaw/fresh — Zed is a terminal-based code editor built in Rust that provides a full-featured editing experience with familiar… emacs-lsp/lsp-mode — lsp-mode is a Language Server Protocol client and IDE feature set for Emacs. It functions as a semantic code analysis… microsoft/vscode-tips-and-tricks — This project is a comprehensive productivity guide and configuration reference for the VS Code editor. It provides a… golang/vscode-go — This project is a language extension for VS Code that provides comprehensive Go language support. It functions as a… simonbs/runestone — Runestone is a web-based code editor component and rendering engine designed for browser-based text editing. It…