You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Vim/Neovim中格式化MongoDB CLI导出的非标准JSON内容

MongoDB CLI非标准JSON Vim/Neovim格式化方案

问题背景

从MongoDB CLI复制的数据包含NumberLong等MongoDB专属扩展语法,不属于标准JSON规范,因此jq、python json.tool、vim-jdaddy等标准JSON格式化工具均会解析失败。VSCode可直接格式化是因为内置了MongoDB语法兼容支持,Vim/Neovim可通过以下两种方案实现同等效果,均支持嵌套对象等复杂场景:


方案1:Prettier适配(与VSCode效果完全一致)

VSCode的MongoDB格式化能力底层基于该方案实现,输出和预期效果完全匹配:

  • 全局安装依赖:
npm install -g prettier @prettier/plugin-mongodb
  • Vim/Neovim中打开文件后执行命令即可完成全量格式化:
:%!prettier --parser mongodb

Neovim用户可将该规则配置到conform.nvim、null-ls等格式化插件中,实现保存自动格式化。


方案2:MongoDB Shell原生处理

如果已安装mongosh(MongoDB官方Shell),无需额外安装其他工具,直接执行以下命令即可格式化:

:%!mongosh --eval "EJSON.stringify(EJSON.parse(read()), null, 2)" --norc --quiet

该方案原生支持所有MongoDB扩展语法,适配所有复杂结构场景。


内容的提问来源于stack exchange,提问作者Anonymous

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 18:15:04