1. 需求分析

最近在网上折腾了好久Markdown的写作环境,作为一个普通用户,总结一下个人对于Markdown写作环境的几点需求。由于本人刚接触Markdown不久,因此,需求也比较简单,想看具体搭建步骤的可以直接跳到第二章环境搭建

  1. 本地存储。这一点主要是出于隐私要求,由于记录内容和个人强相关,以目前的网络环境来看,文件存在本地最为安全。
  2. 云端同步。这一条和第一点并不矛盾,在作者想要发布的时候,能够方便地将文档发布到云端,不想发布的时候,只在本地存储,而当云端文档发生变化时,也能及时pull到本地。
  3. 实时预览。所写即所见,写出来的同时能够看到效果,这对于修改和写作非常重要!反之,没有预览效果,用户难以把握最终完成效果。部分编辑器虽然有预览的功能,但预览需要手动点击或执行快捷键操作,这种非实时的预览,会导致用户在写作时,注意力不断被打断,写作体验非常不流畅。
  4. 同步滑动原文定位。当文档过长时,预览和原文往往很难对应起来,这表现为两个方面:
    • 编辑或修改完原文之后,不知道最终预览情况,这个时候原文和预览同步滑动,可以帮用户快速定位到当前编辑的位置,并查看预览效果。
    • 当用户发现预览没有达到预期效果,并尝试进行更改时,如果预览不支持反向定位到原文,那么用户可能会花费很长的时间才能找到原文中对应的位置。
  5. 工具栏。虽然Markdown语法简单,容易学习,但是对于普通用户来说,依然存在学习门槛,而且一段时间不使用的话,语法和快捷键操作很容易忘记。如果编辑器有工具栏,那么用户的学习成本就大大降低了。毕竟大多数用户并不是经常写作,而且工作生活中需要学习的东西已经太多了,即使是简单的语法,对于普通用户来说,学习成本也会很高(学习成本并非线性增长)。
  6. 图片上传。在使用各类编辑器之前,我原以为这是一个非常常规的需求,然而网上各类方法对于这个功能的实现并不理想。
  7. 背景颜色可变
  8. 支持表格,流程图等语法
  9. 目录生成,也称TOC生成。

2. 环境搭建

总体思路是,采用vscode作为文本编辑器,同时利用各类插件,实现以上各类需求。vscode的安装这里就不赘述了。这里重点介绍使用到的Markdown插件。

  1. Markdown All in One。支持实时预览,同步滑动,快捷键,目录生成等各种功能。打开命令面板,在其中输入mio,可以快速查找该插件支持的各种命令。
  2. learn-markdown。微软官方推出的markdown插件,对于小白而言,最好用的是有一个工具栏常驻在状态栏里,避免记忆常用的快捷键。
  3. 博客园cnblogs客户端。博客园推出的官方插件,借用该插件可以实现图片上传,云端同步的功能。
  4. Markdown TOC & Chapter Number。支持右键目录生成,标题编号。如果熟练使用了Markdown All in One的目录生成功能,该插件可选。
  5. Markdown Theme Kit。微软官方推出的markdown插件,支持几种markdown主题,当然也可以直接改变vscode的theme。

以上插件均为本人亲测后,感觉使用体验良好的插件,如果大家还有用过不错的插件,欢迎推荐和交流。

