吐槽 Markdown 的设计

之前一开始还是很喜欢 Markdown 的,相对来说比较的简单,从 office word 转到 mardown 的一段时间,适应了之后,写文章的速度就有了很大的提升。 但是,自从开始了编写 markdown-parser,一个 markdown 的解释器,就发现,markdown 的规范都是扯淡,并没有一个很好的官方规范性的文档和转义规范。 比如无顺序的列表,-,+,* 都可以作为前置表达符。但是有的解释器,对*号并不支持。关于引用部分就更加的随机了。如下的一段文章 > Hello World \``` Hello World \``` 有将代码块放入上述引用块的,也有分开的。对于这种有歧义的语义,似乎作者并没有给出一个正确的渲染结果。其次,对于列表嵌套引用块,很多解释器都选择了无视。而对于 html 标签的支持,有的解释器支持,... [阅读全文]

支持流程图的 vim markdown 预览插件

12.26, 赶在 2016 的尾巴上发布了这个版本 v2.2.1,算的上是一个比较重大的更新吧。主要更新了以下功能: 支持表格。 支持流程图。 完全去掉实时预览模块。 下载安装地址:https://github.com/MikeCoder/markdown-preview.vim 其实,写这个插件的也就是满足我自己的需要,顺便造福其他人。所以这个插件很多都是朋友在用。大部分的改动也是一句他们的需求来的。 话不多说,直接看这次最好玩的部分。流程图的 feature。可能是 vim 上,全球第一款支持流程图的 vim markdown 预览插件。不过,说句实话,并不是特别推荐使用这个功能。因为,大部分的网站都不支持,比如 github 的 readme 。就不支持流程图语法。 ... [阅读全文]

我是如何给 vim 添加 markdown 实时预览功能

一切的一切都是源于同性交友网站:GITHUB,之前,我给自己写了一个简单的 markdown 预览插件,所以就没有去更新了。直到后来,有人找到我,希望能够添加实时预览功能,包括同步的滚动,做成类似于 Mac 下的 Mou 的效果。详细 issue 所以,我这边就闲里抽空把这个功能做了下。 首先就是效果展示 接着就是 HOW 首先就是吐槽下 Python 居然不能管理线程。这个确实挺蛋疼的。不能强行关闭线程。其次,是 VIM 插件开发,资料真的少的可怜。基本上 bing 和 google 到的资料大多都是如何使用别人的插件,而不是如何创造插件。 作为一个在兴趣驱动编码时喜欢造轮子的逗比,我就决定自己写了。 首先就是如何实时的拿到数据,并且不影响 VIM 的正常使用。这很自然的想到了线程和 Ajax。这就意味着,我需要实现一个最简单的 web 服务器,... [阅读全文]

Github同步插件

首先看看效果,图片展示: 代码测试: #include <stdio.h> int main() { printf("Andy is single."); return 0; } 引用测试: Andy needs a girl friend. 好了。以上是用来测试的。转入正文。这个插件的使用方法很简单。面向的受众也会很窄。因为主要是为了自己的使用方便。我的习惯是将博客写成markdown,然后提交到github上去,做一个备份。然后再在blog上填写。之前写了markdown的几个插件,在没有贴图的时候还是比较方便的,但是如果图片比较多的话,就变得非常的痛苦。比如,我在markdown里面写的是(./images/github-test-1.jpg),但是博客里无法识别,所以需要先把图片上传到EM相册里面,然后再一... [阅读全文]

关于MarkDown插件

因为实习找到了,然后offer也接受了,所以所谓最忙碌的大三下学期就变的有点松懈了。 因为自己之前都是做Java的,然后实习的话需要了解PHP,因为实习的公司正在做SOA的架构 转变,需要将之前使用PHP的代码用Java替换。所以开始学习PHP。 不过,几天感觉下来,使用PHP写网站,确实比Java这种语言简单,就说一个简单的数据库 连接,Java需要导包,JDBC等等,麻烦点的什么JNDI,数据库连接池。。。然后取得数据之后 又是各种类型转换。毕竟是强类型语言,相比之下,PHP就简单很多了。 先说这个插件,毕竟刚学PHP,只写过简单的留言板,所以就只能解压别人的代码,然后观察 抽取可以使用的方法。在这边感谢卡片和emlog的工作人员,插件的编写文档和自动摘要插件给了 很大的指导。 其实代码也比较简单,这是全部的代码了 这边主要的就是添加钩子函数,addAction之后就是Emlog... [阅读全文]

学习MarkDown语法(2)

列表Markdown 支持有序列表和无序列表。 无序列表使用星号、加号或是减号作为列表标记:     * Red     * Green     * Blue 等同于:     + Red     + Green     + Blue 也等同于:     - Red     - Green     - Blue 有序列表则使用数字接着一个英文句点:   &nb... [阅读全文]