yaml Samouczek
Pierwsze kroki z yaml
Szukaj…
Uwagi
YAML jest rekurencyjnym skrótem dla „ Y AML A in't M arkup L anguage”. Jest to czytelny dla człowieka standard serializacji danych dla wszystkich języków programowania.
Wersje
| Wersja | Data wydania |
|---|---|
| 1.0 | 2004-01-29 |
| 1.1 | 2005-01-18 |
| 1.2 | 01.10.2009 |
Podstawowa składnia Yamla
YAML to format tekstowy umożliwiający przechowywanie danych strukturalnych w hierarchii. YAML został zaprojektowany tak, aby był czytelny dla ludzi i maszyn przy minimalnym nakładzie pracy. Specyfikację YAML można znaleźć na stronie yaml.org . Istnieje również karta referencyjna
Komentarze zaczynają się od # i przechodzą do nowej linii, komentarze muszą być oddzielone od innych tokenów spacją. Białe znaki nie są wolne, wcięcia muszą być spacjami, a nie tabulatorami. YAML weźmie pod uwagę, że zawarte są w nim wiersze poprzedzone większą liczbą spacji niż klucz nadrzędny. Ponadto wszystkie linie muszą być poprzedzone taką samą ilością spacji, aby należeć do tej samej mapy.
YAML ma sekwencje i mapowania jako typy kolekcji, oba mogą być reprezentowane w stylu przepływu i bloku.
Sekwencja ciągów skalarnych w YAML wygląda następująco:
[ one, two, three ] # flow style
# or block style
- one
- two
- three
Mapowanie składa się z par klucz / wartość:
index: 4 # block style
name: nali
# or
{ index: 4, name: nali } # flow style
# or nested (equivalent of { level: { one: { two: fun } } }):
level:
one:
two: fun
Podstawowe typy YAML
integer: 25
string: "25"
float: 25.0
boolean: true
null type: null
Dane sekwencyjne YAML
Ten sam poziom listy:
- Cat
- Dog
- Goldfish
Lista zagnieżdżona:
-
- Cat
- Dog
- Goldfish
Komentarze
# This comment occupies a whole line
- some item # This comment succeeds content of a line
- http://example.com/#nocomment
- "This # does not introduce a comment."
- |
This is a block scalar.
A # inside it does not introduce a comment.
# unless it is less indented than the first line (this is one)
Zauważ, że aby # mógł wprowadzić komentarz, musi albo
- występują na początku linii lub
- być poprzedzone spacją.
# zawsze musi następować spacja. # wewnątrz cytowanych skalarów nigdy nie rozpoczyna komentarzy. # może wprowadzać komentarze na końcu blokowych skalarów, ale dlatego musi być mniej wcięte niż podstawowe wcięcie bloku skalarnego (co jest zwykle określane przez wcięcie jego pierwszej niepustej linii).
Mapowania stylów blokowych
Z niejawnymi kluczami:
key: value
another key:
- some
- more
- values
[1, 2, 3]: last value, which has a flow style key
Z niejawnymi i jawnymi kluczami:
? key
: value
another key:
- some
- more
- values
? [1, 2, 3]
: last value, which has a flow style key
key , another key i [1, 2, 3] są kluczami tego samego odwzorowania, chociaż używają różnych stylów klawiszy.
Zagnieżdżone odwzorowania:
first level:
second level:
? third level
:
forth level: value of implicit key
? third level, second key
: value of explicit key
?
mapping as: key of
another: mapping
: scalar value of mapping key
first level, second key:
last value
Dzielenie ciągów tekstowych na wiele wierszy
- Without quotes:
You can just
split a long piece of text like this.
- With quotes:
"[But be careful:
if you \"need\" punctuation, put double quotes around it. You can ev\
en split without spaces by using backslashes."
- Or single quotes:
'This works
but isn''t as flexible'
- If you want to keep those new line characters: |
Then do
it this way with
a pipe (|) character. (This string has three \n characters)
- Or you can have just the one final new line: >
This string has
just one \n character, at the very end.
- Block indicators:
Look up >-, >+, |- and |+ for fine tuning.
Uciekające postacie
YAML obsługuje trzy style notacji ewakuacyjnej:
Ucieczka jednostki
za. spacja: „& # x20;”
b. dwukropek: „& # 58;”
do. ampersand: „& amp;”
Ucieka Unicode
za. spacja: „\ u0020”
b. pojedynczy cytat: „\ u0027”
do. podwójny cytat: „\ u0022”
Cytowane ucieczki
za. podwójny cytat w pojedynczym cytacie: „Czy„ zawsze kłamię ”to prawdziwe stwierdzenie?
b. zagnieżdżony podwójny cytat: „Powiedziała:„ Odchodzę ””
do. zagnieżdżony pojedynczy cytat: „Był oniemiały:”