Re: gettext e xML (Re: Problema con gettext stringhe dinamiche)

2008-09-07 Per discussione Alessandro De Zorzi
Purtroppo ho cantato vittoria troppo presto ;-)

Cerco di spigarmi meglio: un programma in PHP fa il parsing di alcuni
file XML, di cui
riporto un estratto:

attribute name=maxMail
prettyName_(Max number of Mail)/prettyName

ora pur inserendo il tag _( in corrispondenza delle frasi da tradure
nel file XML e generato il file .po con po4a in modo corretto

nella finestra del browser non viene presentata la traduzione del file XML
immagino perché sono su due livelli diversi (intendo PHP e XML)

Alessandro


-- 
Per REVOCARE l'iscrizione alla lista, inviare un email a 
[EMAIL PROTECTED] con oggetto unsubscribe. Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: gettext e xML (Re: Problema con gettext stringhe dinamiche)

2008-09-07 Per discussione David Paleino
On Sun, 07 Sep 2008 16:04:45 +0200, Alessandro De Zorzi wrote:

 Cerco di spigarmi meglio: un programma in PHP fa il parsing di alcuni
 file XML, di cui
 riporto un estratto:
 
 attribute name=maxMail
 prettyName_(Max number of Mail)/prettyName
 
 ora pur inserendo il tag _( in corrispondenza delle frasi da tradure
 nel file XML e generato il file .po con po4a in modo corretto
 
 nella finestra del browser non viene presentata la traduzione del file XML
 immagino perché sono su due livelli diversi (intendo PHP e XML)

Lo hai compilato il .po, vero?

$ msgfmt messages.po

Comunque, un consiglio che mi sento di darti è:

?php

$stringa = ...// codice per prenderla da prettyName/prettyName
echo _($stringa);

?

Cioè: non utilizzare _() nell'XML, ma nel codice PHP (con le rispettive
funzioni di inizializzazione... tipo bindtextdomain(), ...)

(non ho seguito l'intero thread, quindi magari sto dicendo una cavolata...
scusa ma vado di frettissima :D)

Ciao,
David

-- 
 . ''`.  Debian maintainer | http://wiki.debian.org/DavidPaleino
 : :'  : Linuxer #334216 --|-- http://www.hanskalabs.net/
 `. `'`  GPG: 1392B174 | http://snipr.com/qa_page
   `-   2BAB C625 4E66 E7B8 450A C3E1 E6AA 9017 1392 B174


signature.asc
Description: PGP signature


Re: gettext e xML (Re: Problema con gettext stringhe dinamiche)

2008-09-07 Per discussione Alessandro De Zorzi
David Paleino wrote:
 $stringa = ...// codice per prenderla da prettyName/prettyName
 echo _($stringa);

   
magari fosse possibile farlo ;-)

però effettivamente mi hai fatto venire in mente che il problema è lato PHP
e usando la funzione gettext() di PHP FUNZIONA:

echo gettext($stringa_catturrata_da_XML)

infatti gettext() va a cercare se la stringa è stata tradotta
ora devo solo affinare il parsing dei file xml con po4a-gettextize
che mi da qualche problema con le stringhe duplicate... ma direi
che ho risolto

grazie
Alessandro


-- 
Per REVOCARE l'iscrizione alla lista, inviare un email a 
[EMAIL PROTECTED] con oggetto unsubscribe. Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: gettext e xML (Re: Problema con gettext stringhe dinamiche)

2008-09-07 Per discussione David Paleino
On Sun, 07 Sep 2008 16:29:23 +0200, Alessandro De Zorzi wrote:

 David Paleino wrote:
  $stringa = ...// codice per prenderla da prettyName/prettyName
  echo _($stringa);
 
 magari fosse possibile farlo ;-)

Beh, perché no? :)
(sono di nuovo qui, ricevuto un contrordine..)

 però effettivamente mi hai fatto venire in mente che il problema è lato PHP
 e usando la funzione gettext() di PHP FUNZIONA:
 
 echo gettext($stringa_catturrata_da_XML)

Ma anche _(), guarda (che è un alias di gettext(), se non ricordo male...)

Ciao,
David

-- 
 . ''`.  Debian maintainer | http://wiki.debian.org/DavidPaleino
 : :'  : Linuxer #334216 --|-- http://www.hanskalabs.net/
 `. `'`  GPG: 1392B174 | http://snipr.com/qa_page
   `-   2BAB C625 4E66 E7B8 450A C3E1 E6AA 9017 1392 B174


signature.asc
Description: PGP signature


Re: gettext e xML (Re: Problema con gettext stringhe dinamiche)

2008-09-07 Per discussione Alessandro De Zorzi
David Paleino wrote:
 Ma anche _(), guarda (che è un alias di gettext(), se non ricordo male...)
   
hai perfettamente ragione _() si comporta allo stesso modo di gettext()

quello a cui pensavo prima  - in modo contorto - per cui ho risposto
magari fosse possibile è che non è possibile fare quanto segue:

?php
$msg = array('Banana','Anans','Apple');

foreach ($msg as $stringa)
echo _($stringa);
?

e sperare che magicamente xgettext crei un .po dove definisce
le traduzioni di Banana, Anans, Apple

ma se Banana, Anans, Apple sono già tradotte
effettivamente _() restituisce il valore tradotto


grazie ancora 
Alessandro





-- 
Per REVOCARE l'iscrizione alla lista, inviare un email a 
[EMAIL PROTECTED] con oggetto unsubscribe. Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: gettext e xML (Re: Problema con gettext stringhe dinamiche)

2008-09-07 Per discussione Massimiliano Masserelli
On Sun, Sep 07, 2008 at 06:11:26PM +0200, Alessandro De Zorzi wrote:

 ?php
 $msg = array('Banana','Anans','Apple');
 
 foreach ($msg as $stringa)
   echo _($stringa);
 ?

non sarebbe un filo piu' elegante usare $msg=array(_('Banana'),
_('Ananas'), _('Apple')); ?
-- 
Massimiliano Masserelli
---
If a fool persists in his folly he shall become wise.
-- William Blake


-- 
Per REVOCARE l'iscrizione alla lista, inviare un email a 
[EMAIL PROTECTED] con oggetto unsubscribe. Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



gettext e xML (Re: Problema con gettext stringhe dinamiche)

2008-08-27 Per discussione Alessandro De Zorzi
Alessandro De Zorzi wrote:
 attribute name=maxMail
 size4/size
 label_(Nome che voglio stampare)/label
 ...
 default100/default
 /attribute

 ...dovrebbe funzionare, credo
   
Piccolo problema gettext non riconosce il linguaggio XML

Choice of input file language:
   -L, --language=NAME
  recognise the specified language (C, C++, ObjectiveC, PO,
Shell,
  Python,   Lisp,  EmacsLisp,  librep,  Scheme,  Smalltalk, 
Java,
  JavaProperties,  C#,  awk,  YCP,  Tcl,  Perl,  PHP, 
GCC-source,
  NXStringTable, RST, Glade)

Esiste un altro parser per creare file .po da XML?

Alessandro


-- 
Per REVOCARE l'iscrizione alla lista, inviare un email a 
[EMAIL PROTECTED] con oggetto unsubscribe. Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: gettext e xML (Re: Problema con gettext stringhe dinamiche)

2008-08-27 Per discussione Luca Bruno
Alessandro De Zorzi scrisse:

 Piccolo problema gettext non riconosce il linguaggio XML
 Esiste un altro parser per creare file .po da XML?

In inkscape usiamo gettext anche per gli header delle
estensioni, scritti in xml. Nel POTFILES.in ci sono righe tipo:
[type: gettext/xml] share/extensions/addnodes.inx
che poi vengono usate da intltool e tradotte nel POTFILES in righe
normali.

Nel caso non funzioni, guarda nell'svn dove avviene la magia. Così a
freddo non saprei indirizzarti con maggiore precisione.

Ciao, Luca

-- 
 .''`.  ** Debian GNU/Linux **  | Luca Bruno (kaeso)
: :'  :   The Universal O.S.| lucab (AT) debian.org
`. `'`  | GPG Key ID: 3BFB9FB3
  `- http://www.debian.org  | Debian GNU/Linux Developer


pgpflollcFjwS.pgp
Description: PGP signature


Re: gettext e xML (Re: Problema con gettext stringhe dinamiche)

2008-08-27 Per discussione Alessandro De Zorzi
Luca Bruno wrote:
 In inkscape usiamo gettext anche per gli header delle
 estensioni, scritti in xml. Nel POTFILES.in ci sono righe tipo:
 [type: gettext/xml] share/extensions/addnodes.inx
 che poi vengono usate da intltool e tradotte nel POTFILES in righe
 normali.
   
grazie della dritta, sto cercando di capire come usarlo
in effetti i file XML tipo addnodes.inx vedo che contengono il prefisso _
in alcuni tag e attributi e quindi presumo si possa arrivare al
risultato sperato

in contemporanea ho trovato un altro tool: poxml

poxml - tools for using PO-files to translate DocBook XML files

che sembra possa aiutarmi

grazie
Alessandro


-- 
Per REVOCARE l'iscrizione alla lista, inviare un email a 
[EMAIL PROTECTED] con oggetto unsubscribe. Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: gettext e xML (Re: Problema con gettext stringhe dinamiche)

2008-08-27 Per discussione Johan Haggi
Wed 27 August 2008, alle 10:17 (GMT+0200), Alessandro De Zorzi ha scritto:
 Piccolo problema gettext non riconosce il linguaggio XML
 
 Choice of input file language:
-L, --language=NAME
   recognise the specified language (C, C++, ObjectiveC, PO,
 Shell,
   Python,   Lisp,  EmacsLisp,  librep,  Scheme,  Smalltalk, 
 Java,
   JavaProperties,  C#,  awk,  YCP,  Tcl,  Perl,  PHP, 
 GCC-source,
   NXStringTable, RST, Glade)
 
 Esiste un altro parser per creare file .po da XML?

aptitude install po4a
man 7 po4a
man Locale::Po4a::Xml
man 1 po4a
man ...

-- 
Ave   Johan Haggi

Gates's Law: La velocita` del software si dimezza ogni 18 mesi.
 da Jargon File 4.3.1


signature.asc
Description: Digital signature


Re: gettext e xML (Re: Problema con gettext stringhe dinamiche)

2008-08-27 Per discussione Alessandro De Zorzi
Johan Haggi wrote:
 aptitude install po4a
 man 7 po4a
 man Locale::Po4a::Xml
 man 1 po4a
 man ...
   
grazie, è esattamente quello che mi serviva

per limitare l'applicazione solo ai tags di interesse
la sintassi è poco intuitiva:

# limita al solo tag prettyName
po4a-gettextize -o tags=prettyName -o tagsonly=1 -f xml -m mail.xml

# ! DO NOT WORKS !
po4a-gettextize -o tags=prettyName tagsonly=1 -f xml -m mail.xml
po4a-gettextize -o  tagsonly=prettyName -f xml -m mail.xml
# ! DO NOT WORKS !

Alessandro



-- 
Per REVOCARE l'iscrizione alla lista, inviare un email a 
[EMAIL PROTECTED] con oggetto unsubscribe. Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Problema con gettext stringhe dinamiche

2008-08-26 Per discussione Alessandro De Zorzi
Salve, sto migrando il sistema di localizzazione di un software PHP a
gettext
ma mi sono imbattuto in un problema che non riesco a risolvere. Il problema
è il seguente:

Nel codice ci sono cicli che semplifico in questo tipo:

foreach ($my_array as as $k = $v )
echo $lang[$k]. ' vale '.$v;

$lang è un array utilizzato dal sistema attuale per le traduzioni ma non
so come
dichiararle in gettext, ovvero il massimo che posso fare è qualcosa che non
mi consente di tradurre stringe che sono generate in automatico, o sbaglio?

foreach ($my_array as as $k = $v )
printf (_(%k vale %s),$k,$v);

Alessandro


-- 
Per REVOCARE l'iscrizione alla lista, inviare un email a 
[EMAIL PROTECTED] con oggetto unsubscribe. Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Problema con gettext stringhe dinamiche

2008-08-26 Per discussione Pietro Giorgianni
On Tue, Aug 26, 2008 at 2:35 PM, Alessandro De Zorzi [EMAIL PROTECTED] wrote:
 Salve, sto migrando il sistema di localizzazione di un software PHP a
 gettext
 ma mi sono imbattuto in un problema che non riesco a risolvere. Il problema
 è il seguente:

 Nel codice ci sono cicli che semplifico in questo tipo:

 foreach ($my_array as as $k = $v )
echo $lang[$k]. ' vale '.$v;

 $lang è un array utilizzato dal sistema attuale per le traduzioni ma non
 so come
 dichiararle in gettext, ovvero il massimo che posso fare è qualcosa che non
 mi consente di tradurre stringe che sono generate in automatico, o sbaglio?

 foreach ($my_array as as $k = $v )
printf (_(%k vale %s),$k,$v);

 Alessandro

non ho capito bene. ci sono due situazioni ipotetiche diverse, e non
ho capito a quale delle due ti riferisci:

situazione A - le stringhe che generi automaticamente sono in numero
limitatissimo, ed ha senso considerarle come stringhe compiute da
tradurre (che so, Empty File, Non Empty File, Empty Dir, Non
Empty Dir). in questo caso può senso inserire queste stringhe nella
traduzione, ad esempio perché File Vuoto e Directory Vuota hanno
generi diversi.

situazione B - le stringhe che generi automaticamente sono in numero
enorme, potenzialmente illimitato. (Hello, Mark, Hello, Jane,
Hello, World, Hello, Stephen etc.). in questo caso non ha senso
tradurre tutte le possibili combinazioni, specie se infinite. così,
traduci solo la stringa Hello, %s, nel modo più generalista
possibile, in modo da poter accontentare lingue che hanno strutture
diverse.

se quello che ho detto non c'entra niente, perdonami, vuol dire che
non ho proprio capito.


--
Per REVOCARE l'iscrizione alla lista, inviare un email a
[EMAIL PROTECTED] con oggetto unsubscribe. Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: Problema con gettext stringhe dinamiche

2008-08-26 Per discussione Alessandro De Zorzi
Pietro Giorgianni wrote:
 se quello che ho detto non c'entra niente, perdonami, vuol dire che
 non ho proprio capito.
   
Grazie della risposta, spiego il caso concreto che altrimenti è
difficile da spiegare:

* creo un form HTML dinamicamente con una serie di input,
a fianco della casella dell'input ci sono i nomi dei campi, i campi derivano
da un file XML di questo tipo che possono essere forniti da terzi quindi
non di mia competenza:

attribute name=maxMail
size4/size
...
default100/default
/attribute

Quello che faccio è stampare a video il valore (es. maxMail) ma alle volte
il nome è troppo lungo e allora fornisco una traduzione in questo modo

$label = (isset($lang[$name]) ? $lang[$name] : $name);

A questo punto però mi sono accorto che la soluzione forse è proprio
l'uovo di colombo
nel file XML aggiungere un campo opzionale label/label

attribute name=maxMail
size4/size
label_(Nome che voglio stampare)/label
...
default100/default
/attribute

...dovrebbe funzionare, credo

Alessandro





-- 
Per REVOCARE l'iscrizione alla lista, inviare un email a 
[EMAIL PROTECTED] con oggetto unsubscribe. Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Problema con gettext stringhe dinamiche

2008-08-26 Per discussione Alessandro De Zorzi
Salve, sto migrando il sistema di localizzazione di un software PHP a
gettext
ma mi sono imbattuto in un problema che non riesco a risolvere. Il problema
è il seguente:

Nel codice ci sono cicli che semplifico in questo tipo:

foreach ($my_array as as $k = $v )
echo $lang[$k]. ' vale '.$v;

$lang è un array utilizzato dal sistema attuale per le traduzioni ma non
so come
dichiararle in gettext, ovvero il massimo che posso fare è qualcosa che non
mi consente di tradurre stringe che sono generate in automatico, o sbaglio?

foreach ($my_array as as $k = $v )
printf (_(%k vale %s),$k,$v);

Alessandro

-- 
RHX Studio Associato
Tel. +39 0437 3730899
FAX  +39 0437 3731180
http://www.rhx.it/

Alessandro De Zorzi
RHCE RHEL4 804006070922038
GPG public key http://www.rhx.it/adezorzi.asc


-- 
Per REVOCARE l'iscrizione alla lista, inviare un email a 
[EMAIL PROTECTED] con oggetto unsubscribe. Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]