feat: add markdown alerts support (#1221)
* Markdown alerts * refactor(alert): move alert color to variable.scss and simplify the style * style: fix indent in render-blockquote * feat(alert): add customizable alert icons for different alert types * doc: add example usage of markdown alert --------- Co-authored-by: Jimmy Cai <jimmy@cai.im>
This commit is contained in:
@@ -329,6 +329,34 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
blockquote.alert {
|
||||||
|
.alert-header {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.5em;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.alert-body {
|
||||||
|
> :last-child {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$alert-types: note, tip, important, warning, caution;
|
||||||
|
|
||||||
|
@each $type in $alert-types {
|
||||||
|
&.alert-#{$type} {
|
||||||
|
border-color: var(--alert-#{$type}-color);
|
||||||
|
background-color: var(--alert-#{$type}-background);
|
||||||
|
|
||||||
|
.alert-title {
|
||||||
|
color: var(--alert-#{$type}-color);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
hr {
|
hr {
|
||||||
width: 100px;
|
width: 100px;
|
||||||
margin: 40px auto;
|
margin: 40px auto;
|
||||||
|
|||||||
@@ -105,6 +105,17 @@
|
|||||||
|
|
||||||
--heading-border-size: 4px;
|
--heading-border-size: 4px;
|
||||||
|
|
||||||
|
--alert-note-color: #4da3ff;
|
||||||
|
--alert-note-background: rgba(77, 163, 255, 0.08);
|
||||||
|
--alert-tip-color: #3fb950;
|
||||||
|
--alert-tip-background: rgba(63, 185, 80, 0.08);
|
||||||
|
--alert-important-color: #8457d9;
|
||||||
|
--alert-important-background: rgba(130, 80, 223, 0.08);
|
||||||
|
--alert-warning-color: #d29922;
|
||||||
|
--alert-warning-background: rgba(210, 153, 34, 0.1);
|
||||||
|
--alert-caution-color: #f85149;
|
||||||
|
--alert-caution-background: rgba(248, 81, 73, 0.1);
|
||||||
|
|
||||||
--link-background-color: 189, 195, 199;
|
--link-background-color: 189, 195, 199;
|
||||||
--link-background-opacity: 0.5;
|
--link-background-opacity: 0.5;
|
||||||
--link-background-opacity-hover: 0.7;
|
--link-background-opacity-hover: 0.7;
|
||||||
|
|||||||
@@ -51,6 +51,14 @@ SortBy = "default"
|
|||||||
# Can also be set per-diagram with %%transparent%% directive
|
# Can also be set per-diagram with %%transparent%% directive
|
||||||
transparentBackground = false
|
transparentBackground = false
|
||||||
|
|
||||||
|
[article.alertIcon]
|
||||||
|
# Alert icons for different alert types (note, tip, important, warning, caution)
|
||||||
|
note = "📝"
|
||||||
|
tip = "💡"
|
||||||
|
important = "📌"
|
||||||
|
warning = "⚠️"
|
||||||
|
caution = "🚨"
|
||||||
|
|
||||||
[widgets]
|
[widgets]
|
||||||
homepage = []
|
homepage = []
|
||||||
page = []
|
page = []
|
||||||
|
|||||||
@@ -47,6 +47,23 @@ The blockquote element represents content that is quoted from another source, op
|
|||||||
|
|
||||||
[^1]: The above quote is excerpted from Rob Pike's [talk](https://www.youtube.com/watch?v=PAAkCSZUG1c) during Gopherfest, November 18, 2015.
|
[^1]: The above quote is excerpted from Rob Pike's [talk](https://www.youtube.com/watch?v=PAAkCSZUG1c) during Gopherfest, November 18, 2015.
|
||||||
|
|
||||||
|
### Blockquote with alert
|
||||||
|
|
||||||
|
> [!NOTE]
|
||||||
|
> Highlights information that users should take into account, even when skimming.
|
||||||
|
|
||||||
|
> [!TIP]
|
||||||
|
> Optional information to help a user be more successful.
|
||||||
|
|
||||||
|
> [!IMPORTANT]
|
||||||
|
> Crucial information necessary for users to succeed.
|
||||||
|
|
||||||
|
> [!WARNING]
|
||||||
|
> Critical content demanding immediate user attention due to potential risks.
|
||||||
|
|
||||||
|
> [!CAUTION]
|
||||||
|
> Negative potential consequences of an action.
|
||||||
|
|
||||||
## Tables
|
## Tables
|
||||||
|
|
||||||
Tables aren't part of the core Markdown spec, but Hugo supports supports them out-of-the-box.
|
Tables aren't part of the core Markdown spec, but Hugo supports supports them out-of-the-box.
|
||||||
|
|||||||
@@ -47,6 +47,23 @@ Itatur? Quiatae cullecum rem ent aut odis in re eossequodi nonsequ idebis ne sap
|
|||||||
|
|
||||||
[^1]: 以上引用摘自 Rob Pike 在 2015 年 11 月 18 日 Gopherfest 期间的[演讲](https://www.youtube.com/watch?v=PAAkCSZUG1c)。
|
[^1]: 以上引用摘自 Rob Pike 在 2015 年 11 月 18 日 Gopherfest 期间的[演讲](https://www.youtube.com/watch?v=PAAkCSZUG1c)。
|
||||||
|
|
||||||
|
### 带提示的引用
|
||||||
|
|
||||||
|
> [!NOTE]
|
||||||
|
> 突出显示用户在快速浏览时也应注意的信息。
|
||||||
|
|
||||||
|
> [!TIP]
|
||||||
|
> 可选信息,帮助用户更顺利地完成任务。
|
||||||
|
|
||||||
|
> [!IMPORTANT]
|
||||||
|
> 用户成功所必需的关键信息。
|
||||||
|
|
||||||
|
> [!WARNING]
|
||||||
|
> 由于潜在风险而需要用户立即关注的关键内容。
|
||||||
|
|
||||||
|
> [!CAUTION]
|
||||||
|
> 某个操作可能带来的负面后果。
|
||||||
|
|
||||||
## 表格 (Tables)
|
## 表格 (Tables)
|
||||||
|
|
||||||
表格虽然不是 Markdown 核心规范的一部分,但 Hugo 出箱即用地支持它们。
|
表格虽然不是 Markdown 核心规范的一部分,但 Hugo 出箱即用地支持它们。
|
||||||
|
|||||||
@@ -0,0 +1,20 @@
|
|||||||
|
{{- $type := .AlertType -}}
|
||||||
|
{{- $icons := site.Params.article.alertIcon -}}
|
||||||
|
{{- $icon := index $icons $type -}}
|
||||||
|
|
||||||
|
<blockquote class="{{ if $type }}alert alert-{{ $type }}{{ end }}">
|
||||||
|
{{- if $type -}}
|
||||||
|
<div class="alert-header">
|
||||||
|
<span class="alert-icon">
|
||||||
|
{{- $icon -}}
|
||||||
|
</span>
|
||||||
|
<span class="alert-title">
|
||||||
|
{{- title $type -}}
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
<div class="alert-body">
|
||||||
|
{{ .Text }}
|
||||||
|
</div>
|
||||||
|
</blockquote>
|
||||||
Reference in New Issue
Block a user