自定义模板

快速开始

可参考官方模板项目:https://github.com/everkm/theme-yilog

工作区 👉 目录结构

# 安装
pnpm add everkm-publish

# 启动
everkm-publish serve --dev-dir ./

浏览器访问 http://localhost:9081

模板配置文件

文件名: everkm-theme.yaml

name: yilog
version: 0.0.1
author: dayu<dayu@dayu.me>
repository: https://github.com/daobox-theme/yilog
demo: https://yilog.theme.everkm.com/

# 可以通过 `everkm.yaml` 配置同名覆盖。
map_url:
sitemap:

字段说明

  • name 模板名称
  • version 版本号
  • author 作者
  • repository 代码库
  • demo Demo 地址
  • map_url 同工作区配置 map_url
  • sitemap 同工作区配置 sitemap

打包模板命令

Theme management

Usage: everkm-publish theme <COMMAND>

Commands:
  package  Theme package
  install  Install theme
  help     Print this message or the help of the given subcommand(s)

Options:
  -h, --help  Print help

模板多语言

文字

道盒语言包采取 markdown 文件格式存储,一级标题作为 key, 所辖区域皆为对应内容,两端的空白自动忽略。

  1. 语言包存放位置

    <base dir>/src/templates/ 目录或者其任意子目录下

  2. 文件命名规范

    <Language Code>.i18n.md, 如果需要使用命名空间,则命名为 <Namespace>.<Language Code>.i18n.md。 例如

    en_US.i18n.md

    # My name
    Everkm Publish
    

    details.en_US.i18n.md

    # toc
    Table Of Contents
    
  3. 模板中使用方式

    通过内置函数t读取。 带有命名空间的语言包,需要添加前缀 <namespace>: , 注意后面有一个空格。

    <p>{{t(text="My name")}}</p>
    <p>{{t(text="details: toc")}}</p>
    

    输出

    <p>Everkm Publish</p>
    <p>Table Of Contents</p>
    

图片

当需要图片根据语言切换时,步骤如下:

  1. 在该图片同一目录下,放置需要替换的图片,用同样的文件名,并在扩展名前增加 .<Language Code> 语言片段。

  2. 在模板中使用内置函数imgsrc处理图片地址。例如

    <img src="{{img_src(file='logo.png')}}" />
    

    对应英文(--lang=en_US)图片输出为

    <img src="logo.en_US.png" />