Hugo 官方主页:https://gohugo.io

待选主题:

https://github.com/cdipaolo/gindoro

https://github.com/oserz/hugo-oser

hugo 是基于 Go 语言的静态网站生成器。有两种方式发布生成的静态网站文件:

  • 放到自己的服务器上提供服务:需要自己购买服务器
  • 把网站托管到 GitHub Pages:需要将静态页面文件 push 到 GitHub 的博客项目的 gh-pages 分支并确保根目录下有 index.html 文件。

安装

从 hugo 的 GitHub 仓库 下载安装包,使用即可。我使用的是 hugo_0.40.3_Windows-64bit.zip 这个版本。下载解压后添加到 Windows 的系统环境变量的 PATH 中即可,不需安装。

使用

初始化项目

我的域名是 kikakika.com,所以项目直接使用这个名字:

C:\Users\kika>hugo new site kikakika
Congratulations! Your new Hugo site is created in C:\Users\kika\kikakika. Just a few more steps and you're ready to go: 1. Download a theme into the same-named folder.
Choose a theme from https://themes.gohugo.io/, or
create your own with the "hugo new theme <THEMENAME>" command.
2. Perhaps you want to add some content. You can add single files
with "hugo new <SECTIONNAME>\<FILENAME>.<FORMAT>".
3. Start the built-in live server via "hugo server". Visit https://gohugo.io/ for quickstart guide and full documentation.

根据提示信息,分别下载主题、添加内容后,就可以在本机启动 hugo 自带的服务器调试博客。

命令执行后创建项目目录,其中的目录结构为:

├─archetypes
├─content
├─data
├─layouts
├─static
├─themes
└─config.toml

config.toml 是网站的配置文件,hugo 同时还支持 YAML 格式的 config.yaml 或 JSON 格式的 config.json。content 目录放 markdown 文章,data 目录放数据,layouts 目录放网站模板文件,static 目录放图片、css、js 等静态资源,themes 命令放下载的主题。

下载主题

hugo 默认不带主题,但是没有主题的话又无法工作。所以,请在 主题网站 选择你看中的主题后,点击下载链接从 GitHub 下载到 themes 目录中。

C:\Users\kika\kikakika>cd themes

C:\Users\kika\kikakika>git clone https://github.com/Xzya/hugo-bootstrap.git
Cloning into 'hugo-bootstrap'...
remote: Counting objects: 151, done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 151 (delta 3), reused 8 (delta 3), pack-reused 140
Receiving objects: 100% (151/151), 396.17 KiB | 222.00 KiB/s, done.
Resolving deltas: 100% (57/57), done.
Checking connectivity... done.

检查 themes 目录下是否成功下载主题:

C:\Users\kika\kikakika\themes>tree
文件夹 PATH 列表
卷序列号为 00000049 30BD:DD70
C:.
└─hugo-bootstrap
├─exampleSite
│ ├─content
│ │ └─post
│ └─layouts
│ └─partials
├─i18n
├─images
├─layouts
│ ├─partials
│ └─_default
└─static
└─css

添加内容

在项目目录中执行 hugo new XX.md 命令,会在 content 目录中创建这个 XX.md 文件。

hugo new about.md

这个文件的默认内容如下:

---
title: "About"
date: 2018-05-22T22:04:26+08:00
draft: true
---

文件默认内容在,draft 表示是否是草稿,编辑完成后请将其改为 false,否则编译会跳过草稿文件。具体的博客内容在下面写:

---
title: "About"
date: 2018-05-22T22:04:26+08:00
draft: false
--- 大家好,我是渣渣辉。
# 简介
- 出生地:香港
- 性别:男
- 年龄:38 # 演员经历
1. 是兄弟就来啃我
1. 是兄弟就来啃我啊
1. 是兄弟就来啃我啊哈哈

对于博客文件,通常放在 content/post 目录中:

hugo new post/my-first-blog.md

启动 hugo 自带的服务器

在项目根目录下,通过 hugo server 命令可以使用 hugo 内置服务器调试预览博客。--theme 选项可以指定主题,--watch 选项可以在修改文件后自动刷新浏览器,--buildDrafts 包括标记为草稿(draft)的内容。

