Flowchart

flowchartMarkEditor风格的流程图语法

流程图的语法规则实际上是基于http://adrai.github.io/flowchart.js/实现的,只要申明语言类型为flow即可。

但是我们认为原始插件的语法有些晦涩,所以在兼容原有语法的基础上,又重新进行了演绎,效果如下:

var diagram = flowchart.parse('st=>start: 起始\nregister=>operation: 注册\ncondition=>condition: 好人?\ncheck=>operation: 盘查一下\nend=>e......

Basic Syntax

MarkEditor的Markdown语法

Markdown是非常棒以及流行的写作语法,平文本,「易读易写」,一般只需几分钟就能学会Markdown的基本用法。

标题:一级标题二级标题三级标题四级标题五级标题六级标题

分别对应HTML中的<h1>一级标题</h1>,以此类推。

用两个星号标记起来,表示加粗,*一个星号,表示斜体*,这样子表示删除,这些就是最基本的语法了。

插入链接

插入链接:

这是一个 链接

快速链接:

只需要在网址头尾用尖括号包裹即可,比如http://url.com

邮箱链接:

这是一个 myname@e......

Markdown CSS 引擎

Markdown 最终会解析为 HTML,本身会采用 p、blockquote、ul、li 等 DOM 类型来表达文本的结构。在实际使用情况中,仅仅这些结构不足以满足排版的需要,因此,MarkEditor 在解析 Markdown 的时候,会进行一定结构性推断,赋予当前 DOM 元素一定的 class name,来标识潜在的文本语义结构。

那么,完成最终页面排版的 CSS 样式,就可以根据这些 css name,来实现更复杂一些的排版。

基本段落、行

md_block 表示段落,一般(源文本中)两个空行会产生段落的分割

md_line 表示行

md_line_dom_embed 当......

Others

TOC

TOC

PDF分页

数学公式

脚注

如上所示,单独一行的[TOC],最终会被解析为当前文章的 内容目录。

PDF分页

导出PDF需要在指定位置强制分页的,可以单独一行输入[PAGE]。

数学公式

使用插入代码的方式,但是需要声明语言为mathjax,示例如下:

x = {-b \pm \sqrt{b^2-4ac} \over 2a}

E = mc^2

脚注

一会看我

一会看云

我觉得

你看我时很远

你看云时很近

这首诗的作者是顾城1的《远和近》。

其中[^gucheng]就是脚注的声明,你可以在文末对这个......

Table

MarkEditor风格的表格语法

项目

价格

描述

尺子

¥2

说明内容,也可为空

本子

¥8 (描述偷懒不写完第三项也可以,不会破坏表格结构)

Tip

¥18

光标在表格区域时,右键点击,有更简单的“编辑表格”命令

第一行是表格的第一栏,每个项的文本中可以追加(-)、(>)、(<)来实现某列内的文本对齐,它们也分别等同于(center)、(right)、(left)。

项目

价格

描述

尺子

¥20

?

本子

¥8

......

Highlight Code

代码高亮语法

通过fenced code的方式(代码块的头尾被三个反引号包裹),然后声明代码语言类型,即可实现代码高亮。不仅仅是最终的HTML预览会处理代码高亮,实时输入的过程中也是高亮的。

s = 'hello world'

代码语言的类型后面跟上:n,则最终在渲染为HTML(预览)的时候,代码块会标示行数。

s = 'hello world'

代码高亮示例

MarkEditor支持超过300种代码类型的高亮,以下是一些示例:

from settings import world

if world == 'mine'......

Unsplash

Unsplash 是一个免费的、无版权的高清图片资源站,不止于此,Unsplash 提供的图片质量,多数非常精美。

作为一个写作者,如果我们需要在文章中增加附图、头图,Unsplash 无疑是最佳的选择。

在 MarkEditor 中打开 Unsplash

MarkEditor 中接入 Unsplash,主要有两个部分,一个是 编辑精选,一个是 关键字搜索。其中,编辑精选来自于https://unsplash.com/collections/317099/unsplash-editorial,由 Unsplash 团队提供精选。

编辑精选中的图片是会预先下载,由于都是高清图,第......

Slide Demo

封 闭

Hepo @2017-10-21

Hangzhou

2.x   vs   3.x 复杂度守恒定律

复杂、简洁,都是工程总量的组成 简洁

简洁,是 复杂 的一个 恰到好处的出口

简洁,是进阶;复杂,是基础

如能直达记忆,复杂也是简洁 有何意义?

避免陷入无意义的复杂;保持简洁,才能维护足够的复杂度。

一个 py 文件, 行数能少则少,几百行内就很多了

缩进的层级能少则少,堆成倒金字塔很糟心的

变量名长一点,没关系

多一些将函数作为变量的场合

在没有重构之前重构

代码提交次数与产品质量相关性定律

var my_c......

Slide

专注于内容,从 Markdown 到 Slide

我们对外演讲的时候,总需要一个 Slide,而多数时候, Slide 是一个纲要性的文档,罗列条目,整理思路即可。

每每需要借助其它的工具,比如 Keynote,PowerPoint,总觉得会浪费掉不少时间。

特别有些场合,比如贴了一些代码片段,这些传统的幻灯片工具就不能很好地渲染了……

所以,我们在 MarkEditor 中内置一个将 Markdown 文档转为 Slide 的插件,希望能帮助一些使用者,专注于内容本身,节省更多的时间。

恰到好处的插件

将 Markdown 转为 Slide 的插件,在顶部菜单 Plugi......

Limitations and Privacy

局限性MarkEditor 的局限性

任何一个App 都有自己适用的场景和局限性,ME 也不例外,主要是下面的问题。

长文章的性能问题

由于 MarkEditor 本身会实时对文本的结构进行分析,以实现文本的高亮、TOC结构的获取与调整,所以当文本过长的时候,这个基础引擎会不可避免地导致性能的下降。

按照我们的概要性测试,基本上 1 万字以内不会产生性能问题。

在 10 万字左右的时候,不打开同步预览的时候,在连续超快速的输入时,会有不是很明显的时滞感,但基本上没有什么性能上的波动。

在 10 万字左右并且开启了同步预览的时候,能够感觉到卡顿,但基本上也勉强可用。

某......