@lingui/format-po
TypeScript icon, indicating that this package has built-in type declarations

4.10.0 • Public • Published

License Version Downloads

@lingui/format-po

Read and write message catalogs in Gettext PO format with ICU plurals

@lingui/format-po is part of LinguiJS. See the documentation for all information, tutorials and examples.

Catalog example

#, Comment for translators
#: src/App.js:4, src/Component.js:2
msgid "MessageID"
msgstr "Translated Message"

Installation

npm install --save-dev @lingui/format-po
# yarn add --dev @lingui/format-po

Usage

// lingui.config.{js,ts}
import {formatter} from "@lingui/format-po"

export default {
  [...]
  format: formatter({lineNumbers: false}),
}

Possible options:

export type PoFormatterOptions = {
  /**
   * Print places where message is used
   *
   * @default true
   */
  origins?: boolean

  /**
   * Print line numbers in origins
   *
   * @default true
   */
  lineNumbers?: boolean
  
  /**
   * Print `js-lingui-id: Xs4as` statement in extracted comments section
   *
   * @default false
   */
  printLinguiId?: boolean
  
  /**
   * By default, the po-formatter treats the pair `msgid` + `msgctx` as the source
   * for generating an ID by hashing its value.
   *
   * For messages with explicit IDs, the formatter adds a special comment `js-lingui-explicit-id` as a flag.
   * When this flag is present, the formatter will use the `msgid` as-is without any additional processing.
   *
   * Set this option to true if you exclusively use explicit-ids in your project.
   *
   * https://lingui.dev/tutorials/explicit-vs-generated-ids#using-custom-id
   *
   * @default false
   */
  explicitIdAsDefault?: boolean
}

License

This package is licensed under MIT license.

Package Sidebar

Install

npm i @lingui/format-po

Weekly Downloads

54,345

Version

4.10.0

License

MIT

Unpacked Size

20.3 kB

Total Files

9

Last publish

Collaborators

  • andrii.bodnar
  • serhiydmytryshyn