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

Использование [ править ]

{{#invoke:Transclude DYK|main}}

Основная документация: {{ Transclude DYK / doc }}

Включает случайно выбранные слова "Знаете ли вы?" записи из списка.

См. Также [ править ]

местный  p  =  {}- Включить случайно выбранный вариант «Знаете ли вы?» записифункция  p . основной ( фрейм )- args = {1,2, ... = имена страниц, абзацы = список, например, "1,3-5", files = list, more = text}local  args  =  {}  - args [k] = frame.args [k] или frame: getParent (). args [k] для всех k в любом (числовом или нет)для  к ,  V  в  парах ( кадр : GetParent . () арг )  делают  арг [ K ]  =  v  конецдля  k ,  v  в  парах ( frame . args )  do  args [ k ]  =  v  end  - аргументы из вызова Lua имеют приоритет над родительскими аргументами из шаблона- Прочтите страницу вводаlocal  page  =  args [ 1 ]  или  ошибка ( "Имя страницы не указано" )местное  название  =  mw . название . новая ( страница )  или  ошибка ( "Отсутствует страница ввода"  ..  страница )local  text  =  title : getContent ()  или  error ( "Нет содержимого для страницы"  ..  страница )- Ограничьтесь разделом DYK, если он естьlocal  sectionstart  =  mw . ustring . find ( текст ,  " \ n == '' Знаете ли вы? '' article ==" ,  1 ,  верно )если  sectionstart,  толокальная  секцияend  =  mw . ustring . find ( текст ,  " \ n ==" ,  sectionstart  +  1 ,  true )  или  - 1текст  =  mw . ustring . к югу ( текст ,  sectionstart ,  sectionend )конец- Разобрать записизаписи  =  {}для  записи  в  мв . ustring . gmatch ( текст ,  « \ n % * [.…% s] * ([^ \ n ] +)» )  делатьесли  не  мв . ustring . find ( запись ,  "отсутствует рекламное объявление на странице обсуждения статьи" ,  1 ,  истина ),  затемtable.insert ( записи ,  запись )конецконец- Поменять несколько случайных записей на первые n позицийлокальная  п  =  Math.min ( # записи ,  арг . кол  или  10 )  - количество записей , чтобы произвестиmath.randomseed ( os.time ())для  i  =  1 ,  n  сделатьj  =  math.random ( i ,  # записей )записи [ i ],  записи [ j ]  =  "* ..."  ..  записи [ j ],  записи [ i ]конец- Вернуть первые n записейтекст  =  table.concat ( записи ,  " \ n " ,  1 ,  n ) кадр возврата : препроцесс ( текст )конецвернуть  p