跳转至

Termynal:一个有趣的终端动画插件

搭建这个博客网站时看到MkDocs Material 的文档中写着 Blog 支持 RSS 订阅。浏览了一下这个 RSS 插件的文档网站,发现主页就有一个模拟 pip install 的终端动画,挺有意思的,于是顺藤摸瓜找到了这个插件,Termynal。

最早这个项目还没有封装成插件,最近的 commit 已经是 2018 年了。 见: termynal.js

后来有人将其做成了 MkDocs 的插件,使用起来非常方便。见: termynal.py

安装

pip install termynalInstalled

之后在 mkdocs.yml 中添加插件配置:

plugins:
  - termynal

指定输入提示符:

plugins:
  - termynal
    prompt_literal_start:
        - "$"
        - ">"

Then you're all set! 🎉

使用

在要展示的代码块前加上一行 HTML 注释 <!-- termynal --> 即可。

输入的内容以 >$ 开头(在 mkdocs.yml 中指定过),输出的内容直接写就行。

示例

<-- termynal --> # (1)!

```bash
> pip show termynal
Name: termynal
Version: 0.13.0
Summary: A lightweight and modern animated terminal window
Home-page: https://termynal.github.io/termynal.py/
Author: Danil Akhtarov
Author-email: daxartio@gmail.com
后略
```
  1. 经多次尝试,在代码块里面的 <!-- termynal --> 也会被识别变成动画。为了展示只能把 ! 改成全角字符 了。

效果:

pip show termynalName: termynal
Version: 0.13.0
Summary: A lightweight and modern animated terminal window
Home-page: https://termynal.github.io/termynal.py/
Author: Danil Akhtarov
Author-email: daxartio@gmail.com
(后略)

显示进度条

> pip install termynal
---> 100%

输出的动画即安装一节中展示的效果。

窗口标题

在注释里加上 title 参数。

<!-- termynal: {title: 安装 Termynal} -->

code here

配置

这个插件使用简单,不过相比原项目可调整的参数少很多。

总共有三个参数可以配置:

参数 说明 默认值
prompt_literal_start 输入提示符 ["$"]
title 窗口标题 "bash"
buttons 窗口样式 "macos"

其中 buttons 可选值有 "macos""windows"

如同上面修改窗口标题的方法,每个代码块的参数可以上方的注释中指定以覆盖全局配置。

PowerShell

注释的一行这么写:

<!-- termynal: {"prompt_literal_start": ["$", ">>>", "PS >"], title: powershell, buttons: windows} -->

PS > python
>>> import json

效果:

pythonimport json

结语

小而美的一个插件,希望功能还能进一步完善(更高程度的样式自定义、代码块内不渲染动画等)。


参考资料/相关链接