mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-21 20:46:30 -05:00
Disable syntax guessing for PygmentsCodeFences by default
This disables highlighting for fenced code blocks without explicitly specified language. It also introduces a new `PygmentsCodeFencesGuessSyntax` config option (defaulting to false). To enable syntax guessing again, add the following to your config file: `PygmentsCodeFencesGuessSyntax = true` This is a breaking change.
This commit is contained in:
parent
0698f294c6
commit
43b5dfabb5
3 changed files with 5 additions and 2 deletions
|
@ -309,6 +309,7 @@ func loadDefaultSettings() {
|
|||
viper.SetDefault("DisablePathToLower", false)
|
||||
viper.SetDefault("HasCJKLanguage", false)
|
||||
viper.SetDefault("EnableEmoji", false)
|
||||
viper.SetDefault("PygmentsCodeFencesGuessSyntax", false)
|
||||
}
|
||||
|
||||
// InitializeConfig initializes a config file with sensible default configuration flags.
|
||||
|
|
|
@ -126,6 +126,8 @@ Following is a list of Hugo-defined variables that you can configure and their c
|
|||
preserveTaxonomyNames: false
|
||||
# filesystem path to write files to
|
||||
publishdir: "public"
|
||||
# enables syntax guessing for code fences without specified language
|
||||
pygmentsCodeFencesGuessSyntax: false
|
||||
# color-codes for highlighting derived from this style
|
||||
pygmentsStyle: "monokai"
|
||||
# true: use pygments-css or false: color-codes directly
|
||||
|
|
|
@ -35,7 +35,7 @@ type HugoHTMLRenderer struct {
|
|||
}
|
||||
|
||||
func (renderer *HugoHTMLRenderer) BlockCode(out *bytes.Buffer, text []byte, lang string) {
|
||||
if viper.GetBool("PygmentsCodeFences") {
|
||||
if viper.GetBool("PygmentsCodeFences") && (lang != "" || viper.GetBool("PygmentsCodeFencesGuessSyntax")) {
|
||||
opts := viper.GetString("PygmentsOptions")
|
||||
str := html.UnescapeString(string(text))
|
||||
out.WriteString(Highlight(str, lang, opts))
|
||||
|
@ -78,7 +78,7 @@ type HugoMmarkHTMLRenderer struct {
|
|||
}
|
||||
|
||||
func (renderer *HugoMmarkHTMLRenderer) BlockCode(out *bytes.Buffer, text []byte, lang string, caption []byte, subfigure bool, callouts bool) {
|
||||
if viper.GetBool("PygmentsCodeFences") {
|
||||
if viper.GetBool("PygmentsCodeFences") && (lang != "" || viper.GetBool("PygmentsCodeFencesGuessSyntax")) {
|
||||
str := html.UnescapeString(string(text))
|
||||
out.WriteString(Highlight(str, lang, ""))
|
||||
} else {
|
||||
|
|
Loading…
Reference in a new issue