Hi!

After creating a simple test project and going with xgettext at it I did successfully create the .po file, but found that concatenated strings aren't treated as one string. For example, I have this in my test script:
echo _("This is a string ".
       "that is concatenated ".
       "over three rows in one statement.");
xgettext reads that out as three individual strings. What I expected to happen is that a string within _() gets treated as one string and since I specified PHP as the language to deal with I further expected xgetttext to know how strings are concatenated in PHP and that any concatenated variables are to be ignored (although I haven't tested yet if it did that). I used the following command: "C:\Program Files\Poedit\bin\xgettext.exe" -pF:\gettexttest\lang -a --language=PHP F:\gettexttest\*.php

I have concatenated strings all over the place after many people yelled at me that my lines in my scripts are longer than 80 chars. Any advice on how to make xgettext understand the dot?

Also, how can I specify an entire directory tree to be searched for php files rather than just one directory. I did see that one can specify the locations to be read from a file, but I couldn't find conclusive instructions on how to format that file.

I also tried using poedit to create the catalogs, but all I get is an error message that it couldn't find source files. The help doesn't really specify on where to set where to look for the source files.

I guess with some more time I could get used to gettext, but the motto "as simple as possible, but not simpler" requires that I redefine what I understand under "simple". What makes it even worse, the several tutorials that are available all have their own, often overly complicated approach. Most create extra functions and wrap functions into new functions.

I also wonder how gettext differentiates between text strings. It is possible that a string in two spots is the same for English, but different for German. Since gettext apparently keys off the english string, how can it differentiate?

Does anyone know of a good tutorial that doesn't try to get fancy in step 0?

While waiting for answers I will look into using ini file as string files. There are translation tools out there and ini files are simple enough to create one's own tools. Reading ini files is part of the php core...wait, wasn't there a discussion about this going on as well? The downside to that is that I'd need to create a new function and that I need to extract the strings manually, which in my case wouldn't be that horrible as there aren't that many.

Thanks in advance!

David
_______________________________________________
New York PHP Community Talk Mailing List
http://lists.nyphp.org/mailman/listinfo/talk

NYPHPCon 2006 Presentations Online
http://www.nyphpcon.com

Show Your Participation in New York PHP
http://www.nyphp.org/show_participation.php

Reply via email to