446

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


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

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

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

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

4

7 回答 7

471

如果您希望在用户看来突出显示 shell 会话命令序列(带有提示,而不仅仅是假设脚本文件的内容),那么目前要使用的正确标识符是console

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

GitHub Markdown 预览选项卡截图

于 2018-02-27T08:17:57.497 回答
426

这取决于 Markdown 渲染引擎和 Markdown 风格。这没有标准。例如,如果您的意思是 GitHub 风格的 Markdown,shell应该可以正常工作。别名是sh,bashzsh. 您可以在此处找到可用的语法词法分析器列表。

于 2013-11-30T19:34:28.167 回答
56

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

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

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

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

要查看我使用的语言列表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
```
于 2018-10-01T07:13:01.227 回答
32

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

```properties
npm run build
```  

我得到类似的东西:

npm运行构建

于 2019-11-22T09:10:36.800 回答
16

使用knitr包:

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

例如:

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

您还可以使用:

  • engine='sh'外壳
  • engine='python'对于 Python
  • engine='perl'engine='haskell'以及一堆其他类 C 语言,甚至gawkAWK 等。
于 2015-03-24T01:04:47.427 回答
14

根据GitHub关于 GFM 语法高亮代码块的文档

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

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

于 2018-04-13T12:43:27.387 回答
1

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

于 2018-12-31T21:25:21.190 回答