.eleventy.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. const pluginSyntaxHighlight = require("@11ty/eleventy-plugin-syntaxhighlight");
  2. const inclusiveLangPlugin = require("@11ty/eleventy-plugin-inclusive-language");
  3. module.exports = function(eleventyConfig) {
  4. eleventyConfig.addPlugin(pluginSyntaxHighlight);
  5. eleventyConfig.addPlugin(inclusiveLangPlugin);
  6. let markdownIt = require("markdown-it");
  7. let markdownItAnchor = require("markdown-it-anchor");
  8. let markdownItReplaceLink = require("markdown-it-replace-link");
  9. let markdownItOptions = {
  10. html: true,
  11. breaks: false,
  12. linkify: true,
  13. replaceLink: function (link, env) {
  14. if (process.env.NODE_ENV == "production") {
  15. return link;
  16. }
  17. return link.replace('https://torsion.org/borgmatic/', 'http://localhost:8080/');
  18. }
  19. };
  20. let markdownItAnchorOptions = {
  21. permalink: true,
  22. permalinkClass: "direct-link"
  23. };
  24. eleventyConfig.setLibrary(
  25. "md",
  26. markdownIt(markdownItOptions)
  27. .use(markdownItAnchor, markdownItAnchorOptions)
  28. .use(markdownItReplaceLink)
  29. );
  30. return {
  31. templateFormats: [
  32. "md",
  33. "txt"
  34. ]
  35. }
  36. };