You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Hugo Markdown代码块中保留长横线分隔行

解决VSCode中Hugo Highlight短代码长横线被篡改的问题

核心原因

VSCode的Markdown格式化器会把连续短横线识别为Markdown分隔线,自动替换成标准的---,干扰了Hugo短代码内的PowerShell输出内容。


方法1:用注释跳过格式化

在Hugo短代码块前后添加格式化忽略注释,让VSCode跳过这段内容的自动格式化:

<!-- prettier-ignore -->
{{< highlight plaintext "linenos=false" >}}
# PowerShell输出内容
这里保留原始长横线:---(不会被篡改)
{{< /highlight >}}
<!-- prettier-ignore-end -->

该规则同时适用于VSCode内置Markdown格式化器和Prettier等第三方格式化工具。

方法2:调整VSCode全局格式化配置

打开VSCode设置(快捷键Ctrl+,),编辑settings.json,添加以下配置,阻止格式化工具修改短代码内的内容:

"[markdown]": {
  "editor.formatOnSave": true,
  "markdown.preview.breaks": false,
  // 针对Hugo短代码块禁用格式化
  "markdown.format.extra": {
    "disableFormattingBlocks": ["{{<", "{{%"]
  }
}

如果你的VSCode版本不支持disableFormattingBlocks选项,可改用以下配置,关闭Markdown文件的自动格式化(按需启用):

"[markdown]": {
  "editor.formatOnSave": false
}

方法3:替换长横线为Unicode字符

如果不想修改配置,可将PowerShell输出中的长横线替换为Unicode的短破折号(–)或长破折号(—),VSCode不会将其识别为Markdown分隔线,渲染效果和原长横线一致:

{{< highlight plaintext "linenos=false" >}}
# PowerShell输出示例
替换后的分隔线:– – –
{{< /highlight >}}

内容的提问来源于stack exchange,提问作者Martin Cairney

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 12:31:08