使用静态页面的理由

本人在Github上使用github.io部署了一个静态主页,地址是http://aopstudio.github.io,用于存放一些笔记文件。虽然静态页面功能少,自动化程度低,不过github.io的优点在于页面完全随自己设计,html,css和javascript全部随由自己安排,同时不需要自己的服务器资源。而且不少Github用户都会设置github.io作为自己的展示页面,也算是一个潮流。

更大的理由——Markdown Preview Enhanced插件太强大。。。

我使用的Markdown写作工具是VS code搭配其中的Markdown Preview Enhanced插件,功能相当强大,尤其是其中的脚本语言画图像的功能让我爱不释手。在该插件内可以使用脚本语言(比如DOT语言)画出矢量图,包含流程图、时序图、有向图、无向图等等,目前我还没有发现其他Markdown渲染工具可以达到相同的功能。Github中的Markdown语言据说是对原生Markdown进行了功能增强,但是连\(\TeX\)公式都不支持,和MPE插件比起来更是差了十万八千里(这里要夸一下Solo中的Markdown渲染器,是支持\(\TeX\)公式的)。但是过于强大也带来了兼容性的问题。在其他的Markdown渲染器中都无法实现在VS code中的近乎完美的预览效果(这同样也是我不使用Hexo的理由)。好在MPE插件实现了输出HTML文件的功能,输出的HTML文件的显示效果和在VS code中的预览效果没什么区别。我将输出的HTML部署到github.io,就可以在静态网页中实现和桌面端相同的渲染效果(主要是指矢量图的渲染)。

其他存在的问题和解决方案

“静态页面因为没有后台服务器,所以无法保存评论的内容,也就无法实现评论的功能。”一般人在不了解javascript强大功能的情况下,基本上会这么想。但是现在有个高人用JavaScript实现了静态页面评论的功能,也就是Gitalk项目。其实我一开始发现的是Gitment,原理和Gitalk相似,但是Gitment已经很久没有维护了,作者连自己主页的SSL证书过期了都不管,因此我选择了还在维护的Gitalk。Gitalk把评论放在Github仓库的issue中,访问静态页面时通过JavaScript与issue中的数据进行交互来完成评论的功能,这真是一个绝妙的想法。而且作者询问过Github官方,这种方式不属于滥用issue的范畴。

使用Gitalk的方法很简单,官方文档中已经说的很清楚了,在此就不再赘述了。

个人静态站点还未解决的其他问题

我的笔记内容篇幅比较长,当我发布在Solo中时,会自动生成侧边栏导航目录,但是MPE插件生成的静态页面中没有侧边栏目录,只能从头看到尾,效果如示例网页。现在正在寻找为该页面生成侧边栏导航目录的方法,如果有高人指点,在此感激不尽!

2019年2月27日更新

原文章发表在自己搭建的博客程艺的个人博客里,当时还没解决的侧边栏问题现在已经通过一个叫做docsify的工具解决了,现在阅读体验非常好,地址在此https://aopstudio.github.io/docs/#/

