前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >支持Github风格的警告样式

支持Github风格的警告样式

作者头像
凡梦星尘
发布2025-02-28 17:35:59
发布2025-02-28 17:35:59
420
举报
文章被收录于专栏:Hugo博客Hugo博客

温馨提醒

总结摘要

现可以支持在撰写文章的过程中,直接使用`Markdown`语法来书写不同类型的警告消息,让文章的内容更加丰富和易读,快来看看它的使用和效果吧。

早期在Hugo NexT主题中使用短代码方式实现过对不同类型消息的样式支持,只不过是使用时需要用户书写完整短代码不是很方便,同时输出的效果是独立的块占用空间比较大。后来发现Hugo框架在新版中支持了自定义 blockquote的渲染方式,于是乎便有点有新的想法,让用户直接使用Markdown语法来书写不同消息内容,输出的效果实现类似于Github的警告样式,这样使用起来会更加方便。下面就来看看相关实现思路和使用方式吧。

直接参考了官方提供的示例 blockquotes ,在主题中实现自己定义的blockquote渲染重写,增加了alert类型识别判断,具体的代码参考如下:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

<!-- layouts/partials/render-blockquotes.html --> {{ if eq .Type "alert" }} {{ $postAlert := site.Params.postAlerts }} {{ $alertCfg := index $postAlert .AlertType }} <div class="post-alert-{{ .AlertType }}"> <div class="post-alert-title"> <i class="fa-solid fa-{{ $alertCfg.icon }}"></i> <span> {{ with .AlertTitle }} {{ . }} {{ else }} {{ or (T (printf "PostAlert.%s" .AlertType)) (title .AlertType) }} {{ end }} </span> </div> <div class="post-alert-content"> {{ .Text }} </div> </div> {{ else }} <blockquote> {{ .Text }} </blockquote> {{ end }}

考虑到了灵活性和用户的个性化需求,这里把alert中的颜色和图标,以及说明文字都做成了可配置的参数,用户可根据自己的喜好进行调整。其中颜色和图标在全局配置参数中,可找到如下配置项进行必要的调整:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

# 文章内容中的提示信息设置 # icon图标:https://fontawsome.com postAlerts: info: icon: "circle-info" color: "#4A90E2" note: icon: "bell" color: "#17A2B8" help: icon: "circle-question" color: "#967ADC" error: icon: "circle-xmark" color: "#DC3545" warning: icon: "triangle-exclamation" color: "#F39C12" success: icon: "circle-check" color: "#32CD32" important: icon: "circle-plus" color: "#007BFF"

另外对于不同类型消息的描述说明,是放在了i18n配置文件中,方便用户根据自己的语言环境或需求进行调整:

1 2 3 4 5 6 7 8

PostAlert: info : "信息" note : "注意" help : "帮助" error : "错误" warning : "警告" success : "成功" important: "重要"

上述这些参数配置在Hugo NexT主题中都已有默认的设置,使用时直接在文章中使用Markdown语法书写即可,部分用法示例参考如下:

1 2 3 4 5 6 7 8 9 10 11 12

> [!INFO] > `HugoNexT` 主题支持自定义样式设计,你可实现属于自己站点的个性化设计。 > [!NOTE] > 最新版本的 `HugoNexT` 主题支持Markdown文档的Blockquote渲染,有7种不同风格可选择使用或自定义配置。 > [!HELP] > `HugoNexT` 主题提供了完整的示例使用说明及源代码,上手更为简单易用。 > [!WARNING] > `HugoNexT` 主题使用了SCSS 预编译,需要下载 Hugo 官方 `hugo-extended` 版本使用。

上述这些用法示例的输出实际效果如下所示:

信息

HugoNexT 主题支持自定义样式设计,你可实现属于自己站点的个性化设计。

注意

最新版本的 HugoNexT 主题支持Markdown文档的Blockquote渲染,有7种不同风格可选择使用或自定义配置。

帮助

HugoNexT 主题提供了完整的示例使用说明及源代码,上手更为简单易用。

警告

HugoNexT 主题使用了SCSS 预编译,需要下载 Hugo 官方 hugo-extended 版本使用。

这相比较于之前的短代码方式,使用起来是更加方便,而且Github的警告样式在整体的风格上也是和文章更为契合,能让读者的阅读体验也更好些。如果你喜欢的话,就赶紧去升级下你的Hugo NexT主题吧!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档