Перейти к содержанию

Модуль:Ru/doc

Материал из Викиновостей, свободного источника новостей

Это страница документации Модуль:Ru.

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

Функции

[править]

locative

[править]

Формирует предложный падеж (препозитив), в большинстве случаев совпадающий с местным падежом (локативом):

  • в {{#invoke:ru|locative|Москва}} в Москве
  • в {{#invoke:ru|locative|Казань}} в Казани

Существует, однако, большая группа существительных, для которых формы предложного и местного падежей не совпадают (например: «лес» → «о ле́се», но «в лесу́»). Данная функция не учитывает эти исключения — не используйте её в подобных случаях!

  • о {{#invoke:ru|locative|лес}} о лесе

Формирует множественное число (название функции — от англ. plural):

  • {{#invoke:ru|pl|шахтёр}} Ошибка Lua: bad argument #1 to 'match' (string expected, got table).
  • {{#invoke:ru|pl|трава}} Ошибка Lua: bad argument #1 to 'match' (string expected, got table).
  • {{#invoke:ru|pl|конь}} Ошибка Lua: bad argument #1 to 'match' (string expected, got table).

Данная функция определяет склонение слова с помощью функции guessdecl (см. ниже). При необходимости (напр., когда guessdecl ошибается), склонение можно указать в явном виде во втором аргументе:

  • {{#invoke:ru|pl|пальто|0}} Ошибка Lua: bad argument #1 to 'match' (string expected, got table). (без второго аргумента: {{#invoke:ru|pl|пальто}} ошибочно «Ошибка Lua: bad argument #1 to 'match' (string expected, got table).»)

guessdecl

[править]

Угадывает тип склонения (название функции — от англ. guess declension). Данная функция используется функцией pl (см. выше), если при вызове последней не задан второй параметр. Возвращаемые значения:

  • 0 — для несклоняемых существительных;
  • 1, 2 и 3 — для существительных I, II и III склонения, соответственно;
  • a (от англ. adjective) — для прилагательных.

Важно: невозможно без использования словаря различать следующие случаи:

  • слова III склонения (напр., «дверь») и оканчивающиеся на «ь» слова II склонения (напр., «конь»). Данная функция возвращает для таких слов значение 2. Значение 3 возвращается только для слов, оканчивающихся на «Xмя», где X — гласная (напр., «время»); в действительности, эти слова являются разносклоняемыми (см. статью Склонение) и склоняются по третьему склонению не во всех формах: исключение — форма творительного падежа единственного числа.
  • несклоняемые слова, форма которых совпадает с формой какого-либо склонения (напр., «пальто» / «озеро»). Для таких слов будет возвращаться неправильное значение 1, 2 или 3 вместо правильного 0.

Примеры:

  • {{#invoke:ru|guessdecl|такси}} Ошибка Lua: bad argument #1 to 'match' (string expected, got table).
  • {{#invoke:ru|guessdecl|юноша}} Ошибка Lua: bad argument #1 to 'match' (string expected, got table).
  • {{#invoke:ru|guessdecl|дом}} Ошибка Lua: bad argument #1 to 'match' (string expected, got table).
  • {{#invoke:ru|guessdecl|дверь}} Ошибка Lua: bad argument #1 to 'match' (string expected, got table).
  • {{#invoke:ru|guessdecl|белый}} Ошибка Lua: bad argument #1 to 'match' (string expected, got table).

Примеры ошибок:

  • {{#invoke:ru|guessdecl|дверь}} Ошибка Lua: bad argument #1 to 'match' (string expected, got table). (должно быть 3)
  • {{#invoke:ru|guessdecl|пальто}} Ошибка Lua: bad argument #1 to 'match' (string expected, got table). (должно быть 0)

o (латиницей)

[править]

Подбирает предлог о/об/обо:

  • {{#invoke:ru|o|том}} о
  • {{#invoke:ru|o|этом}} об
  • {{#invoke:ru|o|всём}} обо

Используется функцией o, для экспорта в другие скрипты, в invoke не работает.

require("Module:Ru").obo("слово")