Письменности/Синтаксис

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page Writing systems/Syntax and the translation is 86% complete.
Outdated translations are marked like this.
Other languages:
Deutsch • ‎English • ‎Türkçe • ‎español • ‎français • ‎italiano • ‎polski • ‎português • ‎português do Brasil • ‎čeština • ‎Ελληνικά • ‎български • ‎русский • ‎العربية • ‎ᱥᱟᱱᱛᱟᱲᱤ • ‎中文 • ‎日本語 • ‎ꯃꯤꯇꯩ ꯂꯣꯟ • ‎한국어
Переведённая версия «zh:Help:高级字词转换语法»

Эта страница описывает специальную разметку, которая используется в LanguageConverter, системе преобразования между вариантами языка через замену символов или слов.

Во всех примерах ниже символы в нижнем регистре представляют упрощённый китайский, а В ВЕРХНЕМ — традиционный китайский.

Концепция

Разметка LanguageConverter выглядит так:

  • -{ text }-
  • -{ flag | variant1 : text1 ; variant2 : text2 ; }-
  • -{ flag1 ; flag2 | from => variant : to ; }-

Флаги (flag) описываются ниже, а названия вариантов (variantx) являются языковыми кодами (такими как zh-cn или zh-tw).

У варианта возможны резервные варианты. В нижепредставленных примерах для китайского zh-cn и zh-sg — варианты, которые пишутся письменностью zh-hans, а zh-hk и zh-mo — варианты, которые пишутся письменностью zh-hant. Например, согласно определению $variantfallbacks в LanguageZh.php, если для zh-hk не будет найдено собственного правила, конвертер попытается использовать определения для zh-hant, zh-mo и zh-tw.

In the following examples designed for Chinese, zh-cn and zh-sg are variants written in the zh-hans script, while zh-hk, zh-mo are variants written in the zh-hant script. For example, according to the $variantfallbacks definition in LanguageZh.php, if no rules for zh-hk were found, the converter would try using definitions for zh-hant, zh-mo, and zh-tw.

Вы можете заметить, что zh-mo и zh-sg не присутствуют в большинстве примеров. Это из-за их похожести на другие варианты (zh-hk и zh-cn соответственно).

This is due to their high similarity to other variants, zh-hk and zh-cn respectively.

Синтаксис

Основной синтаксис

Имя Описание Пример Примечание
Вики-текст Результат
Двунаправленный Двунаправленное преобразование с поддержкой флагов. Наиболее частый синтаксис ручного преобразования.
-{zh-hans:computer; zh-hant:ELECTRONICBRAIN;}-
zh, zh-hans, zh-cn, zh-sg
computer
zh-hant, zh-tw, zh-hk, zh-mo
ELECTRONICBRAIN
Однонаправленный Однонаправленное преобразование с поддержкой флагов. В основном используется для добавления новых правил преобразования. Выполняется быстрее, чем двунаправленные правила.

Удобен в основном для унификации языковой вариативности и предотвращения беспорядочных преобразований.

-{H|HUGEBLOCK=>zh-cn:macro;}-
Test: HUGEBLOCK, macro
zh
Test: HUGEBLOCK, Macro
zh-hans, zh-sg
test: hugeblock, macro
zh-hant, zh-hk, zh-tw
TEST: HUGEBLOCK, MACRO
zh-cn
test: macro, macro
Резервные варианты не поддерживаются односторонним преобразованием. Например, в примере выше zh-hans и zh-sg не будут использовать правила zh-cn. В то же время, если правило добавляется для zh-hans, оно будет применяться только к zh-hans, но не к zh-cn.
Отключён Отключить преобразование письменности
-{SimpTrad}-
<!--Также возможно с флагом «R»: -{R|SimpTrad}--->
(all variants)
SimpTrad
Полностью отключает преобразование письменности.
(Полу)отключён

Отключить преобразование «слов»
(разрывание слов, не повлияет на преобразование языка посимвольно)


