使用 kramdown 解析器和 rouge gem 的语法高亮器似乎在 Jekyll 中不起作用。报价也不会突出显示和格式化。
降价文件:
```javascript
function order(words){
var array = words.split(' ');
var result = array.slice();
for (word in array) {
for (var i = 0; i < array[word].length; i++) {
if (!isNaN(array[word][i])) {
result[array[word][i] - 1] = array[word]
}
}
}return result.join(' ');
}
```
Run Code Online (Sandbox Code Playgroud)
下面列出了我的配置文件。
配置文件:
# Build settings
markdown: kramdown
highlighter: rouge
theme: minima
gems:
- jekyll-feed
include: ['_pages']
exclude:
- Gemfile
- Gemfile.lock
- vendor
#sass
sass:
style: compressed
Run Code Online (Sandbox Code Playgroud)
您的 Markdown 文件语法很好,您不需要更改它(请查看下面的评论)
要使代码突出显示工作,您需要检查两件事:
_config.yml从 jekyll 3.0 开始,Kramdown 作为 Markdown 引擎,Rouge 作为语法高亮器。是默认的 jekyll 设置,也是github pages支持的唯一设置。
因此,您可以删除它们的相关设置,或将其显式设置 _config.yml如下:
# Conversion
markdown: kramdown
highlighter: rouge
# Markdown Processors
kramdown:
input: GFM
auto_ids: true
syntax_highlighter: rouge
Run Code Online (Sandbox Code Playgroud)
生成的 html 文件应该可以访问CSS 代码突出显示规则,这取决于您正在使用的主题。
一种方法是在主 css 文件中定义代码高亮样式规则,然后将该文件包含在默认布局的 html 头中。
确保主 CSS 文件(位于/assets/css,通常命名为main.scss或style.scss)定义了一些代码高亮 CSS 规则,或者在那里明确定义,或者通过导入包含 CSS 规则的文件(scss、sass 或更少)。
为了快速检查,我在这个repo 中放置了一些 scss 代码高亮主题
sass-code-highlight文件夹中的SASS目录下(默认为:_sass)在assets/css/main.scss添加以下内容:
@import "sass-code-highlight/monokai"; // 'monokai' as example
Run Code Online (Sandbox Code Playgroud)
您需要在默认布局中使用 sinppet ( _layouts/default.html)
<head>
<!-- head stuff-->
<!-- CSS -->
<link rel="stylesheet" type="text/css" href="{{site.baseurl}}/assets/css/main.css"> <!-- IMPORTANT -->
</head>
Run Code Online (Sandbox Code Playgroud)
直接或通过将head.html位于_includes目录中的文件包含在其中,如下所示:
<!DOCTYPE html>
<html lang="en">
{% include head.html %} <!-- <- include the head -->
<body>
{{ content }}
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
注意:确保css path有效。
| 归档时间: |
|
| 查看次数: |
1694 次 |
| 最近记录: |