MediaWiki REL1_34
generateNormalizerDataMl.php
Go to the documentation of this file.
1<?php
24require_once __DIR__ . '/../Maintenance.php';
25
27
36 public function __construct() {
37 parent::__construct();
38 $this->addDescription( 'Generate the normalizer data file for Malayalam' );
39 }
40
41 public function getDbType() {
43 }
44
45 public function execute() {
46 $hexPairs = [
47 # From https://www.unicode.org/versions/Unicode5.1.0/#Malayalam_Chillu_Characters
48 '0D23 0D4D 200D' => '0D7A',
49 '0D28 0D4D 200D' => '0D7B',
50 '0D30 0D4D 200D' => '0D7C',
51 '0D32 0D4D 200D' => '0D7D',
52 '0D33 0D4D 200D' => '0D7E',
53
54 # From http://permalink.gmane.org/gmane.science.linguistics.wikipedia.technical/46413
55 '0D15 0D4D 200D' => '0D7F',
56 ];
57
58 $pairs = [];
59 foreach ( $hexPairs as $hexSource => $hexDest ) {
60 $source = UtfNormal\Utils::hexSequenceToUtf8( $hexSource );
61 $dest = UtfNormal\Utils::hexSequenceToUtf8( $hexDest );
62 $pairs[$source] = $dest;
63 }
64
65 global $IP;
66 $writer = new StaticArrayWriter();
67 file_put_contents( "$IP/languages/data/normalize-ml.php", $writer->create(
68 $pairs,
69 'File created by generateNormalizerDataMl.php'
70 ) );
71
72 echo "ml: " . count( $pairs ) . " pairs written.\n";
73 }
74}
75
76$maintClass = GenerateNormalizerDataMl::class;
77require_once RUN_MAINTENANCE_IF_MAIN;
const RUN_MAINTENANCE_IF_MAIN
$IP
Definition WebStart.php:41
Generates the normalizer data file for Malayalam.
getDbType()
Does the script need different DB access? By default, we give Maintenance scripts normal rights to th...
Abstract maintenance class for quickly writing and churning out maintenance scripts with minimal effo...
const DB_NONE
Constants for DB access type.
addDescription( $text)
Set the description text.
Format a static PHP array to be written to a file.
$source