Blame platform-overview/cs/dev-translate-build.page

Packit 1470ea
Packit 1470ea
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" type="topic" style="task" id="dev-translate-build" xml:lang="cs">
Packit 1470ea
Packit 1470ea
  <info>
Packit 1470ea
    <link type="next" xref="dev-translate-tools"/>
Packit 1470ea
    <revision version="0.1" date="2013-06-19" status="review"/>
Packit 1470ea
Packit 1470ea
    <credit type="author">
Packit 1470ea
      <name>Ekaterina Gerasimova</name>
Packit 1470ea
      <email its:translate="no">kittykat3756@gmail.com</email>
Packit 1470ea
      <years>2013</years>
Packit 1470ea
    </credit>
Packit 1470ea
Packit 1470ea
    <include xmlns="http://www.w3.org/2001/XInclude" href="cc-by-sa-3-0.xml"/>
Packit 1470ea
Packit 1470ea
    <desc/>
Packit 1470ea
  
Packit 1470ea
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
Packit 1470ea
      <mal:name>Lucas Lommer</mal:name>
Packit 1470ea
      <mal:email>llommer@svn.gnome.org</mal:email>
Packit 1470ea
      <mal:years>2009.</mal:years>
Packit 1470ea
    </mal:credit>
Packit 1470ea
  
Packit 1470ea
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
Packit 1470ea
      <mal:name>Marek Černocký</mal:name>
Packit 1470ea
      <mal:email>marek@manet.cz</mal:email>
Packit 1470ea
      <mal:years>2015.</mal:years>
Packit 1470ea
    </mal:credit>
Packit 1470ea
  </info>
Packit 1470ea
Packit 1470ea
  <title>Nastavení systému sestavení pro překlady.</title>
Packit 1470ea
Packit 1470ea
  <links type="series" style="floatend">
Packit 1470ea
    <title>Nastavení překladů</title>
Packit 1470ea
  </links> 
Packit 1470ea
Packit 1470ea
  

Aby váš projekt fungoval s překlady, musíte jej správně nastavit, stejně jako systém sestavení.

Packit 1470ea
Packit 1470ea
  

Ve svém projektu vytvořte podsložku <file>po/</file> a do souboru <file>po/POTFILES.in</file> uveďte soubory, které obsahují přeložitelné řetězce. Soubory bez přeložitelných řetězců uveďte do <file>po/POTFILES.skip</file>.

Packit 1470ea
Packit 1470ea
  

Do souboru <file>configure.ac</file> zadejte následující řádky:

Packit 1470ea
  
Packit 1470ea
IT_PROG_INTLTOOL([0.50.0])
Packit 1470ea
AC_SUBST([GETTEXT_PACKAGE], [$PACKAGE_TARNAME])
Packit 1470ea
AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE], ["$GETTEXT_PACKAGE"], [název balíčku pro gettext])
Packit 1470ea
Packit 1470ea
  

Do souboru <file>Makefile.am</file> zadejte následující řádky:

Packit 1470ea
  
Packit 1470ea
SUBDIRS = po
Packit 1470ea
Packit 1470ea
  
Packit 1470ea
AM_CPPFLAGS = -DPACKAGE_LOCALEDIR=\""$(datadir)/locale"\"
Packit 1470ea
Packit 1470ea
  
Packit 1470ea
@INTLTOOL_DESKTOP_RULE@
Packit 1470ea
desktopdir = $(datadir)/applications
Packit 1470ea
desktop_in_files = data/<input>applicationname</input>.desktop.in
Packit 1470ea
desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
Packit 1470ea
Packit 1470ea
Packit 1470ea
  

Než spustíte <cmd>autoreconf</cmd>, spusťte nejdříve <cmd>intltoolize</cmd>, aby se nakopírovala infrastruktura intltool do stromu sestavení.

Packit 1470ea
Packit 1470ea
  

Když jsou nyní systém sestavení a řetězce ve vašem zdrojovém kódu připraveny k překladu, musíte uvést následující tři věci pro <app>gettext</app>:

Packit 1470ea
Packit 1470ea
  <list>
Packit 1470ea
    <item>

doménu překladu, většinou je stejná, jako název aplikace

</item>
Packit 1470ea
    <item>

místo, kde jsou uloženy sestavené překlady

</item>
Packit 1470ea
    <item>

kódování znaků v překladech, obvykle to je UTF-8

</item>
Packit 1470ea
  </list>
Packit 1470ea
Packit 1470ea
  <example>
Packit 1470ea
  <note>
Packit 1470ea
    

Příklad předpokládá, že vaše aplikace je napsána v jazyce C. Pro ostatní programovací jazyky se to může lehce lišit.

Packit 1470ea
  </note>
Packit 1470ea
Packit 1470ea
  

Do zdrojového kódu, který obsahuje funkci main() přidejte následující řádek:

Packit 1470ea
Packit 1470ea
  #include "config.h"
Packit 1470ea
Packit 1470ea
  

Následně do funkce main() přidejte tyto řádky:

Packit 1470ea
Packit 1470ea
  
Packit 1470ea
bindtextdomain (GETTEXT_PACKAGE, PACKAGE_LOCALEDIR);
Packit 1470ea
bind_textdomain_codeset (PACKAGE_TARNAME, "UTF-8");
Packit 1470ea
textdomain (GETTEXT_PACKAGE);
Packit 1470ea
Packit 1470ea
  </example>
Packit 1470ea
Packit 1470ea
  

Spusťte <cmd>make <input>název_projektu</input>.pot</cmd> ve složce <file>po</file>. Tím se spustí nástroj <cmd>intltool-extract</cmd>, který získá přeložitelné řetězce a vloží je do souboru šablony (POT).

Packit 1470ea
Packit 1470ea
</page>