Skip to content

Commit 53af90d

Browse files
committed
feat(jekyll-engine): implement markdownify for jekyll live editing
`markdownify` uses a different kramdown implementation than jekyll, so the output is not guaranteed to be identical.
1 parent 3816f7a commit 53af90d

File tree

4 files changed

+23
-1
lines changed

4 files changed

+23
-1
lines changed

javascript-modules/engines/jekyll-engine/lib/engine.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import jsonify from './plugins/jsonify.js';
1010
import slugify from './plugins/slugify-plugin.js';
1111
import unbind from './plugins/unbind.js';
1212
import loop_context from './plugins/loop_context.js';
13+
import markdownify from './plugins/markdownify.js';
1314
import emulateJekyll from './plugins/emulate-jekyll.js';
1415
import local from './plugins/local.js';
1516

@@ -26,7 +27,7 @@ export class Engine {
2627
this.name = options.name;
2728
this.files = options.files;
2829
this.plugins = options.plugins || [];
29-
this.plugins.push(jsonify, slugify, unbind, emulateJekyll, local, liquidHighlight, loop_context);
30+
this.plugins.push(jsonify, slugify, unbind, emulateJekyll, local, liquidHighlight, loop_context, markdownify);
3031

3132
this.initializeLiquid();
3233
this.applyLiquidPlugins();
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import kramed from 'kramed';
2+
3+
/**
4+
* Implementation of Jekyll's jsonify filter
5+
*/
6+
export default function (Liquid) {
7+
this.registerFilter('markdownify', (input) => {
8+
return kramed(input);
9+
});
10+
}

javascript-modules/engines/jekyll-engine/package.json

+1
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
"@bookshop/helpers": "2.4.1",
3131
"esbuild": "^0.13.10",
3232
"js-base64": "^3.6.1",
33+
"kramed": "^0.5.6",
3334
"liquidjs": "9.28.0",
3435
"slugify": "^1.5.3"
3536
},

javascript-modules/yarn.lock

+10
Original file line numberDiff line numberDiff line change
@@ -498,6 +498,7 @@ __metadata:
498498
ava: ^3.15.0
499499
esbuild: ^0.13.10
500500
js-base64: ^3.6.1
501+
kramed: ^0.5.6
501502
liquidjs: 9.28.0
502503
nyc: ^15.1.0
503504
slugify: ^1.5.3
@@ -5154,6 +5155,15 @@ fsevents@~2.3.2:
51545155
languageName: node
51555156
linkType: hard
51565157

5158+
"kramed@npm:^0.5.6":
5159+
version: 0.5.6
5160+
resolution: "kramed@npm:0.5.6"
5161+
bin:
5162+
kramed: ./bin/kramed
5163+
checksum: 46162eace44bdc28f1b13d6203897b17e26a7f66dd7b16e09fc2107857942e7cf0d383ad6f6307f3fc0f3ab5116fd1949aaa693d0210b87e86a4d4a53471034c
5164+
languageName: node
5165+
linkType: hard
5166+
51575167
"latest-version@npm:^5.1.0":
51585168
version: 5.1.0
51595169
resolution: "latest-version@npm:5.1.0"

0 commit comments

Comments
 (0)