Obsidian 插件:HK Code Block

Obsidian 插件:HK Code Block

插件名片

  • 插件名称:HK Code Block
  • 插件作者:Heekang Park
  • 插件说明:由 Heekang Park 开发的 Obsidian 插件;使代码块在阅读视图中看起来更好。
  • 插件分类:[‘obsidian 插件 ’, ‘readme’]
  • 项目地址:点我访问
  • 国内下载地址:下载安装

概述

由 Heekang Park 开发的 Obsidian 插件;使代码块在阅读视图中看起来更好。

Obsidian 插件:HK Code Block--概述

原文出处

下面自述文件的来源于 Readme


Readme(翻译)

下面是 hk-code-block 插件的自述翻译

HK 代码块

Obsidian 插件由 Heekang Park 开发

[ English | 한국어 ]

使用 HK CodeBlock,您可以为代码块添加各种功能。

灵感来自 Prism.js 的插件,Better Code BlockCode Block Enhancer

特点

标题

您可以像这样为代码块添加标题。

```python title:"代码块的标题"
print("Hello world")
```

HK 代码块--标题

您必须将标题放在引号中。您可以使用单引号和双引号。

折叠

您必须使用标题功能才能使用折叠功能。您可以像这样折叠代码块。

```python title:"代码块的标题" collapse
print("Hello world")
```

或者像这样。

```python title:"代码块的标题" collapse:true
print("Hello world")
```

HK 代码块--折叠

HK 代码块--折叠

如果您想明确展开代码块,可以像这样操作。

```python title:"代码块的标题" collapse:false
print("Hello world")
```

行号

您可以像这样为代码块添加行号。

```python linenos
print("Hello world")
```

或者像这样。

```python linenos:true
print("Hello world")
```

HK 代码块--行号

如果您不指定任何选项,行号将从设置中设置的值开始(默认为 1)。如果您希望行号从特定值开始,可以像这样设置。

```python linenos:10
print("Hello world")
```

HK 代码块--行号

您还可以使用负值。

```python linenos:-10
print("Hello world")
```

HK 代码块--行号

如果您想明确隐藏行号,可以像这样设置。

```python linenos:false
print("Hello world")
```

行高亮

您可以使用逗号来突出显示代码块中的特定行,如下所示。

```python highlight:"2-4,8,10"
print("line 1")
print("line 2")
print("line 3")
print("line 4")
print("line 5")
print("line 6")
print("line 7")
print("line 8")
print("line 9")
print("line 10")
print("line 11")
```

HK 代码块--行高亮

您必须将行号放在引号中。您可以使用单引号和双引号。您还可以使用破折号来指定一系列行号。

如果您使用行号功能并设置行号不从 1 开始,您必须根据该行号输入要突出显示的行号。

```python linenos:10 highlight:"10,11"
print("Hello world")
print("I love you")
print("Wow")
```

HK 代码块--行高亮

语言指示器

您可以像这样将语言指示器添加到代码块中。

```python language
print("Hello world")
```

或者像这样。

```python language:true
print("Hello world")
```

HK 代码块--语言指示器

默认情况下,显示的语言遵循代码块的语言,但如果您希望,可以明确指定它。在这种情况下,您可以在保持代码块语言的语法高亮的同时更改显示的语言。

```python language:"javascript"
print("Hello world")
```

HK 代码块--语言指示器

您必须将语言放在引号中。您可以使用单引号和双引号。

如果既没有指定代码块的语言,也没有指定语言选项指定的语言,则显示的语言是设置中设置的值(默认值为 “plain text”)。

如果您想明确隐藏语言指示器,可以这样做。

```python language:false
print("Hello world")
```

复制按钮

您可以像这样向代码块添加一个复制按钮。

```python copybtn
print("Hello world")
```

或者像这样。

```python copybtn:true
print("Hello world")
```

HK 代码块--复制按钮

如果您想明确隐藏复制按钮,可以像这样操作。

```python copybtn:false
print("Hello world")
```

您可以像这样在代码块中添加提示。

mkdir test

或者像这样。

mkdir test

HK 代码块--复制按钮

如果您不指定任何选项,提示将是设置中设置的值(默认为 ”$”)。如果您想使用另一个提示,可以这样做。

mkdir test

HK 代码块--复制按钮

您必须将提示放在引号中。您可以使用单引号和双引号。

如果行末尾有一个 "" 字符,提示将不会显示在下一行。

docker run -it \
    ubuntu:latest

HK 代码块--复制按钮

如果您想明确隐藏提示,可以这样做。

mkdir test

结果

您可以像这样向代码块添加结果。

```python
print("Hello world!")
```

```result
Hello world!
```

HK 代码块--结果

请注意,结果代码块必须紧接在其所属的代码块之后。您不能在它们之间放置任何其他组件。

还请注意,结果代码块不是动态生成的。结果代码块只是简单的纯文本代码块。您必须手动输入结果。

您可以在结果代码块中使用行号、行高亮等功能。即使您指定了其他功能,它们也会被忽略。

```python
print("Hello world!")
```

```result linenos
Hello world!
```

```result highlight:"1"
Hello world!
```

HK 代码块--结果

结果代码块的提示默认情况下是在设置中设置的值(默认为 “Result”)。如果您想使用其他提示,可以像这样设置。

```python
import random
print(random.randint(1, 100))
```

