我从虚幻中惊醒

BracketDown:MD 语法拓展插件

最近我在对 Ringo 主题进行二次开发,并将二次开发的主题命名为 Matcha,目前已经开源,我打算在丰富其功能之后正式发布。

Loading...

在开发过程中,为了顺应之前 Miracles 等主题的传统和我个人的使用习惯,我打算给主题加入文章内短代码功能,但每次开发新主题都要再写一遍这个功能似乎有一些蠢,而且和其他主题的兼容性也不好。几番思考过后,我决定将短代码功能做成插件,这样就能兼容大部分主题。于是,BracketDown 应运而生。

关于 BracketDown

很明显,BracketDown 的名字借用了著名的文本标记语言 Markdown,这也是 Typecho 原生文章编辑器所采用的语言,而 BracketDown 的目的就是拓展 Markdown 语法。

但与 Markdown 不同的是,BracketDown 所采用的语法,或者说大部分常见于文本编辑器的短代码,大多都是被括号包裹的,类似于简单的 HTML 标签,而 Markdown 语法大多是由*-这样的特殊符号定义的。这就是我将它命名为 BracketDown 的原因。

不过,BracketDown 也有一些不是由简单地由中括号构成的语法,这些语法通常是来自其他大佬的主题,一些不成文的规矩,或者是综合考虑下做出的决定。这类语法通常功能比较单一,涉及的文本比较短,缺乏自定义性,承载的信息比较少。

这样的短代码,只要直接写在编辑器里就能够使用了。

另外,我将这个插件命名为 BracketDown 的理由还有一个:它是「Break it down.」的谐音,这个句子有「将...细分/减少,以方便他人理解/使用」的含义。我之所以做这个插件,一是为了减少开发主题时我习惯去做的一些重复步骤,方便我自己;二是为了将这些原本能以较为复杂方式实现的功能简单化,方便使用者;三是因为这个插件能优化文字排版,将文段细分,放置在各个短代码提供的组件里,让读者阅读更加方便。

演示

文字块(Block)

文字块用于让一部分文段以更加显眼的方式展示出来,默认样式的文字块是一个有淡灰色边框和浅灰色背景的盒子。
通常情况下文字块用于标记正文中较为重要的额外信息,很多时候博主会用块引用(Blockquote)来完成同样的事情,即使那些文本并非是引用,在这样的情况下,文字块是比块引用更好的选择。

它看起来是这样的。

附录:如何进行简单的变集突破实验
所需材料:变集中随处可见的咽石,能够溶于恒体水的变体物质(最好是细腻柔软的固体),“冰”,一个能附着性强且表面较光滑的类圆柱形物体
操作:

  • 向类圆柱形物体上涂抹“冰”
  • 将咽石固定在类圆柱形物体的上方或下方
  • 向咽石上浇恒体水
  • 将能够溶于恒体水的变体物质与“冰”混合
  • 将类圆柱形物体向上抛起
  • 将咽石埋入地下,或是用任何物体遮盖住表面
  • 触摸“冰”至少两分钟
  • 敲打类圆柱形物体约三下

用任何顺序完成以上操作,即可完成实验。

下拉框(Details)

顾名思义,下拉框语法可以创造一个默认只显示标题,点击后就会展示详细内容,再次点击则会收起的结构,用于书写一些不那么重要但可以用于参考的信息。
BracketDown 的下拉框使用的是 HTML 原生的 <details> 标签,这个特性比较新,所以插件引入了相应的垫片来提高其兼容性。

它看起来是这样的。

附录:如何进行简单的恒集突破实验

  1. 取任意种类的适量固体易燃物(要求能够在空气中被直接点燃);
  2. 将它放入一个真空瓶,并抽空里面的空气(真空瓶的容积被严格限制在 666 mL);
  3. 尝试降低真空瓶内的压强,直到放入的易燃物完全变成液态或是气态;
  4. 不断加速旋转真空瓶,直到液态易燃物因离心力在瓶壁上形成一层薄膜,或是气体易燃物呈现出液化的趋势;
  5. 继续保持原速旋转真空瓶,同时加热真空瓶,直到真空瓶爆炸;
  6. 若爆炸发生,则实验成功。

更详细的语法介绍以及使用说明,请到插件的 GitHub 页面查看。

Loading...

BracketDown:MD 语法拓展插件

https://blog.guhub.cn/coder/typecho-plugin-bracketdown.html

作者

Eltrac

发布时间

2022-08-16

许可协议

CC BY-NC 4.0

添加新评论