summaryrefslogtreecommitdiffstats
path: root/markup/highlight
AgeCommit message (Collapse)Author
2023-06-01markup: Fix typo in function and struct namesOleksandr Redko
2023-05-18all: Fix comments for exported functions and packagesOleksandr Redko
2023-05-16Create a struct with all of Hugo's config optionsBjørn Erik Pedersen
Primary motivation is documentation, but it will also hopefully simplify the code. Also, * Lower case the default output format names; this is in line with the custom ones (map keys) and how it's treated all the places. This avoids doing `stringds.EqualFold` everywhere. Closes #10896 Closes #10620
2023-02-25Add a page template funcBjørn Erik Pedersen
Fixes #9339
2023-02-05markup: Fix linenos codeblock hl option case regressionKhayyam Saleem
This fixes a regression introduced in v0.93.0 where previously, a mixed-case key for lineNos would be successfully parsed. This change moves the configuration key lowercasing step into the configuration normalization stage, which is called whether the highlighting config is being parsed from a `string` or a `map`. Fixes #10682
2023-01-04Misc doc, code refactoring to improve documentationBjørn Erik Pedersen
2022-11-24Add a cache for lexers.GetBjørn Erik Pedersen
``` name old time/op new time/op delta Codeblocks/Default-10 152ms ±11% 12ms ± 1% -92.44% (p=0.029 n=4+4) Codeblocks/Hook_no_higlight-10 142ms ± 0% 7ms ± 0% -95.36% (p=0.029 n=4+4) name old alloc/op new alloc/op delta Codeblocks/Default-10 11.9MB ± 0% 11.7MB ± 0% -1.59% (p=0.029 n=4+4) Codeblocks/Hook_no_higlight-10 4.62MB ± 1% 4.43MB ± 0% -4.08% (p=0.029 n=4+4) name old allocs/op new allocs/op delta Codeblocks/Default-10 209k ± 0% 209k ± 0% -0.03% (p=0.029 n=4+4) Codeblocks/Hook_no_higlight-10 68.4k ± 0% 68.3k ± 0% -0.06% (p=0.029 n=4+4) ```
2022-11-19deps: Upgrade github.com/alecthomas/chroma/v2 v2.4.0Bjørn Erik Pedersen
2022-06-15markup/highlight: Add hl_inline optionBjørn Erik Pedersen
Closes #9442 Closes #9635 Closes #9638
2022-06-14deps: Udpate to github.com/alecthomas/chroma/v2Bjørn Erik Pedersen
Fixes #9932 Fixes #9931
2022-03-17all: gofmt -w -r 'interface{} -> any' .Bjørn Erik Pedersen
Updates #9687
2022-03-10Revert "markup/highlight: Add hl_inline option"Bjørn Erik Pedersen
This reverts commit a360cab75a073c2a8d47dcd27f52a6847e8d8d13.
2022-03-09markup/highlight: Add hl_inline optionBjørn Erik Pedersen
If set to true, the highlighted code will not be wrapped in any div. Closes #9442
2022-03-02tpl/transform: Fix it when template.HTML is passes as option to HightlightBjørn Erik Pedersen
Fixes #9591
2022-02-28markup/highlight: Ignore HL_lines_parsed in the gen docsBjørn Erik Pedersen
2022-02-27markup/highlight: Rework the return value from HighlightCodeblockBjørn Erik Pedersen
To make it possible to render it with a custom HTML ("<div>") wrapper. Updates #9573
2022-02-27CodeblockContext method renamesBjørn Erik Pedersen
Fixes #9577
2022-02-26markup/goldmark: Improve attributes vs optionsBjørn Erik Pedersen
Fixes #9571
2022-02-26Remove the trailing new line in .CodeBjørn Erik Pedersen
Fixes #9572
2022-02-25markup/goldmark: Use Ordinal to create default lineanchorsBjørn Erik Pedersen
The `Ordinal` starts at 0, so with a `hl-` prefix, this gives `hl-0-1` as a starting point. Fixes #9567
2022-02-24Add Markdown diagrams and render hooks for code blocksBjørn Erik Pedersen
You can now create custom hook templates for code blocks, either one for all (`render-codeblock.html`) or for a given code language (e.g. `render-codeblock-go.html`). We also used this new hook to add support for diagrams in Hugo: * Goat (Go ASCII Tool) is built-in and enabled by default; just create a fenced code block with the language `goat` and start draw your Ascii diagrams. * Another popular alternative for diagrams in Markdown, Mermaid (supported by GitHub), can also be implemented with a simple template. See the Hugo documentation for more information. Updates #7765 Closes #9538 Fixes #9553 Fixes #8520 Fixes #6702 Fixes #9558
2022-02-15deps: Update github.com/alecthomas/chroma v0.9.4 => v0.10.0Bjørn Erik Pedersen
2021-08-23highlight: Add tabindex when code is not highlightedHelder Pereira
2021-07-15markup: Add tabindex="0" to default <pre> wrapperrhymes
Currently the generated `<pre>` element isn't fully accessible as it can't be focused by keyboard users. To make this fully accessible, the attribute `tabindex="0"` should be added to the `<pre>` tag. Closes #7194
2021-06-14Misc config loading fixesBjørn Erik Pedersen
The main motivation behind this is simplicity and correctnes, but the new small config library is also faster: ``` BenchmarkDefaultConfigProvider/Viper-16 252418 4546 ns/op 2720 B/op 30 allocs/op BenchmarkDefaultConfigProvider/Custom-16 450756 2651 ns/op 1008 B/op 6 allocs/op ``` Fixes #8633 Fixes #8618 Fixes #8630 Updates #8591 Closes #6680 Closes #5192
2020-12-16all: Fix minor typosPhil Davis
2020-12-03all: Format code with gofumptBjørn Erik Pedersen
See https://github.com/mvdan/gofumpt
2020-11-20deps: Update to Chroma v0.8.2Bjørn Erik Pedersen
Closes #7970
2020-10-16highlight: Avoid making unnecessary allocationCameron Moore
Avoid creating a local copy of the highlight configuration when no options are passed. Benchmarks of building the docs site: name old time/op new time/op delta DocsSite-2 1.94s ± 4% 1.93s ± 4% ~ (p=0.841 n=5+5) name old alloc/op new alloc/op delta DocsSite-2 666MB ± 1% 656MB ± 0% -1.48% (p=0.008 n=5+5) name old allocs/op new allocs/op delta DocsSite-2 8.85M ± 0% 8.76M ± 0% -1.04% (p=0.029 n=4+4)
2020-09-13markup/highlight: Add support to linkable line anchors on ChromaFernando Jorge Mota
Fixes #7622
2020-02-17markup/highlight: Fix chroma highlightsatotake
* Use chroma.Coalesce * Escape code strings if lexer is nil Fixes #6877 Fixes #6856
2019-12-02markup: Reimplement pygmentsCodefencesGuessSyntaxBjørn Erik Pedersen
Fixes #6565
2019-11-24markup/highlight: Replace the temp for with a dependencyBjørn Erik Pedersen
2019-11-23Minor cleanupsCameron Moore
Use fmt.Fprint were appropriate instead of Fprintf. Remove some unused code.
2019-11-23Add Goldmark as the new default markdown handlerBjørn Erik Pedersen
This commit adds the fast and CommonMark compliant Goldmark as the new default markdown handler in Hugo. If you want to continue using BlackFriday as the default for md/markdown extensions, you can use this configuration: ```toml [markup] defaultMarkdownHandler="blackfriday" ``` Fixes #5963 Fixes #1778 Fixes #6355