Làm nổi bật mã bash / shell trong markdown


304

Làm thế nào để làm nổi bật các lệnh bash / shell trong các tệp markdown?


Ví dụ để làm nổi bật jstôi viết:

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

Để làm nổi bật mã HTML tôi sử dụng ```html.

Làm thế nào chúng ta có thể làm nổi bật các lệnh bash / shell?

Câu trả lời:


308

Phụ thuộc vào công cụ kết xuất markdown và hương vị markdown. Không có tiêu chuẩn cho việc này. Nếu bạn có nghĩa là đánh dấu hương vị github chẳng hạn, shellnên hoạt động tốt. Bí danh là sh, bashhoặc zsh. Bạn có thể tìm thấy danh sách các từ vựng cú pháp có sẵn ở đây


1
Tôi đã cung cấp thêm một chút chi tiết về cách suy luận các nhà xác định ngôn ngữ cho Markdown từ tệp được liên kết ở trên: stackoverflow.com/a/45786100/6884590 , trong trường hợp đó hữu ích cho bất kỳ ai tìm thấy câu hỏi này.
pchaigno

256

Nếu bạn đang tìm cách làm nổi bật chuỗi lệnh shell shell giống như người dùng (với lời nhắc, không chỉ là nội dung của tệp tập lệnh giả định), thì số nhận dạng đúng sẽ sử dụng tại thời điểm này là bảng điều khiển :

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

Ảnh chụp màn hình tab xem trước GitHub Markdown


13
Đây là một câu trả lời chính xác hơn. Việc tô sáng bao gồm dấu nhắc, trong khi bash, sh, zsh và shell không coi điểm bắt đầu của dòng là dấu nhắc và không tô màu đúng. Cảm ơn!
mikeigs

1
Đẹp! Có một tài liệu tham khảo cho tiêu chuẩn này? Là gd hương vị md hoặc cái gì khác? Cảm ơn!
Jorge Orpinel

1
@JorgeOrpinel Tôi tin rằng tôi đã đào nó trong danh sách các ngôn ngữ được hỗ trợ bởi cú pháp tô sáng cú pháp của GitHub tại đây .
Anton Strogonoff

27

Tôi tìm thấy mô tả hay tại https://github.com/adam-p/markdown-here/wiki/Markdown-Chcoateet#code

Các khối mã là một phần của thông số Markdown, nhưng tô sáng cú pháp thì không .

Tuy nhiên, nhiều trình kết xuất - như Github's và Markdown Here - hỗ trợ tô sáng cú pháp. Những ngôn ngữ nào được hỗ trợ và cách viết các tên ngôn ngữ đó sẽ khác nhau tùy theo trình kết xuất đến trình kết xuất. Markdown Here hỗ trợ đánh dấu cho hàng tá ngôn ngữ (và không thực sự là ngôn ngữ, như khác biệt và tiêu đề HTTP); để xem danh sách đầy đủ và cách viết tên ngôn ngữ, hãy xem trang demo của highlight.js .

Mặc dù tôi không thể tìm thấy bất kỳ tài liệu trung tâm git chính thức nào về việc sử dụng highlight.js, tôi đã thử nghiệm rất nhiều ngôn ngữ và dường như đang hoạt động

Để xem danh sách các ngôn ngữ tôi đã sử dụng https://highlightjs.readthedocs.io/en/latest/css-groupes-reference.html#lingu-names-and-aliases

Một số mẫu vỏ:

Shell:      console, shell
Bash:       bash, sh, zsh
Powershell: powershell, ps
Dos:        dos, bat, cmd

Thí dụ:

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

14

sử dụng gói đan

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

ví dụ:

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

bạn cũng có thể dùng:

  • engine='sh' cho vỏ
  • engine='python' cho trăn
  • engine='perl', engine='haskell'Và một loạt các ngôn ngữ khác giống C. và thậm chí gawk, awkvv

2
Không làm gì trên tệp .md cục bộ? Nó có phải là một tài liệu phục vụ web để làm việc không?
javadba

9

Theo tài liệu từ GitHub liên quan đến các khối mã cú pháp được tô sáng

Chúng tôi sử dụng Linguist để thực hiện phát hiện ngôn ngữ và tô sáng cú pháp. Bạn có thể tìm ra từ khóa nào hợp lệ trong tập tin ngôn ngữ YAML .

Được hiển thị trên GitHub, consolelàm cho các dòng sau bảng điều khiển màu xanh. bash, shhoặc shelldường như không "làm nổi bật" nhiều ... và bạn có thể sử dụng poshcho PowerShell hoặc CMD.


7

Nếu chỉ cần làm nổi bật từ đầu tiên là lệnh, vì vậy tôi thường sử dụng properties:

```properties
npm run build
```  

Tôi có được một cái gì đó như:

chạy npm xây dựng


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.