]> git.mxchange.org Git - friendica.git/commitdiff
Remove util/php2po
authorHypolite Petovan <mrpetovan@gmail.com>
Mon, 19 Mar 2018 03:44:27 +0000 (23:44 -0400)
committerHypolite Petovan <mrpetovan@gmail.com>
Mon, 19 Mar 2018 03:44:27 +0000 (23:44 -0400)
- Updated util/README

util/README
util/php2po.php [deleted file]

index 83a49cd2230b7afd99208692303e0deb72b79b68..5808194ecb24f96ae1dd2b82934da4d21d7064b6 100644 (file)
@@ -72,7 +72,7 @@ $a->string["%d message sent"] = Array(
 The function string_plural_select($n) defined in strings.php, return the string
 index to use, related to the numbers of item (value of $n).
 
-This is modelled after ngettext function of GNU gettext.
+This is modeled after ngettext function of GNU gettext.
 More info at http://www.gnu.org/software/hello/manual/gettext/Plural-forms.html
 
 
@@ -117,10 +117,4 @@ When strings are added or modified in source, you could run
 
 If you already translated Friendica using strings.php, you could import your old
 translation to messages.po. Run:
-$ php util/php2po.php view/lang/<language>/strings.php
-
-
-You may also use the util/string_translator.php web interface to translate the string file, but it is disabled for website security reasons. The web server will need write permission to your language directories and the "Deny ..." line in util/.htaccess will need to be modified or commented to use the utility.
-
-
-
+$ php bin/console php2po view/lang/<language>/strings.php
diff --git a/util/php2po.php b/util/php2po.php
deleted file mode 100755 (executable)
index e28c91d..0000000
+++ /dev/null
@@ -1,204 +0,0 @@
-#!/usr/bin/env php
-<?php
-/**
- * Read strings.php file and create messages.po
- *
- * php utils/php2po.php <path/to/strings.php>
- *
- * Output to <path/to/messages.po>
- */
-
-DEFINE("NORM_REGEXP", "|[\\\]|");
-
-$a = new stdClass();
-
-if ($argc<2 || in_array('-h', $argv) || in_array('--h', $argv)) {
-       print "Usage: ".$argv[0]." [-p <n>] <strings.php>\n\n";
-       print "Options:\n";
-       print "p\tNumber of plural forms. Default: 2\n";
-       print "\n";
-       return;
-}
-
-$phpfile = $argv[1];
-$pofile = dirname($phpfile)."/messages.po";
-
-if (!file_exists($phpfile)){
-       print "Unable to find '$phpfile'\n";
-       return;
-}
-
-// utility functions
-function startsWith($haystack, $needle) {
-       // search backwards starting from haystack length characters from the end
-       return $needle === "" || strrpos($haystack, $needle, -strlen($haystack)) !== FALSE;
-}
-
-
-// start !
-include_once($phpfile);
-
-$out  = '';
-$out .= "# FRIENDICA Distributed Social Network\n";
-$out .= "# Copyright (C) 2010, 2011, 2012, 2013 the Friendica Project\n";
-$out .= "# This file is distributed under the same license as the Friendica package.\n";
-$out .= "# \n";
-$out .= 'msgid ""' ."\n";
-$out .= 'msgstr ""' ."\n";
-$out .= '"Project-Id-Version: friendica\n"' ."\n";
-$out .= '"Report-Msgid-Bugs-To: \n"' ."\n";
-$out .= '"POT-Creation-Date: '. date("Y-m-d H:i:sO").'\n"' ."\n";
-$out .= '"MIME-Version: 1.0\n"' ."\n";
-$out .= '"Content-Type: text/plain; charset=UTF-8\n"' ."\n";
-$out .= '"Content-Transfer-Encoding: 8bit\n"' ."\n";
-
-// search for plural info
-$lang = "";
-$lang_logic = "";
-$lang_pnum = 2;
-
-$_idx = array_search('-p', $argv);
-if ($_idx !== false) {
-       $lang_pnum = $argv[$_idx+1];
-}
-
-$infile = file($phpfile);
-foreach($infile as $l) {
-       $l = trim($l);
-       if  (startsWith($l, 'function string_plural_select_')) {
-               $lang = str_replace( 'function string_plural_select_' , '', str_replace( '($n){','', $l) );
-       }
-       if (startsWith($l, 'return')) {
-               $lang_logic = str_replace( '$', '', trim( str_replace( 'return ' , '',  $l) , ';') );
-               break;
-       }
-}
-
-echo "Language: $lang\n";
-echo "Plural forms: $lang_pnum\n";
-echo "Plural logic: $lang_logic;\n";
-
-$out .= sprintf('"Language: %s\n"', $lang) ."\n";
-$out .= sprintf('"Plural-Forms: nplurals=%s; plural=%s;\n"', $lang_pnum, $lang_logic)  ."\n";
-$out .= "\n";
-
-print "\nLoading base message.po...";
-
-// load base messages.po and extract msgids
-$base_msgids = [];
-$norm_base_msgids = [];
-$base_f = file("util/messages.po");
-if (!$base_f) {
-       die("No base messages.po\n");
-}
-
-$_f = 0;
-$_mid = "";
-$_mids = [];
-foreach( $base_f as $l) {
-       $l = trim($l);
-       //~ print $l."\n";
-
-       if (startsWith($l, 'msgstr')) {
-               if ($_mid != '""') {
-                       $base_msgids[$_mid] =  $_mids;
-                       $norm_base_msgids[preg_replace(NORM_REGEXP, "", $_mid)] = $_mid;
-                       //~ print "\t\t\t".$_mid. print_r($base_msgids[$_mid], true);
-               }
-
-               $_f = 0;
-               $_mid = "";
-               $_mids = [];
-
-       }
-
-       if (startsWith($l, '"') && $_f==2) {
-               $_mids[count($_mids)-1] .= "\n".$l;
-               //~ print "\t\t+mids: ".print_t($_mids, true);
-       }
-       if (startsWith($l, 'msgid_plural ')) {
-               $_f = 2;
-               $_mids[] = str_replace('msgid_plural ', '' , $l);
-               //~ print "\t\t mids: ".print_r($_mids, true);
-       }
-
-       if (startsWith($l, '"') && $_f==1) {
-               $_mid .= "\n".$l;
-               $_mids[count($_mids)-1] .= "\n".$l;
-               //~ print "\t+mid: $_mid \n";
-       }
-       if (startsWith($l, 'msgid ')) {
-               $_f = 1;
-               $_mid = str_replace('msgid ', '' , $l);
-                       $_mids = [$_mid];
-               //~ print "\t mid: $_mid \n";
-       }
-       //~ print "\t\t\t\t$_f\n\n";
-}
-
-print " done\n";
-print "Creating '$pofile'...";
-// create msgid and msgstr
-
-/**
- * Get a string and retun a message.po ready text
- * - replace " with \"
- * - replace tab char with \t
- * - manage multiline strings
- */
-function massage_string($str) {
-       $str = str_replace('\\','\\\\',$str);
-       $str = str_replace('"','\"',$str);
-       $str = str_replace("\t",'\t',$str);
-       $str = str_replace("\n",'\n"'."\n".'"',$str);
-       if (strpos($str, "\n")!==false  && $str[0]!=='"') $str = '"'."\n".$str;
-       $str = preg_replace("|\n([^\"])|", "\n\"$1", $str);
-       return sprintf('"%s"', $str);
-}
-
-function find_original_msgid($str) {
-       global $norm_base_msgids;
-       $norm_str = preg_replace(NORM_REGEXP, "", $str);
-       if (array_key_exists($norm_str, $norm_base_msgids)) {
-               return $norm_base_msgids[$norm_str];
-       }
-       return $str;
-}
-
-$warnings = "";
-foreach($a->strings as $key=>$str) {
-       $msgid = massage_string($key);
-
-       if (preg_match("|%[sd0-9](\$[sn])*|", $msgid)) {
-               $out .= "#, php-format\n";
-       }
-       $msgid = find_original_msgid($msgid);
-       $out .= 'msgid '. $msgid . "\n";
-
-       if (is_array($str)) {
-               if (array_key_exists($msgid, $base_msgids) && isset($base_msgids[$msgid][1]))  {
-                       $out .= 'msgid_plural '. $base_msgids[$msgid][1] . "\n";
-               } else {
-                       $out .= 'msgid_plural '. $msgid . "\n";
-                       $warnings .= "[W] No source plural form for msgid:\n". str_replace("\n","\n\t", $msgid) . "\n\n";
-               }
-               foreach ( $str as $n => $msgstr) {
-                       $out .= 'msgstr['.$n.'] '. massage_string($msgstr) . "\n";
-               }
-       } else {
-               $out .= 'msgstr '. massage_string($str) . "\n";
-       }
-
-       $out .= "\n";
-
-}
-
-file_put_contents($pofile, $out);
-
-print " done\n";
-
-if ($warnings=="") {
-       print "No warnings.\n";
-} else {
-       print $warnings;
-}