使用 Markdown 和 Jekyll 写博客的 6 个理由

还没有读者喜欢这篇文章。
Open in sky

Nasjonalbiblioteket。由 Opensource.com 修改。CC BY-SA 4.0

作为一名程序员,我整理和收集大量研究资料,而我的问题一直是找到一个地方来存储所有这些资料。我考虑 Jekyll 有一段时间了,但它似乎总是让人望而却步。经过几天的配置,我终于能够创建一个 Jekyll 工作流程,使我能够做到以下几件事:

1. 在线存储文章

Jekyll 是一个类似于 WordPress 的博客系统。主要的区别在于,与 WordPress 不同,Jekyll 没有数据库或可从网络访问的应用程序,因此无需担心安全更新。Jekyll 通过生成静态 HTML 页面来实现这一点,而不是依赖数据库来动态生成页面。静态 HTML 页面的另一个优点是它们速度。Jekyll 通过解析 Markdown 文件来生成 HTML 页面。

2. 100% 免费

GitHub Pages 是一项免费服务,可以免费托管您的 Jekyll 博客。它还负责从您的 Markdown 文本文件生成静态 HTML 文件,因此无需在您的计算机上安装任何东西。您也可以将 Jekyll 与您自己的域名一起使用(如果您有域名)。

3. 研究风格属性

Pixyll 是一个 Jekyll 主题。您可以通过 Fork 官方 Pixyll 仓库 从 GitHub 快速安装它。它是响应式的,因此在移动设备和桌面设备上看起来都不错。它也是我找到的最全面的主题,因为它原生支持 Google Analytics、Disqus 集成、代码围栏、段落链接、高亮显示超链接、引用、引文、脚注、表格、列表、图像、视频、<!--隐藏评论--> ,删除线斜体粗体、表情符号等。我个人喜欢使用 Dropbox 来托管图像和视频,因为这使我也可以在我的 iPhone 上使用此工作流程。

4. 与同事和世界协作

如果您是程序员,您很可能已经知道如何协作使用 GitHub。如果您不熟悉 Git,您仍然可以通过他们的在线文本编辑器功能使用 GitHub 与他人协作。由于 Pixyll 具有原生的 Disqus 集成,您也可以将其用作与所有人交流和协作的方式。

5. 自动上传/下载

当我做研究时,我需要集中注意力。我的写作通常很混乱,我喜欢快速行动。我不断地重命名、删除和移动文件。起初一切都非常混乱,直到它找到自己的路径并变成更精致的东西。

它必须像思想的速度一样快。任何更慢的速度都不会“促使”您使用它。因此,当一个想法出现时,没有任何障碍可以阻碍您。更新您的博客应该像编辑本地文本文件一样容易。

这就是 GitSync 的用武之地。GitSync 为您完成所有这些工作,无需您动一根手指。您所做的每一个文件更改都会立即同步到 GitHub。如果您与他人协作,您可能会偶尔收到提示,询问您要保留哪个文件。您有三个选择。使用您的版本、他们的版本或两者的组合。

6. 适用于任何设备

在我的笔记本电脑上,我使用 Atom 作为 Markdown 文件的文本编辑器。它支持 GitHub 风格的 Markdown 文件的实时预览。我将 Jekyll 设置为使用 Redcarpet Markdown,因为这是我发现的唯一支持在 GitHub Pages 上托管时进行代码围栏的 Markdown 风格。在我的 iPhone 上,我使用 Textastic 作为文本编辑器。它还支持 Markdown 和 iCloud。如果您希望文本从您的 iPhone 实时同步到您的博客,您需要将 iCloud 纳入其中。

Atom 文本编辑器截图 Atom.io(绿色和橙色表示 Git 状态)。 CC BY-SA 4.0.

结论

我花了大约三天的时间来研究、学习、贡献和实施一个使用 Jekyll 的良好工作流程。然后我制作了 一个视频,向您展示如何在 30 秒内完成它。

User profile image.
挪威千禧一代,目前正在构建 stylekit.org,最近在 https://www.producthunt.com/tech/stylekit 上进行了专题报道

5 条评论

我很乐意在这个评论区回答任何问题。祝您博客愉快。

您的网站上有多少篇文章?您是否发现 Jekyll 在处理大量文章时性能不足?

我问这个问题是因为,在我的情况下,在我的网站上大约有 200 篇文章,在我的本地机器上重新生成网站大约需要 4.5 秒。我发现的另一个静态站点生成器 Hugo (https://gohugo.com.cn/) 被证明要快得多(在相同的采样率下,Hugo 重新生成一个站点需要 0.4 秒)。

回复 ,作者 Eonist

嘿 Aleksandar,

如果您想知道原因,Jekyll 比 Hugo 慢的原因是 Jekyll 使用 Ruby,而 Hugo 使用 Go。Ruby 是一种解释型语言,速度较慢。另一方面,Go 是一种编译型语言,与 C/C++ 相似,因此速度更快。

回复 ,作者 r3bl

我有很多文章。也许有 50 篇?很快会再添加 50 篇。我积压了很多文章。我也不在我的本地机器上生成文章。我让 Github 完成这项工作。我认为 Github 也使用了一些第三方服务来为他们做这件事。在更改/提交后,Github 上的更新非常即时。也就是说,当我尝试为网站创建标签系统时,我确实使用了本地文章生成。但是我的时间到了,所以我不得不继续前进。

因此,Jekyll 3.0 显然添加了增量再生 https://jekyll.ruby-lang.org.cn/news/2015/10/26/jekyll-3-0-released/

我还没有尝试过上述方法,但我的初步理解是,它只生成已更改的站点。而不是每次都生成每篇文章。

这可能会加快您的站点生成速度。请告诉我进展如何 :)

© . All rights reserved.