Preparing & Translating Supported File Types

MadCap Lingo ZIP Package

 

Extension .zip
Smartling Identifier madcap
Example File madcap.zip
Resources MadCap Lingo software 

Smartling supports Madcap Lingo version 10.

A MadCap package is a ZIP-archive with one or more XLIFF files, optionally organized in directories. A MadCap archive is treated as a single file. Translated strings in the archive will be associated with the .zip file, not the individual XLIFF files.

Non-XLIFF files in the archive are excluded from processing.

Directory structure and non-XLIFF files are preserved when downloading the translated archive.

Directives

File directives are supported, both inline and via our APIDirectives are specified in comments within the files, in the following format:

Inline File Format

<!-- smartling.[directive_name] = [value] -->

API Parameter

smartling.[directive_name] = [value] 

Here are some examples of [directive_name], along with example values or paths.

entity_escaping

Exact delivery depends on file type.

Values auto (default)
true (or yes)
false (or no)
Description

Controls whether base characters ( > < & " ) are "escaped" into entities when delivering translations. This can be set universally for the whole file via API, or by setting the directive at the top/start of the file. The directive can also be placed inline to control the behavior of specific strings.

To use inline:
<!-- smartling.entity_escaping = false -->

String:
<!-- smartling.entity_escaping = auto -->

Examples

For example, your translation might look like this:
This is an <hr> & " example string4

By default, using the "auto" setting, we will assume this is HTML from the <hr> tag.

When the translated file is downloaded, the translated string will be escaped as:
This is an <hr> &amp; &quot; example string4

Using <!-- smartling.entity_escaping = false --> will allow This is an <hr> & " example string4 to appear unescaped.

XML Characters (always escaped)

Character (name) Escape sequence

< (less-than)

&lt;

> (greater-than)

&gt;

& (ampersand)

&amp;

' (apostrophe or single quote)

&apos;

" (double-quote)

 &quot;

 

entity_escaping_strategy

Values propagate | none
Description

Used to retain entity escaping for all non-base entities. For example, normally we turn &copy; into © but if we use this new directive the translation will automatically update to use escaping from the source. For each entity character, we'll check to see if it was escaped in the source and try to match (propagate) it in the target.

The default is none which is the current behavior, which recognizes HTML4 entities only - if HTML5 entities are required as well, you must use the entity_escaping_type=propagate directive.


propagate will only affect non-base entities - all named entities except &amp; , &quot;, &lt;, &gt; . Base entities continue to be controlled by HTML detection and the entity_escaping directive.


If the same character is both escaped and unescaped in the same string, propagate will return the characters in the translation escaped in the same order as they were in the source. However, if there are a different number of characters in the translation where the translation process removed or added some and the escaping is inconsistent among them, propagate will escape all entities for that character.

This directive can be placed inline, in the API or in a template (consult your SA about configuring directive templates).

This does not affect source content at all - so using it will not result in new strings.

Numerical entities are not considered at all with this directive, and are treated normally.

Examples

To use inline:
<!-- smartling.entity_escaping_strategy = propagate-->

whitespace_trim

Values 

on|yes|true or off|no|false or leading|trailing

The default value is on

Description 

A whitespace is any character or series of characters that represent horizontal or vertical space in typography. When rendered, a whitespace character is not a visible mark, but does occupy an area or space on a page.

Although whitespaces are necessary within a string (typically to separate words), unnecessary whitespaces can be found at the start of a string (leading) and at the end of a string (trailing).

With this directive, you can trim whitespaces, as it enables or disables whitespace trim management for the ingested strings.

Whitespace is optionally trimmed from content then re-inserted on download for convenience so that translators do not have to manage the extra spaces. However, content owners may want to retain surrounding whitespace so that translators can
manipulate it during translation.

By default, the leading and trailing whitespaces are trimmed.

You can choose to disable trimming or specify trimming for leading or trailing whitespaces.

The directive can be used inline or as the API request parameter.

Examples 

<!-- smartling.whitespace_trim=on -->

Smartling will trim leading and trailing whitespaces (default)

<!-- smartling.whitespace_trim=off -->

Smartling will not trim leading or trailing whitespaces

<!-- smartling.whitespace_trim=leading -->

Smartling will trim only leading whitespaces

<!-- smartling.whitespace_trim=trailing -->

Smartling will trim only trailing whitespaces

 

Was this article helpful?