markdown语言

终于解决了WebIM的一个很弱智的问题:使用res.writeHead()写HTTP头属性,导致除了chrome之外其他所有浏览器都报错的问题。WebIM可以放到github上了。res.writeHead()方法是用来写响应的状态行的,第一个参数是状态码,如200/404之类,第二个参数如果是字符串的话,就是状态字符串,比如OK/Not Found,如果第二个参数是对象,或者第二个参数是字符串时,第三个参数是对象,则这个对象将作为http响应头的属性值。res.setHeader(key, value)才是用来写响应头的属性值的,我错误的用res.writeHead("ContentType: application/json")来写属性值了,导致发送出去的响应变成如下格式:


HTTP/1.1 Content-Type: application/json unknown

Content-Length: 23

.....


抓包看了好多遍,愣是没有看出http响应头部没有响应码,并且把最后的unknown当成是没有设置charset=xxx的缘故了(如果是这样的话,unkown签名应该有分号)。最后看了nodejs的http.js库,才搞明白到底真正的原因。


说了半天,还没说到标题中的markdown语法。问题解决后,按照github上的指导,把WebIM放到了github上:

https://github.com/zenkj/webim。然后看到人家都有很漂亮的README,就也写了一个README.md放上去了。发现其语法写起来很舒服,google了一把.md后缀,发现是markdown的缩写,这里有它的原始语法连接:[url=http://daringfireball.net/projects/markdown/syntax]http://daringfireball.net/projects/markdown/syntax[/url],github是用的一个[url=http://github.github.com/github-flavored-markdown/]改进版的markdown语法[/url]。


markdown的名字顾名思义,是和markup对着干的,看其语法描述里也说了,markdown的文本可读性是放在首位的,markdown的文本本身就可以直接阅读,而不会一看就是被标签或格式化指令标记的语言。其中有一句说的很好:


HTML is a *publishing* format, markdown is a *writing* format.


markdown语法特别适合用来写东西。像我等程序员,或写小说的,做编辑的,写博客的等一切文字工作者,使用markdown特别适合。如果再加上一个好的编辑器比如vi,那写文档就真的是一种乐趣了。


想想看我在这里写iteye博客,使用其“可视化编辑器”基本所见即所得,但要插入代码/插入链接就非常痛苦,而使用其bbcode编辑器会简单很多,不过感觉还是markdown更舒服。如果iteyey支持使用markdown写博客的话,应该就好用多了。google了一把,的确有很多人是用markdown来写博客的。


在MS Word里写文档也很方便,不过对于我这种狂热喜欢vi的键盘控来说,还是markdown更对胃口一些。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值