'nstab-media' => 'Media',
'nstab-special' => 'Special',
'nstab-wp' => 'About',
-'nstab-image' => 'Image',
+'nstab-image' => 'File',
'nstab-mediawiki' => 'Message',
'nstab-template' => 'Template',
'nstab-help' => 'Help',
'unexpected' => "Unexpected value: \"$1\"=\"$2\".",
'formerror' => 'Error: could not submit form',
'badarticleerror' => 'This action cannot be performed on this page.',
-'cannotdelete' => 'Could not delete the page or image specified. (It may have already been deleted by someone else.)',
+'cannotdelete' => 'Could not delete the page or file specified. (It may have already been deleted by someone else.)',
'badtitle' => 'Bad title',
'badtitletext' => "The requested page title was invalid, empty, or
an incorrectly linked inter-language or inter-wiki title.",
'nowiki_tip'=>'Ignore wiki formatting',
'image_sample'=>'Example.jpg',
'image_tip'=>'Embedded image',
-'media_sample'=>'Example.mp3',
+'media_sample'=>'Example.ogg',
'media_tip'=>'Media file link',
'sig_tip'=>'Your signature with timestamp',
'hr_tip'=>'Horizontal line (use sparingly)',
Your changes are shown in the lower text area.
You will have to merge your changes into the existing text.
<b>Only</b> the text in the upper text area will be saved when you
-press \"Save page\".\n<p>",
+press \"Save page\".<br />",
'yourtext' => 'Your text',
'storedversion' => 'Stored version',
'nonunicodebrowser' => "<strong>WARNING: Your browser is not unicode compliant, please change it before editing an article.</strong>",
'editingold' => "<strong>WARNING: You are editing an out-of-date
revision of this page.
-If you save it, any changes made since this revision will be lost.</strong>\n",
+If you save it, any changes made since this revision will be lost.</strong>",
'yourdiff' => 'Differences',
'copyrightwarning' => "Please note that all contributions to {{SITENAME}} are
considered to be released under the $2 (see $1 for details).
You are also promising us that you wrote this yourself, or copied it from a
public domain or similar free resource (see $1 for details).
<strong>DO NOT SUBMIT COPYRIGHTED WORK WITHOUT PERMISSION!</strong>",
-'longpagewarning' => "WARNING: This page is $1 kilobytes long; some
+'longpagewarning' => "<strong>WARNING: This page is $1 kilobytes long; some
browsers may have problems editing pages approaching or longer than 32kb.
-Please consider breaking the page into smaller sections.",
-'readonlywarning' => 'WARNING: The database has been locked for maintenance,
+Please consider breaking the page into smaller sections.</strong>",
+'readonlywarning' => '<strong>WARNING: The database has been locked for maintenance,
so you will not be able to save your edits right now. You may wish to cut-n-paste
-the text into a text file and save it for later.',
-'protectedpagewarning' => "WARNING: This page has been locked so that only
-users with sysop privileges can edit it. Be sure you are following the
-<a href='$wgScript/Project:Protected_page_guidelines'>protected page
-guidelines</a>.",
+the text into a text file and save it for later.</strong>',
+'protectedpagewarning' => "<strong>WARNING: This page has been locked so that only users with sysop privileges can edit it. Be sure you are following the [[Project:Protected_page_guidelines|protected page guidelines]].</strong>",
'templatesused' => 'Templates used on this page:',
# History pages
Search in namespaces :<br />
$1<br />
$2 List redirects Search for $3 $9",
-"searchdisabled" => '<p style="margin: 1.5em 2em 1em">{{SITENAME}} search is disabled for performance reasons. You can search via Google in the meantime.
-<span style="font-size: 89%; display: block; margin-left: .2em">Note that their indexes of {{SITENAME}} content may be out of date.</span></p>',
+"searchdisabled" => '{{SITENAME}} search is disabled. You can search via Google in the meantime. Note that their indexes of {{SITENAME}} content may be out of date.',
'googlesearch' => '
-<div style="margin-left: 2em">
-
-<!-- Google search -->
-<div style="width:130px;float:left;text-align:center;position:relative;top:-8px"><a href="http://www.google.com/" style="padding:0;background-image:none"><img src="http://www.google.com/logos/Logo_40wht.gif" alt="Google" style="border:none" /></a></div>
-
-<form method="get" action="http://www.google.com/search" style="margin-left:135px">
- <div>
+<form method="get" action="http://www.google.com/search" id="googlesearch">
<input type="hidden" name="domains" value="{{SERVER}}" />
<input type="hidden" name="num" value="50" />
<input type="hidden" name="ie" value="$2" />
<input type="hidden" name="oe" value="$2" />
<input type="text" name="q" size="31" maxlength="255" value="$1" />
- <input type="submit" name="btnG" value="Google Search" />
- </div>
- <div style="font-size:90%">
+ <input type="submit" name="btnG" value="$3" />
+ <div>
<input type="radio" name="sitesearch" id="gwiki" value="{{SERVER}}" checked="checked" /><label for="gwiki">{{SITENAME}}</label>
<input type="radio" name="sitesearch" id="gWWW" value="" /><label for="gWWW">WWW</label>
</div>
-</form>
-
-</div>',
+</form>',
'blanknamespace' => '(Main)',
# Preferences page
'prefs-personal' => 'User data',
'prefs-rc' => 'Recent changes & stubs',
'prefs-misc' => 'Misc',
-'saveprefs' => 'Save preferences',
-'resetprefs' => 'Reset preferences',
+'saveprefs' => 'Save',
+'resetprefs' => 'Reset',
'oldpassword' => 'Old password',
'newpassword' => 'New password',
'retypenew' => 'Again',
'contextlines' => 'Lines per hit',
'contextchars' => 'Context per line',
'stubthreshold' => 'Threshold for stub display',
-'recentchangescount' => 'Number of titles in recent changes',
+'recentchangescount' => 'Titles in recent changes',
'savedprefs' => 'Your preferences have been saved.',
'timezonelegend' => 'Time zone',
'timezonetext' => 'The number of hours your local time differs from server time (UTC).',
#
# switching pan
-'grouplevels-lookup-group' => 'Manage group rights',
-'grouplevels-group-edit' => 'Existing groups: ',
+'groups-lookup-group' => 'Manage group rights',
+'groups-group-edit' => 'Existing groups: ',
'editgroup' => 'Edit Group',
'addgroup' => 'Add Group',
-'userlevels-lookup-user' => 'Manage user groups',
-'userlevels-user-editname' => 'Enter a username: ',
+'userrights-lookup-user' => 'Manage user groups',
+'userrights-user-editname' => 'Enter a username: ',
'editusergroup' => 'Edit User Groups',
# group editing
-'grouplevels-editgroup' => 'Edit group',
-'grouplevels-addgroup' => 'Add group',
-'grouplevels-editgroup-name' => 'Group name: ',
-'grouplevels-editgroup-description' => 'Group description (max 255 characters):<br />',
-'savegroup' => 'Save Group',
+'groups-editgroup' => 'Edit group',
+'groups-addgroup' => 'Add group',
+'groups-editgroup-preamble' => 'If the name or description starts with a colon, the
+remainder will be treated as a message name, and hence the text will be localised
+using the MediaWiki namespace',
+'groups-editgroup-name' => 'Group name: ',
+'groups-editgroup-description' => 'Group description (max 255 characters):<br />',
+'savegroup' => 'Save Group',
+'groups-tableheader' => 'ID || Name || Description || Rights',
+'groups-existing' => 'Existing groups',
+'groups-noname' => 'Please specify a valid group name',
+'groups-already-exists' => 'A group of that name already exists',
+'addgrouplogentry' => 'Added group $2',
+'changegrouplogentry' => 'Changed group $2',
+'renamegrouplogentry' => 'Renamed group $2 to $3',
# user groups editing
#
-'userlevels-editusergroup' => 'Edit user groups',
+'userrights-editusergroup' => 'Edit user groups',
'saveusergroups' => 'Save User Groups',
-'userlevels-groupsmember' => 'Member of:',
-'userlevels-groupsavailable' => 'Available groups:',
-'userlevels-groupshelp' => 'Select groups you want the user to be removed from or added to.
+'userrights-groupsmember' => 'Member of:',
+'userrights-groupsavailable' => 'Available groups:',
+'userrights-groupshelp' => 'Select groups you want the user to be removed from or added to.
Unselected groups will not be changed. You can deselect a group with CTRL + Left Click',
+# Default group names and descriptions
+#
+'group-anon-name' => 'Anonymous',
+'group-anon-desc' => 'Anonymous users',
+'group-loggedin-name' => 'User',
+'group-loggedin-desc' => 'General logged in users',
+'group-admin-name' => 'Administrator',
+'group-admin-desc' => 'Trusted users able to block users and delete articles',
+'group-bureaucrat-name' => 'Bureaucrat',
+'group-bureaucrat-desc' => 'The bureaucrat group is able to make sysops',
+'group-steward-name' => 'Steward',
+'group-steward-desc' => 'Full access',
+
+
# Recent changes
#
'changes' => 'changes',
'uploadnologintext' => "You must be [[Special:Userlogin|logged in]]
to upload files.",
'upload_directory_read_only' => 'The upload directory ($1) is not writable by the webserver.',
-'uploadfile' => 'Upload images, sounds, documents etc.',
'uploaderror' => 'Upload error',
'uploadtext' =>
-"'''STOP!''' Before you upload here,
-make sure to read and follow the [[Project:Image use policy|image use policy]].
-
-To view or search previously uploaded images,
-go to the [[Special:Imagelist|list of uploaded images]].
-Uploads and deletions are logged on the
-[[Project:Upload log|upload log]].
-
-Use the form below to upload new image files for use in
-illustrating your pages.
-On most browsers, you will see a \"Browse...\" button, which will
-bring up your operating system's standard file open dialog.
-Choosing a file will fill the name of that file into the text
-field next to the button.
+"
+Use the form below to upload new files,
+to view or search previously uploaded images
+go to the [[Special:Imagelist|list of uploaded files]],
+uploads and deletions are also logged in the [[Special:Log|project log]].
+
You must also check the box affirming that you are not
violating any copyrights by uploading the file.
Press the \"Upload\" button to finish the upload.
-This may take some time if you have a slow internet connection.
-The preferred formats are JPEG for photographic images, PNG
-for drawings and other iconic images, and OGG for sounds.
-Please name your files descriptively to avoid confusion.
To include the image in a page, use a link in the form
-'''<nowiki>[[{{ns:6}}:file.jpg]]</nowiki>''' or
+'''<nowiki>[[{{ns:6}}:file.jpg]]</nowiki>''',
'''<nowiki>[[{{ns:6}}:file.png|alt text]]</nowiki>''' or
-'''<nowiki>[[{{ns:-2}}:file.ogg]]</nowiki>''' for sounds.
-
-Please note that as with wiki pages, others may edit or
-delete your uploads if they think it serves the project, and
-you may be blocked from uploading if you abuse the system.",
+'''<nowiki>[[{{ns:-2}}:file.ogg]]</nowiki>''' for directly linking to the file.
+",
'uploadlog' => 'upload log',
'uploadlogpage' => 'Upload_log',
# Image list
#
-'imagelist' => 'Image list',
-'imagelisttext' => "Below is a list of $1 images sorted $2.",
-'getimagelist' => 'fetching image list',
-'ilshowmatch' => 'Show all images with names matching',
+'imagelist' => 'File list',
+'imagelisttext' => "Below is a list of $1 files sorted $2.",
+'getimagelist' => 'fetching file list',
'ilsubmit' => 'Search',
-'showlast' => "Show last $1 images sorted $2.",
+'showlast' => "Show last $1 files sorted $2.",
'byname' => 'by name',
'bydate' => 'by date',
'bysize' => 'by size',
'imgdelete' => 'del',
'imgdesc' => 'desc',
'imglegend' => 'Legend: (desc) = show/edit image description.',
-'imghistory' => 'Image history',
+'imghistory' => 'History',
'revertimg' => 'rev',
'deleteimg' => 'del',
'deleteimgcompletely' => 'Delete all revisions',
-'imghistlegend' => 'Legend: (cur) = this is the current image, (del) = delete
+'imghistlegend' => 'Legend: (cur) = this is the current file, (del) = delete
this old version, (rev) = revert to this old version.
-<br /><i>Click on date to see image uploaded on that date</i>.',
-'imagelinks' => 'Image links',
-'linkstoimage' => 'The following pages link to this image:',
-'nolinkstoimage' => 'There are no pages that link to this image.',
+<br /><i>Click on date to see the file uploaded on that date</i>.',
+'imagelinks' => 'Links',
+'linkstoimage' => 'The following pages link to this file:',
+'nolinkstoimage' => 'There are no pages that link to this file.',
'sharedupload' => 'This file is a shared upload and may be used by other projects.',
-'shareduploadwiki' => 'Please see the [$1 image description page] for further information.',
-'noimage' => "No image by this name exists.
-
-<div class=\"editExternally\">
-'''[$1 Upload this image]'''
-</div>",
-'uploadnewversion' => "[$1 Upload a new version of this image]",
+'shareduploadwiki' => 'Please see the [$1 file description page] for further information.',
+'noimage' => 'No file by this name exists, you can [$1 upload it]',
+'uploadnewversion' => '[$1 Upload a new version of this file]',
# Statistics
#
'lonelypages' => 'Orphaned pages',
'uncategorizedpages' => 'Uncategorized pages',
'uncategorizedcategories' => 'Uncategorized categories',
-'unusedimages' => 'Unused images',
+'unusedimages' => 'Unused files',
'popularpages' => 'Popular pages',
'nviews' => '$1 views',
'wantedpages' => 'Wanted pages',
'booksources' => 'Book sources',
'categoriespagetext' => 'The following categories exist in the wiki.',
'data' => 'Data',
-'userlevels' => 'User rights management',
-'grouplevels' => 'User group management',
+'userrights' => 'User rights management',
+'groups' => 'User groups',
# FIXME: Other sites, of course, may have affiliate relations with the booksellers list
'booksourcetext' => "Below is a list of links to other sites that
# Special:Allpages
'nextpage' => 'Next page ($1)',
-'articlenamespace' => '(articles)',
-'allpagesformtext' => '
-<table border="0">
- <tr>
- <td align="right">Display pages starting at:</td>
- <td align="left">$1</td>
- </tr>
- <tr>
- <td align="right">Namespace:</td>
- <td align="left">$2 $3</td>
- </tr>
- <tr>
- <td align="right">$4</td>
- <td align="left">Invert</td>
- </tr>
-</table>',
+'allpagesfrom' => 'Display pages starting at:',
'allarticles' => 'All articles',
'allnonarticles' => 'All non-articles',
'allinnamespace' => 'All pages ($1 namespace)',
'undeletedtext' => "[[$1]] has been successfully restored.
See [[Special:Log/delete]] for a record of recent deletions and restorations.",
+# Namespace form on various pages
+'namespace' => 'Namespace:',
+'invert' => 'Invert selection',
+
# Contributions
#
'contributions' => 'User contributions',
'mycontris' => 'My contributions',
'contribsub' => "For $1",
-'contributionsformtext' => '
-<table border="0">
- <tr>
- <td align="right">Namespace:</td>
- <td align="left">$1 $2</td>
- </tr>
- <tr>
- <td align="right">$3</td>
- <td>Invert</td>
- </tr>
-</table>',
'nocontribs' => 'No changes were found matching these criteria.',
'ucnote' => "Below are this user's last <b>$1</b> changes in the last <b>$2</b> days.",
'uclinks' => "View the last $1 changes; view the last $2 days.",
'ipbreason' => 'Reason',
'ipbsubmit' => 'Block this user',
'badipaddress' => 'Invalid IP address',
-'noblockreason' => 'You must supply a reason for the block.',
'blockipsuccesssub' => 'Block succeeded',
'blockipsuccesstext' => "\"$1\" has been blocked.
<br />See [[Special:Ipblocklist|IP block list]] to review blocks.",
of its history to the new name.
The old title will become a redirect page to the new title.
Links to the old page title will not be changed; be sure to
-[[Special:Maintenance|check]] for double or broken redirects.
+check for double or broken redirects.
You are responsible for making sure that links continue to
point where they are supposed to go.
'passwordtooshort' => 'Your password is too short. It must have at least $1 characters.',
# Exif data
-'exifdata' => 'Metadata',
+'metadata' => 'Metadata',
+# Exif tags
+'exif-imagewidth' =>'Image width',
+'exif-imagelength' =>'Image height',
+'exif-bitspersample' =>'Number of bits per component',
+'exif-compression' =>'Compression scheme',
+'exif-photometricinterpretation' =>'Pixel composition',
+'exif-orientation' =>'Orientation of image',
+'exif-samplesperpixel' =>'Number of components',
+'exif-planarconfiguration' =>'Image data arrangement',
+'exif-ycbcrsubsampling' =>'Subsampling ratio of Y to C',
+'exif-ycbcrpositioning' =>'Y and C positioning',
+'exif-xresolution' =>'Image resolution in width direction',
+'exif-yresolution' =>'Image resolution in height direction',
+'exif-resolutionunit' =>'Unit of X and Y resolution',
+'exif-stripoffsets' =>'Image data location',
+'exif-rowsperstrip' =>'Number of rows per strip',
+'exif-stripbytecounts' =>'Bytes per compressed strip',
+'exif-jpeginterchangeformat' =>'Offset to JPEG SOI',
+'exif-jpeginterchangeformatlength' =>'Bytes of JPEG data',
+'exif-transferfunction' =>'Transfer function',
+'exif-whitepoint' =>'White point chromaticity',
+'exif-primarychromaticities' =>'Chromaticities of primarities',
+'exif-ycbcrcoefficients' =>'Color space transformation matrix coefficients',
+'exif-referenceblackwhite' =>'Pair of black and white reference values',
+'exif-datetime' =>'File change date and time',
+'exif-imagedescription' =>'Image title',
+'exif-make' =>'Image input equipment manufacturer',
+'exif-model' =>'Image input equipment model',
+'exif-software' =>'Software used',
+'exif-artist' =>'Person who created the image',
+'exif-copyright' =>'Copyright holder',
+'exif-exifversion' =>'Exif version',
+'exif-flashpixversion' =>'Supported Flashpix version',
+'exif-colorspace' =>'Color space information',
+'exif-componentsconfiguration' =>'Meaning of each component',
+'exif-compressedbitsperpixel' =>'Image compression mode',
+'exif-pixelydimension' =>'Valid image width',
+'exif-pixelxdimension' =>'Valind image height',
+'exif-makernote' =>'Manufacturer notes',
+'exif-usercomment' =>'User comments',
+'exif-relatedsoundfile' =>'Related audio file',
+'exif-datetimeoriginal' =>'Date and time of original data generation',
+'exif-datetimedigitized' =>'Date and time of original data generation',
+'exif-subsectime' =>'DateTime subseconds',
+'exif-subsectimeoriginal' =>'DateTimeOriginal subseconds',
+'exif-subsectimedigitized' =>'DateTimeDigitized subseconds',
+'exif-exposuretime' =>'Exposure time',
+'exif-fnumber' =>'F Number',
+'exif-exposureprogram' =>'Exposure Program',
+'exif-spectralsensitivity' =>'Spectral sensitivity',
+'exif-isospeedratings' =>'ISO speed rating',
+'exif-oecf' =>'Optoelectronic conversion factor',
+'exif-shutterspeedvalue' =>'Shutter speed',
+'exif-aperturevalue' =>'Aperture',
+'exif-brightnessvalue' =>'Brightness',
+'exif-exposurebiasvalue' =>'Exposure bias',
+'exif-maxaperturevalue' =>'Maximum land aperture',
+'exif-subjectdistance' =>'Subject distance',
+'exif-meteringmode' =>'Metering mode',
+'exif-lightsource' =>'Light source',
+'exif-flash' =>'Flash',
+'exif-focallength' =>'Lens focal length',
+'exif-subjectarea' =>'Subject area',
+'exif-flashenergy' =>'Flash energy',
+'exif-spatialfrequencyresponse' =>'Spatial frequency response',
+'exif-focalplanexresolution' =>'Focal plane X resolution',
+'exif-focalplaneyresolution' =>'Focal plane Y resolution',
+'exif-focalplaneresolutionunit' =>'Focal plane resolution unit',
+'exif-subjectlocation' =>'Subject location',
+'exif-exposureindex' =>'Exposure index',
+'exif-sensingmethod' =>'Sensing method',
+'exif-filesource' =>'File source',
+'exif-scenetype' =>'Scene type',
+'exif-cfapattern' =>'CFA pattern',
+'exif-customrendered' =>'Custom image processing',
+'exif-exposuremode' =>'Exposure mode',
+'exif-whitebalance' =>'White Balance',
+'exif-digitalzoomratio' =>'Digital zoom ration',
+'exif-focallengthin35mmfilm' =>'Focal length in 35 mm film',
+'exif-scenecapturetype' =>'Scene capture type',
+'exif-gaincontrol' =>'Scene control',
+'exif-contrast' =>'Contrast',
+'exif-saturation' =>'Saturation',
+'exif-sharpness' =>'Sharpness',
+'exif-devicesettingdescription' =>'Desice settings description',
+'exif-subjectdistancerange' =>'Subject distance range',
+'exif-imageuniqueid' =>'Unique image ID',
+'exif-gpsversionid' =>'GPS tag version',
+'exif-gpslatituderef' =>'North or South Latitude',
+'exif-gpslatitude' =>'Latitude',
+'exif-gpslongituderef' =>'East or West Longitude',
+'exif-gpslongitude' =>'Longitude',
+'exif-gpsaltituderef' =>'Altitude reference',
+'exif-gpsaltitude' =>'Altitude',
+'exif-gpstimestamp' =>'GPS time (atomic clock)',
+'exif-gpssatellites' =>'Satellites used for measurement',
+'exif-gpsstatus' =>'Receiver status',
+'exif-gpsmeasuremode' =>'Measurement mode',
+'exif-gpsdop' =>'Measurement precision',
+'exif-gpsspeedref' =>'Speed unit',
+'exif-gpsspeed' =>'Speed of GPS receiver',
+'exif-gpstrackref' =>'Reference for direction of movement',
+'exif-gpstrack' =>'Direction of movement',
+'exif-gpsimgdirectionref' =>'Reference for direction of image',
+'exif-gpsimgdirection' =>'Direction of image',
+'exif-gpsmapdatum' =>'Geodetic survey data used',
+'exif-gpsdestlatituderef' =>'Reference for latitude of destination',
+'exif-gpsdestlatitude' =>'Latitude destination',
+'exif-gpsdestlongituderef' =>'Reference for longitude of destination',
+'exif-gpsdestlongitude' =>'Longitude of destination',
+'exif-gpsdestbearingref' =>'Reference for bearing of destination',
+'exif-gpsdestbearing' =>'Bearing of destination',
+'exif-gpsdestdistanceref' =>'Reference for distance to destination',
+'exif-gpsdestdistance' =>'Distance to destination',
+'exif-gpsprocessingmethod' =>'Name of GPS processing method',
+'exif-gpsareainformation' =>'Name of GPS area',
+'exif-gpsdatestamp' =>'GPS date',
+'exif-gpsdifferential' =>'GPS differential correction',
# external editor support
'edit-externally' => 'Edit this file using an external application',
function getExtraHashOptions() {return '';}
function getParsedTitle() {return '';}
function markNoConversion($text) {return $text;}
+ function convertCategoryKey( $key ) {return $key; }
+
}
#--------------------------------------------------------------------------
global $wgNamespaceNamesEn;
return $wgNamespaceNamesEn;
}
-
+
+ /**
+ * 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.
+ *
+ * @return array
+ */
+ function getFormattedNamespaces() {
+ $ns = $this->getNamespaces();
+ foreach($ns as $k => $v) {
+ $ns[$k] = strtr($v, '_', ' ');
+ }
+ return $ns;
+ }
+
/**
* Get a namespace value by key
* <code>
global $wgNamespaceNamesEn;
return $wgNamespaceNamesEn[$index];
}
-
+ /**
+ * A convenience function that returns the same thing as
+ * getNsText() except with '_' changed to ' ', useful for
+ * producing output.
+ *
+ * @return array
+ */
+ function getFormattedNsText( $index ) {
+ $ns = $this->getNsText( $index );
+ return strtr($ns, '_', ' ');
+ }
+
/**
* Get a namespace key by value
*
/**
* short names for language variants used for language conversion links.
- * so far only used by zh
*
* @param string $code
* @return string
*/
function getVariantname( $code ) {
- return wfMsg( 'variantname-' . $code );
+ return wfMsg( "variantname-$code" );
}
function specialPage( $name ) {
}
function getUserToggle( $tog ) {
- return wfMsg('tog-'.$tog);
+ return wfMsg( "tog-$tog" );
}
function getLanguageNames() {
/**
* For right-to-left language support
+ *
* @return bool
*/
function isRTL() { return false; }
* Italic is unsuitable for some languages
*
* @access public
+ *
* @param string $text The text to be emphasized.
+ * @return string
*/
function emphasize( $text ) {
- return '<em>'.$text.'</em>';
+ return "<em>$text</em>";
}
/**
}
# convert text to different variants of a language.
- function convert( $text , $isTitle=false) {
+ function convert( $text, $isTitle = false) {
return $this->mConverter->convert($text, $isTitle);
}
+ function convertCategoryKey( $key ) {
+ return $this->mConverter->convertCategoryKey( $key );
+ }
+
/**
* get the list of variants supported by this langauge
* see sample implementation in LanguageZh.php