diff --git a/docs/content/overview/configuration.md b/docs/content/overview/configuration.md
index ce9107a8c..6e1be3bfa 100644
--- a/docs/content/overview/configuration.md
+++ b/docs/content/overview/configuration.md
@@ -198,6 +198,16 @@ but only these three.
Purpose: |
Use non-default additional extensions (e.g. Add "hardLineBreak" to use EXTENSION_HARD_LINE_BREAK ) |
+
+
+extensionsmask |
+[] |
+EXTENSION_* |
+
+
+Purpose: |
+Extensions in this option won't be loaded. (e.g. Add "autoHeaderIds" to disable EXTENSION_AUTO_HEADER_IDS ) |
+
diff --git a/helpers/content.go b/helpers/content.go
index daf7e267d..a5f2a5608 100644
--- a/helpers/content.go
+++ b/helpers/content.go
@@ -43,6 +43,7 @@ type Blackfriday struct {
Fractions bool
PlainIDAnchors bool
Extensions []string
+ ExtensionsMask []string
}
// NewBlackfriday creates a new Blackfriday with some sane defaults.
@@ -154,6 +155,11 @@ func getMarkdownExtensions(ctx *RenderingContext) int {
flags |= flag
}
}
+ for _, extension := range ctx.getConfig().ExtensionsMask {
+ if flag, ok := blackfridayExtensionMap[extension]; ok {
+ flags &= ^flag
+ }
+ }
return flags
}