Skip to content

รั้วโค้ด

รั้วโค้ดช่วยคร่อมบล็อกโค้ดได้อย่างสะดวก อ่านง่าย และรองรับการไฮไลต์ตามภาษาโปรแกรม

ไวยากรณ์พื้นฐาน

ใช้เครื่องหมายแบ็กทิก ``` หรือทิลด์ ~~~ สามตัวคร่อมโค้ด:

markdown
```
function hello() {
  console.log('Hello');
}
```

หรือ:

markdown
~~~
echo "Hello"
~~~

ข้อควรระวัง: จำนวนแบ็กทิกเปิดและปิดต้องเท่ากัน และอย่าผสม ``` กับ ~~~ ในบล็อกเดียวกัน

ระบุภาษาเพื่อไฮไลต์

เพิ่มชื่อภาษาหลัง ``` เพื่อเปิดไฮไลต์ไวยากรณ์:

markdown
```javascript
export function add(a, b) {
  return a + b;
}
```

ตัวอย่างภาษา: javascript typescript python java bash json html css yaml toml เป็นต้น

ออปชันขั้นสูงที่พบบ่อย (ขึ้นกับแพลตฟอร์ม)

แสดงเลขบรรทัด/ไฮไลต์บรรทัด

markdown
```js {1,3-4}
// บรรทัดที่ 1 (ไฮไลต์)
const x = 1;
const y = 2; // บรรทัดที่ 3 (ไฮไลต์)
console.log(x + y); // บรรทัดที่ 4 (ไฮไลต์)
```

แสดงชื่อไฟล์

markdown
```tsx title="App.tsx"
export const App = () => <h1>Hello</h1>;
```

เริ่มเลขบรรทัดจากค่าอื่น

markdown
```python {startLine: 41}
print('เริ่มนับจากบรรทัดที่ 41')
```

หมายเหตุ: ไวยากรณ์พารามิเตอร์ของบล็อกโค้ดแตกต่างไปตามตัวเรนเดอร์ (เช่น VitePress, Shiki, Prism)

กรณีมีแบ็กทิกในโค้ด

ถ้าโค้ดภายในมีแบ็กทิก ให้ขยายจำนวนแบ็กทิกรอบนอก:

markdown
เนื้อหาที่มีแบ็กทิกสามตัว
````

## ข้อผิดพลาดที่พบบ่อย

```markdown
❌ ปิดบล็อกไม่ครบจำนวนแบ็กทิก
```js
console.log('hello')
``

✅ ควรเป็น
```js
console.log('hello')
```
```

```markdown
❌ ระบุภาษาผิด เช่น ```jsn
✅ ใช้ ```json
```

## แนวปฏิบัติที่ดี

- โค้ดสั้นมากใช้แบบอินไลน์ `code` จะอ่านง่ายกว่า
- โค้ดยาวให้ใช้รั้วโค้ดและระบุภาษาเสมอ
- ไม่นำข้อมูลลับ (token/secret) ใส่ในตัวอย่าง
- เพิ่มคอมเมนต์สั้น ๆ เพื่อช่วยผู้อ่านเข้าใจบริบท

## ตัวอย่างการใช้งานจริง

### เอกสาร API

````markdown
```bash
curl -X POST https://api.example.com/login \
  -H "Content-Type: application/json" \
  -d '{"email":"user@example.com","password":"pwd"}'
```

```json
{ "success": true, "token": "..." }
```
````

### คู่มือการติดตั้ง

````markdown
```bash
brew install node
node --version
```
````

## ไวยากรณ์ที่เกี่ยวข้อง

- [โค้ด (พื้นฐาน)](/th/basic/code)
- [ไฮไลต์ข้อความ](/th/extended/highlight)
- [รายการงาน](/th/extended/task-lists)

สร้างโดย www.markdownlang.com