DotEnvy

Swift build status

DotEnvy 是一个用于 Swift 的 dotenv 文件解析器。它允许您从 .env 文件加载值,类似于 node.jsPythonRubyRust1 等库。

DotEnvy 支持多行字符串和变量替换。

文档

有关更详细的语法示例和 API 文档,请访问 DotEnvy 在 Swift Package Index 上的文档

支持的格式

dotenv 格式没有规范,但此库支持常用功能。语法类似于 Bash。示例

KEY=value
KEY2 = "quoted value"
 
 KEY3= unquoted value "with" quotes inside
# comment
KEY4 ='quoted value referring to ${KEY3}' # trailing comment
KEY5=unquoted value referring to ${KEY4}
KEY6="multiline
string"

错误报告

DotEnvy 具有对语法错误的有益错误报告。

let source = #"""
KEY="VALUE
"""#
do {
    _ = try DotEnvironment.parse(string: source)
} catch let error as ParseErrorWithLocation {
    let formatted = error.formatError(source: source)
    print(formatted)
}

输出

   1: KEY="VALUE
                ^

Error on line 1: Unterminated quote

命令行

还有一个命令行工具 dotenv-tool。它支持检查 dotenv 文件中的语法错误并将它们转换为 JSON。要安装,请运行

swift build -c release
cp .build/release/dotenv-tool /usr/local/bin

脚注

  1. 我不小心使用了和他们一样的名字;抱歉!