1

我以 doc 1.4 中的示例为我的 config.json 中的“漂亮打印”作业键。

"jobs" :   {
    "pretty-print" :    { 
        "general" :     { ..... },
        "comments" :    {  ...... },
        "blocks" :    { ....... }
    },

python Generate.py 产生这个:

警告: !未知的作业配置键“块” - 被忽略。
警告: !未知的作业配置键“评论” - 被忽略。
警告: !未知的作业配置键“一般” - 被忽略。

我查看了everywere,文档和来源,但不明白为什么

已编辑我正在使用 QooXdoo 1.4 和 Python 2.6

我正在使用从另一个系统生成的源 javascript 我需要重新格式化源 .js 并需要修改 QooXdoo 使用的标准设置

http://manual.qooxdoo.org/1.4.x/pages/tool/generator_config_ref.html我举个例子:

"pretty-print" :
{
  "general" :
  {
    "indent-string"        : "    "
  },
  "comments" :
  {
    "trailing" :
    {
      "keep-column"        : false,
      "comment-cols"       : [50, 70, 90],
      "padding"            : "    "
    }
  },
  "blocks" :
  {
    "align-with-curlies"   : false,
    "open-curly" :
    {
      "newline-before"     : "N",
      "indent-before"      : false
    }
  }
}

并在我的应用程序的 config.json 中
执行作业“pretty-print”但忽略设置

重新编辑我只有这个键“pretty-print”有问题,config.json的其他变体没问题

4

1 回答 1

2

你几乎是对的,你只是错过了一层嵌套。

地图的整体结构jobs如下(这里也有记录):

"jobs" : {
     "job-name" : {
          "pretty-print" : { ... }
          ...
     }
     ...
}

所以你只需要在“jobs”和“pretty-print”之间插入一个作业名;作业名称只是一个可自由选择的字符串。(您可以将“jobs”映射视为一个容器,将 [job-name] 视为此容器中的单个对象,以及“pretty-print”,以及您在 generator_config_ref.html 中看到的所有其他键,作为特定个体的属性)。

现在,您可以从头开始定义作业对象,例如通过给它一个唯一的名称,例如my-pretty-print. 但这需要您将所有必要的作业属性放在一起,以使作业成功运行(这在peer-keys注释中得到了暗示,并给出了许多关键描述)。

我宁愿推荐使用预定义的工作,并对其进行改进。在您的情况下,请使用默认作业pretty,并对其进行细化。通过在您自己的配置中命名作业,您pretty会自动继承预定义作业的所有属性。所以只需添加

"jobs" : {
    "pretty" : {}
}

到您的配置映射将创建一个自定义作业pretty,该作业与同名的默认作业完全相同(因为您没有任何更改)。现在您可以提供与默认工作不同的东西,例如

"jobs" : {
    "pretty" : { "general" : { "indent-string" : "    " }}
}

将使用所有默认设置,除了缩进字符串将有 4 个空格而不是 2 个。这应该可以帮助您。

于 2011-05-07T10:25:00.693 回答