Babel plugin optimize i18n
Babel plugin that transforms this:
import { __, _x } from '@wordpress/i18n';
__( 'Hello' );
_x( 'World' );
to this:
import { __ as alias__, _x as alias_x } from '@wordpress/i18n';
const __ = alias__;
const _x = alias_x;
__( 'Hello' );
_x( 'World' );
Inspired by babel-plugin-optimize-react that does similar transforms for React imports.
The transform ensures that the __('Hello') syntax remains intact in the output bundle (and even after minification if Terser uses the mangle.reserved option) and can be extracted by WP i18n tools.
关于 @automattic/babel-plugin-preserve-i18n 的常见问题@automattic/babel-plugin-preserve-i18n 是什么? A Babel plugin to preserves translation functions even when minified
如何安装 @automattic/babel-plugin-preserve-i18n? 在项目目录运行 npm install @automattic/babel-plugin-preserve-i18n,或使用 pnpm add / yarn add / bun add。
@automattic/babel-plugin-preserve-i18n 支持 TypeScript 吗? 该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/automattic__babel-plugin-preserve-i18n 是否存在。
@automattic/babel-plugin-preserve-i18n 支持 ESM 还是 CommonJS? 以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。
@automattic/babel-plugin-preserve-i18n 可以商用吗? @automattic/babel-plugin-preserve-i18n 使用 GPL-2.0-or-later 许可。强 Copyleft:分发包含该代码的软件时,整个作品需以兼容的 GPL 许可开源。仅在内部使用、不对外分发时不触发此义务。以上为概括,不构成法律意见,请以许可原文为准。
@automattic/babel-plugin-preserve-i18n 的下载量有多少? 根据 npm 官方下载统计,@automattic/babel-plugin-preserve-i18n 在 2026/10/07 – 2026/11/05 这 30 天内被下载 4,972 次,日均约 166 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。
@automattic/babel-plugin-preserve-i18n 还在维护吗? 最新版本 1.0.0 发布于 2021/11/06(5 年前);至今共发布 1 个版本,其中过去 12 个月发布了 0 个;首次发布于 2021/11/06。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。