修复 yaml 文件中的 linting 错误

问题描述 投票:0回答:3

我想修复 yamllint 给出的错误。就像 autotpep8 自动将 python 代码格式化为 PEP8 风格一样,我们是否有类似的 yaml 文件?或者 VSCode 和 Pycharm 有可用的插件吗?

python yaml lint
3个回答
9
投票

将此扩展用于 VSCODE。 它通过 yaml-language-server 为 Visual Studio Code 提供全面的 YAML 语言支持,并具有内置的 Kubernetes 和 Kedge 语法支持。

(Ctrl + Shift + O)
或在 Mac 中按
(option⌥ + shift⇧ + F)
查看文档大纲。


0
投票

yamllint 的作者建议安装这个 VSCode 扩展,它使用 yamllint(和其他 linter)。


-1
投票

这可能无法解决您遇到的所有 linting 错误, 但以下 Python 程序将删除任何不必要的引号 围绕标量,标准化 YAML,例如关于缩进 块样式序列和映射:

import sys
import ruamel.yaml

yaml = ruamel.yaml.YAML()
# uncomment the next line to change the default indentation (mapping=2, sequence=2, offset=0) 
# yaml.indent(mapping=4, sequence=4, offset=2)
data = yaml.load(sys.stdin)
yaml.dump(data, sys.stdout)

上面作为管道,您可以将最后两行替换为:

from pathlib import Path
path = Path(sys.argv[1])
data = yaml.load(path)
yaml.dump(data, path)

读取和写入文件,该文件的名称是提供给脚本的第一个参数。

© www.soinside.com 2019 - 2024. All rights reserved.