Hugo HTML模板的更漂亮和可视代码设置

时间:2019-12-20 21:18:41

标签: html visual-studio-code vscode-settings hugo prettier

我通常喜欢将Prettier与Visual Code结合使用。但是,Prettier在为Hugo编辑HTML模板时让我发疯,因为它不会保留读者友好的格式:

  {{ with .Site.Params.author }}<meta name="author" content="{{ . }}">{{ end }}
  {{ hugo.Generator }}

  {{ "<!-- plugins -->" | safeHTML }}
  {{ range .Site.Params.plugins.css }}
  <link rel="stylesheet" href="{{ .URL | absURL }} ">
  {{ end }}

  {{ "<!-- Main Stylesheet -->" | safeHTML }}
  {{ $styles := resources.Get "scss/style.scss" | toCSS | minify | fingerprint }}
  <link rel="stylesheet" href="{{ $styles.Permalink }}" integrity="{{ $styles.Data.Integrity }}" media="screen">

相反,它被转换为:

  {{ with .Site.Params.author }}
  <meta name="author" content="{{ . }}" />
  {{ end }} {{ hugo.Generator }} {{ "
  <!-- plugins -->
  " | safeHTML }} {{ range .Site.Params.plugins.css }}
  <link rel="stylesheet" href="{{ .URL | absURL }} " />
  {{ end }} {{ "
  <!-- Main Stylesheet -->
  " | safeHTML }} {{ $styles := resources.Get "scss/style.scss" | toCSS | minify
  | fingerprint }}
  <link
    rel="stylesheet"
    href="{{ $styles.Permalink }}"
    integrity="{{ $styles.Data.Integrity }}"
    media="screen"
  />

如何自定义Prettier以更好地处理模板逻辑? (此后,我便禁用了它。)

1 个答案:

答案 0 :(得分:1)

更漂亮地破坏我们的GoHugo html文件也使我非常恼火。下面的插件可以解决此问题。

prettier-plugin-go-template


如果您使用的是普通的*.html文件,则需要注意自述文件的GoHugo部分:

要与GoHugo和基本.html文件一起使用,您必须覆盖 .prettierrc文件中使用的解析器:

{
  "overrides": [
    {
      "files": ["*.html"],
      "options": {
        "parser": "go-template"
      }
    }
  ]
}