blogit

package module
v1.6.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 22, 2021 License: MIT Imports: 4 Imported by: 0

README

blogit

Test Go version PkgGoDev codecov License

简单方便的静态博客生成工具

  • 没有分类信息;
  • 也不区分页面和文章;
  • 仅通过标签对文章进行归类;
  • 可生成 RSS、Atom 和 Sitemap 等数据;
  • 存档页按可以按月和年进行分类;
  • 采用 Go 模板作为主题模板语法;
  • 可在主题中指定代码高亮;
  • 生成静态 TOC 数据;

安装

macOS 和 linux 用户可以直接使用 brew 进行安装:

brew tap caixw/brew
brew install caixw/brew/blogit

常用平台也可以从 https://github.com/caixw/blogit/releases 下载,并将二进制文件放入 PATH 即可。

如果不存在你当前平台的二进制,可以自己编译:

git clone https://github.com/caixw/blogit.git
cd blogit
./build.sh
docker

目前 docker 同时托管于 docker.ioghcr.io,可通过以下方式获取相应在的容器:

docker pull docker.io/caixw/blogit:latest

docker pull ghcr.io/caixw/blogit:latest

使用

blogit init dir 可以直接生成一个完整的博客系统。具体使用可参考 USAGE

GitHub action

如果你的网站部署在 github 的话,可以直接使用 action 实现全程自动化编译上传代码。

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - name: checkout source
      uses: actions/checkout@v2
      with:
        repository: owner/src
        path: src/

    - name: checkout dest
      uses: actions/checkout@v2
      with:
        repository: owner/dest
        path: dest/
        persist-credentials: false # github-push-action@master 需要这个
        fetch-depth: 0 # # github-push-action@master 需要这个

    - name: build static site
      uses: caixw/blogit@master
      with:
        src: src
        dest: dest

    - name: commit files
      uses: EndBug/add-and-commit@v7
      with:
        author_name: github-actions
        author_email: 41898282+github-actions[bot]@users.noreply.github.com
        cwd: dest/
        push: false
        message: 'docs: add changes'

    - name: push changes
      uses: ad-m/github-push-action@master
      with:
        directory: dest/
        github_token: ${{ secrets.GITHUB_TOKEN }} # 确保有相应的权限
        branch: ${{ github.ref }}

secrets.GITHUB_TOKEN 关联的 PAT 需要有写入 owner/dest 指向的仓库的权限。

参数
名称 类型 必填 默认值 描述
src string true src 源文件的路径
dest string true dest 编译后的路径

版权

本项目采用 MIT 开源授权许可证,完整的授权说明可在 LICENSE 文件中找到。

Documentation

Overview

Package blogit 静态博客生成工具

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Build

func Build(src fs.FS, dest WritableFS, info *log.Logger) error

Build 编译并输出内容

dir 表示源码目录,直接读该文件系统根目录下的内容; dest 表示写入的文件系统,默认提供了 DirFS 和 MemoryFS; info 输出编译的进度信息,如果为空,会采用 log.Default();

func Version

func Version(full bool) string

Version 返回版本号

full 表示是否返回完整版本号,包含了编译日期,提交的 hash 等额外的值。

Types

type Builder added in v1.2.0

type Builder = builder.Builder

func NewBuilder added in v1.2.0

func NewBuilder(dest WritableFS, info, erro *log.Logger) *Builder

NewBuilder 声明 Builder

dest 表示写入的文件系统,默认提供了 DirFS 和 MemoryFS; info 输出编译的进度信息,如果为空,会采用 log.Default(); erro 表示的是在把 Builder 当作 http.Handler 处理时,在出错时的日志输出通道。

type WritableFS added in v1.3.2

type WritableFS = builder.WritableFS

func DirFS added in v1.5.2

func DirFS(dir string) WritableFS

DirFS 以普通目录结构作为保存对象的文件系统

func MemoryFS added in v1.5.2

func MemoryFS() WritableFS

MemoryFS 以内在作为保存实体的文件系统

Directories

Path Synopsis
Package builder 提供编译成 HTML 的相关功能
Package builder 提供编译成 HTML 的相关功能
cmd
blogit
静态博客网站生成工具 可通过 blogit help 查看具体的子命令。
静态博客网站生成工具 可通过 blogit help 查看具体的子命令。
internal
cmd
Package cmd 提供命令行相关的功能
Package cmd 提供命令行相关的功能
cmd/console
Package console 输出到控制台的日志
Package console 输出到控制台的日志
cmd/create
Package create 创建文章的相关子命令
Package create 创建文章的相关子命令
cmd/preview
Package preview 提供 preview 子命令
Package preview 提供 preview 子命令
cmd/serve
Package serve 提供 serve 子命令
Package serve 提供 serve 子命令
data
Package data 对加载的数据进行二次加工
Package data 对加载的数据进行二次加工
filesystem
Package filesystem 提供文件系统的相关函数
Package filesystem 提供文件系统的相关函数
loader
Package loader 加载数据内容 仅加载各个模块的自身的数据,并判断格式是否正确。
Package loader 加载数据内容 仅加载各个模块的自身的数据,并判断格式是否正确。
locale
Package locale 提供本地化相关操作
Package locale 提供本地化相关操作
vars
Package vars 提供各种代码级别的配置项
Package vars 提供各种代码级别的配置项

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL