Dukungan Format Komentar
Anda dapat menambahkan berbagai konten ke komentar, termasuk sintaks Markdown yang diperluas dan tag HTML.
Dukungan Format
Kami mendukung CommonMark lengkap (sintaks Markdown standar), beserta ekstensi berikut:
- Tabel gaya GFM
- Strikethrough gaya GFM
- Subskrip dan superskrip
- Emoji
- Penyorotan blok kode
- Formula
GFM
Github Flavored Markdown
Sementara itu, Anda dapat dengan bebas menyisipkan konten HTML apapun tanpa memicu mekanisme perlindungan.
Dukungan Pratinjau Terbatas
Untuk mengontrol ukuran klien, kami hanya menempatkan parser Markdown yang kecil di klien resmi @waline/client, yang menyebabkan banyak tata bahasa tidak ditampilkan dengan benar di panel pratinjau (namun tetap dapat ditampilkan dengan benar di area komentar).
Ini mencakup batasan berikut:
Sintaks emoji standar (mis. 🎉
:tada:) tidak ditampilkan dengan benarSubskrip dan superskrip (mis.:
H~2~O,x^2^) tidak dapat ditampilkan dengan benarSintaks
, yaitu formula matematika (mis.:$a = 1$) tidak dapat dirender secara default.Saat menggunakan klien resmi, Anda dapat mengkustomisasi rendering
dalam pratinjau dengan menetapkan opsitexRenderer. Lihat Cookbook → Menggunakan renderer kustom.Di bawah highlighter default, blok kode akan disorot dengan warna acak dengan pembatas tertentu.
Saat menggunakan klien resmi, Anda dapat mengkustomisasi penyorotan kode saat pratinjau dengan menetapkan opsi
highlighter. Lihat Cookbook → Penyorotan Kode Kustom.
Selengkapnya
Prinsip
Mempertimbangkan ukuran paket, klien menggunakan
markeduntuk rendering dan menggunakan highlighter < 1kb secara default, serta tidak menyertakan renderer , sehingga mengakibatkan keterbatasan di atas.Ketika pengguna mengirim komentar, klien menyisipkan gambar Emoji kustom dan mengirim komentar asli ke server.
Server menerima teks asli, menggunakan
markdown-ituntuk merender markdown dengan benar bersama plugin yang relevan, menggunakanprismjsuntuk menyorot blok kode sesuai bahasa, dan melakukan rendering sesuai pengaturan pengguna, lalu melakukan pemrosesan XSS.Setelah pemrosesan selesai, server akan menyimpan konten rendering yang benar dan mengembalikannya ke klien saat diperlukan untuk memastikan tampilan normal area komentar.
