MediaWiki REL1_28
ShiConverter Class Reference

Conversion script between Latin and Tifinagh for Tachelhit. More...

Inheritance diagram for ShiConverter:
Collaboration diagram for ShiConverter:

Public Member Functions

 findVariantLink (&$link, &$nt, $ignoreOtherCond=false)
 A function wrapper:
 
 loadDefaultTables ()
 Load default conversion tables.
 
 parseManualRule ( $rule, $flags=[])
 rules should be defined as -{Tifinagh | Latin-} -or- -{code:text | code:text | ...}- update: delete all rule parsing because it's not used currently, and just produces a couple of bugs
 
 parserConvert ( $text, &$parser)
 Do not convert content on talk pages.
 
 translate ( $text, $toVariant)
 It translates text into variant.
 
- Public Member Functions inherited from LanguageConverter
 __construct ( $langobj, $maincode, $variants=[], $variantfallbacks=[], $flags=[], $manualLevel=[])
 Constructor.
 
 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.
 
 convertNamespace ( $index, $variant=null)
 Get the namespace display name in the preferred variant.
 
 convertTitle ( $title)
 Auto convert a Title object 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 ()
 Get default variant.
 
 getExtraHashOptions ()
 Returns language specific hash options.
 
 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.
 
 getVariants ()
 Get all valid variants.
 
 getVarSeparatorPattern ()
 Get the cached separator pattern for ConverterRule::parseRules()
 
 guessVariant ( $text, $variant)
 Guess if a text is written in a variant.
 
 loadTables ( $fromCache=true)
 Load conversion tables either from the cache or the disk.
 
 markNoConversion ( $text, $noParse=false)
 Enclose a string with the "no conversion" tag.
 
 parseCachedTable ( $code, $subpage='', $recursive=true)
 Parse the conversion table stored in the cache.
 
 postLoadTables ()
 Hook for post processing after conversion tables are loaded.
 
 reloadTables ()
 Reload the conversion tables.
 
 updateConversionTable (Title $titleobj)
 Refresh the cache of conversion tables when MediaWiki:Conversiontable* is updated.
 
 validateVariant ( $variant=null)
 Validate the variant.
 

Public Attributes

 $mToLatin
 
 $mToTifinagh
 
 $mUpperToLowerCaseLatin
 
- Public Attributes inherited from LanguageConverter
string $mCacheKey
 Memcached key name.
 
 $mConvRuleTitle = false
 
 $mDescCodeSep = ':'
 
 $mDescVarSep = ';'
 
 $mFlags
 
 $mHeaderVariant
 
 $mLangObj
 
 $mMainLanguageCode
 
 $mManualLevel
 
 $mMaxDepth = 10
 
 $mTables
 
 $mTablesLoaded = false
 
 $mUcfirst = false
 
 $mURLVariant
 
 $mUserVariant
 
 $mVariantFallbacks
 
 $mVariantNames
 
 $mVariants
 
 $mVarSeparatorPattern
 
const CACHE_VERSION_KEY = 'VERSION 7'
 

Protected Attributes

 $mDoContentConvert
 

Additional Inherited Members

- Static Public Attributes inherited from LanguageConverter
static array $languagesWithVariants
 languages supporting variants
 
- Protected Member Functions inherited from LanguageConverter
 applyManualConv ( $convRule)
 Apply manual conversion rules.
 
 getHeaderVariant ()
 Determine the language variant from the Accept-Language header.
 
 getUserVariant ()
 Determine if the user has a variant set.
 
 recursiveConvertRule ( $text, $variant, &$startPos, $depth=0)
 Recursively convert text on the inside.
 
 recursiveConvertTopLevel ( $text, $variant, $depth=0)
 Recursively convert text on the outside.
 

Detailed Description

Conversion script between Latin and Tifinagh for Tachelhit.

  • Tifinagh -> lowercase Latin
  • lowercase/uppercase Latin -> Tifinagh

Based on:

Definition at line 36 of file LanguageShi.php.

Member Function Documentation

◆ findVariantLink()

ShiConverter::findVariantLink ( $link,
$nt,
  $ignoreOtherCond = false 
)

A function wrapper:

  • if there is no selected variant, leave the link names as they were
  • do not try to find variants for usernames
Parameters
string&$link
Title&$nt
bool$ignoreOtherCond

Reimplemented from LanguageConverter.

Definition at line 123 of file LanguageShi.php.

References $link, LanguageConverter\getPreferredVariant(), NS_USER, and NS_USER_TALK.

◆ loadDefaultTables()

ShiConverter::loadDefaultTables ( )

Load default conversion tables.

This method must be implemented in derived class.

Access:\n private
Exceptions
MWException

