markdown语法之空白符与字符

  1. 空白符

    • md中常用的空白符包括Space,Tab,Enter。

      • Space(空格)和Tab(水平制表)都有对应的ASCII码。

      • Enter的处理比较麻烦一点。不同系统会有不同方法。所以我这里只写了Enter。具体到不同的系统,Enter对应的ASCII码不同。CommonMark的说法是:A line ending is a newline (U+000A), a carriage return (U+000D) not followed by a newline, or a carriage return and a following newline.

    • 一个Tab等于最多四个Space。

      • 在VSCode中按一下Tab其实会自动转换成若干个空格,具体转换成几个空格决定于插入位置之前已经有多少个字符。

      • 同理,任何需要输入一个Tab的地方,可以用键入最多四个空格代替。

    • 不论多少个连续的Space或Tab或Enter,一般渲染后只显示一个空格(不会有换行效果)。例如

        a           b     c
        ou
      

      显示为

      a b c
      ou

    • 如果要现实换行需要在上一行结尾处打两个Space加一个Enter。 有的md编辑器,只需一个Enter即可换行

        a   b   c  
        ou
      

      显示为

      a b c
      ou

    • 如果两行文字之间存在一个或多个空行那么这些空行渲染后会显示(不论上一行末尾有没有双Space)。

        a   b   c
        
        o   u
      

      显示为

      a b c

      o u

      md中的空行可以不仅有Enter。一行除了开头的Enter,仅有任意个Space或Tab也算空行。

      但是目前在VS中如果在一个空行上有除了开头Enter以外的Space或Tab,可能会影响后续段落的语法高亮。(能正常渲染,但是编辑源代码模式下语法高亮功能有可能不识别。)

    • 不论源代码两行文字中间有多少空行,最终只显示为一个空行。

        a   b   c
        
        
        o   u
      

      显示为

      a b c

      o u

  2. 字符

    • 除了上述三种空白符。ASCII十六进制编码为21到7E的字符也可以用于md文档。

    • 本质上md源代码就是一个改了后缀名的文本文档。因此如果使用Unicode(UTF-16)或者UTF-8保存文本。那么非ASCII字符也可以用于md文档中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值