MediaWiki
REL1_22
|
Internationalisation code. More...
Public Member Functions | |
__construct () | |
__destruct () | |
Reduce memory usage. | |
addMagicWordsByLang ($newWords) | |
Add magic words to the extension array. | |
alignEnd () | |
Return 'right' or 'left' as appropriate alignment for line-end for this language's text direction. | |
alignStart () | |
Return 'left' or 'right' as appropriate alignment for line-start for this language's text direction. | |
armourMath ($text) | |
Put custom tags (e.g. | |
autoConvertToAllVariants ($text) | |
convert text to all supported variants | |
capitalizeAllNouns () | |
caseFold ($s) | |
Return a case-folded representation of $s. | |
checkTitleEncoding ($s) | |
commafy ($number) | |
Adds commas to a given number. | |
commaList (array $list) | |
Take a list of strings and build a locale-friendly comma-separated list, using the local comma-separator message. | |
convert ($text) | |
convert text to different variants of a language. | |
convertCategoryKey ($key) | |
convertForSearchResult ($termsArray) | |
convertGrammar ($word, $case) | |
Grammatical transformations, needed for inflected languages Invoked by putting {{grammar:case|word}} in a message. | |
convertHtml ($text, $isTitle=false) | |
Perform output conversion on a string, and encode for safe HTML output. | |
convertLinkToAllVariants ($text) | |
If a language supports multiple variants, converts text into an array of all possible variants of the text: 'variant' => text in that variant. | |
convertNamespace ($ns) | |
Convert a namespace index to a string in the preferred variant. | |
convertPlural ($count, $forms) | |
Plural form transformations, needed for some languages. | |
convertTitle ($title) | |
Convert a Title object to a string in the preferred variant. | |
date ($ts, $adj=false, $format=true, $timecorrection=false) | |
dateFormat ($usePrefs=true) | |
This is meant to be used by time(), date(), and timeanddate() to get the date preference they're supposed to use, it should be used in all children. | |
digitGroupingPattern () | |
digitTransformTable () | |
emphasize ($text) | |
Italic is unsuitable for some languages. | |
fallback8bitEncoding () | |
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. | |
firstChar ($s) | |
Get the first character of a string. | |
fixVariableInNamespace ($talk) | |
formatBitrate ($bps) | |
Format a bitrate for output, using an appropriate unit (bps, kbps, Mbps, Gbps, Tbps, Pbps, Ebps, Zbps or Ybps) according to the magnitude in question. | |
formatComputingNumbers ($size, $boundary, $messageKey) | |
formatDuration ($seconds, array $chosenIntervals=array()) | |
Takes a number of seconds and turns it into a text using values such as hours and minutes. | |
formatExpiry ($expiry, $format=true) | |
Decode an expiry (block, protection, etc) which has come from the DB. | |
formatNum ($number, $nocommafy=false) | |
Normally we output all numbers in plain en_US style, that is 293,291.235 for twohundredninetythreethousand-twohundredninetyone point twohundredthirtyfive. | |
formatNumNoSeparators ($number) | |
Front-end for non-commafied formatNum. | |
formatSize ($size) | |
Format a size in bytes for output, using an appropriate unit (B, KB, MB, GB, TB, PB, EB, ZB or YB) according to the magnitude in question. | |
formatTimePeriod ($seconds, $format=array()) | |
gender ($gender, $forms) | |
Provides an alternative text depending on specified gender. | |
getAllMessages () | |
getArrow ($direction= 'forwards') | |
An arrow, depending on the language direction. | |
getBookstoreList () | |
Exports $wgBookstoreListEn. | |
getCode () | |
Get the RFC 3066 code for this language object. | |
getCompiledPluralRules () | |
Get the compiled plural rules for the language. | |
getConverter () | |
Return the LanguageConverter used in the Language. | |
getConvRuleTitle () | |
Get the conversion rule title, if any. | |
getDateFormats () | |
getDateFormatString ($type, $pref) | |
Get a format string for a given type and preference. | |
getDatePreferenceMigrationMap () | |
getDatePreferences () | |
getDefaultDateFormat () | |
getDefaultVariant () | |
getDir () | |
Return the correct HTML 'dir' attribute value for this language. | |
getDirMark ($opposite=false) | |
A hidden direction mark (LRM or RLM), depending on the language direction. | |
getDirMarkEntity ($opposite=false) | |
A hidden direction mark (LRM or RLM), depending on the language direction. | |
getDurationIntervals ($seconds, array $chosenIntervals=array()) | |
Takes a number of seconds and returns an array with a set of corresponding intervals. | |
getExtraHashOptions () | |
returns language specific options used by User::getPageRenderHash() for example, the preferred language variant | |
getExtraUserToggles () | |
getFallbackLanguageCode () | |
Same as getFallbacksFor for current language. | |
getFallbackLanguages () | |
getFormattedNamespaces () | |
A convenience function that returns the same thing as getNamespaces() except with the array values changed to ' ' where it found '_', useful for producing output to be displayed e.g. | |
getFormattedNsText ($index) | |
A convenience function that returns the same thing as getNsText() except with '_' changed to ' ', useful for producing output. | |
getGenderNsText ($index, $gender) | |
Returns gender-dependent namespace alias if available. | |
getGrammarForms () | |
Get the grammar forms for the content language. | |
getHebrewCalendarMonthName ($key) | |
getHebrewCalendarMonthNameGen ($key) | |
getHijriCalendarMonthName ($key) | |
getHtmlCode () | |
Get the code in Bcp47 format which we can use inside of html lang="" tags. | |
getHumanTimestamp (MWTimestamp $ts, MWTimestamp $relativeTo, User $user) | |
Convert an MWTimestamp into a pretty human-readable timestamp using the given user preferences and relative base time. | |
getImageFile ($image) | |
getIranianCalendarMonthName ($key) | |
getLangObj () | |
getLanguageName ($code) | |
Get the native language name of $code. | |
getLocalNsIndex ($text) | |
Get a namespace key by value, case insensitive. | |
getMagic ($mw) | |
Fill a MagicWord object with data from here. | |
getMagicWords () | |
Get all magic words from cache. | |
getMessage ($key) | |
getMessageFromDB ($msg) | |
Get a message from the MediaWiki namespace. | |
getMonthAbbreviation ($key) | |
getMonthAbbreviationsArray () | |
getMonthName ($key) | |
getMonthNameGen ($key) | |
getMonthNamesArray () | |
getNamespaceAliases () | |
getNamespaceIds () | |
getNamespaces () | |
Returns an array of localised namespaces indexed by their numbers. | |
getNsIndex ($text) | |
Get a namespace key by value, case insensitive. | |
getNsText ($index) | |
Get a namespace value by key $mw_ns = $wgContLang->getNsText( NS_MEDIAWIKI ); echo $mw_ns; // prints 'MediaWiki' | |
getParentLanguage () | |
Get the "parent" language which has a converter to convert a "compatible" language (in another variant) to this language (eg. | |
getParsedTitle () | |
For languages that support multiple variants, the title of an article may be displayed differently in different variants. | |
getPluralRuleIndexNumber ($number) | |
Find the index number of the plural rule appropriate for the given number. | |
getPluralRules () | |
Get the plural rules for the language. | |
getPluralRuleType ($number) | |
Find the plural rule type appropriate for the given number For example, if the language is set to Arabic, getPluralType(5) should return 'few'. | |
getPluralRuleTypes () | |
Get the plural rule types for the language. | |
getPreferredVariant () | |
getSpecialPageAliases () | |
Get special page names, as an associative array case folded alias => real name. | |
getURLVariant () | |
getUserToggle ($tog) | |
getVariantname ($code, $usemsg=true) | |
short names for language variants used for language conversion links. | |
getVariants () | |
Get the list of variants supported by this language see sample implementation in LanguageZh.php. | |
getWeekdayAbbreviation ($key) | |
getWeekdayName ($key) | |
hasVariant ($variant) | |
Check if the language has the specific variant. | |
hasVariants () | |
Check if this is a language with variants. | |
hasWordBreaks () | |
Most writing systems use whitespace to break up words. | |
iconv ($in, $out, $string) | |
initContLang () | |
Hook which will be called if this is the content language. | |
initEncoding () | |
isMultibyte ($str) | |
isRTL () | |
For right-to-left language support. | |
lc ($str, $first=false) | |
lcCallback ($matches) | |
lcfirst ($str) | |
linkPrefixExtension () | |
To allow "foo[[bar]]" to extend the link over the whole word "foobar". | |
linkTrail () | |
A regular expression to match legal word-trailing characters which should be merged onto a link of the form [[foo]]bar. | |
listToText (array $l) | |
Take a list of strings and build a locale-friendly comma-separated list, using the local comma-separator message. | |
markNoConversion ($text, $noParse=false) | |
Prepare external link text for conversion. | |
needsGenderDistinction () | |
Whether this language makes distinguishes genders for example in namespaces. | |
normalize ($s) | |
Convert a UTF-8 string to normal form C. | |
normalizeForSearch ($string) | |
Some languages have special punctuation need to be normalized. | |
parseFormattedNumber ($number) | |
pipeList (array $list) | |
Same as commaList, but separate it with the pipe instead. | |
recodeForEdit ($s) | |
recodeInput ($s) | |
replaceGrammarInNamespace ($m) | |
resetNamespaces () | |
Resets all of the namespace caches. | |
segmentByWord ($string) | |
Some languages such as Chinese require word segmentation, Specify such segmentation when overridden in derived class. | |
segmentForDiff ($text) | |
languages like Chinese need to be segmented in order for the diff to be of any use | |
semicolonList (array $list) | |
Take a list of strings and build a locale-friendly semicolon-separated list, using the local semicolon-separator message. | |
separatorTransformTable () | |
setCode ($code) | |
setNamespaces (array $namespaces) | |
Arbitrarily set all of the namespace names at once. | |
specialList ($page, $details, $oppositedm=true) | |
Make a list item, used by various special pages. | |
specialPage ($name) | |
sprintfDate ($format, $ts, DateTimeZone $zone=null) | |
This is a workalike of PHP's date() function, but with better internationalisation, a reduced set of format characters, and a better escaping format. | |
time ($ts, $adj=false, $format=true, $timecorrection=false) | |
timeanddate ($ts, $adj=false, $format=true, $timecorrection=false) | |
transformUsingPairFile ($file, $string) | |
Transform a string using serialized data stored in the given file (which must be in the serialized subdirectory of $IP). | |
translateBlockExpiry ($str) | |
truncate ($string, $length, $ellipsis= '...', $adjustLength=true) | |
Truncate a string to a specified length in bytes, appending an optional string (e.g. | |
truncateHtml ($text, $length, $ellipsis= '...') | |
Truncate a string of valid HTML to a specified length in bytes, appending an optional string (e.g. | |
uc ($str, $first=false) | |
Convert a string to uppercase. | |
ucCallback ($matches) | |
ucfirst ($str) | |
Make a string's first character uppercase. | |
ucwordbreaks ($str) | |
capitalize words at word breaks | |
ucwordbreaksCallbackAscii ($matches) | |
ucwordbreaksCallbackMB ($matches) | |
ucwords ($str) | |
ucwordsCallbackMB ($matches) | |
ucwordsCallbackWiki ($matches) | |
unsegmentForDiff ($text) | |
and unsegment to show the result | |
userAdjust ($ts, $tz=false) | |
Used by date() and time() to adjust the time output. | |
userDate ($ts, User $user, array $options=array()) | |
Get the formatted date for the given timestamp and formatted for the given user. | |
userTime ($ts, User $user, array $options=array()) | |
Get the formatted time for the given timestamp and formatted for the given user. | |
userTimeAndDate ($ts, User $user, array $options=array()) | |
Get the formatted date and time for the given timestamp and formatted for the given user. | |
viewPrevNext (Title $title, $offset, $limit, array $query=array(), $atend=false) | |
Generate (prev x| next x) (20|50|100...) type links for paging. | |
Static Public Member Functions | |
static | classFromCode ($code) |
static | factory ($code) |
Get a cached or new language object for a given language code. | |
static | fetchLanguageName ($code, $inLanguage=null, $include= 'all') |
static | fetchLanguageNames ($inLanguage=null, $include= 'mw') |
Get an array of language names, indexed by code. | |
static | getCaseMaps () |
static | getClassFileName ($code) |
static | getCodeFromFileName ($filename, $prefix= 'Language', $suffix= '.php') |
Get the language code from a file name. | |
static | getFallbackFor ($code) |
Get the first fallback for a given language. | |
static | getFallbacksFor ($code) |
Get the ordered list of fallback languages. | |
static | getFallbacksIncludingSiteLanguage ($code) |
Get the ordered list of fallback languages, ending with the fallback language chain for the site language. | |
static | getFileName ($prefix= 'Language', $code, $suffix= '.php') |
Get the name of a file for a certain language code. | |
static | getLanguageNames ($customisedOnly=false) |
Get native language names, indexed by code. | |
static | getLocalisationCache () |
Get the LocalisationCache instance. | |
static | getMessageFor ($key, $code) |
Get a message for a given language. | |
static | getMessageKeysFor ($code) |
Get all message keys for a given language. | |
static | getMessagesFileName ($code) |
static | getMessagesFor ($code) |
Get all messages for a given language WARNING: this may take a long time. | |
static | getTranslatedLanguageNames ($code) |
Get translated language names. | |
static | hebrewNumeral ($num) |
Hebrew Gematria number formatting up to 9999. | |
static | isKnownLanguageTag ($tag) |
Returns true if a language code is an IETF tag known to MediaWiki. | |
static | isSupportedLanguage ($code) |
Checks whether any localisation is available for that language tag in MediaWiki (MessagesXx.php exists). | |
static | isValidBuiltInCode ($code) |
Returns true if a language code is of a valid form for the purposes of internal customisation of MediaWiki, via Messages*.php. | |
static | isValidCode ($code) |
Returns true if a language code string is of a valid form, whether or not it exists. | |
static | isWellFormedLanguageTag ($code, $lenient=false) |
Returns true if a language code string is a well-formed language tag according to RFC 5646. | |
static | preloadLanguageClass ($class) |
Includes language class files. | |
static | romanNumeral ($num) |
Roman number formatting up to 10000. | |
Public Attributes | |
$dateFormatStrings = array() | |
$mCode | |
LanguageConverter | $mConverter |
$mExtendedSpecialPageAliases | |
$mLoaded = false | |
$mMagicExtensions = array() | |
$mMagicHookDone = false | |
$mNamespaceIds | |
$mParentLanguage = false | |
$mVariants | |
$namespaceAliases | |
$transformData = array() | |
ReplacementArray object caches. | |
Static Public Attributes | |
static | $dataCache |
static | $durationIntervals |
static | $mHebrewCalendarMonthGenMsgs |
static | $mHebrewCalendarMonthMsgs |
static | $mHijriCalendarMonthMsgs |
static | $mIranianCalendarMonthMsgs |
static | $mLangObjCache = array() |
static | $mMonthAbbrevMsgs |
static | $mMonthGenMsgs |
static | $mMonthMsgs |
static | $mWeekdayAbbrevMsgs |
static | $mWeekdayMsgs |
Protected Member Functions | |
doMagicHook () | |
Run the LanguageGetMagic hook once. | |
handleExplicitPluralForms ($count, array $forms) | |
Handles explicit plural forms for Language::convertPlural() | |
preConvertPlural ($forms, $count) | |
Checks that convertPlural was given an array and pads it to requested amount of forms by copying the last one. | |
removeBadCharFirst ($string) | |
Remove bytes that represent an incomplete Unicode character at the start of string (e.g. | |
removeBadCharLast ($string) | |
Remove bytes that represent an incomplete Unicode character at the end of string (e.g. | |
Static Protected Member Functions | |
static | convertDoubleWidth ($string) |
convert double-width roman characters to single-width. | |
static | insertSpace ($string, $pattern) |
static | newFromCode ($code) |
Create a language object for a given language code. | |
Protected Attributes | |
$namespaceNames | |
Private Member Functions | |
internalUserTimeAndDate ($type, $ts, User $user, array $options) | |
Internal helper function for userDate(), userTime() and userTimeAndDate() | |
numLink (Title $title, $offset, $limit, array $query, $link, $tooltipMsg, $class) | |
Helper function for viewPrevNext() that generates links. | |
truncate_endBracket (&$tag, $tagType, $lastCh, &$openTags) | |
truncateHtml() helper function (a) push or pop $tag from $openTags as needed (b) clear $tag value | |
truncate_skip (&$ret, $text, $search, $start, $len=null) | |
truncateHtml() helper function like strcspn() but adds the skipped chars to $ret | |
Static Private Member Functions | |
static | hebrewYearStart ($year) |
This calculates the Hebrew year start, as days since 1 September. | |
static | tsToHebrew ($ts) |
Converting Gregorian dates to Hebrew dates. | |
static | tsToHijri ($ts) |
Converting Gregorian dates to Hijri dates. | |
static | tsToIranian ($ts) |
Algorithm by Roozbeh Pournader and Mohammad Toossi to convert Gregorian dates to Iranian dates. | |
static | tsToYear ($ts, $cName) |
Algorithm to convert Gregorian dates to Thai solar dates, Minguo dates or Minguo dates. | |
Private Attributes | |
$mHtmlCode = null | |
Static Private Attributes | |
static | $fallbackLanguageCache = array() |
static | $GREG_DAYS = array( 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ) |
static | $IRANIAN_DAYS = array( 31, 31, 31, 31, 31, 31, 30, 30, 30, 30, 30, 29 ) |
Internationalisation code.
Definition at line 75 of file Language.php.
Reimplemented in LanguageKk, LanguageKu, LanguageSr, LanguageIu, LanguageShi, LanguageToTest, LanguageTg, LanguageUz, LanguageZh, and LanguageGan.
Definition at line 450 of file Language.php.
Reduce memory usage.
Definition at line 464 of file Language.php.
Language::addMagicWordsByLang | ( | $ | newWords | ) |
Add magic words to the extension array.
$newWords | array |
Definition at line 3029 of file Language.php.
Return 'right' or 'left' as appropriate alignment for line-end for this language's text direction.
Should be equivalent to CSS3 'end' text-align value....
Definition at line 2897 of file Language.php.
Return 'left' or 'right' as appropriate alignment for line-start for this language's text direction.
Should be equivalent to CSS3 'start' text-align value....
Definition at line 2885 of file Language.php.
Language::armourMath | ( | $ | text | ) |
Put custom tags (e.g.
-{ }-) around math to prevent conversion
$text | string |
Definition at line 3836 of file Language.php.
Language::autoConvertToAllVariants | ( | $ | text | ) |
convert text to all supported variants
$text | string |
Definition at line 3775 of file Language.php.
Definition at line 2941 of file Language.php.
Language::caseFold | ( | $ | s | ) |
Return a case-folded representation of $s.
This is a representation such that caseFold($s1)==caseFold($s2) if $s1 and $s2 are the same except for the case of their characters. It is not necessary for the value returned to make sense when displayed.
Do *not* perform any other normalisation in this function. If a caller uses this function when it should be using a more general normalisation function, then fix the caller.
$s | string |
Definition at line 2609 of file Language.php.
Language::checkTitleEncoding | ( | $ | s | ) |
static Language::classFromCode | ( | $ | code | ) | [static] |
$code |
Definition at line 411 of file Language.php.
Language::commafy | ( | $ | number | ) |
Adds commas to a given number.
$number | mixed |
Reimplemented in LanguageKk_cyrl, LanguageKsh, LanguageRu, LanguageUk, LanguageHy, LanguageKaa, LanguageBe_tarask, LanguageBg, LanguageKu_ku, LanguageEt, LanguageKm, LanguageMy, LanguageEs, and LanguagePl.
Definition at line 3147 of file Language.php.
Language::commaList | ( | array $ | list | ) |
Take a list of strings and build a locale-friendly comma-separated list, using the local comma-separator message.
$list | array of strings to put in a comma list |
Definition at line 3255 of file Language.php.
Language::convert | ( | $ | text | ) |
convert text to different variants of a language.
$text | string |
Definition at line 3785 of file Language.php.
Language::convertCategoryKey | ( | $ | key | ) |
static Language::convertDoubleWidth | ( | $ | string | ) | [static, protected] |
convert double-width roman characters to single-width.
range: ff00-ff5f ~= 0020-007f
$string | string |
Definition at line 2677 of file Language.php.
Referenced by LanguageZh\convertForSearchResult(), and LanguageYue\normalizeForSearch().
Language::convertForSearchResult | ( | $ | termsArray | ) |
$termsArray | array |
Reimplemented in LanguageZh.
Definition at line 2707 of file Language.php.
Language::convertGrammar | ( | $ | word, |
$ | case | ||
) |
Grammatical transformations, needed for inflected languages Invoked by putting {{grammar:case|word}} in a message.
$word | string |
$case | string |
Reimplemented in LanguageKk, LanguageKsh, LanguageOs, LanguageBs, LanguageHe, LanguageLa, LanguageKaa, LanguageRu, LanguageDsb, LanguageFi, LanguageHy, LanguageSl, LanguageTyv, LanguageCu, LanguageGa, LanguageHsb, LanguageUk, and LanguageHu.
Definition at line 3565 of file Language.php.
Language::convertHtml | ( | $ | text, |
$ | isTitle = false |
||
) |
Perform output conversion on a string, and encode for safe HTML output.
$text | String text to be converted |
$isTitle | Bool whether this conversion is for the article title |
Definition at line 3847 of file Language.php.
Language::convertLinkToAllVariants | ( | $ | text | ) |
If a language supports multiple variants, converts text into an array of all possible variants of the text: 'variant' => text in that variant.
$text | string |
Definition at line 3917 of file Language.php.
Language::convertNamespace | ( | $ | ns | ) |
Convert a namespace index to a string in the preferred variant.
$ns | int |
Definition at line 3805 of file Language.php.
Language::convertPlural | ( | $ | count, |
$ | forms | ||
) |
Plural form transformations, needed for some languages.
For example, there are 3 form of plural in Russian and Polish, depending on "count mod 10". See [[w:Plural]] For English it is pretty simple.
Invoked by putting {{plural:count|wordform1|wordform2}} or {{plural:count|wordform1|wordform2|wordform3}}
Example: {{plural:{{NUMBEROFARTICLES}}|article|articles}}
$count | Integer: non-localized number |
$forms | Array: different plural forms |
Reimplemented in LanguageKsh.
Definition at line 3632 of file Language.php.
Language::convertTitle | ( | $ | title | ) |
Convert a Title object to a string in the preferred variant.
$title | Title |
Definition at line 3795 of file Language.php.
Language::date | ( | $ | ts, |
$ | adj = false , |
||
$ | format = true , |
||
$ | timecorrection = false |
||
) |
$ts | Mixed: the time format which needs to be turned into a date('YmdHis') format with wfTimestamp(TS_MW,$ts) |
$adj | Bool: whether to adjust the time output according to the user configured offset ($timecorrection) |
$format | Mixed: true to use user's date format preference |
$timecorrection | String|bool the time offset as returned by validateTimeZone() in Special:Preferences |
Reimplemented in LanguageWa.
Definition at line 2040 of file Language.php.
Referenced by LanguageFi\translateBlockExpiry().
Language::dateFormat | ( | $ | usePrefs = true | ) |
This is meant to be used by time(), date(), and timeanddate() to get the date preference they're supposed to use, it should be used in all children.
function timeanddate([...], $format = true) { $datePreference = $this->dateFormat($format); [...] }
$usePrefs | Mixed: if true, the user's preference is used if false, the site/language default is used if int/string, assumed to be a format. |
Definition at line 1978 of file Language.php.
Referenced by LanguageWa\date(), and LanguageWa\timeanddate().
Definition at line 3199 of file Language.php.
Definition at line 3206 of file Language.php.
Language::doMagicHook | ( | ) | [protected] |
Run the LanguageGetMagic hook once.
Definition at line 2988 of file Language.php.
Language::emphasize | ( | $ | text | ) |
Italic is unsuitable for some languages.
$text | String: the text to be emphasized. |
Reimplemented in LanguageJa.
Definition at line 3062 of file Language.php.
static Language::factory | ( | $ | code | ) | [static] |
Get a cached or new language object for a given language code.
$code | String |
Definition at line 185 of file Language.php.
Referenced by CliInstaller\__construct(), StubContLang\_newObject(), BackupDumperPageTest\addDBData(), MessageCacheTest\configureLanguages(), ApiWatch\execute(), ApiQueryAllMessages\execute(), DateFormats\execute(), LangMemUsage\execute(), PurgeParserCache\execute(), UpdateMediaWiki\execute(), ResourceLoaderContext\getDirection(), ResourceLoaderLanguageDataModule\getModifiedHash(), ContentHandler\getPageViewLanguage(), Title\getPageViewLanguage(), ResourceLoaderLanguageDataModule\getScript(), LoginForm\processLogin(), MessageTest\setUp(), HtmlTest\setUp(), RevisionTest\setUp(), LanguageConverterTest\setUp(), TestSample\setUp(), TitleTest\setUp(), MediaWikiLangTestCase\setUp(), ExtraParserTest\setUp(), TimestampTest\setUp(), XmlTest\setUp(), BlockTest\setUp(), SideBarTest\setUp(), NewParserTest\setUp(), LanguageClassesTestCase\setUp(), NewParserTest\setupGlobals(), ArticleTablesTest\testbug14404(), LanguageTest\testGetNamespaceAliases(), TitleTest\testGetPageViewLanguage(), LanguageTest\testGetParentLanguage(), LanguageConverterTest\testGetPreferredVariantDefaultLanguageVsUrlVariant(), LanguageConverterTest\testGetPreferredVariantHeaderUserVsUrl(), LanguageConverterTest\testGetPreferredVariantUserOptionForForeignLanguage(), MessageTest\testInContentLanguageDisabled(), MessageTest\testInContentLanguageEnabled(), MessageTest\testInLanguage(), MessageTest\testMessageParamTypes(), wfGetLangObj(), and wfInstallerMain().
Definition at line 2631 of file Language.php.
static Language::fetchLanguageName | ( | $ | code, |
$ | inLanguage = null , |
||
$ | include = 'all' |
||
) | [static] |
$code | string: The code of the language for which to get the name |
$inLanguage | null|string: Code of language in which to return the name (null for autonyms) |
$include | string: 'all', 'mw' or 'mwfile'; see fetchLanguageNames() |
Definition at line 929 of file Language.php.
Referenced by FormatMetadata\getFormattedData(), SkinTemplate\getLanguages(), wikiStatsOutput\heading(), FormatMetadata\langItem(), CoreParserFunctions\language(), WikitextContentHandler\makeRedirectContent(), CheckLanguageCLI\outputWiki(), and InfoAction\pageInfo().
static Language::fetchLanguageNames | ( | $ | inLanguage = null , |
$ | include = 'mw' |
||
) | [static] |
Get an array of language names, indexed by code.
$inLanguage | null|string: Code of language in which to return the names Use null for autonyms (native names) |
$include | string: 'all' all available languages 'mw' only if the language is defined in MediaWiki or wgExtraLanguageNames (default) 'mwfile' only if the language is in 'mw' *and* has a message file |
Definition at line 872 of file Language.php.
Referenced by languages\__construct(), ApiQuerySiteinfo\appendInterwikiMap(), ApiQuerySiteinfo\appendLanguages(), RebuildLocalisationCache\execute(), DeleteEqualMessages\execute(), WebInstaller_Language\execute(), Xml\languageSelector(), Preferences\profilePreferences(), and wfGetLangObj().
Language::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
$link | String: the name of the link |
$nt | Mixed: the title object of the link |
$ignoreOtherCond | Boolean: to disable other conditions when we need to transclude a template or update a category's link |
Definition at line 3902 of file Language.php.
Language::firstChar | ( | $ | s | ) |
Get the first character of a string.
$s | string |
Definition at line 2719 of file Language.php.
Language::fixVariableInNamespace | ( | $ | talk | ) |
Language::formatBitrate | ( | $ | bps | ) |
Format a bitrate for output, using an appropriate unit (bps, kbps, Mbps, Gbps, Tbps, Pbps, Ebps, Zbps or Ybps) according to the magnitude in question.
This use base 1000. For base 1024 use formatSize(), for another base see formatComputingNumbers()
$bps | int |
Definition at line 4395 of file Language.php.
Language::formatComputingNumbers | ( | $ | size, |
$ | boundary, | ||
$ | messageKey | ||
) |
$size | int Size of the unit |
$boundary | int Size boundary (1000, or 1024 in most cases) |
$messageKey | string Message key to be uesd |
Definition at line 4405 of file Language.php.
Language::formatDuration | ( | $ | seconds, |
array $ | chosenIntervals = array() |
||
) |
Takes a number of seconds and turns it into a text using values such as hours and minutes.
integer | $seconds | The amount of seconds. |
array | $chosenIntervals | The intervals to enable. |
Reimplemented in LanguageZh_hans.
Definition at line 2098 of file Language.php.
Language::formatExpiry | ( | $ | expiry, |
$ | format = true |
||
) |
Decode an expiry (block, protection, etc) which has come from the DB.
$expiry | String: Database expiry String |
$format | Bool|Int true to process using language functions, or TS_ constant to return the expiry in a given timestamp |
Definition at line 4269 of file Language.php.
Language::formatNum | ( | $ | number, |
$ | nocommafy = false |
||
) |
Normally we output all numbers in plain en_US style, that is 293,291.235 for twohundredninetythreethousand-twohundredninetyone point twohundredthirtyfive.
However this is not suitable for all languages, some such as Punjabi want ੨੯੩,੨੯੫.੨੩੫ and others such as Icelandic just want to use commas instead of dots, and dots instead of commas like "293.291,235".
An example of this function being called: wfMessage( 'message' )->numParams( $num )->text()
See LanguageGu.php for the Gujarati implementation and $separatorTransformTable on MessageIs.php for the , => . and . => , implementation.
$number | Mixed: the string to be formatted, should be an integer or a floating point number. |
$nocommafy | Bool: set to true for special numbers like dates |
Definition at line 3090 of file Language.php.
Language::formatNumNoSeparators | ( | $ | number | ) |
Front-end for non-commafied formatNum.
mixed | $number | the string to be formatted, should be an integer or a floating point number. |
Definition at line 3118 of file Language.php.
Language::formatSize | ( | $ | size | ) |
Format a size in bytes for output, using an appropriate unit (B, KB, MB, GB, TB, PB, EB, ZB or YB) according to the magnitude in question.
This method use base 1024. For base 1000 use formatBitrate(), for another base see formatComputingNumbers()
$size | int Size to format |
Definition at line 4443 of file Language.php.
Language::formatTimePeriod | ( | $ | seconds, |
$ | format = array() |
||
) |
$seconds | int|float |
$format | Array Optional If $format['avoid'] == 'avoidseconds' - don't mention seconds if $seconds >= 1 hour If $format['avoid'] == 'avoidminutes' - don't mention seconds/minutes if $seconds > 48 hours If $format['noabbrevs'] is true - use 'seconds' and friends instead of 'seconds-abbrev' and friends For backwards compatibility, $format may also be one of the strings 'avoidseconds' or 'avoidminutes' |
Definition at line 4296 of file Language.php.
Language::gender | ( | $ | gender, |
$ | forms | ||
) |
Provides an alternative text depending on specified gender.
Usage {{gender:username|masculine|feminine|neutral}}. username is optional, in which case the gender of current user is used, but only in (some) interface messages; otherwise default gender is used.
If no forms are given, an empty string is returned. If only one form is given, it will be returned unconditionally. These details are implied by the caller and cannot be overridden in subclasses.
If more than one form is given, the default is to use the neutral one if it is specified, and to use the masculine one otherwise. These details can be overridden in subclasses.
$gender | string |
$forms | array |
Definition at line 3603 of file Language.php.
Definition at line 2341 of file Language.php.
Language::getArrow | ( | $ | direction = 'forwards' | ) |
An arrow, depending on the language direction.
$direction | String: the direction of the arrow: forwards (default), backwards, left, right, up, down. |
Definition at line 2951 of file Language.php.
static Language::getCaseMaps | ( | ) | [static] |
static Language::getClassFileName | ( | $ | code | ) | [static] |
Get the RFC 3066 code for this language object.
NOTE: The return value of this function is NOT HTML-safe and must be escaped with htmlspecialchars() or similar
Definition at line 4016 of file Language.php.
Referenced by LanguageHu\convertGrammar().
static Language::getCodeFromFileName | ( | $ | filename, |
$ | prefix = 'Language' , |
||
$ | suffix = '.php' |
||
) | [static] |
Get the language code from a file name.
Inverse of getFileName()
$filename | string $prefix . $languageCode . $suffix |
$prefix | string Prefix before the language code |
$suffix | string Suffix after the language code |
Definition at line 4073 of file Language.php.
Get the compiled plural rules for the language.
Definition at line 4539 of file Language.php.
Return the LanguageConverter used in the Language.
Definition at line 3765 of file Language.php.
Definition at line 787 of file Language.php.
Language::getDateFormatString | ( | $ | type, |
$ | pref | ||
) |
Get a format string for a given type and preference.
$type | string May be date, time or both |
$pref | string The format name as it appears in Messages*.php |
Definition at line 2008 of file Language.php.
Definition at line 807 of file Language.php.
Definition at line 780 of file Language.php.
Definition at line 794 of file Language.php.
Definition at line 3879 of file Language.php.
Language::getDir | ( | ) |
Return the correct HTML 'dir' attribute value for this language.
Definition at line 2873 of file Language.php.
Language::getDirMark | ( | $ | opposite = false | ) |
A hidden direction mark (LRM or RLM), depending on the language direction.
This function produces them as invisible Unicode characters and the output may be hard to read and debug, so it should only be used when the output is plain text or can be escaped. When the output is HTML, use getDirMarkEntity() instead.
$opposite | Boolean Get the direction mark opposite to your language |
Definition at line 2929 of file Language.php.
Language::getDirMarkEntity | ( | $ | opposite = false | ) |
A hidden direction mark (LRM or RLM), depending on the language direction.
Unlike getDirMark(), this function returns the character as an HTML entity. This function should be used when the output is guaranteed to be HTML, because it makes the output HTML source code more readable. When the output is plain text or can be escaped, getDirMark() should be used.
$opposite | Boolean Get the direction mark opposite to your language |
Definition at line 2912 of file Language.php.
Language::getDurationIntervals | ( | $ | seconds, |
array $ | chosenIntervals = array() |
||
) |
Takes a number of seconds and returns an array with a set of corresponding intervals.
For example 65 will be turned into array( minutes => 1, seconds => 5 ).
integer | $seconds | The amount of seconds. |
array | $chosenIntervals | The intervals to enable. |
Definition at line 2124 of file Language.php.
Referenced by LanguageZh_hans\formatDuration().
returns language specific options used by User::getPageRenderHash() for example, the preferred language variant
Definition at line 3927 of file Language.php.
Definition at line 822 of file Language.php.
static Language::getFallbackFor | ( | $ | code | ) | [static] |
Get the first fallback for a given language.
$code | string |
Definition at line 4110 of file Language.php.
Same as getFallbacksFor for current language.
Definition at line 481 of file Language.php.
static Language::getFallbacksFor | ( | $ | code | ) | [static] |
Get the ordered list of fallback languages.
$code | string Language code |
Definition at line 4127 of file Language.php.
static Language::getFallbacksIncludingSiteLanguage | ( | $ | code | ) | [static] |
Get the ordered list of fallback languages, ending with the fallback language chain for the site language.
string | $code | Language code |
Definition at line 4148 of file Language.php.
static Language::getFileName | ( | $ | prefix = 'Language' , |
$ | code, | ||
$ | suffix = '.php' |
||
) | [static] |
Get the name of a file for a certain language code.
$prefix | string Prepend this to the filename |
$code | string Language code |
$suffix | string Append this to the filename |
MWException |
Definition at line 4055 of file Language.php.
Referenced by MessageWriter\writeMessagesToFile().
A convenience function that returns the same thing as getNamespaces() except with the array values changed to ' ' where it found '_', useful for producing output to be displayed e.g.
in <select> forms.
Definition at line 568 of file Language.php.
Language::getFormattedNsText | ( | $ | index | ) |
A convenience function that returns the same thing as getNsText() except with '_' changed to ' ', useful for producing output.
$mw_ns = $wgContLang->getFormattedNsText( NS_MEDIAWIKI_TALK ); echo $mw_ns; // prints 'MediaWiki talk'
int | $index | The array key of the namespace to return |
Definition at line 604 of file Language.php.
Language::getGenderNsText | ( | $ | index, |
$ | gender | ||
) |
Returns gender-dependent namespace alias if available.
$index | Int: namespace index |
$gender | String: gender key (male, female... ) |
Definition at line 616 of file Language.php.
Get the grammar forms for the content language.
Definition at line 3577 of file Language.php.
Language::getHebrewCalendarMonthName | ( | $ | key | ) |
Language::getHijriCalendarMonthName | ( | $ | key | ) |
Get the code in Bcp47 format which we can use inside of html lang="" tags.
NOTE: The return value of this function is NOT HTML-safe and must be escaped with htmlspecialchars() or similar.
Definition at line 4030 of file Language.php.
Language::getHumanTimestamp | ( | MWTimestamp $ | ts, |
MWTimestamp $ | relativeTo, | ||
User $ | user | ||
) |
Convert an MWTimestamp into a pretty human-readable timestamp using the given user preferences and relative base time.
DO NOT USE THIS FUNCTION DIRECTLY. Instead, call MWTimestamp::getHumanTimestamp on your timestamp object, which will then call this function. Calling this function directly will cause hooks to be skipped over.
MWTimestamp | $ts | Timestamp to prettify |
MWTimestamp | $relativeTo | Base timestamp |
User | $user | User preferences to use |
Definition at line 2270 of file Language.php.
Language::getImageFile | ( | $ | image | ) |
Definition at line 3976 of file Language.php.
Language::getLanguageName | ( | $ | code | ) |
Get the native language name of $code.
Only if defined in MediaWiki, no other data like CLDR.
$code | string |
Definition at line 951 of file Language.php.
static Language::getLanguageNames | ( | $ | customisedOnly = false | ) | [static] |
Get native language names, indexed by code.
Only those defined in MediaWiki, no other data like CLDR. If $customisedOnly is true, only returns codes with a messages file
$customisedOnly | bool |
Definition at line 844 of file Language.php.
static Language::getLocalisationCache | ( | ) | [static] |
Get the LocalisationCache instance.
Definition at line 441 of file Language.php.
Referenced by WebInstaller_Options\execute(), DeleteEqualMessages\fetchMessageInfo(), and LocalisationCacheTest\testPuralRulesFallback().
Language::getLocalNsIndex | ( | $ | text | ) |
Get a namespace key by value, case insensitive.
Only matches namespace names for the current language, not the canonical ones defined in Namespace.php.
$text | String |
Definition at line 653 of file Language.php.
Language::getMagic | ( | $ | mw | ) |
Fill a MagicWord object with data from here.
$mw |
Definition at line 3003 of file Language.php.
Language::getMessage | ( | $ | key | ) |
$key | string |
Reimplemented in LanguageQqx.
Definition at line 2334 of file Language.php.
static Language::getMessageFor | ( | $ | key, |
$ | code | ||
) | [static] |
Get a message for a given language.
$key | string |
$code | string |
Definition at line 4191 of file Language.php.
Language::getMessageFromDB | ( | $ | msg | ) |
Get a message from the MediaWiki namespace.
$msg | String: message name |
Definition at line 940 of file Language.php.
static Language::getMessageKeysFor | ( | $ | code | ) | [static] |
Get all message keys for a given language.
This is a faster alternative to array_keys( Language::getMessagesFor( $code ) )
$code | string Language code |
Definition at line 4203 of file Language.php.
Referenced by ApiQueryAllMessages\execute().
static Language::getMessagesFileName | ( | $ | code | ) | [static] |
$code | string |
Definition at line 4087 of file Language.php.
Referenced by Digit2Html\execute(), languages\loadFile(), and MessageWriter\writeMessagesToFile().
static Language::getMessagesFor | ( | $ | code | ) | [static] |
Get all messages for a given language WARNING: this may take a long time.
If you just need all message *keys* but need the *contents* of only a few messages, consider using getMessageKeysFor().
$code | string |
Definition at line 4179 of file Language.php.
Referenced by AllTrans\execute(), and DumpMessages\execute().
Language::getMonthAbbreviation | ( | $ | key | ) |
Definition at line 993 of file Language.php.
Language::getMonthName | ( | $ | key | ) |
$key | string |
Definition at line 959 of file Language.php.
Referenced by LanguageWa\date().
Language::getMonthNameGen | ( | $ | key | ) |
Definition at line 966 of file Language.php.
Definition at line 662 of file Language.php.
Definition at line 704 of file Language.php.
Returns an array of localised namespaces indexed by their numbers.
If the namespace is not available in localised form, it will be included in English.
Definition at line 508 of file Language.php.
Language::getNsIndex | ( | $ | text | ) |
Get a namespace key by value, case insensitive.
Canonical namespace names override custom ones defined for the current language.
$text | String |
Definition at line 734 of file Language.php.
Language::getNsText | ( | $ | index | ) |
Get a namespace value by key $mw_ns = $wgContLang->getNsText( NS_MEDIAWIKI ); echo $mw_ns; // prints 'MediaWiki'
$index | Int: the array key of the namespace to return |
Definition at line 586 of file Language.php.
Get the "parent" language which has a converter to convert a "compatible" language (in another variant) to this language (eg.
zh for zh-cn, but not en for en-gb).
Definition at line 3987 of file Language.php.
For languages that support multiple variants, the title of an article may be displayed differently in different variants.
this function returns the apporiate title defined in the body of the article.
Definition at line 3938 of file Language.php.
Language::getPluralRuleIndexNumber | ( | $ | number | ) |
Find the index number of the plural rule appropriate for the given number.
Definition at line 4595 of file Language.php.
Get the plural rules for the language.
Definition at line 4558 of file Language.php.
Language::getPluralRuleType | ( | $ | number | ) |
Find the plural rule type appropriate for the given number For example, if the language is set to Arabic, getPluralType(5) should return 'few'.
Definition at line 4608 of file Language.php.
Get the plural rule types for the language.
Definition at line 4577 of file Language.php.
Definition at line 3872 of file Language.php.
Referenced by LanguageKk\convertGrammar(), LanguageKk\lcfirst(), and LanguageKk\ucfirst().
Get special page names, as an associative array case folded alias => real name.
Definition at line 3043 of file Language.php.
static Language::getTranslatedLanguageNames | ( | $ | code | ) | [static] |
Get translated language names.
This is done on best effort and by default this is exactly the same as Language::getLanguageNames. The CLDR extension provides translated names.
$code | String Language code. |
Definition at line 857 of file Language.php.
Definition at line 3886 of file Language.php.
Language::getUserToggle | ( | $ | tog | ) |
Language::getVariantname | ( | $ | code, |
$ | usemsg = true |
||
) |
short names for language variants used for language conversion links.
$code | String |
$usemsg | bool Use the "variantname-xyz" message if it exists |
Definition at line 751 of file Language.php.
Get the list of variants supported by this language see sample implementation in LanguageZh.php.
Definition at line 3865 of file Language.php.
Language::getWeekdayAbbreviation | ( | $ | key | ) |
Language::getWeekdayName | ( | $ | key | ) |
Language::handleExplicitPluralForms | ( | $ | count, |
array $ | forms | ||
) | [protected] |
Handles explicit plural forms for Language::convertPlural()
In {{PLURAL:$1|0=nothing|one|many}}, 0=nothing will be returned if $1 equals zero. If an explicitly defined plural form matches the $count, then string value returned, otherwise array returned for further consideration by CLDR rules or overridden convertPlural().
int | $count | non-localized number |
array | $forms | different plural forms |
Definition at line 3662 of file Language.php.
Referenced by LanguageKsh\convertPlural().
Language::hasVariant | ( | $ | variant | ) |
Check if the language has the specific variant.
$variant | string |
Definition at line 3825 of file Language.php.
Check if this is a language with variants.
Definition at line 3814 of file Language.php.
Most writing systems use whitespace to break up words.
Some languages such as Chinese don't conventionally do this, which requires special handling when breaking up words for searching etc.
Reimplemented in LanguageYue, and LanguageZh_hans.
Definition at line 2643 of file Language.php.
static Language::hebrewNumeral | ( | $ | num | ) | [static] |
Hebrew Gematria number formatting up to 9999.
$num | int |
Definition at line 1829 of file Language.php.
static Language::hebrewYearStart | ( | $ | year | ) | [static, private] |
This calculates the Hebrew year start, as days since 1 September.
Based on Carl Friedrich Gauss algorithm for finding Easter date. Used for Hebrew date.
$year | int |
Definition at line 1682 of file Language.php.
Language::iconv | ( | $ | in, |
$ | out, | ||
$ | string | ||
) |
$in | |
$out | |
$string |
Reimplemented in LanguageEo.
Definition at line 2351 of file Language.php.
Hook which will be called if this is the content language.
Descendants can use this to register hook functions or modify globals
Definition at line 474 of file Language.php.
Reimplemented in LanguageEo.
Definition at line 2771 of file Language.php.
static Language::insertSpace | ( | $ | string, |
$ | pattern | ||
) | [static, protected] |
$string | string |
$pattern | string |
Definition at line 2697 of file Language.php.
Referenced by LanguageJa\segmentByWord(), LanguageYue\segmentByWord(), and LanguageZh_hans\segmentByWord().
Language::internalUserTimeAndDate | ( | $ | type, |
$ | ts, | ||
User $ | user, | ||
array $ | options | ||
) | [private] |
Internal helper function for userDate(), userTime() and userTimeAndDate()
$type | String: can be 'date', 'time' or 'both' |
$ts | Mixed: the time format which needs to be turned into a date('YmdHis') format with wfTimestamp(TS_MW,$ts) |
$user | User object used to get preferences for timezone and format |
$options | Array, can contain the following keys:
|
Definition at line 2166 of file Language.php.
static Language::isKnownLanguageTag | ( | $ | tag | ) | [static] |
Returns true if a language code is an IETF tag known to MediaWiki.
$code | string |
Definition at line 384 of file Language.php.
Referenced by LanguageTest\testKnownCldrLanguageTag(), LanguageTest\testKnownLanguageTag(), and LanguageTest\testUnknownLanguageTag().
Language::isMultibyte | ( | $ | str | ) |
Language::isRTL | ( | ) |
static Language::isSupportedLanguage | ( | $ | code | ) | [static] |
Checks whether any localisation is available for that language tag in MediaWiki (MessagesXx.php exists).
string | $code | Language tag (in lower case) |
Definition at line 262 of file Language.php.
Referenced by ApiCreateAccount\execute(), and LanguageTest\testIsSupportedLanguage().
static Language::isValidBuiltInCode | ( | $ | code | ) | [static] |
Returns true if a language code is of a valid form for the purposes of internal customisation of MediaWiki, via Messages*.php.
$code | string |
MWException |
Definition at line 361 of file Language.php.
Referenced by LanguageTest\testBuiltInCodeValidation(), and LanguageTest\testBuiltInCodeValidationRejectUnderscore().
static Language::isValidCode | ( | $ | code | ) | [static] |
Returns true if a language code string is of a valid form, whether or not it exists.
This includes codes which are used solely for customisation via the MediaWiki namespace.
$code | string |
Definition at line 335 of file Language.php.
Referenced by ApiQueryAllMessages\execute(), and RequestContext\sanitizeLangCode().
static Language::isWellFormedLanguageTag | ( | $ | code, |
$ | lenient = false |
||
) | [static] |
Returns true if a language code string is a well-formed language tag according to RFC 5646.
This function only checks well-formedness; it doesn't check that language, script or variant codes actually exist in the repositories.
Based on regexes by Mark Davis of the Unicode Consortium: http://unicode.org/repos/cldr/trunk/tools/java/org/unicode/cldr/util/data/langtagRegex.txt
$code | string |
$lenient | boolean Whether to allow '_' as separator. The default is only '-'. |
Definition at line 281 of file Language.php.
Referenced by LanguageTest\testLenientLanguageTag(), LanguageTest\testMalformedLanguageTag(), and LanguageTest\testWellFormedLanguageTag().
Language::lc | ( | $ | str, |
$ | first = false |
||
) |
$str | string |
$first | bool |
Definition at line 2493 of file Language.php.
Language::lcCallback | ( | $ | matches | ) |
Language::lcfirst | ( | $ | str | ) |
$str | string |
Reimplemented in LanguageKk, LanguageKaa, and LanguageTr.
Definition at line 2474 of file Language.php.
To allow "foo[[bar]]" to extend the link over the whole word "foobar".
Definition at line 2973 of file Language.php.
A regular expression to match legal word-trailing characters which should be merged onto a link of the form [[foo]]bar.
Definition at line 3969 of file Language.php.
Language::listToText | ( | array $ | l | ) |
Take a list of strings and build a locale-friendly comma-separated list, using the local comma-separator message.
The last two strings are chained with an "and". NOTE: This function will only work with standard numeric array keys (0, 1, 2…)
$l | Array |
Definition at line 3226 of file Language.php.
Language::markNoConversion | ( | $ | text, |
$ | noParse = false |
||
) |
Prepare external link text for conversion.
When the text is a URL, it shouldn't be converted, and it'll be wrapped in the "raw" tag (-{R| }-) to prevent conversion.
This function is called "markNoConversion" for historical reasons.
$text | String: text to be used for external link |
$noParse | bool: wrap it without confirming it's a real URL first |
Definition at line 3954 of file Language.php.
Whether this language makes distinguishes genders for example in namespaces.
Definition at line 629 of file Language.php.
static Language::newFromCode | ( | $ | code | ) | [static, protected] |
Create a language object for a given language code.
$code | String |
MWException |
Definition at line 211 of file Language.php.
Language::normalize | ( | $ | s | ) |
Convert a UTF-8 string to normal form C.
In Malayalam and Arabic, this also cleans up certain backwards-compatible sequences, converting them to the modern Unicode equivalent.
This is language-specific for performance reasons only.
$s | string |
Reimplemented in LanguageMl, and LanguageAr.
Definition at line 2824 of file Language.php.
Language::normalizeForSearch | ( | $ | string | ) |
Some languages have special punctuation need to be normalized.
Make such changes here.
$string | String |
Reimplemented in LanguageZh_hans, LanguageYue, and LanguageBe_tarask.
Definition at line 2665 of file Language.php.
Language::numLink | ( | Title $ | title, |
$ | offset, | ||
$ | limit, | ||
array $ | query, | ||
$ | link, | ||
$ | tooltipMsg, | ||
$ | class | ||
) | [private] |
Helper function for viewPrevNext() that generates links.
$title | Title object to link |
$offset | Integer offset parameter |
$limit | Integer limit parameter |
$query | Array extra query parameters |
$link | String text to use for the link; will be escaped |
$tooltipMsg | String name of the message to use as tooltip |
$class | String value of the "class" attribute of the link |
Definition at line 4518 of file Language.php.
Language::parseFormattedNumber | ( | $ | number | ) |
Language::pipeList | ( | array $ | list | ) |
Same as commaList, but separate it with the pipe instead.
$list | array of strings to put in a pipe list |
Definition at line 3280 of file Language.php.
Language::preConvertPlural | ( | $ | forms, |
$ | count | ||
) | [protected] |
Checks that convertPlural was given an array and pads it to requested amount of forms by copying the last one.
$count | Integer: How many forms should there be at least |
$forms | Array of forms given to convertPlural |
Definition at line 3683 of file Language.php.
Referenced by LanguageKsh\convertPlural().
static Language::preloadLanguageClass | ( | $ | class | ) | [static] |
Includes language class files.
$class | string Name of the language class |
Definition at line 424 of file Language.php.
Language::recodeForEdit | ( | $ | s | ) |
Language::recodeInput | ( | $ | s | ) |
Language::removeBadCharFirst | ( | $ | string | ) | [protected] |
Remove bytes that represent an incomplete Unicode character at the start of string (e.g.
bytes of the char are missing)
$string | String |
Definition at line 3376 of file Language.php.
Language::removeBadCharLast | ( | $ | string | ) | [protected] |
Remove bytes that represent an incomplete Unicode character at the end of string (e.g.
bytes of the char are missing)
$string | String |
Definition at line 3351 of file Language.php.
Resets all of the namespace caches.
Mainly used for testing
Definition at line 554 of file Language.php.
static Language::romanNumeral | ( | $ | num | ) | [static] |
Roman number formatting up to 10000.
$num | int |
Definition at line 1799 of file Language.php.
Referenced by LanguageTest\testRomanNumerals().
Language::segmentByWord | ( | $ | string | ) |
Some languages such as Chinese require word segmentation, Specify such segmentation when overridden in derived class.
$string | String |
Reimplemented in LanguageZh_hans, LanguageYue, and LanguageJa.
Definition at line 2654 of file Language.php.
Language::segmentForDiff | ( | $ | text | ) |
languages like Chinese need to be segmented in order for the diff to be of any use
$text | String |
Reimplemented in LanguageZh.
Definition at line 3745 of file Language.php.
Language::semicolonList | ( | array $ | list | ) |
Take a list of strings and build a locale-friendly semicolon-separated list, using the local semicolon-separator message.
$list | array of strings to put in a semicolon list |
Definition at line 3268 of file Language.php.
Definition at line 3213 of file Language.php.
Language::setCode | ( | $ | code | ) |
$code | string |
Definition at line 4040 of file Language.php.
Language::setNamespaces | ( | array $ | namespaces | ) |
Arbitrarily set all of the namespace names at once.
Mainly used for testing
$namespaces | Array of namespaces (id => name) |
Definition at line 546 of file Language.php.
Language::specialList | ( | $ | page, |
$ | details, | ||
$ | oppositedm = true |
||
) |
Make a list item, used by various special pages.
$page | String Page link |
$details | String Text between brackets |
$oppositedm | Boolean Add the direction mark opposite to your language, to display text properly |
Definition at line 4456 of file Language.php.
Language::specialPage | ( | $ | name | ) |
Language::sprintfDate | ( | $ | format, |
$ | ts, | ||
DateTimeZone $ | zone = null |
||
) |
This is a workalike of PHP's date() function, but with better internationalisation, a reduced set of format characters, and a better escaping format.
Supported format characters are dDjlNwzWFmMntLoYyaAgGhHiscrUeIOPTZ. See the PHP manual for definitions. There are a number of extensions, which start with "x":
xn Do not translate digits of the next numeric format character xN Toggle raw digit (xn) flag, stays set until explicitly unset xr Use roman numerals for the next numeric format character xh Use hebrew numerals for the next numeric format character xx Literal x xg Genitive month name
xij j (day number) in Iranian calendar xiF F (month name) in Iranian calendar xin n (month number) in Iranian calendar xiy y (two digit year) in Iranian calendar xiY Y (full year) in Iranian calendar
xjj j (day number) in Hebrew calendar xjF F (month name) in Hebrew calendar xjt t (days in month) in Hebrew calendar xjx xg (genitive month name) in Hebrew calendar xjn n (month number) in Hebrew calendar xjY Y (full year) in Hebrew calendar
xmj j (day number) in Hijri calendar xmF F (month name) in Hijri calendar xmn n (month number) in Hijri calendar xmY Y (full year) in Hijri calendar
xkY Y (full year) in Thai solar calendar. Months and days are identical to the Gregorian calendar xoY Y (full year) in Minguo calendar or Juche year. Months and days are identical to the Gregorian calendar xtY Y (full year) in Japanese nengo. Months and days are identical to the Gregorian calendar
Characters enclosed in double quotes will be considered literal (with the quotes themselves removed). Unmatched quotes will be considered literal quotes. Example:
"The month is" F => The month is January i's" => 20'11"
Backslash escaping is also supported.
Input timestamp is assumed to be pre-normalized to the desired local time zone, if any. Note that the format characters crUeIOPTZ will assume $ts is UTC if $zone is not given.
$format | String |
$ts | String: 14-character timestamp YYYYMMDDHHMMSS 01234567890123 |
$zone | DateTimeZone: Timezone of $ts |
MWException |
Definition at line 1114 of file Language.php.
Language::time | ( | $ | ts, |
$ | adj = false , |
||
$ | format = true , |
||
$ | timecorrection = false |
||
) |
$ts | Mixed: the time format which needs to be turned into a date('YmdHis') format with wfTimestamp(TS_MW,$ts) |
$adj | Bool: whether to adjust the time output according to the user configured offset ($timecorrection) |
$format | Mixed: true to use user's date format preference |
$timecorrection | String|bool the time offset as returned by validateTimeZone() in Special:Preferences |
Definition at line 2059 of file Language.php.
Referenced by LanguageWa\timeanddate().
Language::timeanddate | ( | $ | ts, |
$ | adj = false , |
||
$ | format = true , |
||
$ | timecorrection = false |
||
) |
$ts | Mixed: the time format which needs to be turned into a date('YmdHis') format with wfTimestamp(TS_MW,$ts) |
$adj | Bool: whether to adjust the time output according to the user configured offset ($timecorrection) |
$format | Mixed: what format to return, if it's false output the default one (default true) |
$timecorrection | String|bool the time offset as returned by validateTimeZone() in Special:Preferences |
Reimplemented in LanguageWa.
Definition at line 2079 of file Language.php.
Language::transformUsingPairFile | ( | $ | file, |
$ | string | ||
) |
Transform a string using serialized data stored in the given file (which must be in the serialized subdirectory of $IP).
The file contains pairs mapping source characters to destination characters.
The data is cached in process memory. This will go faster if you have the FastStringSearch extension.
$file | string |
$string | string |
MWException |
Definition at line 2849 of file Language.php.
Referenced by LanguageAr\normalize(), and LanguageMl\normalize().
Language::translateBlockExpiry | ( | $ | str | ) |
Note that this function is somewhat misnamed: it deals with translating the *duration* ("1 week", "4 days", etc), not the expiry time (which is an absolute timestamp). Please note: do NOT add this blindly, as it is used on old expiry lengths recorded in log entries. You'd need to provide the start date to match up with it.
$str | String: the validated block duration in English |
Definition at line 3701 of file Language.php.
Language::truncate | ( | $ | string, |
$ | length, | ||
$ | ellipsis = '...' , |
||
$ | adjustLength = true |
||
) |
Truncate a string to a specified length in bytes, appending an optional string (e.g.
for ellipses)
The database offers limited byte lengths for some columns in the database; multi-byte character sets mean we need to ensure that only whole characters are included, otherwise broken characters can be passed to the user
If $length is negative, the string will be truncated from the beginning
$string | String to truncate |
$length | Int: maximum length (including ellipses) |
$ellipsis | String to append to the truncated text |
$adjustLength | Boolean: Subtract length of ellipsis from $length. $adjustLength was introduced in 1.18, before that behaved as if false. |
Definition at line 3304 of file Language.php.
Language::truncate_endBracket | ( | &$ | tag, |
$ | tagType, | ||
$ | lastCh, | ||
&$ | openTags | ||
) | [private] |
truncateHtml() helper function (a) push or pop $tag from $openTags as needed (b) clear $tag value
&$tag | string Current HTML tag name we are looking at |
$tagType | int (0-open tag, 1-close tag) |
$lastCh | string Character before the '>' that ended this tag |
&$openTags | array Open tag stack (not accounting for $tag) |
Definition at line 3543 of file Language.php.
Language::truncate_skip | ( | &$ | ret, |
$ | text, | ||
$ | search, | ||
$ | start, | ||
$ | len = null |
||
) | [private] |
truncateHtml() helper function like strcspn() but adds the skipped chars to $ret
$ret | |
$text | |
$search | |
$start | |
$len |
Definition at line 3520 of file Language.php.
Language::truncateHtml | ( | $ | text, |
$ | length, | ||
$ | ellipsis = '...' |
||
) |
Truncate a string of valid HTML to a specified length in bytes, appending an optional string (e.g.
for ellipses), and return valid HTML
This is only intended for styled/linked text, such as HTML with tags like and , were the tags are self-contained (valid HTML). Also, this will not detect things like "display:none" CSS.
Note: since 1.18 you do not need to leave extra room in $length for ellipses.
string | $text | HTML string to truncate |
int | $length | (zero/positive) Maximum length (including ellipses) |
string | $ellipsis | String to append to the truncated text |
Definition at line 3402 of file Language.php.
static Language::tsToHebrew | ( | $ | ts | ) | [static, private] |
Converting Gregorian dates to Hebrew dates.
Based on a JavaScript code by Abu Mami and Yisrael Hersch ([email protected], http://www.kaluach.net), who permitted to translate the relevant functions into PHP and release them under GNU GPL.
The months are counted from Tishrei = 1. In a leap year, Adar I is 13 and Adar II is 14. In a non-leap year, Adar is 6.
$ts | string |
Definition at line 1541 of file Language.php.
static Language::tsToHijri | ( | $ | ts | ) | [static, private] |
Converting Gregorian dates to Hijri dates.
Based on a PHP-Nuke block by Sharjeel which is released under GNU/GPL license
$ts | string |
Definition at line 1490 of file Language.php.
static Language::tsToIranian | ( | $ | ts | ) | [static, private] |
Algorithm by Roozbeh Pournader and Mohammad Toossi to convert Gregorian dates to Iranian dates.
Originally written in C, it is released under the terms of GNU Lesser General Public License. Conversion to PHP was performed by Niklas Laxström.
Link: http://www.farsiweb.info/jalali/jalali.c
$ts | string |
Definition at line 1432 of file Language.php.
static Language::tsToYear | ( | $ | ts, |
$ | cName | ||
) | [static, private] |
Algorithm to convert Gregorian dates to Thai solar dates, Minguo dates or Minguo dates.
Link: http://en.wikipedia.org/wiki/Thai_solar_calendar http://en.wikipedia.org/wiki/Minguo_calendar http://en.wikipedia.org/wiki/Japanese_era_name
$ts | String: 14-character timestamp |
$cName | String: calender name |
Definition at line 1720 of file Language.php.
Language::uc | ( | $ | str, |
$ | first = false |
||
) |
Convert a string to uppercase.
$str | string |
$first | bool |
Definition at line 2445 of file Language.php.
Language::ucCallback | ( | $ | matches | ) |
Language::ucfirst | ( | $ | str | ) |
Make a string's first character uppercase.
$str | string |
Reimplemented in LanguageKk, LanguageKaa, LanguageTr, and LanguageAz.
Definition at line 2425 of file Language.php.
Language::ucwordbreaks | ( | $ | str | ) |
capitalize words at word breaks
$str | string |
Definition at line 2562 of file Language.php.
Language::ucwordbreaksCallbackAscii | ( | $ | matches | ) |
Language::ucwordbreaksCallbackMB | ( | $ | matches | ) |
Language::ucwords | ( | $ | str | ) |
Language::ucwordsCallbackMB | ( | $ | matches | ) |
Language::ucwordsCallbackWiki | ( | $ | matches | ) |
Language::unsegmentForDiff | ( | $ | text | ) |
and unsegment to show the result
$text | String |
Reimplemented in LanguageZh.
Definition at line 3755 of file Language.php.
Language::userAdjust | ( | $ | ts, |
$ | tz = false |
||
) |
Used by date() and time() to adjust the time output.
$ts | Int the time in date('YmdHis') format |
$tz | Mixed: adjust the time by this amount (default false, mean we get user timecorrection setting) |
Definition at line 1893 of file Language.php.
Referenced by LanguageWa\date(), and LanguageWa\timeanddate().
Language::userDate | ( | $ | ts, |
User $ | user, | ||
array $ | options = array() |
||
) |
Get the formatted date for the given timestamp and formatted for the given user.
$ts | Mixed: the time format which needs to be turned into a date('YmdHis') format with wfTimestamp(TS_MW,$ts) |
$user | User object used to get preferences for timezone and format |
$options | Array, can contain the following keys:
|
Definition at line 2205 of file Language.php.
Language::userTime | ( | $ | ts, |
User $ | user, | ||
array $ | options = array() |
||
) |
Get the formatted time for the given timestamp and formatted for the given user.
$ts | Mixed: the time format which needs to be turned into a date('YmdHis') format with wfTimestamp(TS_MW,$ts) |
$user | User object used to get preferences for timezone and format |
$options | Array, can contain the following keys:
|
Definition at line 2228 of file Language.php.
Language::userTimeAndDate | ( | $ | ts, |
User $ | user, | ||
array $ | options = array() |
||
) |
Get the formatted date and time for the given timestamp and formatted for the given user.
$ts | Mixed: the time format which needs to be turned into a date('YmdHis') format with wfTimestamp(TS_MW,$ts) |
$user | User object used to get preferences for timezone and format |
$options | Array, can contain the following keys:
|
Definition at line 2251 of file Language.php.
Language::viewPrevNext | ( | Title $ | title, |
$ | offset, | ||
$ | limit, | ||
array $ | query = array() , |
||
$ | atend = false |
||
) |
Generate (prev x| next x) (20|50|100...) type links for paging.
$title | Title object to link |
$offset | Integer offset parameter |
$limit | Integer limit parameter |
$query | array|String optional URL query parameter string |
$atend | Bool optional param for specified if this is the last page |
Definition at line 4474 of file Language.php.
Language::$dataCache [static] |
Definition at line 98 of file Language.php.
Language::$dateFormatStrings = array() |
Definition at line 85 of file Language.php.
Language::$durationIntervals [static] |
array( 'millennia' => 31556952000, 'centuries' => 3155695200, 'decades' => 315569520, 'years' => 31556952, 'weeks' => 604800, 'days' => 86400, 'hours' => 3600, 'minutes' => 60, 'seconds' => 1, )
Definition at line 160 of file Language.php.
Language::$fallbackLanguageCache = array() [static, private] |
Definition at line 178 of file Language.php.
Language::$GREG_DAYS = array( 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ) [static, private] |
Definition at line 1417 of file Language.php.
Language::$IRANIAN_DAYS = array( 31, 31, 31, 31, 31, 31, 30, 30, 30, 30, 30, 29 ) [static, private] |
Definition at line 1418 of file Language.php.
Language::$mCode |
Definition at line 81 of file Language.php.
LanguageConverter Language::$mConverter |
Definition at line 79 of file Language.php.
Language::$mExtendedSpecialPageAliases |
Definition at line 86 of file Language.php.
Language::$mHebrewCalendarMonthGenMsgs [static] |
array( 'hebrew-calendar-m1-gen', 'hebrew-calendar-m2-gen', 'hebrew-calendar-m3-gen', 'hebrew-calendar-m4-gen', 'hebrew-calendar-m5-gen', 'hebrew-calendar-m6-gen', 'hebrew-calendar-m7-gen', 'hebrew-calendar-m8-gen', 'hebrew-calendar-m9-gen', 'hebrew-calendar-m10-gen', 'hebrew-calendar-m11-gen', 'hebrew-calendar-m12-gen', 'hebrew-calendar-m6a-gen', 'hebrew-calendar-m6b-gen' )
Definition at line 141 of file Language.php.
Language::$mHebrewCalendarMonthMsgs [static] |
array( 'hebrew-calendar-m1', 'hebrew-calendar-m2', 'hebrew-calendar-m3', 'hebrew-calendar-m4', 'hebrew-calendar-m5', 'hebrew-calendar-m6', 'hebrew-calendar-m7', 'hebrew-calendar-m8', 'hebrew-calendar-m9', 'hebrew-calendar-m10', 'hebrew-calendar-m11', 'hebrew-calendar-m12', 'hebrew-calendar-m6a', 'hebrew-calendar-m6b' )
Definition at line 133 of file Language.php.
Language::$mHijriCalendarMonthMsgs [static] |
array( 'hijri-calendar-m1', 'hijri-calendar-m2', 'hijri-calendar-m3', 'hijri-calendar-m4', 'hijri-calendar-m5', 'hijri-calendar-m6', 'hijri-calendar-m7', 'hijri-calendar-m8', 'hijri-calendar-m9', 'hijri-calendar-m10', 'hijri-calendar-m11', 'hijri-calendar-m12' )
Definition at line 149 of file Language.php.
Language::$mHtmlCode = null [private] |
Definition at line 83 of file Language.php.
Language::$mIranianCalendarMonthMsgs [static] |
array( 'iranian-calendar-m1', 'iranian-calendar-m2', 'iranian-calendar-m3', 'iranian-calendar-m4', 'iranian-calendar-m5', 'iranian-calendar-m6', 'iranian-calendar-m7', 'iranian-calendar-m8', 'iranian-calendar-m9', 'iranian-calendar-m10', 'iranian-calendar-m11', 'iranian-calendar-m12' )
Definition at line 126 of file Language.php.
Language::$mLangObjCache = array() [static] |
Definition at line 100 of file Language.php.
Language::$mLoaded = false |
Definition at line 81 of file Language.php.
Language::$mMagicExtensions = array() |
Definition at line 82 of file Language.php.
Language::$mMagicHookDone = false |
Definition at line 82 of file Language.php.
Language::$mMonthAbbrevMsgs [static] |
array( 'jan', 'feb', 'mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov', 'dec' )
Definition at line 121 of file Language.php.
Language::$mMonthGenMsgs [static] |
array( 'january-gen', 'february-gen', 'march-gen', 'april-gen', 'may-gen', 'june-gen', 'july-gen', 'august-gen', 'september-gen', 'october-gen', 'november-gen', 'december-gen' )
Definition at line 116 of file Language.php.
Language::$mMonthMsgs [static] |
array( 'january', 'february', 'march', 'april', 'may_long', 'june', 'july', 'august', 'september', 'october', 'november', 'december' )
Definition at line 111 of file Language.php.
Language::$mNamespaceIds |
Definition at line 88 of file Language.php.
Language::$mParentLanguage = false |
Definition at line 83 of file Language.php.
Language::$mVariants |
Definition at line 81 of file Language.php.
Language::$mWeekdayAbbrevMsgs [static] |
array( 'sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat' )
Definition at line 107 of file Language.php.
Language::$mWeekdayMsgs [static] |
array( 'sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday' )
Definition at line 102 of file Language.php.
Language::$namespaceAliases |
Definition at line 88 of file Language.php.
Language::$namespaceNames [protected] |
Definition at line 88 of file Language.php.
Language::$transformData = array() |
ReplacementArray object caches.
Definition at line 93 of file Language.php.