gozer
1.0.0
Gozer는 Golang으로 작성된 빠르고 간단한 정적 사이트 생성기입니다.
Gozer를 사용하는 샘플 웹사이트:
먼저 Go 컴파일러를 설치한 후 다음을 실행하여 Gozer를 설치할 수 있습니다.
go install git.sr.ht/~dvko/gozer@latest
빈 디렉터리 구조를 빠르게 생성하려면 gozer new
실행하세요.
├── config.toml # Configuration file
├── content # Posts and pages
│ └── index.md
├── public # Static files
└── templates # Template files
└── default.html
그런 다음 gozer build
실행하여 사이트를 생성하세요.
content/
디렉토리에 있는 마크다운 파일은 gozer build
실행 후 빌드 디렉토리에 HTML 페이지가 생성됩니다.
예를 들어:
content/index.md
build/index.html
파일을 생성하므로 /
에서 HTTP를 통해 액세스할 수 있습니다.content/about.md
build/about/index.html
파일을 생성하므로 /about/
에서 HTTP를 통해 액세스할 수 있습니다. 도움말 텍스트를 보려면 인수 없이 gozer
실행하세요.
Gozer - a fast & simple static site generator
Usage: gozer [OPTIONS] <COMMAND>
Commands:
build Deletes the output directory if there is one and builds the site
serve Builds the site and starts an HTTP server on http://localhost:8080
new Creates a new site structure in the given directory
Options:
-r, --root <ROOT> Directory to use as root of project (default: .)
-c, --config <CONFIG> Path to configuration file (default: config.toml)
content/
디렉토리의 각 파일은 .md
로 끝나야 하며 페이지 제목을 지정하는 TOML 머리말이 있어야 합니다.
+++
title = " My page title "
+++
Page content here.
모든 페이지의 기본 템플릿은 default.html
입니다. 머리말에서 template
변수를 설정하여 이를 무시할 수 있습니다.
+++
title = " My page title "
template = " special-page.html "
+++
Page content here.
템플릿은 Go의 표준 html/template
패키지로 구동되므로 여기에 설명된 모든 작업을 사용할 수 있습니다.
모든 템플릿은 다음과 같은 변수 세트를 받습니다.
Pages # Slice of all pages in the site
Posts # Slice of all posts in the site (any page with a date in the filename)
Site # Global site properties: Url, Title
Page # The current page: Title, Permalink, UrlPath, DatePublished, DateModified
Title # The current page title, shorthand for Page.Title
Content # The current page's HTML content.
Page
변수는 아래 개체의 인스턴스입니다.
type Page struct {
// Title of this page
Title string
// Template this page uses for rendering. Defaults to "default.html".
Template string
// Time this page was published (parsed from file name).
DatePublished time.Time
// Time this page was last modified on the filesystem.
DateModified time.Time
// The full URL to this page, including the site URL.
Permalink string
// URL path for this page, relative to site URL
UrlPath string
// Path to source file for this page, relative to content root
Filepath string
}
최근 게시물 5개 목록을 표시하려면 다음 단계를 따르세요.
{{ range (slice .Posts 0 5) }}
<a href="{{ .Permalink }}">{{ .Title }}</a> <small>{{ .DatePublished.Format "Jan 02, 2006" }}</small><br />
{{ end }}
Gozer 개발은 Sourcehut에서 이루어집니다. 패치는 이메일을 통해 승인됩니다.
Gozer는 MIT 라이선스에 따라 오픈 소스로 제공됩니다.