Markdown详解|从小白开始的码字之旅,你真的不需要这样一篇文档以此共勉么?

关于Markdown


前言

这篇文章是个人的初次尝试,目的是为了让每一个人了解Markdown这种 轻量级标记语言 1 在计算机世界中的使用,希望该文章能引起你对电脑文本编辑上的兴趣,不再局限于Word文档的使用(果然还是Word文档香!)。

Markdown早在2004年就被 约翰·格鲁伯(John Gruber) 所创建,Markdown被发明出来就是为了简化文章的排版。或许对于大部人来说会感到不解,一套如此老旧的标记语言,是否早就过时了?那为什么还要拿出来讲呢?个人认为正是因为其的简单性,让对于想多了解了解计算机“语言”的普通人而言,是一个很好的切入口。

况且正是因为Markdown在语法上的简单性,在这个追求极简的时代,更容易受到码字人员的追捧

文章的内容分为四部分——

Markdown是什么

Markdown的适用人群

Markdown的语法

Markdown的编辑环境

希望这篇文章能够提供一定帮助,开启你对计算机码字的探索之旅


Markdown是什么

前言中已经阐述过了Markdown是一种轻量级标记语言

  • 轻量级是相对其他标记语言而言的,相当于一些最基础、最简单的表达方式,对标记语言的发展史有兴趣的同学,可以自行查找信息进行了解。

  • 标记语言用通俗易懂的话来说,就相当于在计算机中,对文本进行排序、标记,可以直接理解为电脑中的读书笔记。而其目的正是为了使用户在计算机中能更好的阅读文章、整理文档信息等等,以此获得更加良好的观感、使用体验。

轻量级标记语言当然不止一种,但Markdown作为比较有代表性且广泛使用的语法,相信只要接触过的小伙伴,都会喜欢上这个语言。举个简单例子,像正常在Word文档中对字体进行的加粗、倾斜、超链接等等功能,都能用Markdown的语法实现。

总之Markdown有轻量化、易读易写的特性,并且对于图片、图表、数学式、代码都有支持,在大多平台发布文章或消息时,都能起到良好的排版效果。


Markdown的适用人群

如今这个讲究效率的社会,大家都很少再去了解自己不怎么接触的东西。往往等到需要用到了才会去了解特定的内容,这种学习方式的好坏,暂不做评述。但我仍然觉得有必要介绍一下这款软件的适用范围,以此让每个人抉择权衡是否有学习的价值。

Markdown可以说是为那些对码字速度排版流畅度感观度上有要求的人群做准备的,简单来说就是将文章写完的同时顺带将排版完成。

而适用人群则主要涵盖了经常写文档的码农博客写手网站小编小说作者文字工作者各种出版业人士等等。

通常情况下(记事本表示应该很少人会用我了吧?),计算机中需要进行大量文字输入的地方,都会有相应的文本编辑菜单,让你对文章进行更好的编辑与排版,例如:

公众号编辑菜单
 Word文档编辑菜单

这种直观的图像形式,能对编写的内容能起到很好的排版作用。甚至于像“秀米”一类编辑器软件,已经简化到,只需套入模板,就可以对文章进行编排了。

如果觉得现直观的文本编辑方式完全满足于日常使用,则可以自行选择是否要对Markdown的语法进行学习。

Markdown的泛用性主要体现在以下几个方面:

  • Github 2 这类,主要以Markdown作为主流的编辑方式的网站使用
  • 将Markdown写成的文档,转化为各式各样的文本、图像文件(png、word、html 3 等)

简单来说喜欢编写文档的小伙伴们,都推荐了解一下Markdown。当然一切的前提来自于是否获得良好的体验,如果所用的工具并不能显著提升你的使用体验,那当然就没有使用的必要了。


Markdown的语法

以下语法效果展示均为Typora演示,不同平台展示效果可能纯在差异,但大体相同

标题格式表达

  1. 利用“===”、“----”表现一二级标题

    效果展示
    =======
    效果展示
    -------
    

    标题

  2. 利用“#”表现多级标题

    # 效果展示
    ## 效果展示
    ### 效果展示
    #### 效果展示
    

    多标题

文本格式表达

  1. 分段:在文字的结尾敲击两次空格键,或者空一行

  2. 对文本进行各类编辑

    *倾斜文本*  /  _倾斜文本_
    **加粗文本**  /  __加粗文本__
    ***倾斜加粗文本***  /  ___倾斜加粗文本___
    ~~字体删改~~
    <u>字体下划线</u>
    
    上述其中,标签<u></u>为html语法(markdown可兼容html)
    

    字体

  3. 用三个以上的“ * ”、“ - ”、“ _ ”以此添加分隔线

    ***
    ---
    ___
    

    分隔线

  4. 脚本的编写

    效果展示[^1]
    [^效果展示]:效果展示
    

    脚注

列表格式表达

  1. 用“ + ”、“ - ”、“ * ”加空格来做无序列表

    + 效果展示
    - 效果展示
    * 效果展示
    

    无序列表

  2. 用“数字”加“ . ”加“空格”来做有序列表

    1. 效果展示
    2. 效果展示
    3. 效果展示
    

    有序列表

  3. 当需要嵌套列表时在子列表前敲击四次空格键

    1. 效果展示
        1. 效果展示
        2. 效果展示
        3. 效果展示
    2. 效果展示
        + 效果展示
        - 效果展示
        * 效果展示
    

    嵌套列表

区块格式表达

  1. 用“>”加“空格”来进行区域表达、区域表达也可嵌套
    >效果展示
    >效果展示
    >>效果展示
    >>>效果展示
    

    区域与嵌套

代码框格式表达

  1. 用“`”包裹代码片段

    `test`
    

    部分代码包裹

  2. 用“```”对整段代码进行包裹,同时对代码内容进行注释(可注释可不注释)

    \  ```c++
    \  #include<stdio.h>
    \  int mian(){
    \  printf("Hellow World.\n");
    \  return 0;
    \  }
    \  ```
    

    整段代码包裹

  3. 用“tab”键或“四个空格键”对代码区域进行标识

    具体参考如下图所示:
    

    部分代码包裹

    标识显示