```result prompt:"Result (may be different depending on your environment)"
42
```

HK 代码块--结果

设置

您可以在设置中更改 HK 代码块的每个功能的默认设置。

标题

  • 使用标题
    • 默认关闭,但在指定时打开:只有在指定标题语句时才会显示标题
    • 总是关闭:永远不会显示标题

折叠

  • 使用折叠
    • 始终开启:代码块始终可折叠
    • 默认开启,但在指定时关闭:代码块始终可折叠,但如果指定折叠语句为 false,则不会折叠
    • 默认关闭,但在指定时开启:只有在指定折叠语句为 true 时,代码块才可折叠
    • 始终关闭:代码块永远不可折叠
  • 默认折叠状态:代码块的默认折叠状态

行号

  • 使用行号
    • 始终显示:行号将始终显示
    • 默认显示,但在指定时关闭:行号将始终显示,但如果指定了 linenos 语句为 false,则不会显示
    • 默认关闭,但在指定时打开:只有在指定 linenos 语句为 true 时才会显示行号
    • 始终关闭:行号将永远不会显示
  • 默认行号起始值:代码块的默认行号起始值(默认值:1)
  • 显示行号分隔符:是否显示行号分隔符(默认值:true)

行高亮

  • 使用行高亮
    • 默认关闭,但在指定时打开:只有在指定了行高亮语句时才会显示行高亮
    • 总是关闭:永远不会显示行高亮
  • 行高亮颜色:高亮行的背景颜色。请注意,给定的颜色将以 0.2 的不透明度应用。(默认值:#ff0000)

语言指示器

  • 使用语言指示器
    • 始终显示:语言指示器将始终显示
    • 默认显示,但在指定时关闭:语言指示器将始终显示,但如果语言指示器语句指定为 false,则不会显示
    • 默认关闭,但在指定时打开:只有在语言指示器语句指定为 true 时才会显示语言指示器
    • 始终关闭:语言指示器将永远不会显示
  • 默认语言:如果未指定语言,则代码块的默认语言名称(默认值为“纯文本”)

复制按钮

  • 使用复制按钮
    • 始终显示:复制按钮将始终显示
    • 默认开启,但在指定时关闭:复制按钮将始终显示,但如果复制按钮语句指定为 false,则不会显示
    • 默认关闭,但在指定时开启:只有在复制按钮语句指定为 true 时,才会显示复制按钮
    • 始终关闭:复制按钮将永远不会显示
  • 使用提示
    • 始终开启:对于在“提示语言”选项中指定的语言,提示将始终显示。
    • 默认开启,但在指定时关闭:对于在“提示语言”选项中指定的语言,提示将始终显示,但如果指定的提示语句为 false,则不会显示。
    • 默认关闭,但在指定时开启:仅当指定的提示语句为 true 时,才会显示提示。
    • 始终关闭:永远不会显示提示。
  • 提示语言:默认情况下将提示的语言。您可以通过换行符分隔它们来指定多种语言。(默认值:“bash”)
  • 默认提示:代码块的默认提示。(默认值:“$”)

结果

  • 使用结果
    • enable : 使用结果功能
    • disable : 不使用结果功能
  • 默认结果提示:结果代码块的默认提示。(默认值:“Result”)

开发者

  • 调试模式
    • true:启用调试模式。日志消息将显示在控制台中。
    • false:禁用调试模式。

MIT 许可证

已知问题

  • 根据您使用的主题,某些功能可能无法正常工作。
    • 目前在 2023 年 2 月,我检查到以下主题可以正常工作。
    • 大多数主题问题是由于主题 CSS 中使用了 !important 关键字引起的。HK Code Block 在其 CSS 中根本不使用 !important 关键字,以避免与其他主题或插件发生冲突。如果您想要在这些主题中使用 HK Code Block 插件,您应该修改主题 CSS 文件,或者通过使用 !important 关键字,明确提高 HK Code Block CSS 规则的优先级。

如果您发现任何错误或有任何功能请求,请在 GitHub Issues 上报告它们。谢谢!

更新日志

版本控制遵循以下规则。

  • 版本 x.y.z
    • x:当进行重大更改时增加(例如逻辑变更等)
    • y:当新增或更改功能时增加
    • z:当进行错误修复时增加

0.1.0

  • 初始版本

0.2.0

  • 添加功能
    • 添加折叠功能

0.2.1

  • Bug 修复
    • 修复了多行代码块始终显示水平滚动条的问题

0.3.0

  • Bug 修复
    • 修复了在其他元素(例如 li)内部的代码块无法正确渲染的问题
  • 新增功能
    • 现在您可以在高亮语句中使用“-”符号,以便轻松地突出显示多行连续的内容。

0.3.1

  • Bug 修复
    • 修复了在其他元素(例如 li)内部的连续代码块的标题无法正确渲染的问题
    • 修复了当代码块位于其他元素(例如 li)内部时,在代码块末尾插入额外空行的问题

0.3.2

  • Bug 修复
    • 为代码块添加一些 margin-top

0.4.0

  • 遵循拉取请求指南的评论
    • 将“使用结果”设置从下拉菜单更改为切换
    • 删除 as 语句
  • 等等
    • 重命名文件名

0.4.1

  • CSS 更新
    • 使 CSS 更加明确


反馈交流

其他渠道

版权声明