การประกอบรหัสเป็นหนึ่งในลักษณะที่แข็งแกร่งที่สุดของ Markdown. ไม่ว่าคุณจะบันทึกฟังก์ชัน การแสดงคําสั่งปลายทาง หรือการเขียนบทเรียน การทํานองรหัส Markdown จะทําให้รหัสแตกต่างกันอย่างเห็นได้ชัด การจัดรูปแบบอย่างถูกต้อง และ (บนแพลตฟอร์มส่วนใหญ่) การระบุการออกแบบ คู่มือนี้ครอบคลุมทุกอย่างเกี่ยวกับ Markdown โบล็อกโค้ด.
รหัสในเส้น
ปิดสริปต์สั้นหรือคําพูดเดียวใน Backticks เดียว:
Use `console.log()` to print output.
Set the variable with `const x = 42;`.
The file is saved as `README.md`.
รูปแบบโค้ดอินไลน์ ทําให้มีตัวอักษรในพื้นที่เดียว ซึ่งแตกต่างจากข้อความรอบตัว ใช้สําหรับ:
- ชื่อฟังก์ชันและวิธี:
addEventListener() - ชื่อตัวแปร:
isLoading - ชื่อไฟล์:
package.json - อาร์กูเมนต์การสั่งการ:
--verbose - การแสดงรหัสสั้น
หากรหัสในระบบของคุณมี Backtick ใช้ Backtick สองตัวเพื่อพับมัน:
`` `backtick inside` ``
โบล็อกโค้ดที่ติดกั้น
สําหรับรหัสหลายแถว ใช้ backticks สาม (`) ในการเปิดและปิดบล็อก:
```
This is a code block.
It preserves all whitespace and line breaks.
No formatting is applied inside.
```
การกดขัด, ระยะ, และเส้นใหม่ทั้งหมดถูกอนุรักษ์อย่างแม่นยํา
การระบุคําบรรยาย
เพิ่มตัวจําแนกภาษาหลังการเปิด Backticks สามตัวเพื่อเปิดการเร่งสัญญากลาง:
```python
def greet(name: str) -> str:
return f"Hello, {name}!"
print(greet("World"))
```
```javascript
const greet = (name) => `Hello, ${name}!`;
console.log(greet("World"));
```
```bash
#!/bin/bash
echo "Hello, World!"
ls -la ~/Documents
```
การระบุภาษาทั่วไป
| ภาษา | ตัวจําแนก |
|---|---|
| ไพธอน | python |
| JavaScript | javascript or js |
| TypeScript | typescript or ts |
| HTML | html |
| CSS | css |
| JSON | json |
| YAML | yaml or yml |
| Bash / Shell | bash or sh |
| SQL | sql |
| Markdown | markdown or md |
| ญาวา | java |
| C | c |
| C++ | cpp |
| C# | csharp |
| ไป | go |
| สกัด | rust |
| รูบี้ | ruby |
| PHP | php |
| สวิฟท์ | swift |
| โคตลิน | kotlin |
| R | r |
| PowerShell | powershell |
| Dockerfile | dockerfile |
| XML | xml |
| TOML | toml |
| HTTP | http |
| Diff | diff |
บล็อคโค้ดที่มีการกด
การเขียนคําว่า Markdown ที่เก่ากว่าใช้การทับสเปซ 4 ตัวสําหรับบล็อกโค้ด:
function oldStyle() {
return "This is a code block";
}
นี้เป็น CommonMark-สอดคล้อง แต่อ่านได้น้อยกว่า และไม่สนับสนุนตัวจําแนกภาษา. แทนนั้นใช้บล็อกที่ติดกั้น (แบคทิกสามตัว)
การแปลงรหัสจากเอกสาร Word
ข้อความในระยะเดียวใน Word (Courier New, Consolas, ฯลฯ) เปลี่ยนแปลงเป็นโค้ดในเส้นเมื่อคุณใช้ WordToMD. Multi-line code in Word converts depending on how it was formatted:
- กระทู้ตัวอักษรที่ใช้ในพื้นที่เดียว → อาจกลายเป็นสนิปต์โค้ดในเส้นหลายชิ้น
- Word สไตล์โค้ด → แปลงเป็นบล็อกโค้ด
- แบล็กข้อความตามคําแปล → อาจต้องใช้การปักรั้วด้วยมือ
หลังการแปลง ตรวจสอบส่วนโค้ด และเพิ่มรั้วที่เหมาะสม หากจําเป็น
- ค้นหารหัสที่ควรจะเป็นบล็อก
- ปิดมันด้วยกระดูกหลังสามตัว
- เพิ่มตัวจําแนกภาษาที่เหมาะสม
ตัวอย่างเฉพาะภาษา
คําขอ HTTP
```http
POST /api/users HTTP/1.1
Host: api.example.com
Content-Type: application/json
Authorization: Bearer TOKEN
{
"name": "Alice",
"email": "alice@example.com"
}
```
การสั่งการทางปลายทาง
```bash
npm install
npm run build
npm run dev
```
ความแตกต่างการออก
```diff
- const oldValue = "hello";
+ const newValue = "world";
console.log(newValue);
```
การตั้งค่า YAML
```yaml
server:
host: localhost
port: 8080
debug: true
database:
url: postgresql://localhost:5432/mydb
```
บล็อคโค้ดที่ติดตัว (สําหรับเอกสาร)
เมื่อบันทึก Markdown เอง ใช้ 4 แบ็คติ๊ก เพื่อพับบล็อกที่มี 3 แบ็คติ๊ก:
````markdown
```python
# This is a code block inside documentation
```
````
การสนับสนุนแพลตฟอร์ม
| แพลตฟอร์ม | รหัสในเส้น | บล็อค ที่ มี เสา | การระบุคําบรรยาย |
|---|---|---|---|
| GitHub | ✅ | ✅ | ✅ |
| GitLab | ✅ | ✅ | ✅ |
| Obsidian | ✅ | ✅ | ✅ |
| GitBook | ✅ | ✅ | ✅ |
| Notion | ✅ | ✅ | ✅ |
| Confluence (Markdown) | ✅ | ✅ | ✅ |
| VS รหัส | ✅ | ✅ | ✅ |
เลขแถว
มาตรฐาน Markdown ไม่สนับสนุนเลขแถวในบล็อกโค้ด บางแพลตฟอร์มและเครื่องสร้างเว็บไซต์แบบสแตติกเพิ่มเติมนี้ผ่านโปรแกรม plugins:
- Prism.js (ใช้โดย SSG มากมาย) เพิ่ม
{numberLines: true}ในรหัสรั้ว - GitHub ไม่มีตัวเลขเส้นพื้นบ้านในการแสดง Markdown (ใช้ GitHub ดูความผิดแทน)
- GitBook เลขแถวผ่านการตั้งค่าบล็อกโค้ด
การสําเนารหัสจากบล็อก
กิตฮับและแพลตฟอร์มหลาย ๆ เพิ่มปุ่ม Copy ให้กับบล็อกโค้ดโดยอัตโนมัติ นี่คือการปรับปรุงการทําผล ไม่ต้องการอะไรพิเศษใน Markdown ของคุณ
FAQ
ทําไมโครงการบล็อคโค้ดของฉันไม่ถูกระบุ? หรือตัวจําแนกภาษาหายไป หรือถูกเขียนผิด หรือแพลตฟอร์มไม่สนับสนุนภาษาเฉพาะเจาะจง ตรวจสอบรายการตัวเลขด้านบน
ฉันจะแสดง backticks ภายในบล็อกโค้ดอย่างไร? ภายในบล็อคโค้ดที่ติดรั้ว Backticks จะถูกถือว่าเป็นตัวอักษรตามคําแปล เพียงแค่รั้วหลังสามคันที่ต้องการการจัดการพิเศษ
เอกสาร Word ของผมมีรหัสสัญลักษณ์สีสันที่เร่งเน้น จะ WordToMD รักษาสี? ไม่มี Markdown โบล็อกรหัสไม่อนุรักษ์การจัดรูปแบบสี. WordToMD เปลี่ยนแปลงข้อความเป็นบล็อกโค้ด จากนั้นการเริงเรอร์ Markdown จะนําการเริงเรอร์การเริงเรอร์การเริงเรอร์มาใช้ โดยใช้ตัวจําแนกภาษา
ผมสามารถระบุเส้นตรงในบล็อกโค้ดได้หรือไม่?
มาตรฐาน Markdown ไม่สนับสนุนเรื่องนี้ บางแพลตฟอร์ม (เช่น Astro กับ Shiki, หรือ Hugo) สายการสนับสนุนที่เน้นผ่านความคิดเห็น: {1,3-5} หลังตัวจําแนกภาษา
คู่มือที่เกี่ยวข้อง
- Markdown คําบรรยาย คู่มืออ้างอิงฉบับย่อ รายละเอียดเต็ม
- Word ถึง API เอกสาร เอกสารที่ใช้โค้ดหนัก
- Word ถึง GitHub Markdown GitHub การออกแบบรหัสเฉพาะ
การสรุป
บล็อคโค้ด Markdown เป็นบล็อคที่เรียบง่าย: Backticks สําหรับบล็อคในเส้น, triple backticks กับตัวจําแนกภาษาสําหรับบล็อค หลังจากแปลงเอกสาร Word ด้วย WordToMD, ตรวจสอบว่าข้อความในระยะเดียวถูกบรรจุไว้อย่างถูกต้องในสัญลักษณ์โค้ด และเพิ่มตัวจําแนกภาษาเพื่อการระบุการออกแบบคําศัพท์ที่เหมาะสมในแพลตฟอร์มเป้าหมายของคุณ