zoukankan      html  css  js  c++  java
  • 【拓展】你真的会写 Markdown 么?

    1 文章简介

    本文使用 Markdown 进行排版,详尽介绍了相关书写规范,排版工具为 mdnice

    需要注意的是,有部分编辑器自定义语法,并不完全通用所有平台

    2 通用语法

    2.1 标题

    在文字写书写不同数量的#可以完成不同的标题,如下:

    # 一级标题
    
    ## 二级标题
    
    ### 三级标题
    

    一级标题

    二级标题

    三级标题

    2.2 无序列表

    无序列表的使用,在符号-后加空格使用。如下:

    - 无序列表 1
    - 无序列表 2
    - 无序列表 3
    
    • 无序列表 1

    • 无序列表 2

    • 无序列表 3

    如果要控制列表的层级,则需要在符号-前使用空格。如下:

    - 无序列表 1
    - 无序列表 2
      - 无序列表 2.1
      - 无序列表 2.2
    
    • 无序列表 1

    • 无序列表 2

      • 无序列表 2.1

      • 无序列表 2.2

    由于微信原因,最多支持到二级列表

    3.3 有序列表

    有序列表的使用,在数字及符号.后加空格后输入内容,如下:

    1. 有序列表 1
    2. 有序列表 2
    3. 有序列表 3
    
    1. 有序列表 1

    2. 有序列表 2

    3. 有序列表 3

    3.4 引用

    引用的格式是在符号>后面书写文字。如下:

    > 读一本好书,就是在和高尚的人谈话。——歌德
    
    > 雇用制度对工人不利,但工人根本无力摆脱这个制度。——阮一峰
    

    读一本好书,就是在和高尚的人谈话。——歌德

    雇用制度对工人不利,但工人根本无力摆脱这个制度。——阮一峰

    3.5 粗体和斜体

    粗体的使用是在需要加粗的文字前后各加两个*

    而斜体的使用则是在需要斜体的文字前后各加一个*

    如果要使用粗体和斜体,那么就是在需要操作的文字前后加三个*。如下:

    **这个是粗体**
    
    *这个是斜体*
    
    ***这个是粗体加斜体***
    

    这个是粗体

    这个是斜体

    这个是粗体加斜体

    注:由于 commonmark 标准,可能会导致加粗与想象不一致,如下

    **今天天气好晴朗,**处处好风光。

    这个是正常现象,请参考加粗 Issue[1]

    3.6 链接

    微信公众号仅支持公众号文章链接,即域名为https://mp.weixin.qq.com/的合法链接。使用方法如下所示:

    对于该论述,欢迎读者查阅之前发过的文章,[你是《未来世界的幸存者》么?](https://mp.weixin.qq.com/s/s5IhxV2ooX3JN_X416nidA)
    

    对于该论述,欢迎读者查阅之前发过的文章,你是《未来世界的幸存者》么?

    3.7 分割线

    可以在一行中用三个以上的减号来建立一个分隔线,同时需要在分隔线的上面空一行。如下:

    ---
    

    3.8 删除线

    删除线的使用,在需要删除的文字前后各使用两个~,如下:

    ~~这是要被删除的内容。~~
    

    这是要被删除的内容。

    3.9 表格

    可以使用冒号来定义表格的对齐方式,如下:

    | 姓名   | 年龄 |     工作 |
    | :----- | :--: | -------: |
    | 小可爱 |  18  | 吃可爱多 |
    | 小小勇敢 |  20  | 爬棵勇敢树 |
    | 小小小机智 |  22  | 看一本机智书 |
    
    姓名年龄工作
    小可爱18吃可爱多
    小小勇敢20爬棵勇敢树
    小小小机智22看一本机智书

    3.10 图片

    插入图片,如果是行内图片则无图例,否则有图例,格式如下:

    ![这里写图片描述](https://imgkr.cn-bj.ufileos.com/22cf98bd-3f85-45fc-9df7-e6b2808329d0.png)
    

    支持 jpg、png、gif、svg 等图片格式,其中 svg 文件仅可在微信公众平台中使用,svg 文件示例如下:

    ![](https://my-wechat.mdnice.com/mdnice/i_am_svg_20191024083453.svg)
    
    • 支持图片拖拽和截图粘贴到编辑器中上传,上传时使用当前选择的图床。

    • 可使用格式->图片上传本地图片,网站仅支持「图壳」图床,失败率低可长久保存!

    注:仅支持 https 的图片,图片粘贴到微信时会自动上传微信服务器,不必担心使用上述图床会导致微信内图片丢失

    4. 特殊语法

    4.1 脚注

    支持平台:微信公众号、知乎。

    脚注与链接的区别如下所示:

    链接:[文字](链接)
    脚注:[文字](脚注解释 "脚注名字")
    
    有人认为在[大前端时代](https://en.wikipedia.org/wiki/Front-end_web_development "Front-end web development")的背景下,移动端开发(Android、IOS)将逐步退出历史舞台。
    
    [全栈工程师](是指掌握多种技能,并能利用多种技能独立完成产品的人。"什么是全栈工程师")在业务开发流程中起到了至关重要的作用。
    

    有人认为在大前端时代[2]的背景下,移动端开发(Android、IOS)将逐步退出历史舞台。

    全栈工程师[3]在业务开发流程中起到了至关重要的作用。

    脚注内容请拉到最下面观看。

    4.2 代码块

    支持平台:微信代码主题仅支持微信公众号!其他主题无限制。

    如果在一个行内需要引用代码,只要用反引号引起来就好,如下:

    Use the `printf()` function.
    

    Use the printf() function.

    在需要高亮的代码块的前一行及后一行使用三个反引号,同时第一行反引号后面表示代码块所使用的语言,如下:

    // FileName: HelloWorld.java
    public class HelloWorld {
      // Java 入口程序,程序从此入口
      public static void main(String[] args) {
        System.out.println("Hello,World!"); // 向控制台打印一条语句
      }
    }
    

    支持以下语言种类:

    bash
    clojure,cpp,cs,css
    dart,dockerfile, diff
    erlang
    go,gradle,groovy
    haskell
    java,javascript,json,julia
    kotlin
    lisp,lua
    makefile,markdown,matlab
    objectivec
    perl,php,python
    r,ruby,rust
    scala,shell,sql,swift
    tex,typescript
    verilog,vhdl
    xml
    yaml
    

    如果想要更换代码主题,可在上方挑选,不支持代码主题自定义。

    其中微信代码主题与微信官方一致,有以下注意事项:

    • 带行号且不换行,代码大小与官方一致

    • 需要在代码块处标志语言,否则无法高亮

    • 粘贴到公众号后,用鼠标点代码块内外一次,完成高亮

    diff 不能同时和其他语言的高亮同时显示,且需要调整代码主题为微信代码主题以外的代码主题才能看到 diff 效果,使用效果如下:

    + 新增项
    - 删除项
    

    其他主题不带行号,可自定义是否换行,代码大小与当前编辑器一致

    4.3 数学公式

    支持平台:微信公众号、知乎。

    行内公式使用方法,比如这个化学公式:$ce{Hg^2+ ->[I-] HgI2 ->[I-] [Hg^{II}I4]^2-}$
    

    行内公式使用方法,比如这个化学公式:

    块公式使用方法如下:

    $$H(D_2) = -left(frac{2}{4}log_2 frac{2}{4} + frac{2}{4}log_2 frac{2}{4}
    ight) = 1$$
    

    矩阵:

    $$
      egin{pmatrix}
      1 & a_1 & a_1^2 & cdots & a_1^n \
      1 & a_2 & a_2^2 & cdots & a_2^n \
      vdots & vdots & vdots & ddots & vdots \
      1 & a_m & a_m^2 & cdots & a_m^n \
      end{pmatrix}
    $$
    

    公式由于微信不支持,目前的解决方案是转成 svg 放到微信中,无需调整,矢量不失真。

    目前测试如果公式量过大,在 Chrome 下会存在粘贴后无响应,但是在 Firefox 中始终能够成功。

    4.4 TOC

    支持平台:微信公众号、知乎。

    TOC 全称为 Table of Content,列出全部标题。由于示例标题过多,需要使用将下方代码段去除即可。

    [TOC]
    

    由于微信只支持到二级列表,本工具仅支持二级标题和三级标题的显示。

    4.5 注音符号

    支持平台:微信公众号。

    支持注音符号,用法如下:

    Markdown Nice 这么好用,简直是{喜大普奔|hē hē hē hē}呀!
    

    Markdown Nice 这么好用,简直是喜大普奔hē hē hē hē呀!

    4.6 横屏滑动幻灯片

    支持平台:微信公众号。

    通过<![](url),![](url)>这种语法设置横屏滑动滑动片,具体用法如下:

    <![蓝1](https://my-wechat.mdnice.com/mdnice/%E8%93%9D1_20191109174052.jpg),![绿2](https://my-wechat.mdnice.com/mdnice/%E7%BB%BF2_20191109174052.jpg),![红3](https://my-wechat.mdnice.com/mdnice/%E7%BA%A23_20191109174052.jpg)>
    

    5 其他语法

    5.1 HTML

    支持原生 HTML 语法,请写内联样式,如下:

    <span style="display:block;text-align:right;color:orangered;">橙色居右</span>
    <span style="display:block;text-align:center;color:orangered;">橙色居中</span>
    

    橙色居右橙色居中

    5.2 UML

    推荐使用开源工具https://draw.io/制作后再导入图片

    参考资料

    [1]

    加粗 Issue: https://github.com/markdown-it/markdown-it/issues/410

    [2]

    Front-end web development: https://en.wikipedia.org/wiki/Front-end_web_development

    [3]

    什么是全栈工程师: 是指掌握多种技能,并能利用多种技能独立完成产品的人。

    原创系列推荐

    1. JavaScript 重温系列(22篇全)

    2. ECMAScript 重温系列(10篇全)

    3. JavaScript设计模式 重温系列(9篇全)

    4. 正则 / 框架 / 算法等 重温系列(16篇全)

    5. Webpack4 入门(上)|| Webpack4 入门(下)

    6. MobX 入门(上) ||  MobX 入门(下)

    7. 59篇原创系列汇总

    回复“加群”与大佬们一起交流学习~

    点这,与大家一起分享本文吧~

    个人博客:http://www.pingan8787.com 微信公众号【前端自习课】和千万网友一起,每日清晨,享受一篇前端优秀文章。 目前已连续推送文章 600+ 天,愿每个人的初心都能一直坚持下去!
  • 相关阅读:
    Uva455
    PAT乙级1059
    PAT乙级1092
    PAT乙级1076
    PAT乙级1065
    PAT乙级1049
    Uva1586
    《肇造区夏》读后感 读书笔记
    《老鼠虱子和历史》读后感 读书笔记
    《胡适口述自传》读后感 读书笔记
  • 原文地址:https://www.cnblogs.com/pingan8787/p/13069421.html
Copyright © 2011-2022 走看看