MediaWiki REL1_37
SrConverter Class Reference

There are two levels of conversion for Serbian: the script level (Cyrillics <-> Latin), and the variant level (ekavian <->iyekavian). More...

Inheritance diagram for SrConverter:
Collaboration diagram for SrConverter:

Public Member Functions

 getLanguageVariants ()
 Get supported variants of the language.
 
 getMainCode ()
 Get Main language code.
 
 getVariantsFallbacks ()
 Get language variants fallbacks.
 
 guessVariant ( $text, $variant)
 Guess if a text is written in Cyrillic or Latin.
 
 translate ( $text, $toVariant)
 It translates text into variant, specials:
 
- Public Member Functions inherited from LanguageConverterSpecific
 findVariantLink (&$link, &$nt, $ignoreOtherCond=false)
 A function wrapper:
 
- Public Member Functions inherited from LanguageConverter
 __construct ( $langobj)
 
 autoConvert ( $text, $toVariant=false)
 Dictionary-based conversion.
 
 autoConvertToAllVariants ( $text)
 Call translate() to convert text to all valid variants.
 
 convert ( $text)
 Convert text to different variants of a language.
 
 convertCategoryKey ( $key)
 Convert the sorting key for category links.
 
 convertHtml ( $text)
 Perform output conversion on a string, and encode for safe HTML output.
 
 convertNamespace ( $index, $variant=null)
 Get the namespace display name in the preferred variant.
 
 convertTitle ( $title)
 Auto convert a LinkTarget or PageReference to a readable string in the preferred variant.
 
 convertTo ( $text, $variant)
 Same as convert() except a extra parameter to custom variant.
 
 getConvRuleTitle ()
 Get the title produced by the conversion rule.
 
 getDefaultVariant ()
 This function would not be affected by user's settings.
 
 getDescCodeSeparator ()
 Get desc code separator.
 
 getDescVarSeparator ()
 Get desc var separator.
 
 getExtraHashOptions ()
 Returns language specific hash options.
 
 getFlags ()
 Get strings that maps to the flags.
 
 getManualLevel ()
 Get manual level limit for supported variants.
 
 getPreferredVariant ()
 Get preferred language variant.
 
 getURLVariant ()
 Get the variant specified in the URL.
 
 getVariantFallbacks ( $variant)
 In case some variant is not defined in the markup, we need to have some fallback.
 
 getVariantNames ()
 Get variant names.
 
 getVariants ()
 Get all valid variants for current Coverter.
 
 getVarSeparatorPattern ()
 Get the cached separator pattern for ConverterRule::parseRules()
 
 hasVariant ( $variant)
 Strict check if the language has the specific variant.
 
 hasVariants ()
 Check if this is a language with variants.
 
 markNoConversion ( $text, $noParse=false)
 Enclose a string with the "no conversion" tag.
 
 updateConversionTable (LinkTarget $linkTarget)
 Refresh the cache of conversion tables when MediaWiki:Conversiontable* is updated.
 
 validateVariant ( $variant=null)
 Validate the variant and return an appropriate strict internal variant code if one exists.
 

Public Attributes

string[] $mToCyrillics
 
string[] $mToLatin
 

Protected Member Functions

 getAdditionalFlags ()
 Get strings that maps to the flags.
 
 loadDefaultTables ()
 Load default conversion tables.
 
- Protected Member Functions inherited from LanguageConverter
 applyManualConv (ConverterRule $convRule)
 Apply manual conversion rules.
 
 getAdditionalManualLevel ()
 Provides additional flags for converter.
 
 getHeaderVariant ()
 Determine the language variant from the Accept-Language header.
 
 getUserVariant (User $user)
 Determine if the user has a variant set.
 
 loadTables ( $fromCache=true)
 Load conversion tables either from the cache or the disk.
 
 postLoadTables ()
 Hook for post processing after conversion tables are loaded.
 
 recursiveConvertRule ( $text, $variant, &$startPos, $depth=0)
 Recursively convert text on the inside.
 
 recursiveConvertTopLevel ( $text, $variant, $depth=0)
 Recursively convert text on the outside.
 

Additional Inherited Members

- Static Public Attributes inherited from LanguageConverter
static array $languagesWithVariants
 languages supporting variants
 
- Protected Attributes inherited from LanguageConverter
ReplacementArray[] bool[] $mTables
 

Detailed Description

There are two levels of conversion for Serbian: the script level (Cyrillics <-> Latin), and the variant level (ekavian <->iyekavian).

The two are orthogonal. So we really only need two dictionaries: one for Cyrillics and Latin, and one for ekavian and iyekavian.

Definition at line 33 of file SrConverter.php.

Member Function Documentation

◆ getAdditionalFlags()

SrConverter::getAdditionalFlags ( )
protected

Get strings that maps to the flags.

Since
1.36
Returns
array

Reimplemented from LanguageConverter.

Definition at line 117 of file SrConverter.php.

◆ getLanguageVariants()

SrConverter::getLanguageVariants ( )

Get supported variants of the language.

Since
1.36
Returns
array

Reimplemented from LanguageConverter.

Definition at line 93 of file SrConverter.php.

◆ getMainCode()

SrConverter::getMainCode ( )

Get Main language code.

Since
1.36
Returns
string

