---
name: "Locale::Po4a::AsciiDoc.pm"
section: "3pm"
platform: "linux"
package: "po4a"
version: "0.45-1"
release: "Debian 8 (Jessie)"
platforms: ["linux"]
url: "https://new.carta.tech/Locale::Po4a::AsciiDoc.pm"
---

# Locale::Po4a::AsciiDoc.pm(3pm)

convert AsciiDoc documents from/to PO files

## NAME

Locale::Po4a::AsciiDoc - convert AsciiDoc documents from/to PO files

## DESCRIPTION

The po4a (PO for anything) project goal is to ease translations (and more interestingly, the maintenance of translations) using gettext tools on areas where they were not expected like documentation.

Locale::Po4a::AsciiDoc is a module to help the translation of documentation in the AsciiDoc format.

## OPTIONS ACCEPTED BY THIS MODULE

These are this module's particular options:

- **definitions**

  The name of a file containing definitions for po4a, as defined in the **INLINE CUSTOMIZATION** section. You can use this option if it is not possible to put the definitions in the document being translated.

  In a definitions file, lines must not start by two slashes, but directly by **po4a:**.

- **entry**

  Space-separated list of attribute entries you want to translate.  By default, no attribute entries are translatable.

- **macro**

  Space-separated list of macro definitions.

- **style**

  Space-separated list of style definitions.

## INLINE CUSTOMIZATION

The AsciiDoc module can be customized with lines starting by **//po4a:**. These lines are interpreted as commands to the parser. The following commands are recognized:

- **//po4a: macro** *name***\[***attribute list***\]**

  This permits to describe in detail the parameters of a **macro**; *name* must be a valid macro name, and it ends with an underscore if the target must be translated.

  The *attribute list* argument is a comma separated list which contains informations about translatable arguments.  This list contains either numbers, to define positional parameters, or named attributes.

  If a plus sign (**+**) is prepended to *name*, then the macro and its arguments are translated as a whole.  There is no need to define attribute list in this case, but brackets must be present.

- **//po4a: style \[***attribute list***\]**

  This permits to describe in detail which attributes of a style must be translated.

  The *attribute list* argument is a comma separated list which contains informations about translatable arguments.  This list contains either numbers, to define positional parameters, or named attributes. The first attribute is the style name, it will not be translated.

  If a plus sign (**+**) is prepended to the style name, then the attribute list is translated as a whole.  There is no need to define translatable attributes.

  If a minus sign (**-**) is prepended to the style name, then this attribute is not translated.

- **//po4a: entry** *name*

  This declares an attribute entry as being translatable.  By default, they are not translated.

## STATUS OF THIS MODULE

Tested successfully on simple AsciiDoc files.

## AUTHORS

```
 Nicolas François <nicolas.francois@centraliens.net>
 Denis Barbier <barbier@linuxfr.org>
```

## COPYRIGHT AND LICENSE

```
 Copyright 2005-2008 by Nicolas FRANÇOIS <nicolas.francois@centraliens.net>.
 Copyright 2012 by Denis BARBIER <barbier@linuxfr.org>.
```

This program is free software; you may redistribute it and/or modify it under the terms of GPL (see the COPYING file).
