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

例如,突出显示js,我写道:
 ```js
function () { return "This code is highlighted as Javascript!"}
```
 

要突出显示HTML代码,请使用```html
如何突出显示Bash / shell命令?

#1 楼

它取决于Markdown渲染引擎和Markdown风格。没有标准。如果您以GitHub风格的Markdown为例,则shell应该可以正常工作。别名为shbashzsh。您可以在此处找到可用语法词法器的列表。

评论


我在此处的链接文件:stackoverflow.com/a/45786100/6884590中提供了有关如何推断Markdown语言规范的更多详细信息,以防对发现此问题的人有用。

– pchaigno
18年1月8日在12:07

感谢您的帮助,此刻我开始在MarkDown文件中创建文档。

–LandiLeite
7月20日21:58

#2 楼

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

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




评论


这是一个更准确的答案。突出显示包括提示,而bash,sh,zsh和shell则不认为行的开头是提示,并且不能正确地为其着色。谢谢!

– mikesigs
18-09-26在2:16

真好!该标准有参考吗?是git味md还是其他?谢谢!

–乔治·奥皮内尔(Jorge Orpinel)
19年4月19日在0:30

@JorgeOrpinel我相信我会在GitHub语法突出显示工具支持的语言列表中进行挖掘。

– Anton Strogonoff
19/12/1在14:30



我看到shell会话不仅仅是控制台

–huyz
8月23日1:29

#3 楼

我在Markdown备忘单上找到了很好的描述:

代码块是Markdown规范的一部分,但语法高亮不是。支持语法突出显示。支持哪种语言以及应如何书写这些语言名称将随渲染器的不同而不同。 Markdown Here支持突出显示多种语言(以及非真正的语言,例如diff和HTTP标头);要查看完整的列表以及如何编写语言名称,请参见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
```


#4 楼

使用knitr软件包:
 ```{r, engine='bash', code_block_name} ...
 

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

您还可以使用:


engine='sh' for shell

engine='python' for Python

engine='perl'engine='haskell'和许多其他类似C的语言,甚至gawk,AWK等。


评论


在本地.md文件上不做任何事情?它必须是网络提供的文档才能工作吗?

– StephenBoesch
17年1月16日在16:14

#5 楼

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

我得到类似的东西:

#6 楼

根据GitHub上有关GFM语法突出显示的代码块的文档


,我们使用Linguist执行语言检测和语法突出显示。您可以在语言YAML文件中找出哪些关键字是有效的。 consolebashsh似乎不太“突出” ...并且可以将shell用于PowerShell或CMD。

#7 楼

Bitbucket使用CodeMirror突出显示语法。对于Bash或Shell,可以使用shbashzsh。有关更多信息,请参见为文件扩展名和代码镜像语言模式配置语法突出显示。