Viadeo Twitter Google Bookmarks ! Facebook Digg del.icio.us MySpace Yahoo MyWeb Blinklist Netvouz Reddit Simpy StumbleUpon Bookmarks Windows Live Favorites 
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Toutes les fonctions  ·  Vues d'ensemble  · 

Qt Linguist Manual: TS File Format

The TS file format used by Qt Linguist is described by the DTD presented below, which we include for your convenience. Be aware that the format may change in future Qt releases.

 <!--
  !
  ! Some notes to the DTD:
  !
  ! The location element is set as optional since it was introduced first in Qt 4.2.
  ! The userdata element is set as optional since it was introduced first in Qt 4.4.
  ! The source and translation elements are optional starting with version 3.0
  ! (Qt 4.6) to support S60 blank messages.
  !
   -->
 <!--
  ! Macro used in order to escape byte entities not allowed in an xml document
  ! for instance, only #x9, #xA and #xD are allowed characters below #x20.
  -->
 <!ENTITY % evilstring '(#PCDATA | byte)*' >
 <!ELEMENT byte EMPTY>
 <!-- value contains decimal (e.g. 1000) or hex (e.g. x3e8) unicode encoding of one char -->
 <!ATTLIST byte
           value CDATA #REQUIRED>
 <!--
  ! This element wildcard is no valid DTD. No better solution available.
  ! extra elements may appear in TS and message elements. Each element may appear
  ! only once within each scope. The contents are preserved verbatim; any
  ! attributes are dropped. Currently recognized extra tags include:
  !   extra-po-msgid_plural, extra-po-old_msgid_plural
  !   extra-po-flags (comma-space separated list)
  !   extra-loc-layout_id
  !   extra-loc-feature
  !   extra-loc-blank
   -->
 <!ELEMENT extra-* %evilstring; >
 <!ELEMENT TS (defaultcodec?, extra-**, (context|message)+) >
 <!ATTLIST TS
           version CDATA #IMPLIED
           sourcelanguage CDATA #IMPLIED
           language CDATA #IMPLIED>
 <!-- The encoding to use in the QM file by default. Default is ISO-8859-1. -->
 <!ELEMENT defaultcodec (#PCDATA) >
 <!ELEMENT context (name?, comment?, (context|message)+) >
 <!ATTLIST context
           encoding CDATA #IMPLIED>
 <!ELEMENT name %evilstring; >
 <!-- If "no", then the context nesting is for informational puposes only -->
 <!ATTLIST name
           nest (yes|no) "yes">
 <!-- This is "disambiguation" in the (new) API, or "msgctxt" in gettext speak -->
 <!ELEMENT comment %evilstring; >
 <!-- Previous content of comment (result of merge) -->
 <!ELEMENT oldcomment %evilstring; >
 <!-- The real comment (added by developer/designer) -->
 <!ELEMENT extracomment %evilstring; >
 <!-- Comment added by translator -->
 <!ELEMENT translatorcomment %evilstring; >
 <!ELEMENT message (location*, source?, oldsource?, comment?, oldcomment?, extracomment?, translatorcomment?, translation?, userdata?, extra-**) >
 <!--
  ! If utf8 is true, the defaultcodec is overridden and the message is encoded
  ! in UTF-8 in the QM file.
   -->
 <!ATTLIST message
           id CDATA #IMPLIED
           utf8 (true|false) "false"
           numerus (yes|no) "no">
 <!ELEMENT location EMPTY>
 <!--
  ! If the line is omitted, the location specifies only a file.
  !
  ! location supports relative specifications as well. Line numbers are
  ! relative (explicitly positive or negative) to the last reference to a
  ! given filename; each file starts with current line 0. If the filename
  ! is omitted, the "current" one is used. For the 1st location in a message,
  ! "current" is the filename used for the 1st location of the previous message.
  ! For subsequent locations, it is the filename used for the previous location.
  ! A single TS file has either all absolute or all relative locations.
   -->
 <!ATTLIST location
           filename CDATA #IMPLIED
           line CDATA #IMPLIED>
 <!ELEMENT source %evilstring;>
 <!-- Previous content of source (result of merge) -->
 <!ELEMENT oldsource %evilstring;>
 <!--
  ! The following should really say one evilstring macro or several
  ! numerusform or lengthvariant elements, but the DTD can't express this.
   -->
 <!ELEMENT translation (#PCDATA|byte|numerusform|lengthvariant)* >
 <!--
  ! If no type is set, the message is "finished".
  ! Length variants must be ordered by falling display length.
  ! variants may not be yes if the message has numerus yes.
   -->
 <!ATTLIST translation
           type (unfinished|obsolete) #IMPLIED
           variants (yes|no) "no">
 <!-- Deprecated. Use extra-* -->
 <!ELEMENT userdata (#PCDATA)* >
 <!--
  ! The following should really say one evilstring macro or several
  ! lengthvariant elements, but the DTD can't express this.
  ! Length variants must be ordered by falling display length.
   -->
 <!ELEMENT numerusform (#PCDATA|byte|lengthvariant)* >
 <!ATTLIST numerusform
           plurality (nullar|singular|dual|trial|paucal|greaterpaucal|plural|greaterplural) #IMPLIED>
           variants (yes|no) "no">
 <!ELEMENT lengthvariant %evilstring; >
 <!--
  ! The translation variants have a priority between 1 ("highest") and 9 ("lowest")
  ! Typically longer translations get a higher priority.
  ! If omitted, the order of appearance of the variants in the TS files is used.
   -->
 <!ATTLIST lengthvariant
           priority (1|2|3|4|5|6|7|8|9) #IMPLIED>

[Previous: Qt Linguist Manual: Programmers] [Contents]

Publicité

Best Of

Actualités les plus lues

Semaine
Mois
Année
  1. « Quelque chose ne va vraiment pas avec les développeurs "modernes" », un développeur à "l'ancienne" critique la multiplication des bibliothèques 80
  2. Apercevoir la troisième dimension ou l'utilisation multithreadée d'OpenGL dans Qt, un article des Qt Quarterly traduit par Guillaume Belz 0
  3. Les développeurs ignorent-ils trop les failles découvertes dans leur code ? Prenez-vous en compte les remarques des autres ? 17
  4. BlackBerry 10 : premières images du prochain OS de RIM qui devrait intégrer des widgets et des tuiles inspirées de Windows Phone 0
  5. Quelles nouveautés de C++11 Visual C++ doit-il rapidement intégrer ? Donnez-nous votre avis 10
  6. Adieu qmake, bienvenue qbs : Qt Building Suite, un outil déclaratif et extensible pour la compilation de projets Qt 17
  7. 2017 : un quinquennat pour une nouvelle version du C++ ? Possible, selon Herb Sutter 6
Page suivante

Communauté

Ressources

Liens utiles

Contact

  • Vous souhaitez rejoindre la rédaction ou proposer un tutoriel, une traduction, une question... ? Postez dans le forum Contribuez ou contactez-nous par MP ou par email (voir en bas de page).

Qt dans le magazine

Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. Qt 4.6
Copyright © 2012 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP !
 
 
 
 
Partenaires

Hébergement Web