在考 ansible. playbook 流程控制理解起来没啥问题. 这种缩进语法真的是... 给我整自闭了.
在考 ansible. playbook 流程控制理解起来没啥问题. 这种缩进语法真的是... 给我整自闭了.
|
xiaozDec 21, 2022 via Android
1
稍有不慎就报错,哈哈。我也觉得这种写法不太友好。尤其是复制粘贴的时候。
|
|
dcsuibianDec 21, 2022
2
你用的啥编辑器
|
|
dzdhDec 21, 2022
4
为啥 yaml 这么受推崇呢
|
|
sdk234Dec 22, 2022 via Android
6
习惯问题。我特别喜欢这种缩进语法,看着很舒服。😂
|
|
bgm004Dec 22, 2022 via Android
8
想起以前用 hexo 搭博客,因为 yaml 的缩进,一个问题卡一天。😢
|
|
9
很多人好像都没有意识到 yaml 是可以用括号的…
|
|
10
众所周知 yaml 是 json 的超集
不习惯的话写 json 就好了( |
|
dcsuibianDec 22, 2022
11
xml-->json-->yaml 。我觉得 yaml 挺好的。
XML 应该算老前辈了,配合 dtd 和 ide 写起来也很舒服。但总体来说确实复杂,文件庞大。 JSON 相比于 xml 精简了很多,而且其中的几种类型:数字、布尔、字符串、null 、对象(键值对)、数组(列表)。这些类型在其它语言里有对应。 但做配置不合适,因为 json 更多是为数据交换考虑的,语法严格(比如必须双引号、不能有多余的逗号),不允许有注释。这对解析器友好,但对手写的配置文件就不一样了。 yaml 的话,算是 JSON 的超集,我基本那它当一个更好写的 JSON 。JSON 的数据类型它都有,但写起来更方便舒服。 另外.properties 、.ini 就不说了,觉得不怎么样。 |
|
12
有人用 toml 的吗?感觉也还不错
|
|
13
@paradox8599 感觉还不如 yaml 。。
|
|
singerllDec 22, 2022 via Android
14
想在服务器上临时改个参数,经常 vim 敲完报错,还得切 vsc 之类的编辑器。。。
|
|
15
说的就跟真手写配置文件似的
还不是都复制一下改改 想想看是多删了一个括号好查出来 还是多删了个空格好查出来? |
|
chih758Dec 22, 2022 via Android
16
你可以用 jsonnet 写😉
|
|
17
你说这些配置文件,一届一届换了多少种格式了,改过吗?换汤不换药啊!
你 spring 、hexo 都在用 yaml 了,能用,但是快不了!出个缩进问题就卡半天,没这个能力知道吗? 再下去就要换 toml ,再不行就换魔改 dsl ,接下来没啥可换的啦。 Json 用的蛮好的,你把他换了干什么? |
|
IvanLi127Dec 22, 2022 via Android
18
数据结构不复杂的话,用 yaml 比 json 好太多了。复杂的话缩进是有点乱,不过 json 也一样吧。。。少写个花括号不也是很要命。我反正很喜欢 yaml ,不过写配置的话,我更喜欢 toml
|
|
isnullstringDec 22, 2022
19
看着头大,ini 直观些,哈哈哈
|
|
root01Dec 22, 2022
20
json 更恶心
|
|
ysn2233Dec 22, 2022
21
我感觉 yaml 还行啊,json 要写一大堆引号感觉更烦
|
|
22
大家都来用 toml 吧
|
|
weixiangzheDec 22, 2022
24
老派就是回到 json5, 新派就用 toml 吧
|
|
whileFalseDec 22, 2022 via iPhone
25
@wangxiaoaer 你可以在 yaml 里写 json 。不行就弄个小程序一键转吧
汇编用的蛮好的,为什么你非要换用高级语言呢。 |
|
perfectlifeDec 22, 2022 via Android
26
用 k8s 后 yaml 就写习惯了
|
|
mxT52CRuqR6o5Dec 22, 2022 via Android
27
你可能需要一个游标卡尺
|
|
KonysDec 22, 2022
28
yml 可以了, 比 xml 和 properties 文件强太多了
|
|
ysc3839Dec 22, 2022
29
@dzdh 个人猜测是出现得早,支持 merge keys 等比较实用的功能,以及强制格式可以大大增加可读性,且对专业用户来说并不会带来太多不便。比如用 Python 和其他不强制缩进语言对比,一些不注重代码格式的人写其他语言往往比较乱,而 Python 则乱得没那么厉害。
|
|
itskingnameDec 22, 2022
30
我觉得有这种感受的人,都是 Yaml 格式自己写得不规范。类似的还有觉得写 Python 代码要用游标卡尺。
正常情况下,Python 代码的嵌套缩进不会超过 3 层,超过了一定是代码本身有问题,是可以通过改进代码来减少缩进的。同理,Yaml 也是一样,你缩进十几层那肯定是因为写得不规范。 Yaml 是有类似变量的这种机制的,当你不得不深层嵌套的时候,是可以在顶层赋值给一个变量,然后在别处直接通过变量来引用,这样就可以避免深层缩进嵌套的问题。 |
|
securityCodingDec 22, 2022
31
yaml 挺好一目了然,ini json 写个配置能把人写吐了,尤其是 json
|
|
4BVL25L90W260T9UDec 22, 2022
32
Python 用缩进基本可以接受,代码复制来复制去的场景是不多见的。但是 yaml 这种配置用缩进真的是无语,配置文件还是经常需要复制的。连 Python 现在都用 pyproject.toml ,而不是 yaml 了。
|
|
adoalDec 22, 2022
33
缩进的语言那么多,只有 Python 和 YAML 这样用得广泛的才配被人骂😄
|
|
also24Dec 22, 2022
35
好像仍然很多人没意识到我前面说的 yaml 是可以用括号的。
那具体化一点,我们随便找个例子 version: "3.9" services: web: build: . ports: - "8000:5000" redis: image: "redis:alpine" 上面这一段,是可以等同于下面这一段的 {"version": "3.9","services": { "web": {"build": ".","ports": ["8000:5000"]}, "redis": {"image": "redis:alpine"} }} |
|
36
|
|
37
好像缩进有点问题,截图说明吧,下面这几种写法,都是有效的
|
|
GG668v26Fd55CP5WDec 22, 2022
38
是的,这玩意是真恶心,次看到就头大,每次改的时候小心翼翼。
|
|
GG668v26Fd55CP5WDec 22, 2022
39
如果在服务器上用 vim 改,一个复制粘贴下去我了个去
|
|
JsonNodeDec 22, 2022
40
每次改 clash 的配置文件复制粘贴之后缩进不对都想骂人
|
|
hxtheoneDec 22, 2022 via iPhone
41
人生苦短,新项目直接 toml
|
|
keenkillerDec 22, 2022
42
你用 jsonnet 生成啊……
|
|
mingsiDec 22, 2022 via Android
43
看好几个人推荐 toml 于是了解了一下,看起来是升级版的 ini ,只适合小项目玩玩
https://hitchdev.com/strictyaml/why-not/toml/ |
|
RicardooDec 23, 2022
47
看了一圈,没人用 json5
我倒挺喜欢的 |
|
53
@julyclyde #52
https://yaml.org/spec/1.2.2/#12-yaml-history The YAML 1.23 specification was published in 2009. Its primary focus was making YAML a strict superset of JSON. It also removed many of the problematic implicit typing recommendations. |
|
crazyweedsApr 14, 2023
55
ubuntu 下面编辑 netplan 配置,我已经吐了,无数遍了,都是失败。。没网络,数空格。要不是为了安装 rancher ,我绝对不会用 ubuntu ,因为 yaml !!!
|