MediaWiki REL1_35
|
A trivial language converter. More...
Public Member Functions | |
__construct ( $langobj) | |
autoConvert ( $text, $variant=false) | |
Dictionary-based conversion. | |
autoConvertToAllVariants ( $text) | |
Call translate() to convert text to all valid variants. | |
convert ( $t) | |
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 (LinkTarget $linkTarget) | |
convertTo ( $text, $variant) | |
Same as convert() except a extra parameter to custom variant. | |
findVariantLink (&$l, &$n, $ignoreOtherCond=false) | |
If a language supports multiple variants, it is possible that non-existing link in one variant actually exists in another 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 () | |
guessVariant ( $text, $variant) | |
Guess if a text is written in a variant. | |
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. | |
translate ( $text, $variant) | |
Translate a string to a variant. | |
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. | |
Protected Attributes | |
Language | $language |
Private Member Functions | |
reloadTables () | |
Used by test suites which need to reset the converter state. | |
Private Attributes | |
TitleFormatter | $titleFormatter |
A trivial language converter.
For Languages which do not implement variant conversion, for example, German, TrivialLanguageConverter is provided rather than a LanguageConverter when asked for their converter. The TrivialLanguageConverter just returns text unchanged, i.e. it doesn't do any conversion.
See https://www.mediawiki.org/wiki/Writing_systems#LanguageConverter.
Definition at line 36 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::__construct | ( | $langobj | ) |
Definition at line 48 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::autoConvert | ( | $text, | |
$toVariant = false |
|||
) |
Dictionary-based conversion.
This function would not parse the conversion rules. If you want to parse rules, try to use convert() or convertTo().
string | $text | The text to be converted |
bool | string | $toVariant | The target language code |
Implements ILanguageConverter.
Definition at line 53 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::autoConvertToAllVariants | ( | $text | ) |
Call translate() to convert text to all valid variants.
string | $text | The text to be converted |
Implements ILanguageConverter.
Definition at line 57 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::convert | ( | $text | ) |
Convert text to different variants of a language.
The automatic conversion is done in autoConvert(). Here we parse the text marked with -{}-, which specifies special conversions of the text that can not be accomplished in autoConvert().
Syntax of the markup: -{code1:text1;code2:text2;...}- or -{flags|code1:text1;code2:text2;...}- or -{text}- in which case no conversion should take place for text
string | $text | Text to be converted, already html escaped. |
Implements ILanguageConverter.
Definition at line 61 of file TrivialLanguageConverter.php.
References $t.
Referenced by convertHtml().
TrivialLanguageConverter::convertCategoryKey | ( | $key | ) |
Convert the sorting key for category links.
This should make different keys that are variants of each other map to the same key.
string | $key |
Implements ILanguageConverter.
Definition at line 123 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::convertHtml | ( | $text | ) |
Perform output conversion on a string, and encode for safe HTML output.
string | $text | Text to be converted |
Implements ILanguageConverter.
Definition at line 183 of file TrivialLanguageConverter.php.
References convert().
TrivialLanguageConverter::convertNamespace | ( | $index, | |
$variant = null |
|||
) |
Get the namespace display name in the preferred variant.
int | $index | Namespace id |
string | null | $variant | Variant code or null for preferred variant |
Implements ILanguageConverter.
Definition at line 77 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::convertTitle | ( | LinkTarget | $linkTarget | ) |
LinkTarget | $linkTarget |
Implements ILanguageConverter.
Definition at line 73 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::convertTo | ( | $text, | |
$variant | |||
) |
Same as convert() except a extra parameter to custom variant.
string | $text | Text to be converted, already html escaped |
-taint | $text | exec_html |
string | $variant | The target variant code |
Implements ILanguageConverter.
Definition at line 65 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::findVariantLink | ( | & | $link, |
& | $nt, | ||
$ignoreOtherCond = false |
|||
) |
If a language supports multiple variants, it is possible that non-existing link in one variant actually exists in another variant.
This function tries to find it. See e.g. LanguageZh.php The input parameters may be modified upon return
string | &$link | The name of the link |
Title | &$nt | The title object of the link |
bool | $ignoreOtherCond | To disable other conditions when we need to transclude a template or update a category's link |
Implements ILanguageConverter.
Definition at line 108 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::getConvRuleTitle | ( | ) |
Get the title produced by the conversion rule.
Implements ILanguageConverter.
Definition at line 104 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::getDefaultVariant | ( | ) |
Get default variant.
This function would not be affected by user's settings
Implements ILanguageConverter.
Definition at line 96 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::getExtraHashOptions | ( | ) |
Returns language specific hash options.
Implements ILanguageConverter.
Definition at line 111 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::getPreferredVariant | ( | ) |
Get preferred language variant.
Implements ILanguageConverter.
Definition at line 92 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::getURLVariant | ( | ) |
Get the variant specified in the URL.
Implements ILanguageConverter.
Definition at line 100 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::getVariantFallbacks | ( | $variant | ) |
In case some variant is not defined in the markup, we need to have some fallback.
For example, in zh, normally people will define zh-hans and zh-hant, but less so for zh-sg or zh-hk. when zh-sg is preferred but not defined, we will pick zh-hans in this case. Right now this is only used by zh.
string | $variant | The language code of the variant |
Implements ILanguageConverter.
Definition at line 88 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::getVariants | ( | ) |
Implements ILanguageConverter.
Definition at line 84 of file TrivialLanguageConverter.php.
Referenced by hasVariants().
TrivialLanguageConverter::guessVariant | ( | $text, | |
$variant | |||
) |
Guess if a text is written in a variant.
This should be implemented in subclasses.
string | $text | The text to be checked |
string | $variant | Language code of the variant to be checked for |
Implements ILanguageConverter.
Definition at line 115 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::hasVariant | ( | $variant | ) |
Strict check if the language has the specific variant.
Compare to LanguageConverter::validateVariant() which does a more lenient check and attempts to coerce the given code to a valid one.
string | $variant |
Implements ILanguageConverter.
Definition at line 171 of file TrivialLanguageConverter.php.
References validateVariant().
TrivialLanguageConverter::hasVariants | ( | ) |
Check if this is a language with variants.
Implements ILanguageConverter.
Definition at line 157 of file TrivialLanguageConverter.php.
References getVariants().
TrivialLanguageConverter::markNoConversion | ( | $text, | |
$noParse = false |
|||
) |
Enclose a string with the "no conversion" tag.
This is used by various functions in the Parser.
string | $text | Text to be tagged for no conversion |
bool | $noParse | Unused |
Implements ILanguageConverter.
Definition at line 119 of file TrivialLanguageConverter.php.
|
private |
Used by test suites which need to reset the converter state.
Definition at line 147 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::translate | ( | $text, | |
$variant | |||
) |
Translate a string to a variant.
Doesn't parse rules or do any of that other stuff, for that use convert() or convertTo().
string | $text | Text to convert |
string | $variant | Variant language code |
Implements ILanguageConverter.
Definition at line 135 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::updateConversionTable | ( | LinkTarget | $linkTarget | ) |
Refresh the cache of conversion tables when MediaWiki:Conversiontable* is updated.
LinkTarget | $linkTarget | The LinkTarget of the page being updated |
Implements ILanguageConverter.
Definition at line 139 of file TrivialLanguageConverter.php.
TrivialLanguageConverter::validateVariant | ( | $variant = null | ) |
Validate the variant and return an appropriate strict internal variant code if one exists.
Compare to Language::hasVariant() which does a strict test.
string | null | $variant | The variant to validate |
Implements ILanguageConverter.
Definition at line 127 of file TrivialLanguageConverter.php.
Referenced by hasVariant().
|
protected |
Definition at line 41 of file TrivialLanguageConverter.php.
|
private |
Definition at line 46 of file TrivialLanguageConverter.php.