_plugins
通过使用 Jekyll 的目录,我能够“扩展” Rogue 荧光笔。
rogue-ruby
我的大部分研究来自GitHub 问题 #1392和LinkedIn 的基于 jekyll 的网站的源代码。rest-li
脚步
- 在 Jekyll 根目录中创建一个
_plugins
目录
_plugins
在目录中创建一个 ruby 文件
- 使用以下代码继承现有的Rogue Javascript 代码并“扩展”(也称为覆盖)别名列表。
# This "hook" is executed right before the site's pages are rendered
Jekyll::Hooks.register :site, :pre_render do |site|
puts "Adding more JavaScript Markdown aliases..."
require "rouge"
# This class defines the PDL lexer which is used to highlight "pdl" code snippets during render-time
class MoreJSLexer < Rouge::Lexers::Javascript
title 'MoreJS'
aliases 'js', 'nodejs-repl'
end
end
- 运行
jekyll serve
并记下自定义日志行"Adding more JavaScript Markdown aliases..."
Incremental build: disabled. Enable with --incremental
Generating...
Jekyll Feed: Generating feed for posts
Adding more JavaScript Markdown aliases...
done in 0.637 seconds.
Auto-regeneration: enabled for '/Users/kueng/work/sandboxes/minima'
Server address: http://127.0.0.1:4000
Server running... press ctrl-c to stop.
测试
我使用minima GitHub 存储库作为我的沙箱和jekyll 3.8.7
. 我_plugins/more_javascript.rb
使用第 3 步中的代码创建了一个 Ruby 文件。我使用下面的 markdown 片段编辑了其中一个 markdown 文件,只注意到js
并nodejs-repl
突出显示了语法。
```nodejs
var a, b, c;
a = 5; b = 6; c = a + b;
document.getElementById("demo1").innerHTML = c;
```
```js
var a, b, c;
a = 5; b = 6; c = a + b;
document.getElementById("demo1").innerHTML = c;
```
```nodejs-repl
var a, b, c;
a = 5; b = 6; c = a + b;
document.getElementById("demo1").innerHTML = c;
```