diff options
author | friendica <info@friendica.com> | 2014-12-29 23:57:33 -0800 |
---|---|---|
committer | friendica <info@friendica.com> | 2014-12-29 23:57:33 -0800 |
commit | 9b2c71a5dcdeb7ef7a1b1e09ad906bc750b1d0d6 (patch) | |
tree | 3e011882f060906cb3a7f797c873d8025046fcff /util/po2php.php | |
parent | 20356217c57b70a4673ae37f5d6655f38f0eb891 (diff) | |
parent | 619733e297708f49646bb220658c90223a8648c6 (diff) | |
download | volse-hubzilla-9b2c71a5dcdeb7ef7a1b1e09ad906bc750b1d0d6.tar.gz volse-hubzilla-9b2c71a5dcdeb7ef7a1b1e09ad906bc750b1d0d6.tar.bz2 volse-hubzilla-9b2c71a5dcdeb7ef7a1b1e09ad906bc750b1d0d6.zip |
Merge https://github.com/friendica/red into pending_merge
Diffstat (limited to 'util/po2php.php')
-rw-r--r-- | util/po2php.php | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/util/po2php.php b/util/po2php.php index d3e6d190c..cf295d8cb 100644 --- a/util/po2php.php +++ b/util/po2php.php @@ -73,7 +73,7 @@ function po2php_run($argv, $argc) { } $match=Array(); preg_match("|\[([0-9]*)\] (.*)|", $l, $match); - $out .= "\t". + $out .= "\t". preg_replace_callback($escape_s_exp,'escape_s',$match[1]) ." => " .preg_replace_callback($escape_s_exp,'escape_s',$match[2]) .",\n"; @@ -83,7 +83,7 @@ function po2php_run($argv, $argc) { if ($ink) { - $k .= trim($l,"\"\r\n"); + $k .= trim_message($l); $k = preg_replace_callback($escape_s_exp,'escape_s',$k); //$out .= '$a->strings['.$k.'] = '; } @@ -93,7 +93,7 @@ function po2php_run($argv, $argc) { if ($k!="") $out .= $arr?");\n":";\n"; $arr=False; $k = str_replace("msgid ","",$l); - $k = trim($k,"\"\r\n"); + $k = trim_message($k); $k = $ctx.$k; // echo $ctx ? $ctx."\nX\n":""; $k = preg_replace_callback($escape_s_exp,'escape_s',$k); @@ -102,14 +102,14 @@ function po2php_run($argv, $argc) { } if ($inv && substr($l,0,6)!="msgstr" && substr($l,0,7)!="msgctxt") { - $v .= trim($l,"\"\r\n"); + $v .= trim_message($l); $v = preg_replace_callback($escape_s_exp,'escape_s',$v); //$out .= '$a->strings['.$k.'] = '; } if (substr($l,0,7)=="msgctxt") { $ctx = str_replace("msgctxt ","",$l); - $ctx = trim($ctx,"\"\r\n"); + $ctx = trim_message($ctx); $ctx = "__ctx:".$ctx."__ "; $ctx = preg_replace_callback($escape_s_exp,'escape_s',$ctx); } @@ -123,6 +123,14 @@ function po2php_run($argv, $argc) { } +function trim_message($str) { + // Almost same as trim("\"\r\n") except that escaped quotes are preserved + $str = trim($str, "\r\n"); + $str = ltrim($str, "\""); + $str = preg_replace('/(?<!\\\)"+$/', '', $str); + return $str; +} + if (array_search(__file__,get_included_files())===0){ po2php_run($argv,$argc); } |