是否有NGINX配置文件的格式化程序/美化器?

时间:2013-12-08 20:57:36

标签: nginx formatting config

我知道这可能听起来有点愚蠢,但是我的NGINX配置文件中的一个就是格式化时的垃圾。它的工作原理和其他所有内容都是关于它的。

我试图找到某种美化或格式化程序,比如http://jsbeautifier.org/,但后来找到nginx配置文件而不是javascript,但到目前为止还没有运气。

我希望有人会提出建议。没有要求,只要它可以快速/懒惰地格式化NGINX配置文件!

谢谢!

3 个答案:

答案 0 :(得分:13)

我发现了一些可能符合您需求的项目:

  1. Nginx Formatter(python)by 1connect
    你可以得到它here
  2. 通过vasilevich的Nginx美化(js / nodejs) nginxbeautifier.com,可让您在网络浏览器中快速格式化配置。 您也可以在同一站点上获取命令行工具以在本地运行它。

答案 1 :(得分:4)

如果你的阻止行结束{},那么这个简单的压头可能对你有所帮助。

格式化您的所有配置,它只修复缩进。

原文为awk(source)

#!/usr/bin/awk -f
{sub(/^[ \t]+/,"");idx=0}
/\{/{ctx++;idx=1}
/\}/{ctx--}
{id="";for(i=idx;i<ctx;i++)id=sprintf("%s%s", id, "\t");printf "%s%s\n", id, $0}

或者在python中重写:

INDENT = ' ' * 4

def indent(contents):
   lines = map(str.strip, contents.splitlines())
   current_indent = 0
   for index,line in enumerate(lines):
       if (line.endswith('}')):
           current_indent -= 1

       lines[index] = current_indent * INDENT + line

       if (line.endswith('{')):
           current_indent += 1

    return ('\n').join(lines)

答案 2 :(得分:1)

我使用的JS格式化程序(例如http://jsbeautifier.org/)并不关心错误。