devon.lol/.eleventy.js
Devon Campbell 8a61cde474 Add markdown-it-attrs
so that I can make nofollow links
2022-11-28 18:32:36 -08:00

50 lines
1.5 KiB
JavaScript

const markdownIt = require("markdown-it");
const slugify = require("@sindresorhus/slugify");
const markdownItAnchor = require("markdown-it-anchor");
const markdownItObsidian = require("markdown-it-obsidian");
const markdownItAttrs = require("markdown-it-attrs");
module.exports = function (eleventyConfig) {
eleventyConfig.addPassthroughCopy({ 'assets/css': 'css' });
eleventyConfig.addPassthroughCopy({ 'assets/fonts': 'fonts' });
eleventyConfig.addPassthroughCopy({ 'assets/images': 'images' });
eleventyConfig.addPassthroughCopy({
'node_modules/simpledotcss/simple.css': 'css/simple.css',
});
eleventyConfig.addFilter("makeRfc822Date", function (value) {
return new Date(value).toUTCString();
});
eleventyConfig.addFilter("formatDatetimeForHumans", function (value) {
const dt = new Date(value);
const formattedDt = new Intl.DateTimeFormat("en", {
dateStyle: "medium",
timeStyle: "medium",
}).format(dt);
return formattedDt;
});
eleventyConfig.addFilter("formatDateForHumans", function (value) {
const dt = new Date(value);
const formattedDt = new Intl.DateTimeFormat("en", {
dateStyle: "medium",
}).format(dt);
return formattedDt;
});
const markdownLibrary = markdownIt()
.use(markdownItAnchor, { slugify })
.use(
markdownItObsidian({
slugifyOnPageLinks: slugify,
})
)
.use(markdownItAttrs);
eleventyConfig.setLibrary("md", markdownLibrary);
return {
dir: {
input: 'src',
output: 'dist',
},
};
};