• Markdown语法及SublimeText下使用技巧


    Markdown语法及SublimeText下使用技巧

    0.缘起

    最近因为一直在学习Sublime Text,所以也就顺便试用了一下ST对Markdown的支持。正好CSDN正在大力宣传新上线的Markdown编辑器,所以方便了日后的博客发布。

    首先说一下与Office Word相比,最深刻的几点体会吧:

    • 专注写作内容:不再纠结字体、标题大小、行间距等等版式问题,专注于文章内容本身的编写。一边看电子书,一边在Sublime Text里敲代码练习,还能一边在Sublime Text里敲文档,写作过程不仅变得很高效,而且变得很愉快
    • 代码语法高亮:Word最大的问题就是嵌入源代码很麻烦,写技术博客怎么可能不嵌入源代码?!之前也装过一些Word的扩展插件,但最终效果都不理想。
    • 插入数学公式:这一功能Word中倒是有,但是Markdown借助MathJax实现起来更加简单。
    • 文件占用空间小.md因为是纯文本文件,所以很小巧。相比之下,一个只包含很少内容的.docx动辄就几十、上百k。

    发布博客的确快了不少,CSDN的Markdown样式也挺漂亮的。现在感觉唯一不太方便的就是:因为Markdown是纯文本标记语言,没法嵌入本地文件,所以如果文章中引用了图片的话,还需要用老办法,先手动上传到CSDN的图片服务器。

    1.基本语法

    这里仅简单列一下最常用的语法,完整的语法介绍请参考网上的各种手册。

    1.1 标题

    从#到######表示h1到h6

    1.2 加粗和斜体

    *或_之间的文字会变成 斜体,**或__之间的文件会变成 加粗
    `之间的文字会强调

    1.3 键盘按键

    在<kbd>和</kbd>之间的字母会像键盘按键那样显示,例如Ctrl

    1.4 列表

    -、+、*都能表示列表,要注意的是 前后都要有空行

    • bullets can be -, +, or *
    • bullet list 1
    • bullet list 2
      • sub item 1
      • sub item 2

    1.5 图片

    图片、网址、章节引用的方法都类似,语法是:[显示文字](reference)。其中reference可以是:图片链接、网址链接、#章节标题。目前还不知道有什么方法能嵌入本地图片。

    1.6 数学公式

    详见[3.2 Markdown Preview](#3.2 Markdown Preview)。

    2.GitHub Flavored Markdown

    GitHub现在成了主流,不仅提供Git代码托管(取代SVN)、Issue追踪(取代JIRA),而且还增强了Markdown的语法GitHub Flavored Markdown,即GFM。GFM使用了Linguist进行语言检测和语法高亮,能为几乎各种语言渲染出漂亮的样式。

    2.1 下划线

    单词中如果有_的话,GFM会忽略,而不会变成斜体,不然真的很烦!例如,单词wow_great_stuff中的great不会变成斜体。

    2.2 语法高亮

    可以在“`之间敲入代码,并提示编程语言,例如“`ruby。

    require 'redcarpet'
    
    markdown = Redcarpet.new("Hello World!")
    puts markdown.to_html

    2.3 表格

    详见[3.3 Table Editor](#3.3 Table Editor)。

    3.Sublime Text插件

    3.1 MarkdownEditing

    一定要全局配置ignored_packages: [“Markdown”]禁用ST默认的Markdown插件,否则MarkdownEditing中看不到代码染色的效果,也不会有GFM的语法增强。

    3.2 Markdown Preview

    安装Markdown Preview后,有一些默认选项需要修改。例如,开启代码染色、MathJax支持、解析器列表只保留一个markdown(因为我这github无法连接)。

    {
        /* Sets the parser used for building markdown to HTML. */
        "parser": "markdown",
    
        /* Enable or not mathjax support. */
        "enable_mathjax": true,
    
        "enable_highlight": true,
    
        /* Remove github */
        "enabled_parsers": ["markdown"]
    }

    尝试一下,在md文件中输入:
    $x^{y^z}=(1+{ m e}^x)^{-2xy^w}$
    如果MathJax配置成功的话,就能看到数学公式:
    xyz=(1+ex)2xyw

    更加完整的MathJax语法请参考官方文档

    3.3 Table Editor

    借助Table Editor插件可以方便的插入表格,类似Emacs中Orgmode一样。

    Year Temperature (low) Temperature (high)
    1900 -10 25
    1910 -15 30
    1920 -10 32

    但要注意的几点是:

    • 通过Ctrl+Shift+P->Table Editor: Enable for current view开启。
    • 先输入标题行,回车后在第二行输入|-后,按tab键就将进入Table编辑模式。
    • 表格必须与前面输入的文字之间有空行,否则表格会被当成普通文字渲染。
  • 相关阅读:
    关于SNS网络
    面向对象中的IS A和HAS A 问题
    项目进度检查
    【php】php Apache 怎么创建虚拟目录
    【IE6】iframe在IE6下出现横向滚动条的解决方案
    【javascript基础】Javascript的getYear、getFullYear、getUTCFullYear异同
    【java】JAVA环境配置
    UTF8 GBK UTF8 GB2312 之间的区别和关系
    【转发】10 个技巧助你写出卓越的jQuery插件
    【前端优化】你想不到的压缩方法:将javascript文件压缩成PNG图像存储
  • 原文地址:https://www.cnblogs.com/xiaomaohai/p/6157625.html
Copyright © 2020-2023  润新知