为什么我总觉得 yml 文件格式很奇葩

2019-04-12 10:40:19 +08:00
 NoKey
从第一次见到 yml 文件到现在,我依然觉得这个文件格式很奇葩
一直无法接受和使用这种文件格式
9673 次点击
所在节点    程序员
58 条回复
hoyixi
2019-04-12 12:05:18 +08:00
你知道 stylus 吗?
trait
2019-04-12 12:08:59 +08:00
@wangxiaoaer toml 简直完美 没觉得难读
whileFalse
2019-04-12 12:10:10 +08:00
@mcfog 对,所以其实不用那些 feature 就好了。
yaml 大部分用法还是代替 json 吧。
abmin521
2019-04-12 12:15:59 +08:00
长配置 yaml 还是很爽的
推荐阅读 https://linux.cn/article-10423-1.html
@wesnow
shawndev
2019-04-12 12:18:56 +08:00
看来因为 tab 吃亏的不止我一个……不过 json 也确实不太适合用于配置文件。目前看来微软使用的 ini 和苹果使用的 plist 还是比较好的选择
shawndev
2019-04-12 12:19:41 +08:00
还是补充一句吧,plist 优于 json 在于可以注释,ini 优于 json 在于冗余信息少,而且直观
lincanbin
2019-04-12 12:24:19 +08:00
JSON 不支持注释,数组不支持,
lincanbin
2019-04-12 12:24:36 +08:00
数组不支持以,结尾
jsthon
2019-04-12 12:28:20 +08:00
TAB 真的是害人不浅
liuxey
2019-04-12 13:08:11 +08:00
properties
wangxiaoaer
2019-04-12 14:03:37 +08:00
@wesnow #18 properties 默认不是 utf-8 编码,遇到中文就跪了
version
2019-04-12 14:06:36 +08:00
yml 兼容性好很多.
json 配置.比较坑.特别是数组的那些配置.
json 新标准很多人不知道.,不好统一和推广.或者识别..所以很多开源都推荐 yml 了.

pm2 用 yml 靠谱点.json 配置容易环境变量参数不生效
HangoX
2019-04-12 14:07:28 +08:00
properties 主要问题是长吧?阅读起来比较困难,json 主要是不好编辑,所以就出现了 yaml,编辑起来的确方便
ojbkojbk
2019-04-12 14:15:23 +08:00
yml 可读性高这一条就可以秒杀 properties
icylogic
2019-04-12 14:16:12 +08:00
作为一个,人类易读,易写,同时可以支持比较复杂的配置和数据格式

- yaml 用缩进真是太可怕了,我能接受 python 作为代码用缩进控制逻辑,但配置文件不应该这么搞。而且过于复杂。
- json 噪音太多,没有标准注释
- ini, conf 表达能力弱
- xml 噪音太多,其他问题倒不大,可以勉强接受
- 其他格式 太小众的个人项目 /没有一个大项目在用 /没有多语言比较成熟的 binding

我选择 toml ……
magicdawn
2019-04-12 14:40:08 +08:00
好用啊
btw prettier 也支持 yaml 了
https://prettier.io/docs/en/index.html
runze
2019-04-12 14:43:21 +08:00
jhsea3do
2019-04-12 16:12:08 +08:00
docker-compose / etcd 用 yaml 了很多年 已经习惯了
rockyou12
2019-04-12 16:16:50 +08:00
gradle 这种用代码来做 dsl 才配置文件的未来,可简单可复杂,又有无穷的表达能力
biossun
2019-04-12 17:05:06 +08:00
其实你需要的只是一个支持 yaml 语法检查的编辑器,甚至它可以自动帮你修复一些语法格式上的问题。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/554353

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX