単一のn
文字はYAMLで特別な意味を持ちますか?私の崇高な3つのテキストエディタは他の文字列の値とは異なる色で強調表示されているため、私は本当にそれの理由を理解していないので私は尋ねています。YAMLの 'n'文字に特別な意味がありますか?
答えて
TL; DR。そのn
は、ブール値 "False"のYAMLでの2009年以前の正規表現です。
全く場合は、明示的インタフェースを介して、YAML 1.1のファイルを編集することが指定されていれば、それだけでそのn
を強調すべき崇高は、n
として、デフォルトでは2009年以来、YAMLで、このような表現を持っていないことを強調するべきではありません文書の上部にある指示文%YAML 1.1
を使用して文書がそのように認識された場合。 YAMLで
スカラーは異なるフォーマット(from the YAML 1.2 specification)を有することができる:
をYAMLはスカラーはいくつかの形式で提示することが可能になります。例えば、整数「11」は「0xB」と書くこともできる。タグは、等価性テストで使用するために、フォーマットされたコンテンツを標準形式に変換するためのメカニズムを指定する必要があります。ノードスタイルと同様に、フォーマットはプレゼンテーションの詳細であり、シリアライゼーションツリーや表現グラフには反映されません。
古い1.1仕様では、その段落で異なる第二の文を持っている、directly mentions booleansこと:
例えば、「真」ブールも「はい」と書き込まれることがあります。
プログラミング言語でYAMLスカラーがどのように構築されるかは、パーサーが使用するスキーマによって異なります。最も基本的なスキーマは、すべてのスカラーを文字列(すなわち、解釈なし)として構築する。
より実用的なスキーマでは、標準形式(通常、整数、ブール値、日付時刻スタンプなどのコンピュータプログラミング型を表すときに使用される)と一致するスカラー(通常は正規表現を介して)そのようなタイプの構築。たとえば、42
は標準的な表現ですが、入力側では同じ整数値に対しては0x2a
と0o52
も許可されています。 YAML 1.2で
true
core schemas、True
、TRUE
、false
、False
とFALSE
—拡張のみtrue
とfalse
を可能にする単純なJSONスキーマに一致しながら、ブール値が正則形式true
とfalse
に消毒されたため。
。これは、広範囲y
、Y
、yes
、Yes
、YES
、n
、N
、no
、No
、NO
、true
、True
、TRUE
、false
、False
の全てに合致しながら、正規表現はy
とn
たfrom YAML 1.1を変更しましたFALSE
,on
,On
,ON
,off
,Off
,OFF
。プログラム内の一致する文字列が負荷にブール値として解釈されないようにするために、明示的な引用符でYAMLで表現されなければならなかったので、これは多くの場合、混乱につながりました。
サブライムは、ブール値がn
のように書くことができYAML 1.1仕様をサポートしているようです。 YAML 1.2仕様は2009年からなので、私は本当にないこと崇高は、そうすることで正しいこと、およびYAML文書は、明示的な指示%YAML 1.1
で始まっていない限り、ブール値としてn
を解釈するべきではありません。 (あなたがインターフェースにそれを示していないので、ドキュメントにはないので、私はあなたが持っているとは思わない)。
はもちろん崇高のオリジナルリリースはYAML 1.2仕様を先行していますが、8年後、彼らは更新することによって、これを修正しているだろうことを望んでいるだろう。別のそのような変更は、YAML 1.2の文字列ですが、YAML 1.1(8進数)の整数だった0123
のような0
で始まるスカラー、です。 YAMLモードが正しく更新されているかどうかを確認するためにテストとして使用するかもしれません:0123
は、明示的にYAML 1.1を指定しない限り、エディタで強調表示しないでください。
もちろん、YAML 1.1のみをサポートする旧式のライブラリもありますが、それを使用することさえあるかもしれませんが、デフォルトのがエディタにあるという言い訳はありません。
あなたの答えは上です。速いテストを行い、スカラー 'yes'、' off'、 '0123'はすべて文字列スカラーとは異なる色で強調表示されます。 SublimeはYAML 1.1のハイライトを立てているようです。 – Xukrao
@Xukrao私は(https://www.sublimetext.com/docs/3/syntax.html)来サブライム(私は80年代半ば以来のEmacsユーザーとなっている)、その[独自の構文の強調表示の設定ファイル]にビットを見て'%YAML 1.2'ディレクティブで置き換えます。誰かがYAML 1.1とYAML 1.2との間の本当の違いを見逃したように見える – Anthon
- 1. `origin`には特別な意味がありますか?
- 2. @typesには特別な意味がありますか?
- 3. makefileに$(MAKE)に特別な意味はありますか?
- 4. .git/refsのどのディレクトリに特別な意味がありますか?
- 5. Does || CSSのコメントには特別な意味がありますか?
- 6. NPMの構文が異なると、Angularパッケージに関して何か特別な意味がありますか?
- 7. 「ベアラ」認可ヘッダには特別な意味がありますか?
- 8. Regexの特殊文字の意味
- 9. WallpaperManagerのブロードキャストレシーバーに特別な意図があります
- 10. 無意味な文字!
- 11. 次のCase文は意味がありますか?
- 12. Pythonコードで1文字の意味が分かりません
- 13. OpenNLPで意味のあるものは意味がありますか?
- 14. Postgresの大文字と小文字の区別:Lower()の意味
- 15. Perlで特別な変数$#_は何を意味しますか?
- 16. PDFファイル内の文字列<! - FTCACHE-1->の意味はありますか?
- 17. 文字列を赤字にする前に圧縮することは意味がありますか?
- 18. Redis:Multi-AZのない複製は意味がありますか?
- 19. PHPの@文字の意味
- 20. AND、OR文字列はPLYでは特別な意味を持っていますか?
- 21. sql join文のテーブルの順番に意味がありますか
- 22. 別の意図がありますか?
- 23. 意味2ルータリンク意味URLあり
- 24. 静的なconstexpr変数は意味がありますか?
- 25. Bashの-nの意味
- 26. YAMLファイルの中括弧{{{}は何を意味しますか?
- 27. ゲームセンター:addRecipientsWithPlayerIDs ...どのように意味がありますか?
- 28. Javaではこれらの特殊文字は何を意味しますか?
- 29. in_arrayは意味がありません
- 30. BINARY値を意味のある文字列に変換する
それはブール値を書き込むための方法の一つだ:偽、いいえ、オフ、はい、で、Y、真、N。それを文字列として望むなら、それを引用する必要があります。 – jasonharper