我和Markdown故事
我遇见了Markdown
在很久很久以前,听说过几次叫做markdown的东西,但是一直没有去尝试。第一个接触到markdown实在Stack Overflow的留言版上,当时还不知道这个叫Markdown,当时只是觉着这个语法肿么这么奇葩。最近有机会试了一下发现爱不释手,越看越喜欢。
什么?还不知道Markdown是什么?Markdown是一种轻量级的标记语言1。不要一说语言就被吓到,这玩样真的很简单,只要十分钟就能够看完所有语法,而且并不难记住。可以看一下上一篇文章,就是markdown,而且没有翻译成HTML的。
看看官方对于Markdown的定义:
Markdown is a text-to-HTML conversion tool for web writers. Markdown allows you to write using an easy-to-read, easy-to-write plain text format, then convert it to structurally valid XHTML (or HTML).
定位很明确,就是一种既易读又易写而且能够转化成有效的HTML的一种语言。也就是说它既不是最容易写的,使用Word等图形化编辑器会更加容易写。它也不一定是易读的,因为如果不转化成HTML的话会有一些特殊语法在里面。
我喜欢的地方
下面我就说说我为啥喜欢这个玩样,我主要是基于下面的几个原因:
首先,这东西把文字和样式分离开来了。这样就能够保证你提供的样式是一致的,因为你是通过一个统一的样式表进行控制的。其实这没有什么新鲜的,在网页开发大多都是把页面和样式分离开来的。但是其实你看看很多网页中还是将格式和文字夹杂在一起,你一看网页的HTML源码有种想打人的冲动。
举个例子
例1:
PDB全称Program Database,不知道中文翻译叫什么。相信使用过VS的人对于这个拓展名的文件不会陌生,这个文件主要会存储对应模块(dll或者exe)内部的所有符号,以及符号对应的地址、文件名和行号。
例2:
PDB全称Program Database,不知道中文翻译叫什么。相信使用过VS的人对于这个拓展名的文件不会陌生,这个文件主要会存储对应模块(dll或者exe)内部的所有符号,以及符号对应的地址、文件名和行号。
例1和例2看上去区别不大,但是你一看源码就会发现第一个中span标签夹杂着很多样式。其实如果你是从Word上直接粘贴到博客园的编辑器中的话很多时候就会出现这种东西。这样会导致的结果就是格式可能会有一些细小的地方不一致。
- 第二点,干净的HTML。其实这点和第一点基本一样,我还是喜欢干净整洁的HTML,无法控制别人至少我可以让我写的文章都是干净的。
- 第三点,可以手不离开键盘的一直打字,而不用去用鼠标调整一些样式。
- 喜欢纯文本可以版本控制。
我要吐槽的地方
下面是我使用过程中不爽的地方:
- 很难找到一个完美的编辑器,有很多在线的markdown编辑器,各有各的特色。要找到一个最适合自己的往往要多试几次,而且大多国外的网站默认中文样式惨不忍睹。
- 语法简单带来的坏处就是很多时候有一些效果无法实现,这个时候就需要直接内嵌html标签来实现,这个对于不熟悉html的人及其友好。所以如果需要特殊排版基本困难,除非自己写css。
- 坑爹的预览功能。由于刚开始用,所以难免要看看自己写出来的东西是如何的效果,那100%的markdown编辑器提供左右两个区域,左边markdown,右边预览区,我要看效果就要眼珠左右来回移动,好累。。
- 这一点是我最无奈的,由于各个编辑器都是各自程序员开发的,那么难免会在一些细节上出现一些不一致的地方。所以你完全无法保证你写的markdown在别人的编辑器中也能出现完全一样的效果,当然是在你用了一些很复杂的嵌套的情况下。
- 虽然吐槽了很多,但是用来写博客还是很不错的
适用人群和使用场景
我觉得这个东西使用的人群范围是:程序员,有洁癖的程序员。其他人?还是算了吧。
我会在下面这些场景中考虑使用这个来撰写文章:
- 博客
- 个人笔记(evernote)
- 技术文档
- 需要用HTML发布的文章
Markdown使用简介
如何入门?
Markdown编辑器们
Wikipedia上提供了一些在线编辑器,可以自己试试找个喜欢的。
个人使用MarkdownPad2,然后自己定制CSS,不过免费版阉割了很多功能,但是对我来说够用了。
如何在博客园中使用Markdown
大家可以去看看这篇文章:博客园也可以使用markdown写博客了。但是我更倾向于将生成的HTML直接拷贝进源代码。
引用:
[1] Markdown - 维基百科
我和Markdown故事的更多相关文章
- Markdown学习
1. Markdown介绍 Markdown是一种轻量级的标记语言,它语法简单并且易读易用.Mardown文件通常以.md后缀结尾. 2. Markdown优点 纯文本格式,兼容性极强,可以用任意文本 ...
- 简洁美观的Java博客系统Tale开源了,让每一个有故事的人更好的表达想法
Tale Tale的英文含义为故事,我相信每个坚持写Blog的人都是有故事的:中文你叫它 塌了 也无所谓 . Tale 使用了轻量级mvc框架 Blade 开发,默认主题使用了漂亮的 pinghsu, ...
- Markdown速查手册
之前一直使用简书做笔记,沉浸式的写作环境很棒.然而不知什么时候起,氛围愈发浮躁,软文鸡汤泛滥,离"简"字越来越远. 相比更加喜欢沉稳低调.内涵取胜的博客园.于是乎搬家! 搬家就要丢 ...
- Byword for Mac(Markdown编辑器)中文版
还在找Markdown编辑器吗?那不妨试试Byword for Mac吧!这是一款轻量级的富文本编辑器,byword mac版提供了完整的Markdown支持,包含脚注.表格.交叉引用等功能,Bywo ...
- C++小结:迟到的小结和重新起航的故事
迟到的小结和重新起航的故事 有关这个学期的故事,随着这个学期的结束也划上了一个句号. 正如之前博客里面(还是空间里面)提到的,在这个过程中的收获比最后考试的结果更重要. 就像这次的计算器,也许会对最后 ...
- Markdown 标记语言指北 - 源码
这是上一篇博客的源代码. 这是班刊约稿的一篇文章. 全文约6000字, 预计需要 60 分钟读完. # Markdown 标记语言指北 #### TOC 1. [什么是 Markdown?](#%E4 ...
- Markdown 标记语言指北
这是班刊约稿的一篇文章. 全文约6000字, 预计需要 60 分钟读完. Markdown 标记语言指北 TOC 什么是 Markdown? Markdown 可以用来干什么? 第一步? 一些专业一点 ...
- markdown设置编辑基本语法
看到其他人写的东西,版面设计,文字样式,区域划分都是那么好看,我一直不知道是怎么设计的,今天发现了,做以记录. #一.设置Markdown编辑模式 二.Markdown编辑语法 一.标题 在想要设置为 ...
- Markdown tricks
编辑排版 仅仅了解 Markdown 语法还不够,知道这些 排版技巧 增色您的文章内容. 空格和空行 留白,从艺术角度上说,留白就是以"空白"为载体进而渲染出美的意境的艺术.从应用 ...
随机推荐
- 122. Best Time to Buy and Sell Stock(二) leetcode解题笔记
122. Best Time to Buy and Sell Stock II Say you have an array for which the ith element is the price ...
- java中用spring实现数组类型输出
java 中的几个数组类型 1.Department类 package com.yy.collection; import java.util.List; import java.util.Map; ...
- Python小练习三
# 检查用户名和PIN码 database = [ ['], ['], ['], ['] ] username = input('User name:') pin = input('PIN code: ...
- The Singleton pattern
作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例.这个类称为单例类. 单例模式的结构 单例模式的特点: 单例类只能有一个实例. 单例类必须自己创建自己的唯一 ...
- Clover 资源管理器 http://cn.ejie.me/
附件列表 clover.jpg
- CSS伪类选择器
一.CSS伪类选择器用于给某些选择器添加效果语法规则:选择器:伪选择器例:a:link {color: #FF0000} 未访问的链接 a:visited {color: #00FF00} 已访问的链 ...
- C#的对象赋值
例如 Class A { int x = 0; int y = 0; } public void test() { A test1 = new A( ); ...
- 更改Xampp-sql的默认密码-配置appche运行环境
用php编写的web应用程序,需运行在php的web容器中,其中apache server是一个针对php web容器,它是apache下的开源项目.通常要运行一个web程序,我们还需要安装数据库软件 ...
- XAF 官方问题笔记
1.How to print report direct, and print preview via an simple action? 如何通过一个按钮直接打印报表或者打印预览报表 https:/ ...
- 界面显示两个ListView
1.List界面布局 <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:an ...