【问题标题】:Fix linting errors in yaml files修复 yaml 文件中的 linting 错误
【发布时间】:2019-10-11 15:18:06
【问题描述】:

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

【问题讨论】:

    标签: python yaml lint


    【解决方案1】:

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

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

    【讨论】:

    • 正是我需要的,太好了!
    【解决方案2】:

    这可能无法解决您将遇到的所有 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)
    

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

    【讨论】:

      猜你喜欢
      • 2019-07-19
      • 2021-02-05
      • 1970-01-01
      • 2021-05-18
      • 2022-07-31
      • 2019-10-29
      • 2017-10-20
      • 2011-10-23
      • 2017-09-15
      相关资源
      最近更新 更多