Python으로 작성된 경량 정적 사이트 생성기입니다.
특징:
pip install --upgrade gnrt
$PATH 에 $HOME/.local/bin 추가해야 할 수도 있습니다.
gnrt
gnrt 현재 작업 디렉터리에서 선택적 config.yml 파일, templates 폴더에서 선택적 Jinja2 템플릿, content 폴더에서 마크다운 파일을 찾은 다음 content 폴더와 하위 폴더를 존중하면서 생성된 출력 파일을 public 폴더에 씁니다. 폴더 구조.
옵션 목록을 얻으려면 다음을 사용하십시오.
gnrt -h
구성은 config.yml 에 저장됩니다. 모든 키-값 쌍이 허용됩니다. 이러한 키와 해당 값은 콘텐츠 및 템플릿 파일에서 사용할 수 있습니다.
---
sitename: My awesome blog
baseurl: https://example.com
language: en
foo: bar
config.yml 파일이 있으면 gnrt defaults 을 찾아 항목을 lists .
여기서는 콘텐츠 파일에서 재정의할 수 있는 기본 구성 값을 정의합니다.
예:
defaults:
template: default.j2
markdown-extras:
- break-on-newline
- fenced-code-blocks
nav: includes/nav.html
bar: foo
이러한 키는 특정한 의미를 가지며 해당 값은 다른 default 과 마찬가지로 콘텐츠 파일에서 재정의될 수 있습니다.
markdown-extras : Markdown 확장을 활성화할 수 있습니다. 값 목록은 Extras를 참조하세요.template : 콘텐츠 파일을 렌더링하는 동안 사용할 기본 Jinja 템플릿을 설정합니다.여기에서 콘텐츠 목록이 정의되어 예를 들어 링크 목록을 생성할 수 있습니다.
예:
lists:
nav1:
filter:
key: category
value: page
template: nav-page.j2
nav2:
filter:
key: category
value: article
sort: published
reverse: true
template: nav-article.j2
rss:
filter:
key: category
value: article
sort: published
reverse: true
template: rss.j2
target: public/rss.xml
목록은 메타데이터 key 와 일치하는 value 가져오는 filter 통해 콘텐츠를 선택할 수 있습니다.
메타데이터 값(예: 게시 날짜, 정수 등)을 기준으로 정방향(기본값) 또는 reverse 으로 정렬할 수 있습니다.
렌더링하는 동안 생성된 콘텐츠는 캐싱을 위해 includes 폴더에 저장되며, target 키를 통해 파일 경로를 사용자 정의할 수 있습니다. 이를 통해 예를 들어 RSS 피드를 생성할 수 있습니다.
콘텐츠 파일은 확장자가 .md 이며 content 폴더에 저장됩니다.
콘텐츠 파일에는 YAML로 작성된 머리말, 즉 구조화된 메타데이터가 있을 수 있습니다.
여기에서 기본값을 재정의할 수 있습니다.
예:
---
id: home
title: Home
link: /
nav-order: 3
---
id : 이 항목의 메타데이터에 액세스하기 위해 모든 콘텐츠 파일에서 사용할 수 있는 현재 항목 식별자입니다.link : 생성된 페이지의 URLtarget : 생성된 파일의 경로title : 현재 항목의 제목 콘텐츠 body Markdown으로 작성됩니다.
또한 다른 페이지에 대한 링크와 같은 dataset 값을 삽입할 수 있는 Jinja2 구문 및 자리 표시자가 포함될 수도 있습니다.
Check the [about]({{ data.about.link }}) page or read the [articles]({{ data.articles.link }})!
gnrt 설치하고, 이 저장소를 복제하고, gnrt/docs/example 로 이동하고, gnrt 실행하여 생성할 수 있는 docs/example 의 예제 웹사이트를 참조하세요.
그런 다음 생성된 public 폴더로 이동하고 python3 -m http.server 8080 실행하여 http://localhost:8080/ 에서 찾아볼 수 있습니다.
gnrt가 생성한 실시간 블로그를 확인하고 gnrt에 대한 이 기사를 읽어볼 수도 있습니다.