Bonjour,

Je suis en train d'utiliser xgettext, car POEdit retourne une erreur en scannant mes fichiers, mais sans spécifier quel est le problème.

Bref, pour l'instant j'essaie:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
find intrepid/ -type f > file.txt
xgettext -L php --from-code=utf-8 -n -f file.txt
Et xgettext me sort bien tout mes appel gettext dans mes fichiers php, mais pas ceux dans mes templates .html ( J'utilise Dwoo: {gettext("salut")} )
Si je renomme mon fichiers .html en .php, xgettext ne voit pas plus les champs gettext.

Si je modifie la langue pour autre chose que PHP, j'ai l'impression que xgettext ressort à peu près toutes les chaines de caractères... comme par exemple:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
style="text-align:right;":
msgid "text-align:right;"
msgstr ""
Bref, est-ce que quelqu'un sait comment dire à xgettext de scanner pour une expression telle que : "gettext\(.+?\)", et de ne pas tenir du contexte dans lequel la chaine est contenue ?

J'ai essayé ceci sans succès:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
$ mv orderView.html orderView.php
$ xgettext -L php --from-code=utf-8 -n -a -o - orderView.php
$ xgettext --keyword=gettext --from-code=utf-8 -n -a -o - orderView.php
$ xgettext --keyword={gettext --from-code=utf-8 -n -a -o - orderView.php 
$ xgettext --keyword=\{gettext --from-code=utf-8 -n -a -o - orderView.php 
$ xgettext -k --from-code=utf-8 -n -a -o - orderView.php 
xgettext: xgettext ne peut pas fonctionner sans mot clé à rechercher
Pour plus d'information, essayez «*xgettext --help*».
$ xgettext -kgettext --from-code=utf-8 -n -a -o - orderView.php 
$ xgettext -k{gettext --from-code=utf-8 -n -a -o - orderView.php 
$ xgettext -k\{gettext --from-code=utf-8 -n -a -o - orderView.php 
$ xgettext -k"{gettext" --from-code=utf-8 -n -a -o - orderView.php
Question de vous donner une référence, les 10 premières de mon fichiers sont les suivantes:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
$ head orderView.php 
<div id="defaultPage">
    <div class="header">
        {gettext("Détails de la commande #")}{$CMD['id']}
    </div>
 
    <div class="content">
 
 
 
        <div class="title">{gettext("Information sur le statut")}</div>
Et si j'exécute xgettext en language C au lieu de PHP (qui retourne rien), j'aurais toutes les chaines de caractères:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
 
$ xgettext -L c --from-code=utf-8 -n -a -o - orderView.php 
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2011-02-26 10:54-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
 
#: orderView.php:1
msgid "defaultPage"
msgstr ""
 
#: orderView.php:2
msgid "header"
msgstr ""
 
#: orderView.php:3
msgid "Détails de la commande #"
msgstr ""
 
#: orderView.php:6
msgid "content"
msgstr ""
 
#: orderView.php:10 orderView.php:74 orderView.php:139
msgid "title"
msgstr ""
 
#: orderView.php:10
msgid "Information sur le statut"
msgstr ""

Tout commentaire ou idée sont bienvenu ...
(Je commence à considérer de me faire un script qui va parser les templates et générer un fichier po....)