Dalam file konfigurasi, saya memiliki kunci yang ingin saya tetapkan URL. Masalahnya adalah bahwa YAML mengartikan: dan - karakter sebagai pembuatan pemetaan atau daftar, sehingga memiliki masalah dengan garis
url: http://www.example-site.com/
(keduanya karena titik dua berikut http dan tanda hubung di tengah)
Apakah ada cara eksplisit untuk melarikan diri ':' dan '-'? Atau akankah itu berhasil menempatkan semuanya dalam tanda kutip tunggal dan menyebutnya sehari?
Jawaban:
Tanda kutip:
Untuk memperjelas, saya maksudkan "mengutip nilai" dan awalnya berpikir semuanya adalah nilai. Jika
http://www.example-site.com/
nilainya, cukup kutip seperti ini:sumber
- 'PS4="+(${BASH_SOURCE}:${LINENO}): ${FUNCNAME[0]:+${FUNCNAME[0]}(): }"'
Yang juga berfungsi dan bahkan lebih bagus untuk teks multiline yang panjang, adalah menempatkan teks Anda di lekukan di baris berikutnya, setelah tanda pipa atau lebih besar dari:
Sebuah pipa mempertahankan baris baru, sebuah tanda gt mengubah semua baris berikut menjadi satu string panjang.
sumber
>-
atau|-
untuk mencegahnya.- >
tetapi item setelah yang pertama diabaikan.- |
dan kemudian pada baris baru saya membuat indentasi teks item daftar sehingga karakter pertama berbaris dengan pipa. Saya harap itu membantu, itu berhasil bagi saya dalam file lokal Rails 4.2.Menurut spec YAML, baik
:
yang-
seharusnya maupun yang seharusnya tidak menjadi masalah.:
hanya pemisah kunci dengan spasi setelahnya, dan-
hanya indikator larik di awal baris dengan spasi setelahnya.Tetapi jika implementasi YAML Anda memiliki masalah dengannya, Anda berpotensi memiliki banyak opsi:
Namun, tidak ada bentuk pelarian yang mungkin dilakukan dalam " gaya polos ".
sumber
Kutipan, tapi saya lebih suka mereka hanya pada nilai:
Menempatkan mereka di seluruh baris sepertinya dapat menyebabkan masalah.
sumber
Cara lain yang bekerja dengan parser YAML yang digunakan di Jekyll:
Colon yang tidak diikuti oleh spasi tampaknya tidak mengganggu parser YAML Jekyll, di sisi lain. Tidak ada tanda hubung.
sumber
Jika Anda menggunakan
@ConfigurationProperties
dengan Spring Boot 2 untuk menyuntikkan peta dengan kunci yang berisi titik dua maka Anda perlu tingkat tambahan untuk melarikan diri menggunakan tanda kurung di dalam tanda kutip karena pegas hanya memungkinkan karakter alfanumerik dan '-', menghapus sisanya. Kunci baru Anda akan terlihat seperti ini:Lihat masalah github ini untuk referensi.
sumber
Saya datang ke sini mencoba untuk mendapatkan tugas Command Line Azure DevOps saya bekerja. Hal yang berhasil bagi saya adalah menggunakan karakter pipe (
|
). Penggunaan>
tidak berhasil.Contoh:
sumber
.gitlab-ci.yml
, tetapi sampai saya membutuhkan pipa '|' dalam skrip - gagal diam-diam di atasnya :(