为 GitHub Pages 自定义 Jekyll 远程主题

Chu*_*Sun 7 jekyll github-pages jekyll-theme

我刚开始使用 Jekyll 主题作为 GitHub 页面。在自定义 Jekyll 主题的 CSS之后,我能够成功自定义本地主题,但我找不到任何有关如果主题是远程的该怎么做的文档。

这是我尝试过的。首先,我从一个干净的 GitHub 页面开始,然后按照在站点的 _config.yml 文件中添加 Jekyll 主题中的步骤 4来选择从 GitHub 默认主题派生的主题

_config.yml:

     github: [metadata]
     encoding: UTF-8
     kramdown:
         input: GFM
         hard_wrap: false
     future: true
     jailed: false
-     theme: jekyll-theme-primer
+     remote_theme: chuanqisun/primer
     gfm_quirks: paragraph_end
Run Code Online (Sandbox Code Playgroud)

此时,一切都是开箱即用的。但是当我添加

---
---

@import "{{ site.theme }}";
Run Code Online (Sandbox Code Playgroud)

在 /assets/css/style.scss 中,GitHub Page 抱怨 site.theme 不存在。 在此输入图像描述 所以我也尝试过

---
---

@import "{{ site.remote_theme }}";
Run Code Online (Sandbox Code Playgroud)

但导入仍然失败。 在此输入图像描述

有谁知道是否可以自定义远程主题?我知道我可以在我的分叉存储库中进行自定义,但某些自定义特定于一个站点,我想将其存储在我的站点的存储库中。这样我就可以与多个站点共享主题,而无需强制一个站点对其余站点进行自定义。谢谢!

lyn*_*ynx 5

对于处于类似情况的任何人,以下是对我有用的方法,使用“最小错误”主题作为远程主题。

它没有assets/css/style.scss,但有一个assets/css/main.scss可以导入 下的所有部分文件_sass。尝试按照官方文档的建议导入主括号或空括号是行不通的。方法是复制主主题的文件,然后对其进行自定义。

因此,在本例中,我创建了一个本地副本assets/css/main.scss并附加了所需的 css 更改。这就足够了。如果主题没有一个将所有内容连接在一起的中心文件,您可能需要复制更多文件,但仅此而已。