y18n

中文文档
5.0.8发布于 2021/04/08ISCESM + CJS零依赖近 30 天下载 7.8亿

yargs使用的基本国际化库

中文使用文档
文档目录12 节
  1. 例子
  2. Deno例子
  3. JSON语言文件
  4. 方法
  5. 需要 ('y18n')(配置)
  6. y18n.__(str, arg, arg, arg)
  7. y18n.__N (单弦,pluralString,count,arg,arg,arg)
  8. y18n.setLocale(str)
  9. y18n.getLocale()
  10. y18n.updateLocale(obj)
  11. 支持的Node.js版本
  12. 许可证

y18n

NPM version js-standard-style Conventional Commits

yargs使用的基本国际化库。

灵感来自 国际化。

例子

简单的字符串翻译:

const __ = require('y18n')().__;

console.log(__('my awesome string %s', 'foo'));

输出:

my awesome string foo

使用标记的模板文字

const __ = require('y18n')().__;

const str = 'foo';

console.log(__`my awesome string ${str}`);

输出:

my awesome string foo

多元化支持:

const __n = require('y18n')().__n;

console.log(__n('one fish %s', '%d fishes %s', 2, 'foo'));

输出:

2 fishes foo

Deno例子

的 v5 y18n 支持 Deno:

import y18n from "https://deno.land/x/y18n/deno.ts";

const __ = y18n({
  locale: 'pirate',
  directory: './test/locales'
}).__

console.info(__`Hi, ${'Ben'} ${'Coe'}!`)

您将需要运行 --allow-read 加载替代区域设置。

JSON语言文件

JSON语言文件应存储在 ./locales 文件夹。 文件名对应于区域设置,例如, en.json, pirate.json。

当第一次观察到字符串时,它们将是 添加到与当前区域设置对应的JSON文件。

方法

需要 ('y18n')(配置)

使用提供的配置创建y18n的实例,选项包括:

  • directory: 区域设置目录,默认 ./locales。
  • updateFiles: 应该在文件中更新新观察到的字符串,默认 true。
  • locale: 应该使用什么区域设置。
  • fallbackToLanguage: 应该回退到仅限语言的文件 (例如 en.json) 如果与区域设置匹配的文件不存在 (例如 en_US.json), 默认的 true。

y18n.__(str, arg, arg, arg)

打印本地化的字符串, %s 将替换为 arg年代。

此函数也可以用作模板文字的标记。你可以用它 是这样的: __`hello ${'world'}`.这将相当于 __('hello %s', 'world')。

y18n.__N (单弦,pluralString,count,arg,arg,arg)

使用适当的复数形式打印本地化字符串。如果 %d 被提供 在字符串中, count 将替换此占位符。

y18n.setLocale(str)

设置当前使用的区域设置。

y18n.getLocale()

当前使用的是什么语言环境?

y18n.updateLocale(obj)

使用中的键值对更新当前区域设置 obj。

支持的Node.js版本

在这个生态系统中,图书馆尽最大努力跟踪 Node.js的发布时间表. 这是 一个 发表我们认为这很重要的原因。

许可证

ISC

版本与发布记录

y18n 共发布 22 个版本,首次发布于 2015/07/27;过去 12 个月发布了 0 个版本。

版本发布日期距今
5.0.8latest2021/04/085 年前
4.0.3latest-42021/04/085 年前
5.0.72021/04/075 年前
4.0.22021/04/075 年前
5.0.62021/04/055 年前
3.2.2latest-32021/01/055 年前

其他发布通道:next → 4.0.0,engines-test → 6.0.0-alpha.0,latest-3 → 3.2.2,latest-4 → 4.0.3。

关于 y18n 的常见问题

y18n 是什么?

yargs使用的基本国际化库

如何安装 y18n?

在项目目录运行 npm install y18n,或使用 pnpm add / yarn add / bun add。

y18n 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/y18n 是否存在。

y18n 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

y18n 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=10。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

y18n 可以商用吗?

y18n 使用 ISC 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

y18n 的下载量有多少?

根据 npm 官方下载统计,y18n 在 2026/10/05 – 2026/11/03 这 30 天内被下载 784,097,669 次,日均约 26,136,589 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

y18n 还在维护吗?

最新版本 5.0.8 发布于 2021/04/08(5 年前);至今共发布 22 个版本,其中过去 12 个月发布了 0 个;首次发布于 2015/07/27。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。