Literal
Semua literal primitif di Lua dapat digunakan. Ini berlaku untuk angka, string, boolean, dan nil.
Berbeda dengan Lua, pemisah baris diizinkan di dalam string bertanda kutip tunggal maupun ganda tanpa urutan escape:
some_string = "Here is a string that has a line break in it."
-- Anda dapat mencampur ekspresi ke dalam literal string dengan sintaks #{}.-- Interpolasi string hanya tersedia pada string dengan tanda kutip ganda.print "I am #{math.random! * 100}% sure."some_string = "Here is a string that has a line break in it."
-- Anda dapat mencampur ekspresi ke dalam literal string dengan sintaks #{}.-- Interpolasi string hanya tersedia pada string dengan tanda kutip ganda.print "I am #{math.random! * 100}% sure."Literal Angka
Section titled “Literal Angka”Anda bisa menggunakan garis bawah pada literal angka untuk meningkatkan keterbacaan.
integer = 1_000_000hex = 0xEF_BB_BFbinary = 0B10011integer = 1_000_000hex = 0xEF_BB_BFbinary = 0B10011String Multibaris YAML
Section titled “String Multibaris YAML”Prefiks | memperkenalkan literal string multibaris bergaya YAML:
str = | key: value list: - item1 - #{expr}str = | key: value list: - item1 - #{expr}Ini memungkinkan penulisan teks multibaris terstruktur dengan mudah. Semua pemisah baris dan indentasi dipertahankan relatif terhadap baris non-kosong pertama, dan ekspresi di dalam #{...} diinterpolasi otomatis sebagai tostring(expr).
String Multibaris YAML secara otomatis mendeteksi prefiks spasi awal yang sama (indentasi minimum di seluruh baris non-kosong) dan menghapusnya dari semua baris. Ini memudahkan untuk mengindentasi kode secara visual tanpa memengaruhi isi string yang dihasilkan.
fn = -> str = | foo: bar: baz return strfn = -> str = | foo: bar: baz return strIndentasi internal dipertahankan relatif terhadap prefiks umum yang dihapus, sehingga struktur bertingkat tetap rapi.
Semua karakter khusus seperti tanda kutip (") dan backslash (\) di dalam blok YAMLMultiline di-escape secara otomatis agar string Lua yang dihasilkan valid secara sintaks dan berperilaku sebagaimana mestinya.
str = | path: "C:\Program Files\App" note: 'He said: "#{Hello}!"'str = | path: "C:\Program Files\App" note: 'He said: "#{Hello}!"'