如何突出bash/shell命令markdown?

如何突出显示Markdown文件中的Bash/shell命令?


例如,为了突出显示js,我写:

```js
function () { return "This code is highlighted as Javascript!"}
```

为了突出显示HTML代码,我使用```html

如何突出显示Bash/shell命令?

504190 次浏览

这取决于Markdown渲染引擎和Markdown风格。这是没有标准的。如果你的意思是GitHub风味Markdown,例如,shell应该工作得很好。别名是shbashzsh。你可以找到可用的语法词法分析器在这里列表。

使用knitr包:

```{r, engine='bash', code_block_name} ...

例如:

```{r, engine='bash', count_lines}
wc -l en_US.twitter.txt
```

你还可以使用:

  • engine='sh'用于shell
  • engine='python' for Python
  • engine='perl'engine='haskell'和一堆其他类c语言,甚至gawk, AWK等。

如果你希望突出显示一个shell会话命令序列,因为它看起来像用户(有提示,而不仅仅是一个假设的脚本文件的内容),那么目前使用的正确标识符是控制台:

```console
foo@bar:~$ whoami
foo
```

GitHub Markdown预览标签截图

根据来自GitHub的文档关于GFM语法突出显示的代码块

我们使用语言学家来执行语言检测和语法高亮显示。你可以找出在语言YAML文件中哪些关键字是有效的。

在GitHub上渲染,console使控制台后面的行变成蓝色。bashsh,或shell似乎没有“突出”太多…你可以使用posh为PowerShell或CMD。

我在Markdown Cheatsheet找到了一个很好的描述:

代码块是Markdown规范的一部分,但语法高亮显示不是

然而,许多渲染器——比如GitHub的和Markdown Here——支持语法高亮显示。支持哪些语言以及应该如何编写这些语言名称将因渲染器而异。Markdown Here支持突出显示数十种语言(和非真正的语言,如差异和HTTP头);要查看完整的列表,以及如何编写语言名称,请参阅highlight.js演示页面。

虽然我找不到任何关于使用highlight.js的官方GitHub文档,但我已经测试了许多语言,而且似乎正在工作

要查看语言列表,我使用https://github.com/highlightjs/highlight.js/blob/master/SUPPORTED_LANGUAGES.md

部分贝壳样本:

Shell:      console, shell
Bash:       bash, sh, zsh
PowerShell: powershell, ps
DOS:        dos, bat, cmd

例子:

```bat
cd \
copy a b
ping 192.168.0.1
```

Bitbucket使用CodeMirror来突出显示语法。对于Bash或shell,您可以使用shbashzsh。更多信息可以在配置文件扩展名的语法高亮显示代码镜像语言模式找到。

如果我只需要突出显示第一个单词作为命令,我经常使用properties:

```properties
npm run build
```

我得到的结果是:

npm运行构建

在Obsidian中,你可以使用sh-session

https://prismjs.com/