您的 Markdown 文件语法很好,您不需要更改它(请查看下面的我的评论)
要使代码突出显示正常工作,您需要检查两件事:
- the 荧光笔和降价处理器已正确配置在
_config.yml
- 生成的html文件可以访问CSS突出显示语法样式规则
1.荧光笔和Markdown处理器配置
从 jekyll 3.0 开始,Kramdown 作为 Markdown 引擎,Rouge 作为语法荧光笔。是默认 jekyll 设置 https://jekyllrb.com/docs/configuration/,并且唯一支持的设置github 页面 https://github.com/blog/2100-github-pages-now-faster-and-simpler-with-jekyll-3-0.
所以你可以删除它们的相关设置,或者在_config.yml
如下:
# Conversion
markdown: kramdown
highlighter: rouge
# Markdown Processors
kramdown:
input: GFM
auto_ids: true
syntax_highlighter: rouge
2.代码高亮样式:
生成的html文件应该有权访问CSS 代码突出显示规则,这取决于您正在使用的主题。
一种方法是在主 css 文件中定义代码高亮样式规则,然后将该文件包含在默认布局.
定义CSS代码高亮规则
确保主 CSS 文件(位于/assets/css
,并且通常命名为main.scss
or style.scss
)定义了一些代码突出显示 CSS 规则,可以在此处显式定义,也可以通过导入包含 CSS 规则的文件(scss、sass 或 less)来定义。
为了快速检查,我在其中放置了一些 scss 代码突出显示主题repo https://github.com/yaitloutou/sass-code-highlight
- clone sass 代码高亮 https://github.com/yaitloutou/sass-code-highlight repo
- put
sass-code-highlight
sass 目录中的文件夹(默认情况下:_sass
)
- 将代码高亮导入到主 css 文件中
in assets/css/main.scss
添加以下内容:
@import "sass-code-highlight/monokai"; // 'monokai' as example
在 HTML HEAD 中包含主要 CSS
您需要在默认布局中包含以下代码片段(_layouts/default.html
)
<head>
<!-- head stuff-->
<!-- CSS -->
<link rel="stylesheet" type="text/css" href="{{site.baseurl}}/assets/css/main.css"> <!-- IMPORTANT -->
</head>
直接或通过包含head.html
文件 - 位于_includes
目录-进入其中,如下:
<!DOCTYPE html>
<html lang="en">
{% include head.html %} <!-- <- include the head -->
<body>
{{ content }}
</body>
</html>
Note:确保css path
已验证。