Process msgctxt plurals

This commit is contained in:
Max Kostikov 2018-07-29 02:11:27 +02:00
parent d85c849668
commit 77dfe63d90

View File

@ -33,9 +33,16 @@
if (!preg_match("/^msgstr\[[1-9]/",$l)) {
if ($k!="" && (substr($l,0,7)=="msgstr " || substr($l,0,8)=="msgstr[0")){
$ink = False;
$k = str_replace('\"','"',$k);
$v = "";
if (isset(App::$strings[$k])) {
$v = App::$strings[$k];
} else {
$k = "__ctx:".$c."__ ".$k;
if (isset(App::$strings[$k]))
$v = App::$strings[$k];
}
if (!empty($v)) {
if (is_array($v)) {
$l = "";
$n = 0;
@ -53,20 +60,19 @@
if ($ink) {
$k .= trim($l,"\"\r\n");
$k = str_replace('\"','"',$k);
}
if (substr($l,0,6)=="msgid "){
$k = str_replace("msgid ","",$l);
if ($k != '""' ) {
$k = trim($k,"\"\r\n");
$k = str_replace('\"','"',$k);
} else {
$k = "";
}
if (substr($l,0,6)=="msgid ") {
preg_match('/^msgid "(.*)"/',$l,$m);
$k = $m[1];
$ink = True;
}
if (substr($l,0,8)=="msgctxt ") {
preg_match('/^msgctxt "(.*)"/',$l,$m);
$c = $m[1];
}
$out .= $l;
}
}