使用Gitalk实现静态页面评论的功能的更多相关文章

  1. Apache 后台服务器(主要处理php及一些功能请求 如:中文url)   Nginx 前端服务器(利用它占用系统资源少得优势来处理静态页面大量请求)   Lighttpd 图片服务器   总体来说,随着nginx功能得完善将使他成为今后web server得主流。

    Apache 后台服务器(主要处理php及一些功能请求 如:中文url) Nginx 前端服务器(利用它占用系统资源少得优势来处理静态页面大量请求) Lighttpd 图片服务器 总体来说,随着ngi ...

  2. jekyll介绍安装.github静态页面工具

    jekyll build # => 当前文件夹中的内容将会生成到 ./site 文件夹中. $ jekyll build --destination <destination> # ...

  3. 浅谈php生成静态页面

    一.引 言 在速度上,静态页面要比动态页面的比方php快很多,这是毫无疑问的,但是由于静态页面的灵活性较差,如果不借助数据库或其他的设备保存相关信息的话,整体的管理上比较繁琐,比方修改编辑.比方阅读权 ...

  4. WEB页面采集器编写经验之一:静态页面采集器

    严格意义来说,采集器和爬虫不是一回事:采集器是对特定结构的数据来源进行解析.结构化,将所需的数据从中提取出来:而爬虫的主要目标更多的是页面里的链接和页面的TITLE. 采集器也写过不少了,随便写一点经 ...

  5. .NET生成静态页面并分页

    因为公司的产品用asp开发, 前一段时间用asp写了一个生成静态页面并分页的程序,但缘于对.net的热爱,写了这个.net下的生成静态页面并分页的程序. 主要的原理就是替换模板里的特殊字符. 1.静态 ...

  6. .net 生成 静态页面

    .net 生成 静态页面 <!--Main.Aspx--> <%@ page language="C#" %> <%@ import namespac ...

  7. C#根据网址生成静态页面

    HoverTree开源项目中HoverTreeWeb.HVTPanel的Index.aspx文件 是后台管理的首页. 包含生成留言板首页,以及显示用户名,退出等功能. 根据网址生成页面的方法: boo ...

  8. 比较详细PHP生成静态页面教程

    一,PHP脚本与动态页面. PHP脚本是一种服务器端脚本程序,可通过嵌入等方法与HTML文件混合, 也可以类,函数封装等形式,以模板的方式对用户请求进行处理.无论以何种方式,它的基本原理是这样的.由客 ...

  9. .NET生成静态页面的方案总结

    转载自:http://www.cnblogs.com/cuihongyu3503319/archive/2012/12/06/2804233.html 方法一:在服务器上指定aspx网页,生成html ...

随机推荐

  1. Webdriver测试脚本1(打开网页并打印标题)

    案例: 启动火狐浏览器 首页打开博客园页面,打印网页标题,等待3秒 打开百度首页,打印网页标题,再等待2秒 关闭浏览器 from selenium import webdriver from time ...

  2. 56. spring boot中使用@Async实现异步调用【从零开始学Spring Boot】

    什么是"异步调用"? "异步调用"对应的是"同步调用",同步调用指程序按照定义顺序依次执行,每一行程序都必须等待上一行程序执行完成之后才能执 ...

  3. B. Mr. Kitayuta's Colorful Graph,二维并查集,一个简单变形就可以水过了~~

    B. Mr. Kitayuta's Colorful Graph ->  Link  <- 题目链接在上面,题目比较长,就不贴出来了,不过这是道很好的题,很多方法都可以做,真心邀请去A了这 ...

  4. bzoj 1430 小猴打架 prufer 性质

    小猴打架 Time Limit: 5 Sec  Memory Limit: 162 MBSubmit: 709  Solved: 512[Submit][Status][Discuss] Descri ...

  5. java中使用Protobuf的实例(Demo)

    由于Protobuf受到推崇,故尝试采用protobuf来摒弃传统的xml进行传输数据. 首先,需要下载的关于Protobuf的文件: 1.到http://code.google.com/p/prot ...

  6. 【存储过程】MySQL存储过程/存储过程与自定义函数的区别

    ---------------------------存储过程-------------------- 语法: 创建存储过程: CREATE [definer = {user|current_user ...

  7. 【Tomcat】tomcat启动后查看运行时JVM参数

    Tomcat优化配置参考http://www.cnblogs.com/qlqwjy/p/8007490.html 1.启动服务后访问localhost,点击Server Status

  8. android中后一个activity传值给前一个activity的实现

    前一个activity跳转到后一个activity设置code: Intent intent=new Intent(MainActivity.this,ActivityTwo.class); star ...

  9. 1085 数字游戏 2003年NOIP全国联赛普及组

    丁丁最近沉迷于一个数字游戏之中.这个游戏看似简单,但丁丁在研究了许多天之后却发觉原来在简单的规则下想要赢得这个游戏并不那么容易.游戏是这样的,在你面前有一圈整数(一共n个),你要按顺序将其分为m个部分 ...

  10. Arctic Network POJ - 2349

    The Department of National Defence (DND) wishes to connect several northern outposts by a wireless n ...