MarkDown,写作神器,还是有必要掌握一下。写作也是一种很重要的能力,需要长久坚持和锻炼。

写作能力重不重要?语文重不重要?读书重不重要?

我觉得语文和写作能力是所有能力的基础,是重中之重。因为你所有感知和获取的信息的加工整理都离不开语文,你对外界产生的理解和影响也离不来语文。它甚至可能影响你的求职,你的工作,你的人际关系。你对其他信息的感知和获取,机遇的把握等等都离不开它,鲁迅的一只笔杆子抵得上千军万马。

以下为一个最简单的,使浏览器支持MarkDown渲染和语法高亮的示例,可以为以后的个人的markdown博客储备。

后续计划写个专栏,介绍下自己做一个markdown的个人博客网站是多么的简单,写博客就成了往目录里丢md文件这样简单。

使用了流行的markdown-it(MarkDown渲染),highlight.js(语法高亮)和mermaid.js(画流程图、时序图等的js库)组件。

先看一个我的个人博客截图,后续准备开源出来,没使用数据库,只使用md文件和配置文件就完成了所有功能。

所以部署也很简单,不用先建库,建表,直接放到服务器的一个任意目录里运行即可,写博客就是往目录里丢md文件而已。

增加功能,把微信公众号打通,使用自己的公众号发布文章,直接电脑上编译好md文件,往聊天窗口一丢就完成了文章的发布。至于文章分类,文章排序和推荐文章,都是内部搞了个算法自动完成的。且前台如果有新评论或留言,会自动推送到我的公众号里。

附图,测试demo浏览器显示出来的效果:

附个人的markdown博客截图,使用go语言加mardown实现。