Reimplemented from LanguageConverter.

Definition at line 83 of file SrConverter.php.

◆ getVariantsFallbacks()

SrConverter::getVariantsFallbacks ( )

Get language variants fallbacks.

Since
1.36
Returns
array

Reimplemented from LanguageConverter.

Definition at line 103 of file SrConverter.php.

◆ guessVariant()

SrConverter::guessVariant (   $text,
  $variant 
)

Guess if a text is written in Cyrillic or Latin.

Overrides LanguageConverter::guessVariant()

Parameters
string$textThe text to be checked
string$variantLanguage code of the variant to be checked for
Returns
bool True if $text appears to be written in $variant
Author
Nikola Smolenski smole.nosp@m.nsk@.nosp@m.eunet.nosp@m..rs
Since
1.19

Reimplemented from LanguageConverter.

Definition at line 188 of file SrConverter.php.

◆ loadDefaultTables()

SrConverter::loadDefaultTables ( )
protected

Load default conversion tables.

This method must be implemented in derived class.

Exceptions
MWException

Reimplemented from LanguageConverter.

Definition at line 130 of file SrConverter.php.

◆ translate()

SrConverter::translate (   $text,
  $toVariant 
)

It translates text into variant, specials:

  • ommiting roman numbers
Parameters
string$text
string$toVariant
Exceptions
MWException
Returns
string

Reimplemented from LanguageConverter.

Definition at line 148 of file SrConverter.php.

References $matches.

Member Data Documentation

◆ $mToCyrillics

string [] SrConverter::$mToCyrillics
Initial value:
= [
'a' => 'а', 'b' => 'б', 'c' => 'ц', 'č' => 'ч', 'ć' => 'ћ',
'd' => 'д', 'dž' => 'џ', 'đ' => 'ђ', 'e' => 'е', 'f' => 'ф',
'g' => 'г', 'h' => 'х', 'i' => 'и', 'j' => 'ј', 'k' => 'к',
'l' => 'л', 'lj' => 'љ', 'm' => 'м', 'n' => 'н', 'nj' => 'њ',
'o' => 'о', 'p' => 'п', 'r' => 'р', 's' => 'с', 'š' => 'ш',
't' => 'т', 'u' => 'у', 'v' => 'в', 'z' => 'з', 'ž' => 'ж',
'A' => 'А', 'B' => 'Б', 'C' => 'Ц', 'Č' => 'Ч', 'Ć' => 'Ћ',
'D' => 'Д', 'Dž' => 'Џ', 'Đ' => 'Ђ', 'E' => 'Е', 'F' => 'Ф',
'G' => 'Г', 'H' => 'Х', 'I' => 'И', 'J' => 'Ј', 'K' => 'К',
'L' => 'Л', 'LJ' => 'Љ', 'M' => 'М', 'N' => 'Н', 'NJ' => 'Њ',
'O' => 'О', 'P' => 'П', 'R' => 'Р', 'S' => 'С', 'Š' => 'Ш',
'T' => 'Т', 'U' => 'У', 'V' => 'В', 'Z' => 'З', 'Ž' => 'Ж',
'DŽ' => 'Џ', 'd!ž' => 'дж', 'D!ž' => 'Дж', 'D!Ž' => 'ДЖ',
'Lj' => 'Љ', 'l!j' => 'лј', 'L!j' => 'Лј', 'L!J' => 'ЛЈ',
'Nj' => 'Њ', 'n!j' => 'нј', 'N!j' => 'Нј', 'N!J' => 'НЈ'
]

Definition at line 57 of file SrConverter.php.

◆ $mToLatin

string [] SrConverter::$mToLatin
Initial value:
= [
'а' => 'a', 'б' => 'b', 'в' => 'v', 'г' => 'g', 'д' => 'd',
'ђ' => 'đ', 'е' => 'e', 'ж' => 'ž', 'з' => 'z', 'и' => 'i',
'ј' => 'j', 'к' => 'k', 'л' => 'l', 'љ' => 'lj', 'м' => 'm',
'н' => 'n', 'њ' => 'nj', 'о' => 'o', 'п' => 'p', 'р' => 'r',
'с' => 's', 'т' => 't', 'ћ' => 'ć', 'у' => 'u', 'ф' => 'f',
'х' => 'h', 'ц' => 'c', 'ч' => 'č', 'џ' => 'dž', 'ш' => 'š',
'А' => 'A', 'Б' => 'B', 'В' => 'V', 'Г' => 'G', 'Д' => 'D',
'Ђ' => 'Đ', 'Е' => 'E', 'Ж' => 'Ž', 'З' => 'Z', 'И' => 'I',
'Ј' => 'J', 'К' => 'K', 'Л' => 'L', 'Љ' => 'Lj', 'М' => 'M',
'Н' => 'N', 'Њ' => 'Nj', 'О' => 'O', 'П' => 'P', 'Р' => 'R',
'С' => 'S', 'Т' => 'T', 'Ћ' => 'Ć', 'У' => 'U', 'Ф' => 'F',
'Х' => 'H', 'Ц' => 'C', 'Ч' => 'Č', 'Џ' => 'Dž', 'Ш' => 'Š',
]

Definition at line 38 of file SrConverter.php.


The documentation for this class was generated from the following file: