evolution-cms/ecodemirror
Composer 安装命令:
composer require evolution-cms/ecodemirror
包简介
CodeMirror 6 for Evolution CMS
README 文档
README
Modern CodeMirror 6 editor package for Evolution CMS 3.5.x. This package replaces the legacy CM5 plugin with a Composer‑installed, publishable, and extensible CM6 implementation.
Requirements
- PHP ^8.3
- Evolution CMS ^3.5.2
- Composer 2.2+
Install
composer require evolution-cms/ecodemirror "*"
Register editor (optional auto‑set):
php artisan vendor:publish --tag=ecodemirror-config
Publish assets:
php artisan vendor:publish --tag=ecodemirror-assets
What gets published
- Config (single source of truth):
core/custom/config/cms/settings/eCodeMirror.php
- Assets:
public/assets/plugins/eCodeMirror/dist/eCodeMirror.jspublic/assets/plugins/eCodeMirror/dist/eCodeMirror.css
System Settings (Overrides)
These are overrides only. The canonical config is core/custom/config/cms/settings/eCodeMirror.php.
ecm_profileecm_theme_mode(auto/light/dark)ecm_themeecm_font_sizeecm_line_heightecm_line_wrappingecm_emmetecm_search
Config structure (publish config)
Key sections:
profiles— preset options + extensionscontexts— map context → profilethemes— light/dark theme mappingeditor— base options (font, line height, history/state, gutters, keymap)extensions— global feature togglesprotected_keys— options not overridable via params
Manager Events
Editor is wired into manager form events:
OnDocFormRenderOnTempFormRenderOnChunkFormRenderOnSnipFormRenderOnPluginFormRenderOnModFormRenderOnTVFormRenderOnRichTextEditorInit
Build (development only)
Node is required for development builds. In production, use published public/dist.
npm install npm run build
Build output:
public/dist/eCodeMirror.jspublic/dist/eCodeMirror.css
Notes
- Assets are cache‑busted via
?v=<mtime>fallback. - Legacy CM5 plugin must be disabled when enabling eCodeMirror.
- Emmet is enabled via profile extensions (
emmet), lint currently provides JSON validation whenlintis enabled. - For resource content, eCodeMirror activates only when richtext is disabled (no RTE), matching legacy behavior.
- If you previously published
core/custom/config/cms/settings/which_editor.php, remove it to avoid forcing eCodeMirror as the RTE.
License
GPL-2.0
evolution-cms/ecodemirror 适用场景与选型建议
evolution-cms/ecodemirror 是一款 基于 TypeScript 开发的 Composer 扩展包,目前已累计 47 次下载、GitHub Stars 达 0, 最近一次更新时间为 2026 年 01 月 22 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「editor」 「codemirror」 「evo」 「evocms」 「evolution-cms」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 evolution-cms/ecodemirror 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 evolution-cms/ecodemirror 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 evolution-cms/ecodemirror 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
This ist a fork of CodeMirror (https://github.com/marijnh/codemirror). In-browser code editor.
Full-featured in-browser code editor
Adds more BBCode
UEditor 是一套开源的在线HTML编辑器,主要用于让用户在网站上获得所见即所得编辑效果,开发人员可以用 UEditor 把传统的多行文本输入框(textarea)替换为可视化的富文本输入框。
Yii2 extension to use TinyMce with Compressor, CodeMirror and FileManager
Simple WYSIWYG editor plugin for Bootstrap 3
统计信息
- 总下载量: 47
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 36
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: GPL-2.0
- 更新时间: 2026-01-22