附demo的完整的html的使用代码,仅在一个html文件中,可直接用浏览器打开运行看到效果:

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"/><title>markdown in the browser</title><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.0.0/styles/railscasts.min.css"><link rel="stylesheet" href="./mytable.css"><!-- <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.0.0/styles/atom-one-dark.min.css"> --><script src="https://cdn.bootcss.com/jquery/3.5.0/jquery.min.js"></script><script src="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@10.0.0/build/highlight.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/markdown-it/10.0.0/markdown-it.min.js"></script><script src="https://cdn.bootcss.com/mermaid/8.0.0-rc.8/mermaid.min.js"></script><style>.md_source{display: none}</style>
</head>
<body>
<pre class="md_source">
# Welcome to Yang's Blog!
this is a most simple demo, used markdown-it and highlight.js in the browser to rendering markdown files
## used markdown-it in the browser> 你好! 这是你第一次使用 **Markdown编辑器** 所展示的欢迎页。如果你想学习如何使用Markdown编辑器。  可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。
***
Rendered by **markdown-it**.
### 表格demo,欢迎使用Markdown
Name    | Age
--------|------
Bob     | 27
Alice   | 23### 代码高亮例子
```golang
package main
import "fmt"func main() {fmt.Println("hello ")
}```# 一级标题## 二级标题### 三级标题### 表格例子 欢迎使用Markdown
| Command | Description |
| --- | --- |
| `git status` | List all *new or modified* files |
| `git diff` | Show file differences that **haven't been** staged |      ### 链接
[baidu](https://baidu.com)### 插入图片
![imgs](https://img-blog.csdnimg.cn/2019091813595558.png)- 项目- 项目- 项目- 列表信息+ 二级列表* 三级列表    1. 项目1
2. 项目2
3. 项目3- [ ] 计划任务
- [x] 完成任务创建脚注格式类似这样 [^RUNOOB]> 最外层
> > 第一层嵌套
> > > 第二层嵌套```mermaid
graph LRA --- BB-->C[fa:fa-ban forbidden]B-->D(fa:fa-spinner);
```
</pre><div class="mermaid">graph LRA --- BB-->C[fa:fa-ban forbidden]B-->D(fa:fa-spinner);</div><div class="md_render">
</div><script>var md;var defaults = {html: false, // Enable HTML tags in sourcexhtmlOut: false, // Use '/' to close single tags (<br />)breaks: false, // Convert '\n' in paragraphs into <br>langPrefix: 'language-', // CSS language prefix for fenced blockslinkify: true, // autoconvert URL-like texts to linkstypographer: true, // Enable smartypants and other sweet transforms// options below are for demo only_highlight: true,_strict: false,_view: 'html' // html / src / debug};const mermaidChart = (code) => {try {mermaid.parse(code)return `<div class="mermaid">${code}</div>`} catch ({ str, hash }) {return `<pre>${str}</pre>`}}defaults.highlight = function (str, lang) {var esc = md.utils.escapeHtml;console.log(str)console.log(lang)if (lang && hljs.getLanguage(lang)) {try {return '<pre class="hljs"><code>' +hljs.highlight(lang, str, true).value +'</code></pre>';} catch (__) {}}else if(lang == 'mermaid'){return mermaidChart(str)//return '<pre class="mermaid">' + mermaid.mermaidAPI.render('mermaid', str) + '</pre>';}else{return '<pre class="hljs"><code>' + esc(str) + '</code></pre>';}};md = window.markdownit(defaults);$('.md_render').html(md.render($('.md_source').html()));mermaid.initialize({startOnLoad:true});</script></body>
</html>

想有自己的博客吗?浏览器支持 MarkDown和语法高亮的最简单示例(使用markdown-it、highlight.js和mermaid)相关推荐

  1. 博客园开始对X++语言语法高亮的支持

    关注X++的博客园博友有福啦,现在发布X++代码也同样可以实现语法高亮.目前仅支持SyntaxHighlighter插件.请看如下: public void update(boolean _updat ...

  2. Spring MVC集成slf4j-logback - 我想跟代码谈谈 - 博客频道 - CSDN.NET

    Spring MVC集成slf4j-logback - 我想跟代码谈谈 - 博客频道 - CSDN.NET

  3. 【回眸】今天本想水一篇博客……

    今天本想水一篇博客-- 前言 最近不是快到期末了嘛,笔者自己本身也是忙的焦头烂额,被各种实验报告支配的恐惧,被各种大作业要求支配的恐惧,甚至还有之前参加的好多活动等等,都在忙碌的十二月,真的是忙到头晕 ...

  4. Flutter基础篇(2)-- 老司机用一篇博客带你快速熟悉Dart语法

    版权声明:本文为博主原创文章,未经博主允许不得转载.https://www.jianshu.com/p/3d927a7bf020 转载请标明出处: https://www.jianshu.com/p/ ...

  5. 在博客园添加Lisp(或其它)代码高亮

    由于我这一段对Emacs很有兴趣,发了不少关于这玩意儿的文章.但博客园的代码高亮并不支持Emacs Lisp,之前一直也没怎么管,前几天看见李杀的这篇 Syntax Coloring with Goo ...

  6. zbbz的lisp_在博客园添加Lisp(或其它)代码高亮

    由于我这一段对Emacs很有兴趣,发了不少关于这玩意儿的文章.但博客园的代码高亮并不支持Emacs Lisp,之前一直也没怎么管,前几天看见李杀的这篇 Syntax Coloring with Goo ...

  7. wordpress添加媒体_如何向您的WordPress博客添加表情符号支持

    wordpress添加媒体 Emojis are fun and cute. They allow you to express yourself without using too many wor ...

  8. 谁不想拥有自己的博客网站?

    # 拥有个人博客网站的好处 想发啥发啥,不怕被审核掉 网站风格自己改造,想怎么炫酷就怎么炫酷 有幸做大后还可以可以承接广告 拥有属于自己的一片小天地 - 下面我们就一起来看看怎么搭建一个博客网站,这里 ...

  9. 想要创建个人博客只需五步骤——所有人看了都能学会的步骤

    前言: 本文用了宝塔搭建个人博客,如果不喜欢用宝塔用镜像也行,个人觉得镜像更方便一点,但是不好管理,宝塔容易管理.这是用镜像搭建个人网站的博客:阿里云服务器搭建wordpress个人博客 个人博客创建 ...

最新文章

  1. factorytalkview 卡 86_徕卡M党的街拍小贴士
  2. python开发公司网站_用python开发网站
  3. Linux Shell基础 - Shell 脚本的执行方式
  4. php ajax跳转,ajax接口的php文件如何实现跳转
  5. 蓝桥杯 ALGO-77 算法训练 斜率计算
  6. JDBC和MySQL的实现原理
  7. intel服务器最新主板芯片组,Intel主流服务器主板驱动更新:新增支持Patsburg芯片组...
  8. Word文档换台电脑打开后字体、排版等会发生变化的原因及解决方案!
  9. 下单后,订单拆单能怎拆?
  10. Python程序员必备的四款开发工具
  11. windows10系统怎么管理 右键-新建菜单
  12. word文档找不到smartart_教大家word中smartart在哪找
  13. 电源系统中磁珠的使用
  14. 面试复试重点 算法与数据结构
  15. Oracle单实例数据库启动ORA-01078、ORA-00205、ORA-01157、ORA-01110处理
  16. Pro ASP.NET MVC 3 Framework 译文(一)
  17. 魏晋南北朝书法家钟繇、王羲之、王献之
  18. 不同网段下的pc机如何通过路由器互通
  19. WC2018 乱搞记划雪记
  20. vue配置各种环境-环境切换问题-打包自由切换

热门文章

  1. java ascii 的转换
  2. 印刷名片用什么格式的文件好?
  3. The 15th Chinese Northeast Collegiate Programming Contest部分题解
  4. ipad 邮箱服务器端口,ipad企业邮箱设置方法 ipad企业邮箱怎么设置【详细介绍】...
  5. 在JIRA中设置腾讯企业邮箱
  6. issu3.6 sdk 试玩
  7. 分享一份国外关于不对等的激励因素是如何影响网络安全的报告
  8. scratch编程技巧之如何实现背景的上下滚动
  9. 华为抓取错误日志在哪里_Java程序员须知的七个日志管理工具,提高排查错误效率...
  10. 开会不用手写记录?来看看华为手机自带的这个功能