2 /** Belarusian (Беларуская мова)
7 * @author Ævar Arnfjörð Bjarmason <avarab@gmail.com>
9 * @link http://be.wikipedia.org/wiki/Talk:LanguageBe.php
10 * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License
11 * @license http://www.gnu.org/copyleft/fdl.html GNU Free Documentation License
14 require_once('LanguageUtf8.php');
16 if (!$wgCachedMessageArrays) {
17 require_once('MessagesBe.php');
20 class LanguageBe
extends LanguageUtf8
{
21 private $mMessagesBe, $mNamespaceNamesBe = null;
23 private $mQuickbarSettingsBe = array(
24 'Не паказваць', 'Замацаваная зьлева', 'Замацаваная справа', 'Рухомая зьлева'
27 private $mSkinNamesBe = array(
28 'standard' => 'Клясычны',
29 'nostalgia' => 'Настальгія',
30 'cologneblue' => 'Кёльнскі смутак',
31 'davinci' => 'Да Вінчы',
33 'monobook' => 'Монакніга',
38 private $mDateFormatsBe = array(
44 private $mMagicWordsBe = array(
45 MAG_REDIRECT
=> array( 0, '#перанакіраваньне', '#redirect' ),
46 MAG_NOTOC
=> array( 0, '__NOTOC__', '__БЯЗЬ_ЗЬМЕСТУ__' ),
47 MAG_FORCETOC
=> array( 0, '__FORCETOC__', '__ЗЬМЕСТ_ПРЫМУСАМ__' ),
48 MAG_TOC
=> array( 0, '__TOC__', '__ЗЬМЕСТ__' ),
49 MAG_NOEDITSECTION
=> array( 0, '__NOEDITSECTION__', '__БЕЗ_РЭДАГАВАНЬНЯ_СЭКЦЫІ__' ),
50 MAG_START
=> array( 0, '__START__', '__ПАЧАТАК__' ),
51 MAG_CURRENTMONTH
=> array( 1, 'CURRENTMONTH', 'БЯГУЧЫ_МЕСЯЦ' ),
52 MAG_CURRENTMONTHNAME
=> array( 1, 'CURRENTMONTHNAME', 'НАЗВА_БЯГУЧАГА_МЕСЯЦА' ),
53 MAG_CURRENTMONTHNAMEGEN
=> array( 1, 'CURRENTMONTHNAMEGEN', 'НАЗВА_БЯГУЧАГА_МЕСЯЦА_Ў_РОДНЫМ_СКЛОНЕ' ),
54 MAG_CURRENTMONTHABBREV
=> array( 1, 'CURRENTMONTHABBREV', 'СКАРОЧАНАЯ_НАЗВА_БЯГУЧАГА_МЕСЯЦА' ),
55 MAG_CURRENTDAY
=> array( 1, 'CURRENTDAY', 'БЯГУЧЫ_ДЗЕНЬ' ),
56 MAG_CURRENTDAY2
=> array( 1, 'CURRENTDAY2', 'БЯГУЧЫ_ДЗЕНЬ_2' ),
57 MAG_CURRENTDAYNAME
=> array( 1, 'CURRENTDAYNAME', 'НАЗВА_БЯГУЧАГА_ДНЯ' ),
58 MAG_CURRENTYEAR
=> array( 1, 'CURRENTYEAR', 'БЯГУЧЫ_ГОД' ),
59 MAG_CURRENTTIME
=> array( 1, 'CURRENTTIME', 'БЯГУЧЫ_ЧАС' ),
60 MAG_NUMBEROFPAGES
=> array( 1, 'NUMBEROFPAGES', 'КОЛЬКАСЬЦЬ_СТАРОНАК' ),
61 MAG_NUMBEROFARTICLES
=> array( 1, 'NUMBEROFARTICLES', 'КОЛЬКАСЬЦЬ_АРТЫКУЛАЎ' ),
62 MAG_NUMBEROFFILES
=> array( 1, 'NUMBEROFFILES', 'КОЛЬКАСЬЦЬ_ФАЙЛАЎ' ),
63 MAG_NUMBEROFUSERS
=> array( 1, 'NUMBEROFUSERS', 'КОЛЬКАСЬЦЬ_УДЗЕЛЬНІКАЎ' ),
64 MAG_PAGENAME
=> array( 1, 'PAGENAME', 'НАЗВА_СТАРОНКІ' ),
65 MAG_PAGENAMEE
=> array( 1, 'PAGENAMEE', 'НАЗВА_СТАРОНКІ_2' ),
66 MAG_NAMESPACE
=> array( 1, 'NAMESPACE', 'ПРАСТОРА_НАЗВАЎ' ),
67 MAG_NAMESPACEE
=> array( 1, 'NAMESPACEE', 'ПРАСТОРА_НАЗВАЎ_2' ),
68 MAG_TALKSPACE
=> array( 1, 'TALKSPACE', 'ПРАСТОРА_НАЗВАЎ_АБМЕРКАВАНЬНЯ' ),
69 MAG_TALKSPACEE
=> array( 1, 'TALKSPACEE', 'ПРАСТОРА_НАЗВАЎ_АБМЕРКАВАНЬНЯ_2' ),
70 MAG_SUBJECTSPACE
=> array( 1, 'SUBJECTSPACE', 'ARTICLESPACE', 'ПРАСТОРА_НАЗВАЎ_ПРАДМЕТУ', 'ПРАСТОРА_НАЗВАЎ_АРТЫКУЛА' ),
71 MAG_SUBJECTSPACEE
=> array( 1, 'SUBJECTSPACEE', 'ARTICLESPACEE', 'ПРАСТОРА_НАЗВАЎ_ПРАДМЕТУ_2', 'ПРАСТОРА_НАЗВАЎ_АРТЫКУЛА_2' ),
72 MAG_FULLPAGENAME
=> array( 1, 'FULLPAGENAME', 'ПОЎНАЯ_НАЗВА_СТАРОНКІ' ),
73 MAG_FULLPAGENAMEE
=> array( 1, 'FULLPAGENAMEE', 'ПОЎНАЯ_НАЗВА_СТАРОНКІ_2' ),
74 MAG_SUBPAGENAME
=> array( 1, 'SUBPAGENAME', 'НАЗВА_ПАДСТАРОНКІ' ),
75 MAG_SUBPAGENAMEE
=> array( 1, 'SUBPAGENAMEE', 'НАЗВА_ПАДСТАРОНКІ_2' ),
76 MAG_BASEPAGENAME
=> array( 1, 'BASEPAGENAME', 'НАЗВА_БАЗАВАЙ_СТАРОНКІ' ),
77 MAG_BASEPAGENAMEE
=> array( 1, 'BASEPAGENAMEE', 'НАЗВА_БАЗАВАЙ_СТАРОНКІ_2' ),
78 MAG_TALKPAGENAME
=> array( 1, 'TALKPAGENAME', 'НАЗВА_СТАРОНКІ_АБМЕРКАВАНЬНЯ' ),
79 MAG_TALKPAGENAMEE
=> array( 1, 'TALKPAGENAMEE', 'НАЗВА_СТАРОНКІ_АБМЕРКАВАНЬНЯ_2' ),
80 MAG_SUBJECTPAGENAME
=> array( 1, 'SUBJECTPAGENAME', 'ARTICLEPAGENAME', 'НАЗВА_СТАРОНКІ_ПРАДМЕТУ', 'НАЗВА_СТАРОНКІ_АРТЫКУЛА' ),
81 MAG_SUBJECTPAGENAMEE
=> array( 1, 'SUBJECTPAGENAMEE', 'ARTICLEPAGENAMEE', 'НАЗВА_СТАРОНКІ_ПРАДМЕТУ_2', 'НАЗВА_СТАРОНКІ_АРТЫКУЛА_2' ),
82 MAG_MSG
=> array( 0, 'MSG:', 'ПАВЕДАМЛЕНЬНЕ:' ),
83 MAG_SUBST
=> array( 0, 'SUBST:', 'ПАДСТАНОЎКА:' ),
84 MAG_MSGNW
=> array( 0, 'MSGNW:', 'ПАВЕДАМЛЕНЬНЕ_БЯЗЬ_ВІКІ:' ),
85 MAG_END
=> array( 0, '__END__', '__КАНЕЦ__' ),
86 MAG_IMG_THUMBNAIL
=> array( 1, 'thumbnail', 'thumb', 'значак', 'міні' ),
87 MAG_IMG_MANUALTHUMB
=> array( 1, 'thumbnail=$1', 'thumb=$1', 'значак=$1', 'міні=$1' ),
88 MAG_IMG_RIGHT
=> array( 1, 'right', 'справа' ),
89 MAG_IMG_LEFT
=> array( 1, 'left', 'зьлева' ),
90 MAG_IMG_NONE
=> array( 1, 'none', 'няма' ),
91 MAG_IMG_WIDTH
=> array( 1, '$1px', '$1пкс' ),
92 MAG_IMG_CENTER
=> array( 1, 'center', 'centre', 'цэнтар' ),
93 MAG_IMG_FRAMED
=> array( 1, 'framed', 'enframed', 'frame', 'рамка' ),
94 MAG_INT
=> array( 0, 'INT:' ),
95 MAG_SITENAME
=> array( 1, 'SITENAME', 'НАЗВА_САЙТУ' ),
96 MAG_NS
=> array( 0, 'NS:', 'ПН:' ),
97 MAG_LOCALURL
=> array( 0, 'LOCALURL:', 'ЛЯКАЛЬНЫ_АДРАС:' ),
98 MAG_LOCALURLE
=> array( 0, 'LOCALURLE:', 'ЛЯКАЛЬНЫ_АДРАС_2:' ),
99 MAG_SERVER
=> array( 0, 'SERVER', 'СЭРВЭР' ),
100 MAG_SERVERNAME
=> array( 0, 'SERVERNAME', 'НАЗВА_СЭРВЭРА' ),
101 MAG_SCRIPTPATH
=> array( 0, 'SCRIPTPATH', 'ШЛЯХ_ДА_СКРЫПТА' ),
102 MAG_GRAMMAR
=> array( 0, 'GRAMMAR:', 'ГРАМАТЫКА:' ),
103 MAG_NOTITLECONVERT
=> array( 0, '__NOTITLECONVERT__', '__NOTC__', '__БЕЗ_КАНВЭРТАЦЫІ_НАЗВЫ__' ),
104 MAG_NOCONTENTCONVERT
=> array( 0, '__NOCONTENTCONVERT__', '__NOCC__', '__БЕЗ_КАНВЭРТАЦЫІ_ТЭКСТУ__' ),
105 MAG_CURRENTWEEK
=> array( 1, 'CURRENTWEEK', 'БЯГУЧЫ_ТЫДЗЕНЬ' ),
106 MAG_CURRENTDOW
=> array( 1, 'CURRENTDOW', 'БЯГУЧЫ_ДЗЕНЬ_ТЫДНЯ' ),
107 MAG_REVISIONID
=> array( 1, 'REVISIONID', 'ID_ВЭРСІІ' ),
108 MAG_PLURAL
=> array( 0, 'PLURAL:', 'МНОЖНЫ_ЛІК:'),
109 MAG_FULLURL
=> array( 0, 'FULLURL:', 'ПОЎНЫ_АДРАС:' ),
110 MAG_FULLURLE
=> array( 0, 'FULLURLE:', 'ПОЎНЫ_АДРАС_2:' ),
111 MAG_LCFIRST
=> array( 0, 'LCFIRST:', 'ПЕРШАЯ_ЛІТАРА_МАЛАЯ:' ),
112 MAG_UCFIRST
=> array( 0, 'UCFIRST:', 'ПЕРШАЯ_ЛІТАРА_ВЯЛІКАЯ:' ),
113 MAG_LC
=> array( 0, 'LC:', 'МАЛЫМІ_ЛІТАРАМІ:' ),
114 MAG_UC
=> array( 0, 'UC:', 'ВЯЛІКІМІ_ЛІТАРАМІ:' ),
115 MAG_RAW
=> array( 0, 'RAW:', 'НЕАПРАЦАВАНЫ' ),
116 MAG_DISPLAYTITLE
=> array( 1, 'DISPLAYTITLE', 'АДЛЮСТРАВАНАЯ_НАЗВА' ),
117 MAG_RAWSUFFIX
=> array( 1, 'R', 'Н' ),
118 MAG_NEWSECTIONLINK
=> array( 1, '__NEWSECTIONLINK__', '__СПАСЫЛКА_НА_НОВУЮ_СЭКЦЫЮ__' ),
119 MAG_CURRENTVERSION
=> array( 1, 'CURRENTVERSION', 'БЯГУЧАЯ_ВЭРСІЯ' ),
120 MAG_URLENCODE
=> array( 0, 'URLENCODE:' ),
123 function __construct() {
124 parent
::__construct();
126 global $wgAllMessagesBe;
127 $this->mMessagesBe
=& $wgAllMessagesBe;
129 global $wgMetaNamespace;
130 $this->mNamespaceNamesBe
= array(
132 NS_SPECIAL
=> 'Спэцыяльныя',
134 NS_TALK
=> 'Абмеркаваньне',
135 NS_USER
=> 'Удзельнік',
136 NS_USER_TALK
=> 'Гутаркі_ўдзельніка',
137 NS_PROJECT
=> $wgMetaNamespace,
138 NS_PROJECT_TALK
=> 'Абмеркаваньне_' . $wgMetaNamespace,
140 NS_IMAGE_TALK
=> 'Абмеркаваньне_выявы',
141 NS_MEDIAWIKI
=> 'MediaWiki',
142 NS_MEDIAWIKI_TALK
=> 'Абмеркаваньне_MediaWiki',
143 NS_TEMPLATE
=> 'Шаблён',
144 NS_TEMPLATE_TALK
=> 'Абмеркаваньне_шаблёну',
145 NS_HELP
=> 'Дапамога',
146 NS_HELP_TALK
=> 'Абмеркаваньне_дапамогі',
147 NS_CATEGORY
=> 'Катэгорыя',
148 NS_CATEGORY_TALK
=> 'Абмеркаваньне_катэгорыі'
153 function getNamespaces() {
154 return $this->mNamespaceNamesBe + parent
::getNamespaces();
157 function getQuickbarSettings() {
158 return $this->mQuickbarSettingsBe
;
161 function getSkinNames() {
162 return $this->mSkinNamesBe + parent
::getSkinNames();
165 function &getMagicWords() {
166 $t = $this->mMagicWordsBe + parent
::getMagicWords();
170 function getDateFormats() {
171 return $this->mDateFormatsBe
;
174 function getMessage( $key ) {
175 if( isset( $this->mMessagesBe
[$key] ) ) {
176 return $this->mMessagesBe
[$key];
178 return parent
::getMessage( $key );
182 function getAllMessages() {
183 return $this->mMessagesBe
;
186 // The date and time format
187 function date( $ts, $adj = false, $format = true, $timecorrection = false ) {
188 $datePreference = $this->dateFormat( $format );
189 if( $datePreference == MW_DATE_ISO
) {
190 return parent
::date( $ts, $adj, $datePreference, $timecorrection );
192 if ( $adj ) { $ts = $this->userAdjust( $ts, $timecorrection ); } # Adjust based on the timezone setting.
193 // 20050310001506 => 10.03.2005
194 $date = (substr( $ts, 6, 2 )) . '.' . substr( $ts, 4, 2 ) . '.' . substr( $ts, 0, 4 );
199 function separatorTransformTable() {
200 return array(',' => '.', '.' => ',' );
203 function convertPlural( $count, $wordform1, $wordform2, $wordform3) {
204 $count = str_replace ('.', '', $count);
205 if ($count > 10 && floor(($count %
100) / 10) == 1) {
208 switch ($count %
10) {
209 case 1: return $wordform1;
212 case 4: return $wordform2;
213 default: return $wordform3;
218 # Convert from the nominative form of a noun to some other case
219 # Invoked with {{GRAMMAR:case|word}}
221 * Cases: родны, вінавальны, месны
223 function convertGrammar( $word, $case ) {
225 case 'родны': # genitive
226 if ( $word == 'Вікіпэдыя' ) {
228 } elseif ( $word == 'ВікіСлоўнік' ) {
229 $word = 'ВікіСлоўніка';
230 } elseif ( $word == 'ВікіКнігі' ) {
232 } elseif ( $word == 'ВікіКрыніца' ) {
233 $word = 'ВікіКрыніцы';
234 } elseif ( $word == 'ВікіНавіны' ) {
236 } elseif ( $word == 'ВікіВіды' ) {
240 case 'вінавальны': # akusative
241 if ( $word == 'Вікіпэдыя' ) {
243 } elseif ( $word == 'ВікіСлоўнік' ) {
244 $word = 'ВікіСлоўнік';
245 } elseif ( $word == 'ВікіКнігі' ) {
247 } elseif ( $word == 'ВікіКрыніца' ) {
248 $word = 'ВікіКрыніцу';
249 } elseif ( $word == 'ВікіНавіны' ) {
250 $word = 'ВікіНавіны';
251 } elseif ( $word == 'ВікіВіды' ) {
255 case 'месны': # prepositional
256 if ( $word == 'Вікіпэдыя' ) {
258 } elseif ( $word == 'ВікіСлоўнік' ) {
259 $word = 'ВікіСлоўніку';
260 } elseif ( $word == 'ВікіКнігі' ) {
261 $word = 'ВікіКнігах';
262 } elseif ( $word == 'ВікіКрыніца' ) {
263 $word = 'ВікіКрыніцы';
264 } elseif ( $word == 'ВікіНавіны' ) {
265 $word = 'ВікіНавінах';
266 } elseif ( $word == 'ВікіВіды' ) {
272 return $word; # this will return the original value for 'назоўны' (nominative) and all undefined case values