`

使用CHCA搭建静态博客

阅读更多

 

 chca是一个使用golang开发的静态博客生成器,简单、方便、快捷,抛弃每次都需要使用命令编译文件,采用文件监听方式编译,作者只需把markdown文件放到配置中的markdown文件夹下就能自动生成html了。

chca源码地址: https://github.com/num5/chca

如果你是个不懂程序的小白,chca更加适合你,只需要修改少量配置就可以搭建一个属于自己的博客了。最重要的是,如果你没有自己的服务器,可以将其搭建在github pages上,完全免费的哦。

关于为什么要开博客?可以看看这篇文章《为什么你要写博客?》

关于如何在github上搭建博客,网上有很多教程,就不在赘述了。

必要步骤

下载chca

Windows:http://golune.qiniudn.com/chca-win64.tar.gz

Linux:http://golune.qiniudn.com/chca-linux64.tar.gz

Mac:http://golune.qiniudn.com/chca-darwin64.tar.gz

下载平台对应的程序,新建一个文件夹来存放chca所有的文件,并将chca解压到本文件夹下

如果打算将博客搭建在github上,还需要下载git和申请一个github账号

go 源码安装

go get -v github.com/num5/chca

下载chca模板

下载地址:http://golune.qiniudn.com/default-theme.tar.gz

关于模板语法说明,请参照:chca模板语法说明

使用步骤

chca只需要两步就可以创建一个带有独立web服务器的博客

第一步:初始化

打开命令终端,出入命令:

chca init

这一步会创建 markdown 文件夹和 config.yml 文件,markdown 文件夹用于存放博客的源markdown文件,config.yml是配置文件

config.yml配置内容如下:

# config.yml

# 站点信息
title: 我的网站
subtitle: 网站标题
description: mate-description
keywords: mate-keywords
summary_line: 10 // 首页文章行数
home_art_num: 30 // 首页文章数量

# 文件夹相关
theme: theme/blog //网站模板
markdown: markdown //博客markdown文件存放文件夹
html: /data/www/html //博客html文件存放文件夹
storage: storage //数据存放文件夹,暂时未用到

# 作者信息
author: your name
avatar: /assets/avatar.png  //头像连接,一般放到assets或者avatar文件夹里
github: https://github.com/num5  //github主页
weibo: http://weibo.com/golune  //微博主页
mail: 378999587@qq.com  //email 地址
zhihu: https://www.zhihu.com/people/golune  //知乎主页

# 监听信息配置
paths:  // 监听文件夹
  - markdown
exts:  // 监听后缀名
  - md

# 上传信息
upload_theme: theme/upload  // 上传模版地址

# 自定义标题,可不配置,使用chca设置好的标题
home_title:     //主页标题
archive_title:  //文章归档标题
tag_title:      //标签导航页面标题
cate_title:     //分类导航页面标题
about_title:    //简历页面标题
article_title:  //文章标题标头

根据自己需求修改配置文件

初始化以后需要在config.yml文件同目录下创建theme文件夹用于存放模板文件

第二步:运行chca

chca run [port]

打开chca服务,这一步自动打开监听器和内置webserver,默认webserver端口9900,端口可自定义,浏览器输入 http://localhost:9900 就能访问博客了。
监听器监听markdown文件夹下的以 .md 为后缀的文件,可配置(参照上一步配置中监听信息配置)。当markdown文件夹下的md文件有变动时就会触发编译命令,自动将自动编译markdown文件,生成静态页面。

其他命令

新建 markdown 文件

chca new filename

markdown文件需要以 --- 开头进行说明:

---
date: 2017-01-01
title: 我的第一篇博客
categories:
- 技术
tags:
- golang
- chca
---

建议使用 chca new 命令创建markdown文件

about.md文件是存放作者简历的文件,存放在markdown文件夹,另外readme.md和about.md不会被文章解析器解析

生成静态页面

chca complate (或chca c)

这条命令用于编译markdown文件生成静态html页面

开启文件监听器

chca watch (或者chca w)

开启文件监听器,监听文件夹和文件后缀名在config.yml里配置

打开内部服务器

chca http [port]

打开内部服务器,端口可选,默认监听端口9900


Markdown语法参考链接: Markdown 语法说明 (简体中文版)

0
0
分享到:
评论

相关推荐

    Go-使用golang写的静态博客生成器

    CHCA 一个使用 golang 开发的博客生成器

    4-羟基-α-氰基肉桂酸衍生物的设计合成及在质谱法手性识别氨基酸中的应用 (2013年)

    设计合成了4对以脯氨酸和4-羟基-α-氰基肉桂酸(CHCA)为骨架、作为手性选择子的化合物。通过ESI-MS/MS质谱方法研究氨基酸与手性识别子所形成的质子化二聚体和三聚体,评估了这些化合物对19种氨基酸的手性识别作用。...

    基于matlab实现实现了基于项目的协同过滤代码,MATLAB实现.rar

    基于matlab实现实现了基于项目的协同过滤代码,MATLAB实现.rar

    各地区年末城镇登记失业人员及失业率.xls

    数据来源:中国劳动统计NJ-2023版

    企业固定资产信息管理系统设计与实现.doc

    企业固定资产信息管理系统设计与实现.doc

    node-v11.14.0-darwin-x64.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    node-v8.9.1-sunos-x64.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    node-v12.10.0-linux-armv7l.tar.xz

    Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。

    基于VB实现的学生成绩管理系统(源代码+系统+开题报告+答辩PPT).zip

    【作品名称】:基于VB实现的学生成绩管理系统(源代码+系统+开题报告+答辩PPT) 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。

    银行信贷管理系统设计与实现-(毕业设计)1.docx

    银行信贷管理系统设计与实现-(毕业设计)1.docx

    基于VB实现的银行代扣代发工资系统(源代码+系统+开题报告).zip

    【作品名称】:基于VB实现的银行代扣代发工资系统(源代码+系统+开题报告) 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。

    (更新至2022年)全国镇分年龄、性别的人口数.xls

    数据来源:中国人口与就业统计NJ-2023版

    基于Java的考试管理系统

    java,大学课后作业

    数据更新至2020年分地区发电装机容量增速(风电).xls

    数据来源:中国电力统计NJ-2021版

    基于VB实现的网上餐饮管理系统设计(论文+源代码+开题报告+英文文献).zip

    【作品名称】:基于VB实现的网上餐饮管理系统设计(论文+源代码+开题报告+英文文献) 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。

    基于matlab实现烟花算法进行函数最小-最大值寻优,对十多个测试函数进行了寻优,效果良好,代码附带详细说明.rar

    基于matlab实现烟花算法进行函数最小_最大值寻优,对十多个测试函数进行了寻优,效果良好,代码附带详细说明.rar

    数据更新至2020年分地区单机6000千瓦及以上 水力发电机组分类情况(合计).xls

    数据来源:中国电力统计NJ-2021版

    基于VB实现的商场管理系统设计(源代码+系统).zip

    【作品名称】:基于VB实现的商场管理系统设计(源代码+系统) 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。

    (更新至2022年)全国按年龄、性别分的就业人员受教育程度构成.xls

    数据来源:中国劳动统计NJ-2023版

    数据更新至2020年分地区6000千瓦及以上电厂发电量(太阳能发电).xls

    数据来源:中国电力统计NJ-2021版

Global site tag (gtag.js) - Google Analytics