First couple of slides

This commit is contained in:
Lewis Dale committed 2023-09-29 19:33:03 +01:00
commit 2fc934e324
20 files changed
+4819

No files matched your search

File diff suppressed because it is too large. Load diff
+52
View File
@@ -0,0 +1,52 @@
const path = require("path");
const markdownIt = require('markdown-it');
const markdownItPrism = require('markdown-it-prism');
const markdownItClass = require('@toycode/markdown-it-class');
const markdownItLinkAttributes = require('markdown-it-link-attributes');
const markdownItEmoji = require('markdown-it-emoji');
const markdownItFootnote = require('markdown-it-footnote');
const markdownitMark = require('markdown-it-mark');
const markdownitAbbr = require('markdown-it-abbr');
const icons = require('./icons.json');
const { slugifyString } = require('../utils');
const markdownLib = markdownIt({
html: true,
breaks: true,
linkify: true,
typographer: true
})
.disable('code')
.use(markdownItPrism, {
defaultLanguage: 'plaintext'
})
.use(markdownItClass, {
ol: 'list',
ul: 'list'
})
.use(markdownItLinkAttributes, [
{
// match external links
matcher(href) {
return href.match(/^https?:\/\//);
},
attrs: {
target: '_blank',
rel: 'noreferrer noopener'
}
}
])
.use(markdownItEmoji, { defs: icons })
.use(markdownItFootnote)
.use(markdownitMark)
.use(markdownitAbbr);
markdownLib.renderer.rules.emoji = function(token, idx) {
return `<span class="fa-li"><i class="fa-solid fa-${token[idx].markup}"></i></span>`;
};
module.exports = function(eleventyConfig) {
eleventyConfig.setLibrary('md', markdownLib);
};
+14
View File
@@ -0,0 +1,14 @@
const slugify = require('slugify');
/** Converts string to a slug form. */
const slugifyString = str => {
return slugify(str, {
replacement: '-',
remove: /[#,&,+()$~%.'":*?<>{}]/g,
lower: true
});
};
module.exports = {
slugifyString
}