GitBucket
4.6.0
预览版:基本功能完成;
发布 v1.0.0 正式版。
主要更新:
新建分支 mathjax-version,但不打算继续对此分支进行开发;
移除 MathJax,改用 KaTeX #2,解析和预览响应速度大幅度提高 #3;
mathjax 配置项;mathjaxURL 属性;setMathJaxConfig() 方法;loadMathJax() 方法;tex 配置项,表示是否开启支持科学公式 TeX ,基于 KaTeX;katexURL 属性;loadKaTeX 方法;setCodeEditor() 方法更名为 setCodeMirror();
合并 CodeMirror 使用到的多个 JS 模块文件,大幅减少 HTTP 请求,加快下载速度;
./lib/codemirror/modes.min.js、./lib/codemirror/addons.min.js ;Gulpfile.js 新增合并 CodeMirror 模块文件的任务方法 codemirror-mode 和 codemirror-addon ;更新 README.md 等相关文档和示例;
解决 Sea.js 环境下 Raphael.js 无法运行导致不支持流程图和时序图的问题,即必须先加载 Raphael.js ,后加载 Sea.js ;
主要更新:
<textarea> 来存放 Markdown 源文档;具体更新如下:
更换 Logo,建立基础 VI;
dist/fonts/editormd-logo.* ;editormd-logo 等;改用 <textarea> 来存放 Markdown 源文档;
<script type="text/markdown"></script> 来存放 Markdown 源文档;<div id="xxxx"></div> ,如果没有添加 class="editormd" 属性会自动添加,另外如果不存在 <textarea> 标签,则也会自动添加 <textarea> ;新增支持智能识别和解析 HTML 标签,增强了 Markdown 语法的扩展性,几乎无限,例如:插入视频等等;
htmlDecode ,表示是否开启 HTML 标签识别和解析,但是为了安全性,默认不开启;新增插入链接、锚点链接、预格式文本和代码块的弹出对话框层;
createDialog();editormd.codeLanguages ,用于存放代码语言列表;开始支持图片上传;
toolbarIcons 类型由数组更改为函数,返回一个图标按钮列表数组;toolbarHandlers 和 toolbarIconsTexts ,分别用于自定义按钮操作处理和按钮内容文本;getToolbarHandles() ,用于可在外部使用默认的操作方法;activeIcon ,可获取当前或上次点击的工具栏图标的 jQuery 实例对象;新增表单取值、自定义工具栏、图片上传、多个 Editor.md 并存和动态加载 Editor.md 等多个示例;
新增插入锚点按钮和操作处理;
新增预览 HTML 内容窗口的关闭按钮,之前只能按 ESC 才能退出 HTML 全窗口预览;
新增多语言( l18n )及动态加载语言包支持;
en 和繁体中文 zh-tw 语言包模块;toolbarHandler() 更为 setToolbarHandler() ;setToolbar() 方法包含 setToolbarHandler() ;createInfoDialog() 方法;showInfoDialog() 和 hideInfoDialog() 方法的内部实现等;修改多次 Bug ,并优化触摸事件,改进对 iPad 的支持;
工具栏新增清空按钮和清空方法 clear() ,解决工具栏文本会被选中出现蓝底的问题;
配置项 tocStartLevel 的默认值由 2 改为 1,表示默认从 H1 开始生成 ToC;
解决 IE8 下加载出错的问题;
isIE 和 isIE8 ,用于判断 IE8;新增 Zepto.js 的支持;
outerWidth() 、 outerHeight() 、hover() 、is() 等方法;var jQuery = Zepto;;新增 editormd.$name 属性,修改 editormd.homePage 属性的新地址;
editormd.markdownToHTML() 新增方法返回一个 jQuery 实例对象;
getMarkdown()方法,用于获取 Markdown 源代码;tocContainer 成员属性,即 ToC 列表的父层的 jQuery 实例对象;新增只读模式;
readOnly ,默认值为 false ,即可编辑模式;新增方法 focus() 、 setCursor() 、 getCursor() 、setSelection() 、getSelection() 、 replaceSelection() 和 insertValue() 方法,并增加对应的示例;
新增配置项 saveHTMLToTextarea ,用于将解析后的 HTML 保存到 Textarea,以供提交到后台程序;
getHTML() 方法必须在 saveHTMLToTextarea == true 的情况下才能使用;getHTML() 方法的别名 getTextareaSavedHTML() 方法;getPreviewedHTML() ,用于获取预览窗口的 HTML ;修复了一些大大小小的 Bugs;
getHTML () 和 getPreviewedHTML() 方法中的 3 处错误;getToolbarHandles() 和 setToolbarHandler() 方法;从 editormd.scss 中分离出 editormd.logo.scss ,并生成 editormd.logo.css ,以便单独使用;
修复 Bug #18;
showInfoDialog() 和 createInfoDialog() 方法;infoDialogPosition() 方法;# 号后面都加上了一个空格;修复多处 Bug,具体如下:
修复 Bug #23,即 Headers 的 id 属性的重复及中文问题;
editormd.markedRenderer() 方法;修复 Bug #24;
setMarkdown() 、 clear() 和 loadedDisplay() 方法的内部实现;katexRender() 、 flowChartAndSequenceDiagramRender() 、 previewCodeHighlight() 方法;修复有些情况下无法保存 Markdown 源文档到 textarea 的问题;
setCodeMirror() 、 recreateEditor() 等方法;修改了以上 Bug 及部分相关示例文件;
修复多处 Bug,具体如下:
修复 Bug #25;
loadedDisplay() 方法,将 settings.onload 移动了 CodeMirror.on("change") 事件注册后再触发;修复 Bug #26;
saveToTextareas() 方法;state.loaded 和 state.watching 两个属性;修改了以上 Bug 相关示例文件;
改进功能,具体如下:
改进 #27;
matchWordHighlight ,可选值有: true, false, "onselected" ,默认值为 true ,即开启自动匹配和标示相同单词;改进 #28;
jquery.min.js 、 font-awesome.min.css 、 github-markdown.css 移除(这是一个疏忽,它们不是动态加载的依赖模块或者不需要的,避免不必要的硬盘空间占用);修改了所有相关的示例文件;
editormd.markedRenderer() 方法的内部实现;editormd.trim() ,用于清除字符串两边的空格;marked-heading-link-test.html ;README.md ,添加了 Shields.io 图标;v1.2.0 主要更新:
Prefixes.css 作 CSS 前缀预处理;具体更新如下:
新建 v1.1.x 分支;
新增代码折叠、自动闭合标签和搜索替换功能;
Ctrl + F / Command + F ;Ctrl + Shift + F / Command + Option + F ;Ctrl + Q / Command + Q ;新增自定义主题支持;
setTheme() 、 setCodeMirrorOption() 和 getCodeMirrorOption() ;新增 @Link 支持;
新增 GFM Task Lists 支持;
新增 Emoji 表情支持;
:emoji-name: 、FontAwesome icons(:fa-xxx:)、Twitter emoji (twemoji) ( :tw-xxxx: )、Editor.md logo icons( :editormd-logo: )形式的 Emoji;editormd.emoji 、 editormd.twemoji 、 editormd.urls 和 editormd.regex;新增 HTML 实体字符插入、插入表格和使用帮助对话框;
createDialog() 等方法;mask 成员属性和锁屏方法 editormd.lockScreen() 、 editormd.fn.lockScreen() ;改进插入预格式文本和代码对话框;
<textarea> 改为 CodeMirror ,输入更加方便和直观;新增自定义键盘快捷键功能;
addKeyMap() 和 removeKayMap();改用 Prefixes.css 作CSS前缀预处理;
改进和增强工具栏自定义功能;
toolbarCustomIcons ,用于增加自定义工具栏的功能,可以直接插入 HTML 标签,不使用默认的元素创建图标;editormd.toolbarModes ;toolbarIconHandlers ;完善和新增事件处理方法;
on() ;off() ;onresize 、 onscroll 、onpreviewscroll 、 onpreviewing 、 onpreviewed 、onwatch 和 onunwatch ;新增手动加载依赖模块方式,以便可同步使用成员方法;
autoLoadModules ,默认值为 true ;新增插件及扩展机制;
extends() 、 set() ;新增成员方法和属性:
setValue() 、getValue();config() 方法,用于加载后重新配置;cm ,是 codeEditor 的简写, cmElement 是 codeMirror 的别名;成员方法的改进:
showToolbar() 和 hideToolbar() 方法增加一个 callback 函数,用于直接回调操作;previewCodeHighlight() 方法;recreateEditor() 更名为 recreate() ;setMarked() 方法;新增 HTML 标签解析过滤机制;
settings.htmlDecode = "style,script,iframe" 来实现过滤指定标签的解析;改进 Require.js 支持;
underscore 版本至 1.8.2 ;editormd.requirejsInit() 和 editormd.requireModules() 方法;Require.js/AMD 专用版本文件 editormd.amd.js ;amd ;修改和新增以上改进等相关示例;
主要更新:
5.0 ;0.3.3;具体更新如下:
editormd.keyMaps ,预设一些常用操作,例如插入粗体等;registerKeyMaps() ;Shift + ESC;disabledKeyMaps ,用于屏蔽一些快捷键操作;5.0;/ 的问题;0.3.3;settings.autoHeight ;settings.toolbarAutoFixed ;setToolbarAutoFixed(true|false) ;emailLink ,默认为 true ; 工具栏新增三个按钮,分别是将所选文本首字母转成大写、转成小写、转成大写;
editormd.ucwords() ,别名 editormd.wordsFirstUpperCase() ;editormd.ucfirst() ,别名 editormd.firstUpperCase() ;getSelections() 和 getSelections() ;修复 Font awesome 图标 emoji 部分无法解析的 Bug,#39
atLink ,默认为 true ; / 的问题 #42;pluginPath,默认为空时,等于 settings.path + "../plugins/" ;主要更新:
具体更新:
delay ,默认值为 300;editormd.preview.css 时无法显示 Font Awesome 和 Editor.md logo 字体的问题;Gulpfile.js ,并且 gulp-ruby-sass 升级到最新版本 1.0.0-alpha.3 ; appendMarkdown 和 appendMarkdown() 方法,用于(初始化前后)追加 Markdown 到 Textarea ;fullscreenExit() 方法的内部实现;onscroll 和 onpreviewscroll 无法访问 this 的问题;init() 方法,可以只设置一个参数;Ctrl + Shift + K 和插入方法 tex() ;anchor 改为 reference-link;htmlEntities 改名为 html-entities;loadedDisplay() 方法;config() 和 recreate() 方法;gotoLine() ;goto-line-dialog ;Ctrl + Alt + G ;executePlugin() 方法;help-dialog/help.md ;search() 、searchReplace() 和 searchReplaceAll() ;fa-desktop;h 改为大写的 H;saveToTextareas() 方法更名为 save();[TOCM] ,自动生成 ToC 下拉菜单;tocm ,默认为 true,即可以使用 [TOCM] ;tocDropdown 和 tocTitle ;editormd.tocDropdownMenu() ;tocContainer ,值为 jQuery 选择器,默认为空;placeholder 的默认值;Object.watch() 而出现的问题;pageBreak ,默认值为 true;[========] ,即括号内至少 8 个等号;pagebreak() ;Shift + Alt + P;syncScrolling,即是否开启同步滚动预览,默认值为 false ; editormd.katexURL 资源地址的默认值,即更新版本为 0.3.0 ; tests/katex-tests.html;examples/katex.html; :hover CSS3 transition 无效的问题; README.md;autoFocus,默认值为 true; tabSize、indentUnit 和 lineWrapping;autoCloseBrackets 和 showTrailingSpace ;matchBrackets、indentWithTabs 和 styleSelectedText;font-family,改进跨平台中英文字体显示;README.md;:+1: 的问题;Content-Type=application/json 的问题;name,用于指定 Markdown textarea 的 name="xxxx" 属性;< 和 > 的问题 #87;getHTML() 无效的问题 #95;extends() 更名为 extend(),以兼容 IE8;README.md 和 CHANGE.md 等相关文档文件;主要更新:
具体更新:
新增:解析后的代码块自动换行;
新增:支持多行公式;
新增:支持设置为单向同步滚动,即只是编辑区单向同步滚动,配置项 syncScrolling : "single";
sync-scrolling.html;新增:增加了编辑器样式主题 Dark,即工具栏和预览区各自有一个暗黑色主题;
v1.5.0 开始,配置项 theme 改为指定 Editor.md 本身的主题;editorTheme ,用于指定编辑区的主题,即 CodeMirror 的主题;previewTheme ,用于指定预览区的主题;setEditorTheme(),别名: setCodeMirror();setPreviewTheme();setTheme() ;.editormd-fullscreen 控制;themes.html;新增:非编辑状态下 ToC 自定义容器支持;
markdownSourceCode,即解析后是否保留源码,默认为不保留 false;tocContainer,值为自定义 ToC 容器的 ID 选择器 #xxxxx,默认为空;新增:新增加了 CSS 样式类 editormd-preview-active,可以控制全屏HTML预览时的内容层样式;
previewing() 和 previewed() 方法;改进:修复插入 Emoji :moon: 无法显示的问题,修改为其是 :waxing_gibbous_moon: 的别名 #94;
改进:修改了 CodeMirror 代码行的左右内间距,使其不会挨着左边的行号层;
改进:修改了同步滚动的定位算法,提高精确度;
bindScrollEvent() 方法;改进:完善 HTML 标签过滤功能,即代码块、<pre> 预格式文本和行内代码里的标签及属性不会被过滤;
settings.lineNumbers == false,CodeMirror 行号层去掉右边框; "YaHei Consolas Hybrid", Consolas;