Kompletní lokalizace Nette aplikací – GettextExtractor v2
- danielseek
- Člen | 42
Dobrý den,
používám tuto verzi od voda: https://github.com/…xt-extractor
Kromě toho, že jsem si musel upravit správné chování v konzoli (nějak
si to pletlo přepínače), nyní jsem narazil na problém, že mi to ignoruje
ta macra v latte souborech, která v sobě mají znak pro nový řádek:
např:
{"asdfjkladfs
asdfjklasdf"}
Problém patrně spočívá v tomto reguláru, nejsem ale schopný to opravit.
const RE_STRING = '\'(?:\\\\.|[^\'\\\\])*\'|"(?:\\\\.|[^"\\\\])*"';
Zkoušel jsem i změnit:
return "/$regex/";"
na
return "/$regex/s";
také nepomohlo…
Máte někdo nějaký nápad?
------edit----------
Už jsem na to přešel. Blbec jsem si nevšiml, že se soubor prochází po
řádcích, aby bylo možné spolu s překladem vyextrahovat i jeho
umístění v souboru.
foreach (file($file) as $line => $contents) {
Editoval danielseek (5. 3. 2014 0:29)
- kleinpeter
- Člen | 7
Ahoj,
na poslední otázku by se mi také hodila odpověď, už se tu s tím peru
3 hodiny :x
Umí tento extraktor pracovat již s existujícími překlady?
- voda
- Člen | 561
Ahoj, GettextExtraxtor přímo s již existujícími překlady nepracuje. Jeho cílem je jen najít texty v aplikaci a ty uložit do šablony (.pot). Z čablony pak můžeš aktualizovat stávající překlady. K tomu lze použít Poedit nebo příkaz msgmerge. Je to i popsáno v prvním příspěvku v sekci „Mám extrahováno, co dál?“.