C:\Users\kika\kikakika>hugo server --theme=hugo-bootstrap --buildDrafts --watch
[K25lBuilding sites … [?25h
| EN
+------------------+----+
Pages | 8
Paginator pages | 0
Non-page files | 0
Static files | 1
Processed images | 0
Aliases | 3
Sitemaps | 1
Cleaned | 0 Total in 175 ms
Watching for changes in C:\Users\kika\kikakika\{content,data,layouts,static,themes}
Watching for config changes in C:\Users\kika\kikakika\config.toml
Serving pages from memory
Running in Fast Render Mode. For full rebuilds on change: hugo server --disableFastRender
Web Server is available at http://localhost:1313/ (bind address 127.0.0.1)
Press Ctrl+C to stop

首页:



About 页面:

编译静态网站

Hugo 在构建之前不会移除生成的文件。一个简单的解决方法是对开发环境和生产环境使用不同的目录。

可以指定单独的目录(例如 dev/)来启动构建草稿内容的服务器(有助于编辑):

hugo server -wDs ~/Code/hugo/docs -d dev

内容完成后,可以使用默认的 public/ 目录。此时会忽略所有标记为 draft: false 的文件:

hugo -s ~/Code/hugo/docs

最终我们需要的是静态的 HTML 文件。--theme 选项指定主题,--baseUrl 指定了项目的网站。最终静态文件生成在 public 目录中:

C:\Users\kika\kikakika>hugo --theme=hugo-bootstrap --baseUrl="https://blog.kikakika.com"
[K25lBuilding sites … [?25h
| EN
+------------------+----+
Pages | 7
Paginator pages | 0
Non-page files | 0
Static files | 1
Processed images | 0
Aliases | 3
Sitemaps | 1
Cleaned | 0 Total in 114 ms C:\Users\kika\kikakika>dir public
2018/05/22 22:38 <DIR> .
2018/05/22 22:38 <DIR> ..
2018/05/22 22:38 3,336 404.html
2018/05/22 22:38 <DIR> categories
2018/05/22 22:15 <DIR> css
2018/05/22 22:38 3,375 index.html
2018/05/22 22:38 480 index.xml
2018/05/22 22:38 <DIR> page
2018/05/22 22:38 455 sitemap.xml
2018/05/22 22:38 <DIR> tags
4 个文件 7,646 字节
6 个目录 20,104,409,088 可用字节

常见问题

Unable to locate Config file

启动 hugo 内置服务器时,会在当前目录执行的目录中寻找项目的配置文件。所以,需要在项目根目录中执行这个命令,否则报错如下:

C:\Users\kika\kikakika\themes>hugo server --theme=hugo-bootstrap --buildDrafts --watch
Error: Unable to locate Config file. Perhaps you need to create a new site.
Run `hugo help new` for details. (Config File "config" Not Found in "[C:\\Users\\kika\\kikakika\\themes]")

Unable to find theme Directory

hugo 默认在项目中的 themes 目录中寻找指定的主题。所有下载的主题都要放在这个目录中才能使用,否则报错如下:

C:\Users\kika\kikakika>hugo server --theme=hugo-bootstrap --buildDrafts --watch
Error: Unable to find theme Directory: C:\Users\kika\kikakika\themes\hugo-bootstrap

生成的网站没有文章

生成静态网站时,hugo 会忽略所有通过 draft: true 标记为草稿的文件。必须改为 draft: false 才会编译进 HTML 文件。

Hugo - 安装、设置及使用的更多相关文章

  1. hive安装--设置mysql为远端metastore

    作业任务:安装Hive,有条件的同学可考虑用mysql作为元数据库安装(有一定难度,可以获得老师极度赞赏),安装完成后做简单SQL操作测试.将安装过程和最后测试成功的界面抓图提交 . 已有的当前虚拟机 ...

  2. Fiddler的安装设置

    一.安装设置Fiddler2  下载完成后安装,安装完成后打开 如下图设置Fiddler 代理: 二.设置手机代理 快捷键win+r打开运行窗口à输入:cmdà确定 在界面上输入:ipconfig,查 ...

  3. PyCharm 2017 官网 下载 安装 设置 配置 (主题 字体 字号) 使用 入门 教程

    一.安装 Python 3.6 首先,要安装好 Python 3.6.如果你还没有安装,可以参考咪博士之前的教程 Python 3.6.3 官网 下载 安装 测试 入门教程 (windows) 二.官 ...

  4. Ubuntu 18.04 Numix主题安装设置

    Ubuntu 18.04 Numix主题安装设置 一.首先安装Numix主题 展现效果如下图 1.安装numix sudo add-apt-repository ppa:numix/ppa 2.安装主 ...

  5. [0412]SQL Server 2008 R2 安装 & 设置

    SQL Server 2008 R2 安装 & 设置 Sql Server 安装 安装环境: Windows 10 1709 64位 安装文件: Sql Server 2008 R2 Sql ...

  6. ActiveReports 报表控件V12新特性 -- 可定制的安装设置

    ActiveReports是一款专注于 .NET 平台的报表控件,全面满足 HTML5 / WinForms / ASP.NET / ASP.NET MVC / WPF 等平台下报表设计和开发工作需求 ...

  7. Jenkins Maven安装设置

    Jenkins Maven安装设置 如果没有学习过 Maven 的朋友,可以先了解 Maven教程,然后再进一步学习本教程文章. 第1步:下载和设置Maven Maven的官方网站就是Apache M ...

  8. MinGW安装设置

    From:http://www.cnblogs.com/killerlegend/p/3746504.html Author:KillerLegend Date:2014.5.22 不得不吐槽一下学校 ...

  9. Jenkins Git安装设置

    Jenkins Git安装设置 在此安装中,必须确保Internet连接可连接其安装 Jenkins 机器.在 Jenkins 仪表盘(主屏幕)的左侧单击 Manage Jenkins 选项.打开网址 ...

  10. Jenkins Tomcat安装设置

    Jenkins Tomcat安装设置 以下为必须满足Jenkins Tomcat设置的先决条件. 第1步:验证安装Java 要验证Java安装,打开控制台并执行以下Java命令. OS 任务 命令 W ...

随机推荐

  1. js转换后台接受的日期格式

    var html = "--";if(data.createTime!=null&&data.createTime!=""){ Date.pro ...

  2. sqli-5&6

    第五关 Double Injection - Single Quotes - String (双注入GET单引号字符型注入) 1.发现前几关的方法都不能用了,要么报错(没有其他有关信息.要么什么也不出 ...

  3. 8-基于双TMS320C6678 + XC7K420T的6U CPCI Express高速数据处理平台

    基于双TMS320C6678 + XC7K420T的6U CPCI Express高速数据处理平台 1.板卡概述 板卡由我公司自主研发,基于6UCPCI架构,处理板包含双片TI DSP TMS320C ...

  4. 03scikit-learn非监督学习

    In [1]: from sklearn.decomposition import PCA from sklearn.datasets import load_iris pca = PCA(n_com ...

  5. [CQOI2015]网络吞吐量(网络流+SPFA)

    [CQOI2015]网络吞吐量 题目描述 路由是指通过计算机网络把信息从源地址传输到目的地址的活动,也是计算机网络设计中的重点和难点.网络中实现路由转发的硬件设备称为路由器.为了使数据包最快的到达目的 ...

  6. 多线程AQS

    参考: AQS原理分析 https://blog.csdn.net/javazejian/article/details/75043422 重入读写锁原理分析 https://blog.csdn.ne ...

  7. Android App渗透测试工具汇总

    网上搜集了一些App安全学习教程及工具,项目地址:https://github.com/Brucetg/App_Security 一. drozer简介 drozer(以前称为Mercury)是一款A ...

  8. wrapper配置文件详解

    参考资料 http://www.tuicool.com/articles/jqMv2q 文件编码,每个配置文件起始位置必须指定该文件的编码格式 encoding=UTF-8 如果包含配置文件出现问题可 ...

  9. JavaScript 函数防抖

    <!DOCTYPE html><html lang="zh-cmn-Hans"> <head> <meta charset="u ...

  10. ubuntu + JetSonNano+OpenCV3.4.8

    首先强调一点,如果要配置darknet环境,不建议安装该版本!!! 安装opencv前,建议先检测自己的系统是否已经装过其他版本, 检查方式: (1)查看是否安装opencv库: pkg-config ...