Постоянно защищенный шаблон
Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Документация по шаблону [ просмотреть ] [ изменить ] [ история ] [ очистить ]

Цель этого шаблона - указать, что фрагмент текста принадлежит определенному языку. Он часто не вносит видимых изменений в текст, но может побуждать веб-браузеры использовать более подходящий шрифт или программы чтения с экрана для использования определенного вида произношения и т. Д. См. § Обоснование для получения дополнительной информации.

Синтаксис и использование

     {{lang|language tag|text}}

Язык тег должен состоять из ISO-639 код языка (нажмите здесь для списка большинства кодов). Шаблон также поддерживает правильно отформатированные языковые теги IETF с использованием вложенных тегов, которые идентифицируют сценарий, регион и / или вариант языка. Код языка ISO 639 представляет собой двух- или трехбуквенное сокращение названия языка в нижнем регистре. Французский, например, имеет код fr:

  • She said: "{{lang|fr|Je suis française.}}"→ Она сказала: « Je suis française ».

Поскольку все языки, представленные двухбуквенными кодами в ISO 639-1, также могут быть представлены их трехбуквенными эквивалентами в ISO 639-2 и выше, рекомендуется использовать максимально короткий языковой тег, который в достаточной мере описывает целевой язык. [1] Таким образом, хотя французский язык может быть представлен fraкодом 639‑2 , используйте frвместо него код 639‑1 . Точно так же информацию о сценарии, регионе и варианте следует включать только в том случае, если они обеспечивают необходимое различие. Для списка уточненный доступного языка, сценария, региона и вариантных кодов, пожалуйста , обратитесь к IANA «s языка Subtag реестра .

По умолчанию этот шаблон помещает статьи в соответствующую подкатегорию категории: статьи, содержащие текст не на английском языке . Чтобы подавить это - например, при использовании {{lang}} внутри вики-ссылки или параметра заголовка цитаты - добавьте параметр |nocat=true.

Форматирование

Автоматический курсив