Reimplemented from LanguageConverter.

Definition at line 66 of file LanguageShi.php.

◆ parseManualRule()

ShiConverter::parseManualRule (   $rule,
  $flags = [] 
)

rules should be defined as -{Tifinagh | Latin-} -or- -{code:text | code:text | ...}- update: delete all rule parsing because it's not used currently, and just produces a couple of bugs

Parameters
string$rule
array$flags
Returns
array

Definition at line 85 of file LanguageShi.php.

References $flags, and as.

◆ parserConvert()

ShiConverter::parserConvert (   $text,
$parser 
)

Do not convert content on talk pages.

Parameters
string$text
Parser$parser
Returns
string

Definition at line 106 of file LanguageShi.php.

References $parser.

◆ translate()

ShiConverter::translate (   $text,
  $toVariant 
)

It translates text into variant.

Parameters
string$text
string$toVariant
Returns
string

Reimplemented from LanguageConverter.

Definition at line 147 of file LanguageShi.php.

References LanguageConverter\loadTables().

Member Data Documentation

◆ $mDoContentConvert

ShiConverter::$mDoContentConvert
protected

Definition at line 37 of file LanguageShi.php.

◆ $mToLatin

ShiConverter::$mToLatin
Initial value:
= [
'ⴰ' => 'a', 'ⴱ' => 'b', 'ⴳ' => 'g', 'ⴷ' => 'd', 'ⴹ' => 'ḍ', 'ⴻ' => 'e',
'ⴼ' => 'f', 'ⴽ' => 'k', 'ⵀ' => 'h', 'ⵃ' => 'ḥ', 'ⵄ' => 'ε', 'ⵅ' => 'x',
'ⵇ' => 'q', 'ⵉ' => 'i', 'ⵊ' => 'j', 'ⵍ' => 'l', 'ⵎ' => 'm', 'ⵏ' => 'n',
'ⵓ' => 'u', 'ⵔ' => 'r', 'ⵕ' => 'ṛ', 'ⵖ' => 'γ', 'ⵙ' => 's', 'ⵚ' => 'ṣ',
'ⵛ' => 'š', 'ⵜ' => 't', 'ⵟ' => 'ṭ', 'ⵡ' => 'w', 'ⵢ' => 'y', 'ⵣ' => 'z',
'ⵥ' => 'ẓ', 'ⵯ' => 'ʷ', 'ⵖ' => 'ɣ', 'ⵠ' => 'v', 'ⵒ' => 'p',
]

Definition at line 39 of file LanguageShi.php.

◆ $mToTifinagh

ShiConverter::$mToTifinagh
Initial value:
= [
'a' => 'ⴰ', 'b' => 'ⴱ', 'g' => 'ⴳ', 'd' => 'ⴷ', 'ḍ' => 'ⴹ', 'e' => 'ⴻ',
'f' => 'ⴼ', 'k' => 'ⴽ', 'h' => 'ⵀ', 'ḥ' => 'ⵃ', 'ε' => 'ⵄ', 'x' => 'ⵅ',
'q' => 'ⵇ', 'i' => 'ⵉ', 'j' => 'ⵊ', 'l' => 'ⵍ', 'm' => 'ⵎ', 'n' => 'ⵏ',
'u' => 'ⵓ', 'r' => 'ⵔ', 'ṛ' => 'ⵕ', 'γ' => 'ⵖ', 's' => 'ⵙ', 'ṣ' => 'ⵚ',
'š' => 'ⵛ', 't' => 'ⵜ', 'ṭ' => 'ⵟ', 'w' => 'ⵡ', 'y' => 'ⵢ', 'z' => 'ⵣ',
'ẓ' => 'ⵥ', 'ʷ' => 'ⵯ', 'ɣ' => 'ⵖ', 'v' => 'ⵠ', 'p' => 'ⵒ',
]

Definition at line 57 of file LanguageShi.php.

◆ $mUpperToLowerCaseLatin

ShiConverter::$mUpperToLowerCaseLatin
Initial value:
= [
'A' => 'a', 'B' => 'b', 'C' => 'c', 'D' => 'd', 'E' => 'e',
'F' => 'f', 'G' => 'g', 'H' => 'h', 'I' => 'i', 'J' => 'j',
'K' => 'k', 'L' => 'l', 'M' => 'm', 'N' => 'n', 'O' => 'o',
'P' => 'p', 'Q' => 'q', 'R' => 'r', 'S' => 's', 'T' => 't',
'U' => 'u', 'V' => 'v', 'W' => 'w', 'X' => 'x', 'Y' => 'y',
'Z' => 'z', 'Ɣ' => 'ɣ',
]

Definition at line 48 of file LanguageShi.php.


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