Nodejs Markdown 语法示范,请大家发贴时做好标记
Nodejs Markdown 语法示范,请大家发贴时做好标记
Markdown 是什么, 可以看 Wiki, 下面看语法 关于 Markdown 的未来可以看这篇文章 http://www.codinghorror.com/blog/2012/10/the-future-of-markdown.html Markdown 项目主页在 Daring Fireball 的网站上有具体的说明
SegmentFault 的语法说明 http://blog.segmentfault.com/dongoer/1190000000339653 WowUbuntu 的语法说明 http://wowubuntu.com/markdown/
Markdown 有多个实现, Github, 以及国内很多社区都是使用 GFM
包括 Python China, Ruby China, SegmentFault 都用了 GFM 语法
有 Node 模块 marked 支持 GFM 的渲染
GFM 和原始 Markdown 的主要区别是 GFM 里的换行是正常的, 其次代码块有 ```
的语法
网上用的标记, 主要是链接, 代码, 其他在一般帖子里不太需要
GFM 的语法
链接
链接原始的 Markdown 语法是加 <>
, 在 GFM 里可以自动识别
http://daringfireball.net/ http://daringfireball.net/
http://daringfireball.net/
<http://daringfireball.net/>
标记文本为链接 MaDe 编辑器
标记文本为链接 [MaDe 编辑器](http://lyric.im/ma-de-markdown-wysiwyg-editor/)
为链接取别名 [名叫 marked 的 iOS 应用][app] [app]: http://markedapp.com/
为链接取别名 [名叫 marked 的 iOS 应用][app]
[app]: http://markedapp.com/
代码
代码有句中的代码, 代码块, 都是用的 `
作为符号标记的
句中用 1
个或者 2
个, 而代码块用 3
个单独作为行的反引号
代码有句中的代码, 代码块, 都是用的 `` ` `` 作为符号标记的
句中用 `1` 个或者 `2` 个, 而代码块用 `3` 个单独作为行的反引号
另外 Github 上在代码块第一行反引号之后可以声明语法 比如 JS 下面这样就会被在 HTML 标记上一些属性 Github 站点上会直接对代码形成语法高亮
console.log('sonething');
<pre class=“prettyprint”>
console.log('sonething');
</pre>
marked 就可以配合 Highlight.js 在编译时高亮代码, 方便博客排版
图片
图片的标记和链接非常相似, 方括号文本部分在对应图片的 alt 属性, 后边括号是网址:
![Mark-Down][cat-girl] [cat-girl]: http://octodex.github.com/images/aidorucat.png
[![Mark-Down][cat-boy]][octocat] [cat-boy]: http://octodex.github.com/images/codercat.jpg [octocat]: http://octodex.github.com/codercat

![Mark-Down][cat-girl]
[cat-girl]: http://octodex.github.com/images/aidorucat.png
[![Mark-Down][cat-boy]][octocat]
[cat-boy]: http://octodex.github.com/images/codercat.jpg
[octocat]: http://octodex.github.com/codercat
带链接的图片比较麻烦, 不如直接在里边写 HTML… 但 HTML 需要进行过滤, 比如 CNode 上做的一些过滤
文本样式
>
开头表示引用,
Aaron Swartz
**
包围的 加粗, *
包围的 斜体, ~
包围的删除线等等,
甚至用 HTML 标签直接添加 Markdown 不直接支持的样式可以
- 还有列表之类的功能
- 这里是无序的列表, 用
*
写在行头即可
有序列表
- 有序列表大概的样子和无序列表一样
- 然后数字写在行开头标记
另外还有 `>` 开头的引用,
> Aaron Swartz
**
包围的 加粗, *
包围的 斜体, ~
包围的删除线等等,
甚至用 HTML 标签直接添加 Markdown 不直接支持的样式可以
- 还有列表之类的功能
- 这里是无序的列表, 用
*
写在行头即可
有序列表
- 有序列表大概的样子和无序列表一样
- 然后数字写在行开头标记
- 标题
标题是用 #
写在行头来标记的, 比如 ### ####
对应 h3
到 h4
标签
一个比较方便的写法是用 ------
线来标记标题, 比如下面的:
h3
h4
h2
h1
### h3
#### h4
h2
h1
还有注意换行, 因为 ------
上下被空行包裹时是个 <hr>
分割线
最后链上一份各种标记语言的对比, 至少看下喜欢哪个 ;p http://www.worldhello.net/gotgithub/appendix/markups.html
Nodejs Markdown 语法示范,请大家发贴时做好标记
Markdown 是一种轻量级的标记语言,旨在让文档的编写更加简单。你可以通过以下链接了解更多关于 Markdown 的信息:
在 SegmentFault 和许多其他社区中,我们使用的是 GitHub Flavored Markdown (GFM),它与原始的 Markdown 有一些不同。GFM 的主要特点包括换行处理正常化和代码块的特殊语法。
GFM 的语法
链接
在 GFM 中,链接可以通过多种方式创建:
自动识别链接: https://segmentfault.com
显式链接: [SegmentFault](https://segmentfault.com)
带别名的链接: [SegmentFault][sf]
[sf]: https://segmentfault.com
代码
代码可以通过反引号(`
)来标记,用于单行代码或代码块。代码块使用三个反引号(```
)来包围,并可指定语言类型以启用语法高亮:
单行代码: `console.log("Hello World!");`
代码块:
```javascript
function hello() {
console.log("Hello World!");
}
##### 图片
图片标记与链接类似,但使用 `![]()` 结构:
```markdown
图片: 
带别名的图片: ![Cat Girl][cg]
[cg]: http://octodex.github.com/images/aidorucat.png
文本样式
Markdown 支持多种文本样式:
引用:
> This is a quote.
加粗: **Bold**
斜体: *Italic*
删除线: ~~Strikethrough~~
列表
无序列表和有序列表也很容易创建:
无序列表:
* Item 1
* Item 2
有序列表:
1. First item
2. Second item
标题
标题可以通过 #
来标记,从 #
到 ######
分别对应 <h1>
到 <h6>
标签:
# H1
## H2
### H3
还可以使用 -
或 =
来标记标题级别:
H1
===
H2
---
示例代码
为了更好地理解这些语法,下面是一个完整的示例代码:
# 欢迎来到 Markdown 示例
这是一个简单的段落。
[访问 SegmentFault](https://segmentfault.com)
这是单行代码: `console.log("Hello World!");`
```javascript
function hello() {
console.log("Hello World!");
}
这是一条引用。
加粗、斜体 和 删除线。
- 无序列表
- 无序列表
- 有序列表
- 有序列表
H1
H2
H3
希望这些示例能帮助你更好地理解和使用 Markdown。
我看你发的那个人用eido而非mk,这是什么东西,你能翻点东西给我们吗? 摘要那位大神的话
现在的 typeof.net 里面一个动态文件也没有,所有的东西都是用 eidoc 从 .ed 文件生成的 HTML。你也许会问我为什么不用 markdown 这种流行物,我要说,markdown 没有宏,没法作出 eido 这种逆天的效果。整个 typeof.net 我没有写一行 HTML,所有的东西都是 eidoc 生成的。
伤不起了, 这里跟 Marked 相比语法支持又少了, 大量出错 - -!
厄,我们就是使用它的啊
支持md,以后基本都是fe基本技能了
方括号文本部分在对应图片的 title, 后边括号是网址
这个有问题吧,方括号是alt吧?
this is cod test
看得超细… 我记混了, 订正了
模板引擎吗
标记语言而已, 不是模板引擎. 标记语言平常写博客和评论里加样式用的, 比如 ~呵呵~, 呵呵, 呵呵
var a = ‘this this this this \
this this this this this \
this this this this this \
this this this this’;
这种换行代码变这样
var a = 'this this this this \
this this this this this \
this this this this this \
this this this this';
怎么破?
擦,怎么是好的,在github上都不行
有点麻烦
哈哈。
好文章,收藏先
markdown 编辑完后的数据是怎么存储的?
CNode 貌似存储原文本, 前端后端都用 converter 再转一遍
**cnode上加个练习页吧。
这个可以有, 不过 CNode 上要放比较难, 我自己找时间放一个
http://jiyinyiyong.github.io/EpicEditor/index.html 上边链接可以练习下, 网上已有的 Markdown 编辑器, 我打开了换行的配置 引擎是 Marked, 和论坛目前用的一样
有个桌面工具可供练习:http://markdownpad.com
md怎么画表格,,,,,
First Header | Second Header | Third Header |
---|---|---|
Left | Center | Right |
Left | Center | Right |
但不是所有都支援…
上面的 Markdown:
First Header | Second Header | Third Header
:----------- | :-----------: | -----------:
Left | Center | Right
Left | Center | Right
只适合编辑等 喜欢写文章的人. 平时就发几个帖子,还要我用5笔, 真是难为我了
不对, 只适合要贴代码和链接的人
使用markdown编辑文档确实方便很多,不过过多的关注更多的格式选择,鼠标拖过来拖过去的。只要一直手不离键盘打字就好了。
我用nodejs做了个markdown的在线编辑器 哈哈 一直在用markdown写文档 http://n.hch.im
https://gist.github.com/mojombo/118964 这个GFM除了ruby的还有其他版本的没呀?
GFM 是 Ruby 写的, Marked 是 Node 写的, 但是支持 GFM, 开启就好了
Nodeclipse Eclipse插件提供 Markdown编辑器,preview。
Nodeclipse NTS http://www.nodeclipse.org/nts/ 还有GitHub Flavoured Markdown preview,
就是本地可以看node_modules
里面的文档
赞!
== 这个语法与vimwiki差不多。。。 ==
##再试一下
收藏
showUsers(data.users);
代码测试
##呵呵##
- a
- b
- c
有点意思
##有点意思
###有点意思
![center]我要居中
<center> 我要居中 </center>
<p>hehe</p>
HTML 是安全原因给屏蔽了一些
** 有点意思 **
新手,支持一下 (ctrl + enter 貌似用不了!)
Github 上提过了, 但还是没人搞
markdown, <有用>
一直用的就是Markdown啊 尤其是github
这个一定要多用
赞一个!
#很不错的哦
##Hello Word!
不错
test
First Header | Second Header | Third Header |
---|---|---|
Left | Center | Right |
Left | Center | Right |
赞一个, 另外貌似表格底部的样式有一些 Bug 被发现了
#Cnode又被搞了……
试试
###我也试一下。
First Header | Second Header | Third Header |
---|---|---|
Left | Center | Right |
Left | Center | Right |
core_pnum = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,
First Header | Second Header | Third Header |
---|---|---|
Left | Center | Right |
Left | Center | Right |
置顶岾在UI上辨识度设计明显点或者单独做个模块吧
不然每次进来就前几条数据挂在哪儿有种从来没有人更新滴感觉
感谢分享
在 Node.js 中使用 Markdown 可以通过 marked
模块来实现。以下是一些基本的 Markdown 语法示例及如何在 Node.js 中使用 marked
模块将其转换为 HTML。
基本 Markdown 语法
链接
[SegmentFault](https://segmentfault.com)
效果: SegmentFault
代码块
\`\`\`javascript
console.log("Hello, world!");
\`\`\`
效果:
console.log("Hello, world!");
图片

效果:
文本样式
**加粗** _斜体_ ~~删除线~~
效果:
加粗 斜体 删除线
引用
> 这是一段引用
效果:
这是一段引用
列表
- 无序列表项
- 另一个无序列表项
1. 有序列表项
2. 另一个有序列表项
效果:
- 无序列表项
- 另一个无序列表项
- 有序列表项
- 另一个有序列表项
标题
# h1
## h2
### h3
#### h4
##### h5
###### h6
效果:
h1
h2
h3
h4
h5
h6
使用 marked
模块
首先,你需要安装 marked
模块:
npm install marked
然后,在你的 Node.js 代码中使用它:
const marked = require('marked');
const markdownText = `
# 这是一个标题
这是一个段落。
这是一段代码块:
\`\`\`javascript
console.log("Hello, world!");
\`\`\`
- 无序列表
- 另一个
`;
const html = marked(markdownText);
console.log(html);
运行这段代码将输出对应的 HTML 内容。这样,你就可以在 Node.js 应用中将 Markdown 文本转换成 HTML 了。