CodeMirror源码编辑器
来源:互联网 发布:果壳网和知乎 编辑:程序博客网 时间:2024/05/11 14:58
2016-02-13~2016-02-24
这是我进入公司的第六个迭代,这个迭代的任务是用CodeMirror改造公司某产品的所有范例,让用户可自己编辑范例源码。
Master给了我相应的知识点——codeMirror的官方文档:
https://codemirror.net/
(英文版,头疼,在网上找了其他的“中文版”解释说明,多,杂,具体操作起来,还是得老老实实看官方文档。所以,我还是乖乖恶补英语吧~
1、引入核心文件
<link rel="stylesheet" href="lib/codemirror.css"><script src="lib/codemirror.js"></script>
2、代码调用
<textarea id="code"></textarea>var html = $.ajax({url: 你需要获取源码的网页, async: false}).responseText; //获取网页文本内容if (html && html != "") { $('#code').val(html);}editor = CodeMirror.fromTextArea(document.getElementById("code"), { lineWrapping: true, //是否换行 foldGutter: true, //是否折叠 gutters: ["CodeMirror-linenumbers", "CodeMirror-foldgutter"], //添加行号栏,折叠栏 lineNumbers: true, //是否显示行号 styleActiveLine: true, //光标类 matchBrackets: true, //括号匹配 selectionPointer: true, //鼠标光标悬停样式 mode: "htmlmixed", //模式 extraKeys: { //自动补全 "Ctrl": "autocomplete" }, viewportMargin: Infinity //确保整个文档总是呈现 }); //自动补全 CodeMirror.commands.autocomplete = function (cm) { cm.showHint({hint: CodeMirror.hint.anyword}); };editor.setValue($("#code").val());//codeMirror赋值$('#code').val(editor.getValue());//codeMirror取值
(注:我使用codeMirror主要用于代码的显示)
3、根据所需要的功能引入相应的文件,这时候需要仔细阅读官方文档
我主要用了以下功能:代码高亮、折叠、自动补全、括号匹配
<!--代码高亮--><link rel="stylesheet" href="doc/docs.css"><script type="text/javascript" src="mode/css/css.js"></script><script type="text/javascript" src="mode/xml/xml.js"></script><script type="text/javascript" src="mode/htmlmixed/htmlmixed.js"></script><script type="text/javascript" src="mode/javascript/javascript.js"></script><!--支持代码折叠--><link rel="stylesheet" href="addon/fold/foldgutter.css"/><script src="addon/fold/foldcode.js"></script><script src="addon/fold/foldgutter.js"></script><script src="addon/fold/brace-fold.js"></script><script src="addon/fold/comment-fold.js"></script><!--括号匹配--><script src="addon/edit/matchbrackets.js"></script><!--自动补全--><link rel="stylesheet" href="addon/hint/show-hint.css"><script src="addon/hint/show-hint.js"></script><script src="addon/hint/anyword-hint.js"></script><script src="addon/hint/javascript-hint.js"></script><script src="addon/hint/html-hint.js"></script><script src="addon/hint/css-hint.js"></script>
到这里,源码编辑器的代码显示部分就算完工了,如果还需要其他功能就多读读codeMirror的官方文档吧!
至于这次任务的其他部分(运行,重置,复制,拖拽效果等)我会写在其他博客里,分小点记录是个人习惯。
0 0
- CodeMirror源码编辑器
- 代码编辑器CodeMirror
- 在线代码编辑器codeMirror
- 代码编辑器 Codemirror 常用API
- CodeMirror编辑器中的嵌套textarea标签
- 基于codeMirror的实时在线编辑器
- 在线代码编辑器 CODEMIRROR 配置说明
- 如何用Selenium 向CodeMirror 编辑器输入
- 在线代码编辑器 CODEMIRROR 配置说明
- 在线代码编辑器 CodeMirror 使用简介
- 文本域的CodeMirror编辑器的自动联想功能
- 基于CodeMirror&TernJS的汉语Javascript编辑器(和翻译器)
- codemirror代码编辑器,检测语法高亮显示
- 网页代码编辑器的两个插件: ACE 和 CodeMirror
- 用codemirror实现一个自己的简单hive ql编辑器
- 使用 CodeMirror 打造属于自己的在线代码编辑器
- 使用 CodeMirror 打造属于自己的在线代码编辑器
- [Web] 简易Markdown可预览编辑器 —— Codemirror+Marked+Prism
- Docker Engine 镜像源站
- Handler用法之简单实现轮播图
- 认识jQuery(三书)
- Linux试题1
- try-catch和throw,throws的区别和联系
- CodeMirror源码编辑器
- css中强制换行word-break、word-wrap、white-space区别实例说明
- iOS开发笔记
- 极光推送demo
- windows下zookeeper伪集群搭建
- L2-004. 这是二叉搜索树吗?
- 每天一个 Linux 命令(37):date命令
- 【LeetCode】18. 4Sum
- C# 中GUID生成格式的四种格式