vscode编写markdown的更多相关文章

  1. vscode 编写Markdown文件

    vscode使用Markdown文档编写   首先安装vscode工具,具体的使用可以参考之前的博文:<Visual Studio Code教程:基础使用和自定义设置> VScode已经默 ...

  2. 使用vscode 编写Markdown文件

    markdown简单语法参考下面简单事例: # 一级标题 1. 有序列表1 >1. 有序列表1 >>- *test1* >>- **test2** >>- * ...

  3. 使用VScode编写Markdown的一些使用技巧

  4. vscode 编辑markdown文件

    关于换行问题 在vscode中编写Markdown文件时,会遇到明明按回车换行了但是预览的时候却没有换行的情况,这时在需要换行的地方多按两次空格键,就会换行 预览markdown文件 编辑器右上角有个 ...

  5. 使用vscode编辑markdown文件(可粘贴截图)

    使用markdown粘贴截图时,操作步骤比较多: 1)截取图片: 2)将图片存在特定位置: 3)记住图片路径,在markdown文件中编写代码: 4)预览效果: 而word之类的文档编辑器,只需要截图 ...

  6. vscode 编写python如何禁止 flake8 提示 line too long

    使用vscode编写python还是挺舒服的,但是如果给vscode安装了语法校验插件,例如flake8,会常常提示一些非常苛刻的语法问题,其中最让人不能忍受的就是line to long. 一行仅能 ...

  7. vscode编写插件

    vscode编写插件详细过程 前言 之前编写了一个vscode插件用vscode写博客和发布,然后有园友要求写一篇来介绍如何开发一个vscode扩展插件,或者说介绍开发这个插件的过程.然而文章还没有写 ...

  8. [6278009]使用Visual Stuido Code 编写Markdown

    使用Visual Stuido Code 编写Markdown void main() { printf("Hello world!"); } void main() { Cons ...

  9. 使用VsCode编写和调试.NET Core项目

    ​ 本来我还想介绍以下VSCode或者donet core,但是发现都是废话,没有必要,大家如果对这个不了解可以直接google这两个关键字,或者也根本不会看我这边文章. ​ 好直接进入主题了,本文的 ...

  10. VsCode编写和调试.NET Core

    本文转自:https://www.cnblogs.com/Leo_wl/p/6732242.html 阅读目录 使用VsCode编写和调试.NET Core项目 回到目录 使用VsCode编写和调试. ...

随机推荐

  1. 【Rust-book】第五章 使用结构体来组织相关联的数据

    第五章 使用结构体来组织相关联的数据 结构,或者结构体,是一种自定义数据类型,它允许我们命名多个相关的值并将它们组成一个有机的结合体. 可以把结构体视作对象中的数据属性 1 对比元组和结构体之间的异同 ...

  2. Hello Welcome to my blog!

    Hello Welcome to my blog!

  3. TP5 where查询一个字段不等于多个值

    // 组装where条件$wheres = [];// 后台人员类型$people = input('people','');switch($people){ case "跟单员" ...

  4. 前台vue发送json格式,后台srpeingboot不能自动处理解决办法

    使用HashMap解决,如下图

  5. IIS部署的应用无法自动注册到Nacos

    问题描述: 自己开发的某系统后台API接入nacos,在IIS上部署无法自动注册到nacos服务列表中.其根本原因是网站处于休眠状态,当某请求访问该网站时,网站被激活,nacos注册成功. 但这块有个 ...

  6. 从零玩转SpringBoot3-快速入门

    一.简介 1.前置知识 ​ ● Java17 ​ ● Spring.SpringMVC.MyBatis ​ ● Maven.IDEA 2.环境要求 环境&工具 版本(or later) Spr ...

  7. 现代C++(Modern C++)基本用法实践:五、智能指针

    概述 c++效率较高的一个原因是我们可以自己定制策略手动申请和释放内存,当然,也伴随着开发效率降低和内存泄漏的风险.为了减少手动管理内存带来的困扰,c++提出了智能指针,可以帮助我们进行内存管理,有三 ...

  8. 从零玩转系列之SpringBoot3-核心原理

    一.简介 1.前置知识 ● Java17 ● Spring.SpringMVC.MyBatis ● Maven.IDEA 2.环境要求 环境&工具 版本(or later) SpringBoo ...

  9. IDEA: 菜单栏消失的解决办法

    解决方案 步骤一 双击shift输入View,点击第一个 步骤二如图所示 至此问题解决

  10. 操作系统复习 MITS6.1810 lab util 记录

    lab util sleep 介绍:主要用来熟悉下环境以及代码结构. See kernel/sysproc.c for the xv6 kernel code that implements the ...