commit 604cfffc5b3903bc4596bf541bf4b970ea478525 parent d863dde6c653700fb540d7e4dd6605c7186f59da Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> Date: Thu, 16 Jun 2022 07:22:11 +0200 Merge commit '475f87f685439de0f907a9ffc29bfd1361eb1c59' Diffstat:
18 files changed, 109 insertions(+), 82 deletions(-) diff --git a/docs/content/en/content-management/cross-references.md b/docs/content/en/content-management/cross-references.md @@ -126,4 +126,3 @@ refLinksNotFoundURL [lists]: /templates/lists/ [output formats]: /templates/output-formats/ [shortcode]: /content-management/shortcodes/ -[bfext]: /content-management/formats/#blackfriday-extensions diff --git a/docs/content/en/content-management/formats.md b/docs/content/en/content-management/formats.md @@ -29,7 +29,6 @@ The current list of content formats in Hugo: | Name | Markup identifiers | Comment | | ------------- | ------------- |-------------| | Goldmark | md, markdown, goldmark |Note that you can set the default handler of `md` and `markdown` to something else, see [Configure Markup](/getting-started/configuration-markup/).{{< new-in "0.60.0" >}} | -| Blackfriday | blackfriday |Blackfriday will eventually be deprecated.| |Emacs Org-Mode|org|See [go-org](https://github.com/niklasfasching/go-org).| |AsciiDoc|asciidocext, adoc, ad|Needs [Asciidoctor][ascii] installed.| |RST|rst|Needs [RST](https://docutils.sourceforge.io/rst.html) installed.| @@ -128,8 +127,6 @@ Markdown syntax is simple enough to learn in a single sitting. The following are [`emojify` function]: /functions/emojify/ [ascii]: https://asciidoctor.org/ -[bfconfig]: /getting-started/configuration/#configuring-blackfriday-rendering -[blackfriday]: https://github.com/russross/blackfriday [config]: /getting-started/configuration/ [developer tools]: /tools/ [emojis]: https://www.webpagefx.com/tools/emoji-cheat-sheet/ diff --git a/docs/content/en/content-management/front-matter.md b/docs/content/en/content-management/front-matter.md @@ -217,7 +217,7 @@ You can assign content-specific `weight` in the front matter of your content. Th ## Override Global Markdown Configuration -It's possible to set some options for Markdown rendering in a content's front matter as an override to the [BlackFriday rendering options set in your project configuration][config]. +It's possible to set some options for Markdown rendering in a content's front matter as an override to the [Rendering options set in your project configuration][config]. ## Front Matter Format Specs diff --git a/docs/content/en/content-management/multilingual.md b/docs/content/en/content-management/multilingual.md @@ -140,31 +140,6 @@ Press Ctrl+C to stop Live reload and `--navigateToChanged` between the servers work as expected. -### Taxonomies and Blackfriday - -Taxonomies and [Blackfriday configuration][config] can also be set per language: - -{{< code-toggle file="config" >}} -[Taxonomies] -tag = "tags" - -[blackfriday] -angledQuotes = true -hrefTargetBlank = true - -[languages] -[languages.en] -weight = 1 -title = "English" -[languages.en.blackfriday] -angledQuotes = false - -[languages.fr] -weight = 2 -title = "Français" -[languages.fr.Taxonomies] -plaque = "plaques" -{{</ code-toggle >}} ## Translate Your Content diff --git a/docs/content/en/functions/anchorize.md b/docs/content/en/functions/anchorize.md @@ -13,7 +13,7 @@ workson: [] relatedfuncs: [humanize] --- -If [Goldmark](https://gohugo.io/getting-started/configuration-markup#goldmark) is set as `defaultMarkdownHandler`, the sanitizing logic adheres to the setting [`markup.goldmark.parser.autoHeadingIDType`](https://gohugo.io/getting-started/configuration-markup#goldmark). If [Blackfriday](https://gohugo.io/getting-started/configuration-markup#blackfriday) is set as `defaultMarkdownHandler`, this template function uses the [`SanitizedAnchorName` logic from Blackfriday](https://github.com/russross/blackfriday#sanitized-anchor-names) (the same applies when `markup.goldmark.parser.autoHeadingIDType` is set to `blackfriday`). +If [Goldmark](https://gohugo.io/getting-started/configuration-markup#goldmark) is set as `defaultMarkdownHandler`, the sanitizing logic adheres to the setting [`markup.goldmark.parser.autoHeadingIDType`](https://gohugo.io/getting-started/configuration-markup#goldmark). Since the `defaultMarkdownHandler` and this template function use the same sanitizing logic, you can use the latter to determine the ID of a header for linking with anchor tags. diff --git a/docs/content/en/getting-started/configuration-markup.md b/docs/content/en/getting-started/configuration-markup.md @@ -24,7 +24,7 @@ Below are all markup related configuration in Hugo with their default settings: ### Goldmark -[Goldmark](https://github.com/yuin/goldmark/) is from Hugo 0.60 the default library used for Markdown. It's fast, it's [CommonMark](https://spec.commonmark.org/0.29/) compliant and it's very flexible. Note that the feature set of Goldmark vs Blackfriday isn't the same; you gain a lot but also lose some, but we will work to bridge any gap in the upcoming Hugo versions. +[Goldmark](https://github.com/yuin/goldmark/) is from Hugo 0.60 the default library used for Markdown. It's fast, it's [CommonMark](https://spec.commonmark.org/0.29/) compliant and it's very flexible. This is the default configuration: @@ -77,16 +77,8 @@ Note that attributes in [code fences](/content-management/syntax-highlighting/#h ```` autoHeadingIDType ("github") {{< new-in "0.62.2" >}} -: The strategy used for creating auto IDs (anchor names). Available types are `github`, `github-ascii` and `blackfriday`. `github` produces GitHub-compatible IDs, `github-ascii` will drop any non-Ascii characters after accent normalization, and `blackfriday` will make the IDs work as with [Blackfriday](#blackfriday), the default Markdown engine before Hugo 0.60. Note that if Goldmark is your default Markdown engine, this is also the strategy used in the [anchorize](/functions/anchorize/) template func. +: The strategy used for creating auto IDs (anchor names). Available types are `github`, `github-ascii` and `blackfriday`. `github` produces GitHub-compatible IDs, `github-ascii` will drop any non-Ascii characters after accent normalization, and `blackfriday` will make the IDs compatible with [Blackfriday](#blackfriday), the default Markdown engine before Hugo 0.60. Note that if Goldmark is your default Markdown engine, this is also the strategy used in the [anchorize](/functions/anchorize/) template func. -### Blackfriday - - -[Blackfriday](https://github.com/russross/blackfriday) was Hugo's default Markdown rendering engine, now replaced with Goldmark. But you can still use it: Just set `defaultMarkdownHandler` to `blackfriday` in your top level `markup` config. - -This is the default config: - -{{< code-toggle config="markup.blackFriday" />}} ### Highlight diff --git a/docs/content/en/getting-started/configuration.md b/docs/content/en/getting-started/configuration.md @@ -121,9 +121,6 @@ The directory where Hugo finds asset files used in [Hugo Pipes](/hugo-pipes/). { ### baseURL Hostname (and path) to the root, e.g. https://bep.is/ -### blackfriday -See [Configure Blackfriday](/getting-started/configuration-markup#blackfriday) - ### build See [Configure Build](#configure-build) diff --git a/docs/content/en/hugo-pipes/introduction.md b/docs/content/en/hugo-pipes/introduction.md @@ -53,6 +53,17 @@ With `resources.GetRemote`, the first argument is a remote URL: `resources.Get` and `resources.GetRemote` return `nil` if the resource is not found. +## Copy a Resource + +{{< new-in "0.100.0" >}} + +`resources.Copy` allows you to copy almost any Hugo `Resource` (the one exception is the `Page`), possibly most useful for renaming things: + +```go-html-template +{{ $resized := $image.Resize "400x400" | resources.Copy "images/mynewname.jpg" }} +<img src="{{ $resized.RelPermalink }}"> +``` + ### Caching By default, Hugo calculates a cache key based on the `URL` and the `options` (e.g. headers) given. diff --git a/docs/content/en/hugo-pipes/scss-sass.md b/docs/content/en/hugo-pipes/scss-sass.md @@ -45,7 +45,7 @@ includePaths [string slice] : Additional SCSS/SASS include paths. Paths must be relative to the project directory. ```go-html-template -{{ $options := (dict "targetPath" "style.css" "outputStyle" "compressed" "enableSourceMap" true "includePaths" (slice "node_modules/myscss")) }} +{{ $options := (dict "targetPath" "style.css" "outputStyle" "compressed" "enableSourceMap" (not hugo.IsProduction) "includePaths" (slice "node_modules/myscss")) }} {{ $style := resources.Get "sass/main.scss" | resources.ToCSS $options }} ``` diff --git a/docs/content/en/showcase/tomango/index.md b/docs/content/en/showcase/tomango/index.md @@ -10,7 +10,7 @@ siteURL: https://www.tomango.co.uk siteSource: https://github.com/trys/tomango-2018 -byline: "[Trys Mudford](http://www.trysmudford.com), Lead Developer, Tomango" +byline: "[Trys Mudford](https://www.trysmudford.com), Lead Developer, Tomango" --- diff --git a/docs/content/en/templates/data-templates.md b/docs/content/en/templates/data-templates.md @@ -112,7 +112,7 @@ You can use the following code to render the `Short Description` in your layout: <div>Short Description of {{.Site.Data.User0123.Name}}: <p>{{ index .Site.Data.User0123 "Short Description" | markdownify }}</p></div> ``` -Note the use of the [`markdownify` template function][markdownify]. This will send the description through the Blackfriday Markdown rendering engine. +Note the use of the [`markdownify` template function][markdownify]. This will send the description through the Markdown rendering engine. ## Get Remote Data diff --git a/docs/content/en/templates/files.md b/docs/content/en/templates/files.md @@ -43,7 +43,7 @@ To use the `readFile` function in your templates, make sure the path is relative ### `readFile` Example: Add a Project File to Content -As `readFile` is a function, it is only available to you in your templates and not your content. However, we can create a simple [shortcode template][sct] that calls `readFile`, passes the first argument through the function, and then allows an optional second argument to send the file through the Blackfriday markdown processor. The pattern for adding this shortcode to your content will be as follows: +As `readFile` is a function, it is only available to you in your templates and not your content. However, we can create a simple [shortcode template][sct] that calls `readFile`, passes the first argument through the function, and then allows an optional second argument to send the file through the markdown processor. The pattern for adding this shortcode to your content will be as follows: ``` {{</* readfile file="/path/to/local/file.txt" markdown="true" */>}} diff --git a/docs/content/en/troubleshooting/faq.md b/docs/content/en/troubleshooting/faq.md @@ -45,9 +45,9 @@ Also see this Twitter thread: Yes you can! Read [this](/hosting-and-deployment/hosting-on-netlify/#configure-hugo-version-in-netlify). -## I get "TOCSS ... this feature is not available in your current Hugo version" +## I get "... this feature is not available in your current Hugo version" -If you process `SCSS` or `SASS` to `CSS` in your Hugo project, you need the Hugo `extended` version, or else you may see this error message: +If you process `SCSS` or `SASS` to `CSS` in your Hugo project with `libsass` as the transpiler or if you convert images to the `webp` format, you need the Hugo `extended` version, or else you may see an error message similar to the below: ```bash error: failed to transform resource: TOCSS: failed to transform "scss/main.scss" (text/x-scss): this feature is not available in your current Hugo version diff --git a/docs/content/zh/_index.md b/docs/content/zh/_index.md @@ -1,49 +1,49 @@ --- -title: "世界上最快的网站构建框架 The world’s fastest framework for building websites" +title: "世界上最快的网站构建框架" date: 2017-03-02T12:00:00-05:00 features: - - heading: Blistering Speed + - heading: 飞快的速度 image_path: /images/icon-fast.svg - tagline: What's modern about waiting for your site to build? - copy: Hugo is the fastest tool of its kind. At <1 ms per page, the average site builds in less than a second. + tagline: 摩登发布 + copy: Hugo 是同类中最快的工具。生成一页小于 1ms,生成一个站点平均不超过 1s。 - - heading: Robust Content Management + - heading: 强大的内容管理 image_path: /images/icon-content-management.svg - tagline: Flexibility rules. Hugo is a content strategist's dream. - copy: Hugo supports unlimited content types, taxonomies, menus, dynamic API-driven content, and more, all without plugins. + tagline: 灵活的规则。Hugo 是一个设计师的梦想。 + copy: Hugo 支持无限的内容类型、分类、菜单、动态 API 驱动的内容,以及更多,都不需要插件。 - - heading: Shortcodes + - heading: 短代码 image_path: /images/icon-shortcodes.svg - tagline: Hugo's shortcodes are Markdown's hidden superpower. - copy: We love the beautiful simplicity of markdown’s syntax, but there are times when we want more flexibility. Hugo shortcodes allow for both beauty and flexibility. + tagline: Hugo 短代码是 Markdown 隐藏的强大功能。 + copy: 我们喜欢美丽简洁的 markdown 语法,但是有时候我们也想要更灵活一些。Hugo 短代码允许既美丽又灵活。 - - heading: Built-in Templates + - heading: 内置模板 image_path: /images/icon-built-in-templates.svg - tagline: Hugo has common patterns to get your work done quickly. - copy: Hugo ships with pre-made templates to make quick work of SEO, commenting, analytics and other functions. One line of code, and you're done. + tagline: Hugo 有通用的模式让你快速的完成工作。 + copy: Hugo 平台预置的模板会快速实现搜索引擎优化、评论、分析和其他的功能。一行代码,你就完成了。 - - heading: Multilingual and i18n + - heading: 多语言和国际化 image_path: /images/icon-multilingual2.svg - tagline: Polyglot baked in. - copy: Hugo provides full i18n support for multi-language sites with the same straightforward development experience Hugo users love in single-language sites. + tagline: 多语言制作 + copy: Hugo 为多语言站点提供了完整的国际化支持,并且具有与 Hugo 用户在单语言站点中喜爱的相同的简单开发体验。 - - heading: Custom Outputs + - heading: 自定义输出 image_path: /images/icon-custom-outputs.svg - tagline: HTML not enough? - copy: Hugo allows you to output your content in multiple formats, including JSON or AMP, and makes it easy to create your own. + tagline: HTML 不够用吗? + copy: Hugo 允许您以多种格式输出内容,包括 JSON 或 AMP,并且可以很容易地创建自己的内容。 sections: - - heading: "100s of Themes" - cta: Check out the Hugo's themes. + - heading: "100 多个主题" + cta: 看看 Hugo 的主题 link: https://themes.gohugo.io/ color_classes: bg-accent-color white image: /images/homepage-screenshot-hugo-themes.jpg - copy: "Hugo provides a robust theming system that is easy to implement but capable of producing even the most complicated websites." - - heading: "Capable Templating" - cta: Get Started. + copy: "Hugo 提供了一个强大的主题系统,易于实现,但能够生成即使是最复杂的网站。" + - heading: "功能模板" + cta: 开始吧。 link: templates/ color_classes: bg-primary-color-light black image: /images/home-page-templating-example.png - copy: "Hugo's Go-based templating provides just the right amount of logic to build anything from the simple to complex. If you prefer Jade/Pug-like syntax, you can also use Amber, Ace, or any combination of the three." + copy: "Hugo 基于 Go 的模板提供了恰当的方法来生成从简单到复杂的任何东西。如果你喜欢 Jade/Pug 类似的语法,你也可以使用 Amber、Ace 或三种任意组合。" --- -Hugo is one of the most popular open-source static site generators. With its amazing speed and flexibility, Hugo makes building websites fun again. +Hugo 是最受欢迎的开源静态站点生成器之一。凭借惊人的速度和灵活性,Hugo 使建设网站的乐趣再现。 diff --git a/docs/content/zh/documentation.md b/docs/content/zh/documentation.md @@ -1,7 +1,7 @@ --- title: Hugo 说明文档 linktitle: Hugo -description: Hugo is the world's fastest static website engine. It's written in Go (aka Golang) and developed by bep, spf13 and friends. +description: Hugo 是世界上最快的静态网站引擎。它是用 Go (即 Golang) 编程语言所写成,由 bep、spf13 和朋友们共同开发。 date: 2017-02-01 publishdate: 2017-02-01 menu: @@ -16,6 +16,6 @@ toc: false layout: documentation-home isCJKLanguage: true --- -Hugo 号称**世界上最快的静态网站引擎**。它是以 Go (即 Golang) 编程语言所写成,并由 [bep](https://github.com/bep)、[spf13](https://github.com/spf13) 和[朋友们](https://github.com/gohugoio/hugo/graphs/contributors) 共同开发。 +Hugo 是世界上最快的静态网站引擎。它是用 Go (即 Golang) 编程语言所写成,由 [bep](https://github.com/bep)、[spf13](https://github.com/spf13) 和[朋友们](https://github.com/gohugoio/hugo/graphs/contributors)共同开发。 下面是我们说明文档中最常用和实用的章节: diff --git a/docs/content/zh/tools/_index.md b/docs/content/zh/tools/_index.md @@ -0,0 +1,25 @@ +--- +title: 开发者工具 +linktitle: 开发者工具概览 +description: 除了 Hugo 强大的命令外,对于 Hugo 开发者还有大量社区开发的工具链。 +date: 2018-05-29 +publishdate: 2018-05-29 +lastmod: 2018-05-29 +categories: [developer tools] +keywords: [] +menu: + docs: + parent: "tools" + weight: 01 +weight: 01 +sections_weight: 01 +draft: false +aliases: [/tools/] +--- + +Hugo 最强大的在于它是活跃的——并总在发展的——开发者社区。除了在[语法高亮][syntax] 中提到的 `highlight` 简码外,该章节中的这些工具和其它项目特色都是由商业服务和开源项目提供,很多就是由像你一样的 Hugo 开发者开发的。 + +[查看 Hugo 的流行程度与其它静态网站生成器的比较。][staticgen] + +[staticgen]: https://staticgen.com +[syntax]: /tools/syntax-highlighting/ diff --git a/docs/content/zh/tools/search.md b/docs/content/zh/tools/search.md @@ -0,0 +1,31 @@ +--- +title: 搜索你的 Hugo 网站 +linktitle: 搜索 +description: 为你最新添加的 Hugo 网站看一些开源和商业搜索选择。 +date: 2018-05-29 +publishdate: 2018-05-29 +lastmod: 2018-05-29 +categories: [developer tools] +keywords: [search,tools] +menu: + docs: + parent: "tools" + weight: 60 +weight: 60 +sections_weight: 60 +draft: false +aliases: [] +toc: true +--- + +静态网站还有动态搜索功能?是的。作为可选方案,来自 Google 或者其它搜索引擎的嵌入式脚本,可以给你的访客提供一个自定义的直接基于你的内容文件索引的搜素。 + +* [GitHub Gist for Hugo Workflow](https://gist.github.com/sebz/efddfc8fdcb6b480f567). Gist 包含一个为你的网站创建索引的简单流程。它使用简单的 Grunt 脚本索引你所有的内容文件,并且 [lunr.js](http://lunrjs.com/) 会提供搜索结果。 +* [hugo-lunr](https://www.npmjs.com/package/hugo-lunr). 一个使用 [lunr.js](http://lunrjs.com/) 为你的 Hugo 静态网站添加搜索的简单方法。Hugo-lunr 将会给你的 Hugo 项目中任意 html 和 markdown 文件创建一个索引文件。 +* [hugo-lunr-zh](https://www.npmjs.com/package/hugo-lunr-zh). 有点像 Hugo-lunr,但是 Hugo-lunr-zh 能帮助你分割中文关键字。 +* [Github Gist for Fuse.js integration](https://gist.github.com/eddiewebb/735feb48f50f0ddd65ae5606a1cb41ae). 该 gist 显示如何借助 Hugo 已有的构建时间在客户端通过 [Fuse.js](http://fusejs.io/) 生成可搜索的 JSON 索引。尽管 gist 使用 Fuse.js 进行模糊匹配,任何有能力读取 JSON 索引的客户端工具都可以运行。不需要 Hugo 以外, npm、grunt 或者其它构建时工具。 +* [hugo-search-index](https://www.npmjs.com/package/hugo-search-index). 一个包含实现了搜索的 Gulp 任务和内置浏览器脚本的库。Gulp 从项目中的 markdown 文件生成索引。 + +## 商业搜索服务 + +* [Algolia](https://www.algolia.com/) 的搜索 API 使得在你的应用和网站中提供一个很好的搜索体验变得简单。Algolia 搜索提供托管的全文本、数字化、分面以及地理定位搜索。 diff --git a/docs/netlify.toml b/docs/netlify.toml @@ -3,7 +3,7 @@ publish = "public" command = "hugo --gc --minify" [context.production.environment] -HUGO_VERSION = "0.99.1" +HUGO_VERSION = "0.100.2" HUGO_ENV = "production" HUGO_ENABLEGITINFO = "true" @@ -11,20 +11,20 @@ HUGO_ENABLEGITINFO = "true" command = "hugo --gc --minify --enableGitInfo" [context.split1.environment] -HUGO_VERSION = "0.99.1" +HUGO_VERSION = "0.100.2" HUGO_ENV = "production" [context.deploy-preview] command = "hugo --gc --minify --buildFuture -b $DEPLOY_PRIME_URL" [context.deploy-preview.environment] -HUGO_VERSION = "0.99.1" +HUGO_VERSION = "0.100.2" [context.branch-deploy] command = "hugo --gc --minify -b $DEPLOY_PRIME_URL" [context.branch-deploy.environment] -HUGO_VERSION = "0.99.1" +HUGO_VERSION = "0.100.2" [context.next.environment] HUGO_ENABLEGITINFO = "true"