(breaking words apart, won't affect character transcription)

Полезно для предотвращения неправильного преобразования корректным разрывом текста на слова.

HAN-{}-GUK, cho-{}-sun

(предполагая, что есть правило преобразования, работающее между «HANGUK» и «chosun»)

zh
HANGUK, chosun
zh-hans, zh-cn, zh-sg

hanguk, chosun

zh-hant, zh-hk, zh-tw
HANGUK, CHOSUN
Есть другой способ достичь этого результата, который более удобен в шаблонах. См. «Комбинированный флаг преобразования» ниже.
Например: -{zh;zh-hans;zh-hant|HANGUK}- -{zh;zh-hans;zh-hant|chosun}-

Флаг преобразования

Общие флаги

Флаг Описание Пример Примечание
Вики-текст Результат
H Вставить правило преобразования без вывода
-{H|zh-cn:blog; zh-hk:WEBJOURNAL; zh-tw:WEBLOG;}-
Test: blog, WEBJOURNAL, WEBLOG
zh
Test: blog, WEBJOURNAL, WEBLOG
zh-hans
test: blog, webjournal, weblog
zh-hant
TEST: BLOG, WEBJOURNAL, WEBLOG
zh-cn, zh-sg
test: blog, blog, blog
zh-hk
TEST: WEBJOURNAL, WEBJOURNAL, WEBJOURNAL
zh-tw
TEST: WEBLOG, WEBLOG, WEBLOG
zh-hans и zh-hant — просто письменности, и не будут использовать двунаправленные правила. См. также параметр $manualLevel в LanguageConverter.
A Вставить правило преобразования с результатом в текущем языке
-{A|zh-cn:blog; zh-hk:WEBJOURNAL; zh-tw:WEBLOG;}-
-{zh-hans:→; zh-hant:⇒}-
blog, WEBJOURNAL, WEBLOG
zh
blog → blog, WEBJOURNAL, WEBLOG
zh-hans
blog → blog, webjournal, weblog
zh-hant
WEBLOG ⇒ BLOG, WEBJOURNAL, WEBLOG
zh-cn, zh-sg
blog → blog, blog, blog
zh-hk
WEBJOURNAL ⇒ WEBJOURNAL, WEBJOURNAL, WEBJOURNAL
zh-tw
WEBLOG ⇒ WEBLOG, WEBLOG, WEBLOG
Сравните первый результат (с флагом A) с результатом с флагом H и операцией без флагов.
- Убрать существующее правило преобразования
-{H|zh-cn:blog; zh-hk:WEBJOURNAL; zh-tw:WEBLOG;}- <!-- Add rule -->
+ blog, WEBJOURNAL, WEBLOG

-{-|zh-cn:blog; zh-hk:WEBJOURNAL; zh-tw:WEBLOG;}- <!-- Remove rule -->
- blog, WEBJOURNAL, WEBLOG
zh
+ blog, WEBJOURNAL, WEBLOG
- blog, WEBJOURNAL, WEBLOG
zh-hans
+ blog, webjournal, weblog
- blog, webjournal, weblog
zh-hant
+ BLOG, WEBJOURNAL, WEBLOG
- BLOG, WEBJOURNAL, WEBLOG
zh-cn, zh-sg
+ blog, blog, blog
- blog, webjournal, weblog
zh-hk
+ WEBJOURNAL, WEBJOURNAL, WEBJOURNAL
- BLOG, WEBJOURNAL, WEBLOG
zh-tw
+ WEBLOG, WEBLOG, WEBLOG
- BLOG, WEBJOURNAL, WEBLOG
Сравните тест (+), тест (-) и базовые hans/hant
T Перезаписать заголовок страницы
-{T|zh-cn:tom hanks; zh-hk:SOUP HANS; zh-tw:TOM HANKS;}-

(предполагая, что изначальный заголовок — «TomHanks»)

(показывается как заголовок страницы)
zh (gerrit:19746)
TomHanks
zh-hans, zh-cn, zh-sg
tom hanks
zh-hk
SOUP HANS
zh-tw
TOM HANKS
D Описать правило преобразования
-{D|zh-cn:tom hanks; zh-hk:SOUP HANS; zh-tw:TOM HANKS}-
(all variants)
China: tom hanks; Hong Kong: SOUP HANS; Taiwan: TOM HANKS
Полезно для генерации общих сведений о группах правил преобразований

Комбинированный флаг преобразования

Флаг Описание Пример Примечание
Вики-текст Результат
название варианта Учесть только отдельные варианты для преобразования
-{H|zh-cn:blog; zh-hk:WEBJOURNAL; zh-tw:WEBLOG;}-
Test 1: -{zh;zh-hans;zh-hant|blog, WEBJOURNAL, WEBLOG}-

Test 2: -{zh;zh-cn;zh-hk|blog, WEBJOURNAL, WEBLOG}-

(предполагая, что этот код выполняется на китайской вики)

zh
Test 1: blog, WEBJOURNAL, WEBLOG
Test 2: blog, WEBJOURNAL, WEBLOG
zh-hans
test 1: blog, webjournal, weblog
test 2: blog, blog, blog
zh-hant, zh-tw
TEST 1: BLOG, WEBJOURNAL, WEBLOG
TEST 2: WEBLOG, WEBLOG, WEBLOG
zh-cn, zh-sg
test 1: blog, webjournal, weblog
test 2: blog, blog, blog
zh-hk
TEST 1: BLOG, WEBJOURNAL, WEBLOG
TEST 2: WEBJOURNAL, WEBJOURNAL, WEBJOURNAL
Сравните тест 1, тест 2 способ использования с флагом H выше.

Исключения

Конвертер языков избегает преобразование текста, который размещён в тэгах кода, таких как <pre>...</pre>, <code>...</code>, а также <script>...</script>, используемого для хранения выполняемого JavaScript-кода. Помещение пустого правила преобразования -{}- в такие тэги будет работать как параметр «использовать преобразование» для конвертера. Этот хак может быть полезным для образцов кода внутри таких тэгов.

A caveat, however, is that this switch doesn't seem to work for the extension-provided <syntaxhighlight > tags which eventually generates a <pre>...</pre> nested with elements (T34943). The switch also won't work with scripts not originally included with the page's HTML source that LC is designed to operate on.

MediaWiki messages are not processed by LC. This inconvenience is tracked in T170916.

См. также