链接格式表达

  1. 链接使用“”、“<>”进行表达

    [百度](https://www.baidu.com)
    
    <https://www.baidu.com>
    

    链接

  2. 也可以通过变量来设置链接,将链接赋予变量

    [百度][1]
    [1]:https://www.baidu.com/
    

    高级链接

图片格式表达

  1. 用“![]“加”()”的格式来表达图片,括号内加引号可赋予title属性文字

    ! [] (图片地址)
    ! [] (图片地址 "这是一张图片")
    

    这是一张图片

    这是一张图片

  2. markdown只能做简单的图片导入,但因为兼容html元素,如果想对图片大小进行修改可以使用“< img >标签”进行修改

    <img src="图片地址" alt="图片" title="这是一张图片" width="200" height="120" />
    
    图片

表格格式表达

  1. 用“|”来分隔不同的单元格,用“-”来分隔表头和其他行,用“:-”、“-:”“:–:”对文本进行左对齐、右对齐与居中对齐
    |效果展示|效果展示|效果展示|
    |:-|:--:|-:|
    |效果展示|效果展示|效果展示|
    |效果展示|效果展示|效果展示|
    

    表格

其他高级格式表达

  1. 由于markdown兼容html元素,所以html的标签,均能使用
  2. 使用美元符 “$$” 包裹 TeX 4LaTeX 5 格式,可输入复杂的数学公式
  3. 不同的编辑器上Markdown除了这些基础语法外,也有不同的相应内容的添加,具体则需要在使用相应的编辑器时,去了解适应

Markdown的编辑环境

想要写字,总得有个载体,Markdown想要在电脑上编写,当然就有其相对应的编辑环境。就像文字记录在竹子上、兽皮上、纸上,记录的方式不同,呈现的效果也有所差异。

那么对于Markdown来说,对应的编辑环境当然就是所谓的 编辑器 6了。而正由于Markdown语法的简单性,也使得几乎任何一款编辑器都可以适用Markdown语法的编写,那么我们又应该选择怎样的编辑器,才能达到我们想使用的效果?

首先小白需要先了解一下编辑器,编辑器可以分两类,一类是装好环境的编辑器、另一类需要自己添加环境的编辑器。计算机中的环境是什么?环境就是一套让计算机可以识别到你写出的内容是要做什么的规矩。举个例子:“你想要在纸上写楷书,楷书的字体是怎么样的这就是一套规矩。而这套规矩就相当于环境,编辑器中预先加载了这套规矩,当你输入时,就自动识别成了楷书。”当你提前把属于该语言的那套环境加载到编辑器中时,无论你使用的是何种语言代码(java、C、python、php),编译器都能够识别。(当然运行则就需要运行的环境了)

了解了编辑器,回到Markdown本身,按照使用环境我们可以将其归为以下三类:

平台集成工具

各大在线博客、社区平台自带的写作工具,比如Github、CSDN、博客园、简书等。他们的写作工具就是使用的Markdown的语法环境,进而使得你在编写排版时可以使用Markdown的语法。

独立软件类

只用于Markdown编写的编辑器,可以理解为Word文档这类软件。是单纯以Markdown的语法环境制作的相关软件,使用体验上,会更加的舒适快捷。当然软件本身会对码字上进行一些优化,例如使用一些快捷键,以此来减少打出相应语法的时间。这里推荐的软件是:Typora(正是作者写这个文档时,所用的软件)

插件类

将Markdown的语法环境装入主流的编辑器中,让你现有的编辑器具备Markdown的功能。这里推荐三款编辑器:AtomVScodeHBuilderX(这三款软件是作者了解到比较广泛使用的编辑器,当然说到编辑器又不得不讲到 IDE 7 ,当然在编辑器上,安装好相关的运行环境同样也可以达到IDE中的某些功能效果)


结语

(~ ̄▽ ̄)~总算是写完这篇文档了!这是个人第一次尝试写技术性文档,虽然十分简单甚至算不上是什么有技术含量的东西,内容上也不是十分的扎实严谨,大部分都是自己所理解的一些浅显的东西。(欢迎大佬指正)

我希望能通过这样一种比较简单的、且普通人都能理解的方式去介绍一些与计算机语言相关的东西,让每个人对电脑更深层次的一些东西产生兴趣。说句实在话,编程代码这块的东西是枯燥、无味、难嚼的。我自己开始接触编程代码这块东西的时候,将近花了一整个学期的时间,才开始抓住一些最基本的东西,渐渐的学会看文档、博客,尝试着自己去做东西、写文档。对于自己而言,写这个文档的同时,也是不断学习、巩固的过程。

如果你同我一样,也是个对计算机感兴趣的小白,那么就从自己感兴趣的地方下手,尝试地写些文档内容,这种学习效率不是那种按部就班的学习可以比拟的。最后希望这篇文档,对你我都能起到一定的激励作用!回见!ο(=•ω<=)ρ⌒☆


作者:lin_小白

编写时间:2020.10.6


  1. 轻量级标记语言 (英语:Lightweight Markup Language),简称LML,是一类用简单句法描述简单格式的文本语言。 ↩︎

  2. Github 一个面向开源及私有软件项目的托管平台,简单理解为一个可以共享、获取到各种软件源代码的平台。开发者们的快乐天地,需要科学上网。 ↩︎

  3. html 全称:Hyper Text Markup Language,即超文本标记语言。自1990年以来,HTML就一直被用作万维网(world wide web)的信息表示语言,简单来说HTML是网页编程的基础。(可以简单地理解为网页就是用HTML的语法编写出来的,当然真正网页的组成还涉及到更多的语法和框架) ↩︎

  4. TeX ,一套在学术界十分流行的文本排版系统。你也可以把它理解为是一种程序语言,同样是利用一些字符代码对文本进行编排。(从文字编排上来说,TeX和Markdown和Word的目的都相同,同样为了排版而存在) ↩︎

  5. LaTeX,是基于ΤeΧ的排版系统,可以认为LaTeX将TeX这种语言写成的一个“TeX 宏包”,是对TeX功能的整合与拓展,使TeX更容易上手使用。 ↩︎

  6. 编辑器 用于编辑、修改和产生文件时所使用的实用程序。 ↩︎

  7. IDE(Integrated Development Environment,集成开发环境),集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套装。用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具。可以理解为编辑器的升级加装版本,功能更多更全面。 ↩︎


版权声明:本文为lin12593原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。