世界上最简单的“静态网站生成器”
最快创建博客的方法是什么?Wordpress?Jekyll?还是市面上成百上千的静态网站生成器?
不,它是pandoc
和now
。
啥pandoc
?
Pandoc是一款“通用文档转换器”,就像一把瑞士军刀,可以将文档类型 a 转换为文档类型 b。它用途广泛,但如今,它更擅长将 Markdown(我们喜欢写作的语言)转换为 HTML(我们在网站上阅读的语言)。几乎所有我用过的软件包管理器都可以安装它——在 Mac 上,只需brew install pandoc
……
啥now
?
Now是 Zeit.com 推出的一款实用产品,可以快速部署应用程序。它非常适合用来构建应用并演示其运行效果。它可以提供 Docker 镜像、NodeJS 应用程序和静态网站。一开始我不太确定,但现在我完全信赖它。今天,我们用它来部署我们的静态博客网站。你可以使用一个简单的 来安装它npm i -g now
,当然还有其他方法。
各就各位,预备……
所以,请确保你已经安装pandoc
并now
安装好了,你的目录干净整洁,并且已经连接到互联网。此外,你还要知道你最喜欢的编辑器是什么。如果你还没有最喜欢的,那就选一个你最不讨厌的。
... 去!
快速 - 用你最不讨厌的编辑器打开一个文件hello-world.md
并写下如下内容:
# Hello World
Hello world, this is the world's fastest blog!
保存——快点,快点!现在在终端里运行这个。什么?我不是告诉你要打开终端会话吗?赶紧打开一个,运行:
pandoc --output=index.html --to=html5 --standalone hello-world.md
忽略警告,我们没时间解释!立即发货!立即!立即!
now
并说“是”!
now
会把你的文件上传index.html
到互联网上。它甚至会把上传的 URL 添加到你的剪贴板中。所以,打开你最不讨厌的浏览器,输入 URL 即可。
成功!
剩下的十五秒是用来享受你的成就的光辉——
这是你应得的。
更多的?
怎么,你想在你的博客里写不止一篇博文?你是疯了还是贪婪了?还是两者兼而有之?真是奢侈啊,千禧一代太娇惯了,太有权利了,等等等等……
当然!试试这个:打开一个名为 的新文件my-second-post.md
,然后在里面写下你的第二篇文章——我不在乎你写什么!
现在index.md
像这样写:
# My Quick Blog
- [Hello World](hello-world.html)
- [My second post](my-second-post.html)
现在
pandoc --output=index.html --to=html5 --standalone index.md
pandoc --output=hello-world.html --to=html5 --standalone hello-world.md
pandoc --output=my-second-post.html --to=html5 --standalone my-second-post.md
最后,再一次
now
再次说“是”!将新的 URL 粘贴到浏览器中,然后……
轰!现在你的博客已经创建好了,包含一个首页和两篇文章。来跳个舞吧——你已经用现有的工具创建了一个静态网站生成器——这就是 Unix 的方式。太棒了!
您可以尝试的事情
- 我们是程序员——我们不喜欢重复做事!写个程序循环遍历
.md
目录中的文件,然后把它们转换成.html
.js 文件pandoc
,而不是手动处理每个文件。Bash、Ruby、JavaScript——只要最简单就行! - 每次部署博客时都必须更改其 URL,这很不方便。
now
有一种方法可以将部署别名为永久 URL - 为什么不看看这是如何做到的呢。 - 你的博客太丑了。说实话。你应该加点 CSS。html
pandoc
里有办法包含 CSS 文件——你需要--css=file.css
在pandoc
调用时加上 flag(前提是你写了一些好看的 CSS 文件)。 - 不要再忽略警告了!了解如何向 Pandoc Markdown 添加元数据——所有内容都在 Pandoc 文档中。
玩得开心!
编辑:感谢@calendee 发现我的错误!
文章来源:https://dev.to/gypsydave5/write-and-deploy-a-super-fast-web-site-in-30-seconds-with-no-framework-4lab