Skip to content
Konsultasi

Kontrak Code Block Shiki dan Short Lang ID

Saya kunci kontrak code block biar artikel tidak merusak render: lang id pendek, alias Shiki jelas, dan blok yang salah bentuk ditolak sebelum publish.

Adityo Guni Waluyo1 menit baca

Masalahnya bukan highlight, tapi window title

Perubahan ini lahir dari hal yang kelihatannya receh: javascript dan typescript memang bisa di-highlight, tapi window title code block jadi aneh. snippet.javascript muncul di tempat yang seharusnya script.js. Itu kecil, tapi cukup buat bikin output blog terasa nggak rapi. Saya nggak mau artikel teknis kelihatan setengah jadi cuma gara-gara label bahasa.

Shiki memang punya mekanisme alias bahasa resmi. Jadi solusinya bukan trik aneh, cuma normalisasi ke id pendek yang konsisten: js, ts, py, md, dan kawan-kawannya. Begitu alias dipetakan jelas, render tetap stabil dan label jendela juga waras.

Yang saya kunci di pipeline

Di level artikel, saya juga kunci bentuk code block. Bentuk aman cuma <pre><code class="language-...">. Fenced markdown mentah, <pre> tanpa <code>, atau token embed yang nyasar ke dalam code semuanya ditolak oleh verify. Itu sengaja. Artikel produksi nggak boleh bergantung pada keberuntungan render.

Ada satu hal yang saya suka dari batasan seperti ini: dia memaksa teks tutorial jadi jujur. Token embed di dalam code harus tetap literal, bukan dirender. Jadi pembaca lihat sintaks aslinya, bukan hasil yang sudah dibantu browser. Kalau struktur salah, lebih baik gagal sebelum publish daripada diam-diam rusak di halaman publik.