{{lang}}автоматически применяет курсивный стиль, когда текст {{{2}}}полностью написан в Latnскрипте (латинском алфавите и его расширениях), либо когда это кодировка по умолчанию для языка, либо когда она запускается xx-Latnкодом языка:

  • {{lang|fr|Je suis française.}}Je suis française.
  • ''{{lang|fr|Je suis française.}}''Je suis française. - внешняя разметка игнорируется
  • {{lang|he-Latn|la`az}} ({{lang|he|לעז}})la`az ( לעז )
  • ''{{lang|he-Latn|la`az}}'' (''{{lang|he|לעז}}'')la`az ( לעז ) - внешняя разметка вокруг he-Latnтекста игнорируется , но будет неправильно выделять курсивом материал с еврейскими символами.

Когда Latnсценарий не следует выделять курсивом, существует несколько подходов: |italic=no - отображается {{{2}}}вертикальным шрифтом; курсивная разметка вокруг шаблона игнорируется; Курсив внутри шаблона вызывает сообщение об ошибке:

  • {{lang|fr|Je suis française.|italic=no}}Je suis française.
  • ''{{lang|fr|Je suis française.|italic=no}}''Je suis française.
  • ''{{lang|fr|Je suis ''française''.|italic=no}}''[Je suis française .] Ошибка: {{Lang}}: текст имеет курсивную разметку ( справка ) - курсивная разметка противоречит|italic=no

|italic=unset - отключает стили, предоставляемые шаблоном; {{{2}}}оформлен в соответствии с внешней или внутренней разметкой вики:

  • {{lang|fr|Je suis française.|italic=unset}}Je suis française.
  • ''{{lang|fr|Je suis française.|italic=unset}}''Je suis française.
  • {{lang|fr|''Je suis'' English.|italic=unset}}Je suis Английский.

{{noitalic}} также можно использовать:

  • {{lang|fr|Je suis {{noitalic|English}}.}}Je suis Английский .

Шаблоны для конкретных языков

Существуют языковые версии этого шаблона, такие как {{ lang-fr }} и {{ lang-ru }}, которые предназначены для использования при первом появлении языка в статье. Эти шаблоны будут печатать название языка и, при необходимости, выделять их содержание курсивом:

  • A '''kremlin''' ({{lang-ru|кремль}}, 'castle') is a major fortified central complex ...кремль ( русский : кремль , «замок») является одним из основных укрепленного центрального комплекса ...

В то время как шаблоны выводят текст курсивом для языков с латинскими скриптами, если требуется простой текст, например, для имен собственных, или его можно использовать:{{lang-xx}}|italic=no{{noitalic}}

  • the border town of Ventimiglia ({{lang-fr|Vintimille}})→ приграничный город Вентимилья ( французский : Vintimille )
  • the border town of Ventimiglia ({{lang-fr|italic=no|Vintimille}})→ приграничный город Вентимилья ( французский : Vintimille )
  • the border town of Ventimiglia ({{lang-fr|{{noitalic|Vintimille}}}})→ приграничный город Вентимилья ( французский : Vintimille )

При форматировании текста на иностранном языке в соответствии с рекомендациями по стилю лучше всего исключить разметку стиля из шаблона, чтобы любая посторонняя разметка, не относящаяся к иностранному языку, не получила неверные метаданные для этого языка. Сюда входят: кавычки на английском языке вокруг названий произведений на языках, в которых используются другие глифы символов кавычек; выделение курсивом заголовков на языках, которые не используют это соглашение; и акценты, которых нет (в том или ином стиле) в исходном иностранном тексте; среди других случаев. В случае сомнений по возможности размещайте такую ​​разметку вне шаблона.

Языки с письмом справа налево

Чтобы вставить строку текста с письмом справа налево (например, на арабском или иврите ) в обычный контекст |rtl=yesс письмом слева направо, необходимо добавить, чтобы правильно указывать направление письма. Для удобства шаблон {{ rtl-lang }} обеспечивает тот же результат за счет автоматического включения |rtl=yes. Для разметки целого абзаца текста с письмом справа налево следует использовать {{ rtl-para }}.

Любой из этих подходов поместит текст в контейнер с dir="rtl"атрибутом. Чтобы обеспечить правильный рендеринг в браузерах, которые не полностью поддерживают двунаправленную изоляцию HTML5 , в конец текста также добавляется знак слева направо (подробности см. В W3C ).

Обратите внимание, что направление текста не нужно указывать при использовании шаблонов, поскольку это подразумевается языком шаблона. Следовательно, нет {{rtl-lang-ar}} , только {{ lang-ar }}.{{lang-xx}}

Параметры

кинжалсравнить |italic=invertс |italic=unset:

{{Lang|de|... ein neues Opernprojekt in Angriff: ''Das Käthchen von Heilbronn'', nach Heinrich von Kleists gleichnamigem Drama.|italic=invert}}
... ein neues Opernprojekt in Angriff: Das Käthchen von Heilbronn , nach Heinrich von Kleists gleichnamigem Drama.
{{Lang|de|''... ein neues Opernprojekt in Angriff: ''Das Käthchen von Heilbronn'', nach Heinrich von Kleists gleichnamigem Drama.''|italic=unset}}
... ein neues Opernprojekt in Angriff: Das Käthchen von Heilbronn , nach Heinrich von Kleists gleichnamigem Drama.

параметр селектора функции

{{lang}}использует функциональный lang() модуль Lua : Lang . Этот модуль также поддерживает все {{lang-??}}шаблоны, использующие функции Lua lang_xx_inherit()и lang_xx_italic(). У модуля есть и другие функции, которые могут быть полезны. Параметр селектора функций |fn=сообщает module: lang, какую функцию выполнять. Доступные функции:

  • is_ietf_tag- возвращается, trueесли предоставленный языковой тег IETF действителен; ноль еще
    • {{lang|fn=is_ietf_tag|nv}} → верно ←
    • {{lang|fn=is_ietf_tag|xx}} → ←
  • is_lang_name- возвращается, trueесли указанное название языка допустимо; ноль еще
    • {{lang|fn=is_lang_name|navajo}} → верно ←
    • {{lang|fn=is_lang_name|xxxxx}} → ←
  • lang- функция, выполняющая рендеринг ; перечисленные здесь для полноты, это конкретное использование более или менее бессмысленно{{lang}}
  • lang_xx_inherit- функция, отображающая {{lang-??}}шаблон, в котором текст не выделен курсивом; может использоваться {{lang-??}}, например , когда шаблон для определенного языка не существует:{{lang-aao}}
    • {{lang|fn=lang_xx_inherit|code=aao|Algerian Saharan Arabic text}}→ Алжирский сахарский арабский : текст на алжирском сахарском арабском языке
  • lang_xx_italic- функция, отображающая {{lang-??}}шаблон, в котором текст выделен курсивом; может использоваться {{lang-??}}, например , когда шаблон для определенного языка не существует:{{lang-svc}}
    • {{lang|fn=lang_xx_italic|code=svc|Vincentian Creole English text}}→ Винсентский креольский английский : Винсентский креольский английский текст
  • name_from_tag - возвращает имя языка, связанное с предоставленным языковым тегом IETF:
    • {{lang|fn=name_from_tag|apa}} → Языки Apache
  • tag_from_name - возвращает код языка ISO 639 (иногда языковой тег IETF), связанный с предоставленным именем языка:
    • {{lang|fn=tag_from_name|havasupai}} → юф-х-хав
  • transl- функция, выполняющая рендеринг ; перечисленные здесь для полноты, это конкретное использование более или менее бессмысленно{{transl}}
    • {{lang|fn=transl|ar|DIN|al-Ḫawārizmī}}аль-Хаваризми

Указывая на написание сценария

При необходимости код сценария ISO 15924 может быть добавлен к коду языка, чтобы указать на использование определенного сценария. Например, таджикский ( tg) - это язык, который может быть написан на арабском ( Arab), латинском ( Latn) и кириллическом ( Cyrl) сценарии, поэтому необходимо всегда указывать, какой сценарий используется. В таком случае, стараясь сохранить заглавные буквы в коде скрипта, мы могли бы получить следующий код (языковые теги выделены жирным шрифтом):

  • Tajik ({{rtl-lang|tg-Arab|تاجیکی}}, ''{{lang|tg-Latn|toçikī}}'', {{lang|tg-Cyrl|тоҷикӣ}})
Таджикский ( تاجیکی , toçikī , тоҷикӣ )

Однако многие языки так часто пишутся в одном конкретном сценарии, что указывать сценарий не нужно. Например, русский язык почти исключительно написан кириллицей, поэтому нет необходимости указывать ru-Cyrl, как en-Latnэто было бы не нужно для английского языка. Реестра Subtag содержит последнюю актуальную информацию о каких языках имеют общие коды сценариев , которые должны быть «подавленные».

Транслитерация

Чтобы отметить язык, который был транслитерирован из одного сценария в другой, добавьте код нового сценария к коду исходного языка. Таким образом, при транслитерации с русской кириллицы на латинский алфавит языковой тег в транслитерации будет ru-Latn. Если схема транслитерации известна и указана как «вариант» в реестре вложенных тегов , ее можно добавить после любого скрипта и кода региона. Например, китайский язык, переведенный на латиницу с использованием системы пиньинь , будет zh-Latn-pinyin. Для удобства транслитерации в латинские сценарии и для решения проблем, связанных со стилем браузера при использовании некоторых комбинаций языков и сценариев, вместо {{lang}} можно использовать {{ transl }} :

  • Moscow ({{lang|ru|Москва́}}, {{transl|ru|Moskva}})
Москва ( Москва́ , Москва )

Чтобы указать схему транслитерации, например стандарт транслитерации ISO для кириллицы , используйте {{transl|ru|ISO|Moskva}}.

Неопределенный язык

{{Ланг}} Шаблон используется не только для указания языка иностранных слов, но также может быть использован , чтобы указать один символ или символ в сценарии, не связанный с каким - либо конкретным языком. Часто символ или символ используются на нескольких языках, но когда статья ссылается на саму графему , следует использовать код языка ISO 639‑2und для неопределенного языка:

  • The {{lang|und-Hani|字}} Han character has 6 strokes.
У персонажаХан 6 ударов.

Символы хань используются в китайском, японском, иногда корейском и ранее вьетнамском языках, и в этом случае символ не используется для какого-либо конкретного языка. Обратите внимание, что используется код сценария Hani, который определяет общие символы хань (Hanzi, Kanji, Hanja).

Сравните использование {{ script }}:

  • The {{script|Hani|字}} Han character has 6 strokes.
У персонажаХан 6 ударов.

Указывая региональный вариант

Когда необходимо указать язык, специфичный для региона, к тегу языка следует добавить код страны ISO 3166-1 alpha-2 или код региона UN M49 , стараясь сохранить заглавные буквы. Например, португальский ( pt), используемый в Бразилии ( BR), может быть представлен как pt-BR, а испанский, используемый в Латинской Америке, как es-419.

Кроме того, в одном теге могут отображаться коды языка, сценария и региона. Например, код zh-Hant-TWследует использовать для китайского текста, написанного традиционными символами хань и содержащего слова или выражения, характерные для Тайваня :

  • Taiwan ({{lang|zh-Hant-TW|臺灣}}, {{transl|zh|Táiwān}})
Тайвань (臺灣, Táiwān )

Обоснование

Википедия: Руководство по форматированию стиля / текста § Иностранные термины требуют использования {{ lang }} вместо ручного курсива. Это предпочтительно по следующим причинам:

  • Веб- браузеры могут использовать информацию из таких многоязычных шаблонов поддержки, чтобы выбрать подходящий шрифт.
    • Это отлично подходит для CJK, где символу может быть присвоена его форма, зависящая от языка, но он будет возвращаться к другой форме, если подходящий шрифт не найден или если в предпочтительном шрифте отсутствует этот символ, например, потому что язык не использует этот символ. : см. объединение Хань § Примеры глифов, зависящих от языка, и эти сравнительные таблицы со снимком экрана .
  • Для обеспечения доступности - программам чтения с экрана требуется информация о языке, чтобы озвучивать текст на правильном языке - и чтобы соответствовать правилам доступности Википедии . [2]
  • Для средств проверки орфографии и грамматики, чтобы сопоставить текст со словарем и синтаксисом правильного языка.
  • Для того, чтобы помочь браузерам выбрать соответствующие кавычки , [3] и принимать решения о переносах , [3] лигатуры , [4] и интервал. [3]
  • Пользователи могут применять стили к языкам в своих таблицах стилей (полезно для редакторов).
  • Поисковые системы могут использовать эту информацию при индексировании текста.
  • Облегчает очистку, анализ и повторное использование данных.
  • Полезно для разработчиков приложений, которые повторно публикуют Википедию (также см. Википедия: Руководство по стилю / доступности § Другие языки ).
  • Полезно для исследования или сбора статистики об использовании языков в Википедии.

Применение стилей

Зарегистрированные пользователи могут применять собственные стили CSS к статьям, помещая объявления стилей в свои пользовательские таблицы стилей. Таблицу стилей пользователя можно создать по адресу Special: Mypage / common.css . Для получения дополнительной информации см. Справка: Пользовательский стиль . Следующие примеры должны работать в большинстве современных браузеров .

Чтобы применить определенный шрифт ко всему тексту, помеченному как русский, любого алфавита или региона:

[ lang | = ru ]  {  font-family :  fonteskaya ;  } / * или * / : lang ( ru )  {  font-family :  fonteskaya ;  }

Чтобы применить определенный шрифт к тексту, помеченному просто как русский:

[ lang = ru ]  {  font-family :  fonteskaya ;  }

Чтобы применить цвет ко всему тексту, отмеченному любым языком:

[ lang ]  {  цвет :  зеленый ;  }

Если имя шрифта содержит символы помимо основных латинских букв или дефисов, рекомендуется заключить его в кавычки, потому что некоторые такие символы имеют особое значение (наиболее распространенный случай, когда кавычки требуются, это имя шрифта из нескольких слов с пробелами) . Кавычки также требуются для семейств шрифтов, содержащих ключевые слова родового семейства ('наследование', 'с засечками', 'без засечек', 'моноширинный', 'фэнтезийный' и 'курсивный'). См. W3C для более подробной информации.

Вы можете объединить это с импортом шрифтов в свою пользовательскую таблицу стилей, например, чтобы показать весь немецкий текст во Fraktur и весь урду в Noto Nastaliq Urdu Regular:

@ import  url ( https : // fonts . googleapis . com / css ? family = UnifrakturMaguntia ) ; @ import  url ( http : // fonts . googleapis . com / earlyaccess / notonastaliqurdudraft . css ) ;: lang ( de )  {  семейство шрифтов :  UnifrakturMaguntia ;  стиль шрифта :  нормальный ;  шрифт :  нормальный ; }: lang ( ur )  {  font-family :  "Ното насталик урду обычный" ,  "ното насталик урду" ; }

тогда следующий викитекст будет выглядеть как на изображении ниже:

Victor jagt zwölf Boxkämpfer quer über den Sylter Deich{{lang | de-Latf | Victor jagt zwölf Boxkämpfer quer über den Sylter Deich}}نڈ میں ، ایک قحط زدہ گاؤں سے گزرتے وقت ایک چڑچڑے ، بااثر و ارغ شخص و بعض جل پری نما اژدہے نظر آئے۔{{lang | ur | نڈ میں ، ایک قحط زدہ گاؤں سے گزرتے وقت ایک چڑچڑے ، ب بااثر و ارغ شخص و بعض جل پری نما اژدہے نظر آئے

Категории отслеживания

  • Категория: Ошибки шаблонов Lang и lang-xx  (42)
  • Категория: код языка и языка-xx повышен до ISO 639-1  (164)
  • Категория: Lang и lang-xx с использованием устаревших кодов ISO 639  (24)

TemplateData

Это документация TemplateData для этого шаблона, используемого VisualEditor и другими инструментами; см. ежемесячный отчет об использовании параметров для этого шаблона.

TemplateData для Lang

Укажите, что данный фрагмент текста принадлежит определенному языку. Позволяет браузерам правильно представлять и произносить иностранные языки.

Смотрите также

  • {{ Lang-x }}
  • Категория: Википедия многоязычные шаблоны поддержки
  • Списки кодов ISO 639 (языковые коды)
    • {{ ISO 639 name }}
  • Список кодов ISO 15924 (коды скриптов)
  • Список транслитерации ISO (коды транслитерации)
  • {{ cleanup lang }} (для статей, в которых следует использовать этот шаблон, но еще не сделано)
  • {{ transl }} (для латинизации языков, изначально не написанных на латинском алфавите)
  • {{ script }} (для определенных персонажей)
  • {{ wikt-lang }} (для одновременного обозначения текста как языка и ссылки на Викисловарь)
  • {{ in lang }} (для визуального обозначения внешних ссылок на контент на иностранном языке)

Рекомендации

  1. ^ «Языковые теги в HTML и XML» в Консорциуме World Wide Web
  2. ^ Heilmann, Крис (13 марта 2008). «Результаты поиска Yahoo! теперь с поддержкой естественного языка» . Yahoo! Блог сети разработчиков . Архивировано из оригинального 25 января 2009 года . Проверено 28 фев 2015 .
  3. ^ a b c Исида, Ричард (18 ноября 2014 г.). "Зачем использовать атрибут языка?" . Консорциум World Wide Web . Дата обращения 1 мар 2015 .
  4. ^ «6.4 Лигатуры: свойство font-variant-ligatures» . CSS Шрифты Уровень Модуль 3 W3C Candidate Recommendation 3 октября 2013 .

внешняя ссылка

  • W3C
    • Языковые теги в HTML и XML - Обзор
    • Создание HTML: декларации языков - последний рабочий проект W3C
    • Понимание новых языковых тегов
    • Часто задаваемые вопросы: стилизация с использованием атрибута lang
  • IANA
    • Реестр языковых подтэгов IANA
    • Теги для идентификации языков ( RFC 4646 ) 
    • Сопоставление языковых тегов ( RFC 4647 ) 
    • Языковые теги (устарело согласно RFC 4646 ) 
  • Mozilla Firefox
    • Ошибка с выбором скрипта