README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈
MapLibre 样式规范与实用工具
本仓库包含定义 MapLibre 样式规范的代码和参考文件,并提供了一些用于处理 MapLibre 样式的实用工具。
样式规范用于 MapLibre GL JS 和 MapLibre Native。我们的长期目标是实现 Web 库和原生库之间的功能对等。
贡献
如果您想为样式规范做出贡献,请提交一个包含设计提案的 issue。一旦您的设计提案被接受,您就可以提交一个 pull request 并实现您的更改。
我们力求避免在 MapLibre 样式规范中进行破坏性更改,因为这会让用户的生活更轻松。
文档
样式规范的文档也位于本仓库中。 我们使用 Zensical。
要在本地处理文档,您需要启动 Zensical。当您已安装并运行 Docker 时,您可以使用:
npm run start-docs
或者,如果您已安装 uv,您可以使用:
uvx zensical serve --open
大部分文档是生成的(例如,来自 v8.json)。
在另一个终端中,运行:
npm install
WATCH=1 npm run generate-docs
这将在需要时重新运行生成脚本。
请注意,生成的文件不应被提交,并且已在 .gitignore 中被排除。
请确保保持此文件为最新状态,并在忽略生成文件的同时确保静态 Markdown 文件不被忽略。
NPM 包
MapLibre 样式规范和工具作为单独的 npm 包发布,以便可以在不安装 GL JS 大部分内容的情况下进行安装。
npm install @maplibre/maplibre-gl-style-spec
CLI 工具
如果你全局安装此包,你将可以使用多个 CLI 工具。
npm install @maplibre/maplibre-gl-style-spec --global
gl-style-migrate
此仓库包含用于将任意版本的 GL 样式迁移到最新版本(当前为 v8)的脚本。 你可以按以下方式迁移样式:
gl-style-migrate bright-v7.json > bright-v8.json
要就地迁移文件,您可以使用 moreutils 包中的 sponge 实用工具:
brew install moreutils
gl-style-migrate bright.json | sponge bright.json
gl-style-format
gl-style-format style.json
将使用标准缩进和排序的对象键来格式化给定的样式 JSON。
gl-style-validate
gl-style-validate style.json
将验证给定的样式 JSON 并将错误打印到标准输出。
提供 --json 标志以获取 JSON 输出。