<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>http://new.ru-skazki.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C%3A%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D0%B0%D1%8F_%D1%81%D1%82%D0%B0%D1%82%D1%8C%D1%8F%2F%D0%BF%D0%B5%D1%81%D0%BE%D1%87%D0%BD%D0%B8%D1%86%D0%B0</id>
	<title>Модуль:Основная статья/песочница - История изменений</title>
	<link rel="self" type="application/atom+xml" href="http://new.ru-skazki.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C%3A%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D0%B0%D1%8F_%D1%81%D1%82%D0%B0%D1%82%D1%8C%D1%8F%2F%D0%BF%D0%B5%D1%81%D0%BE%D1%87%D0%BD%D0%B8%D1%86%D0%B0"/>
	<link rel="alternate" type="text/html" href="http://new.ru-skazki.ru/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D0%B0%D1%8F_%D1%81%D1%82%D0%B0%D1%82%D1%8C%D1%8F/%D0%BF%D0%B5%D1%81%D0%BE%D1%87%D0%BD%D0%B8%D1%86%D0%B0&amp;action=history"/>
	<updated>2026-04-04T22:09:19Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.41.1</generator>
	<entry>
		<id>http://new.ru-skazki.ru/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D0%B0%D1%8F_%D1%81%D1%82%D0%B0%D1%82%D1%8C%D1%8F/%D0%BF%D0%B5%D1%81%D0%BE%D1%87%D0%BD%D0%B8%D1%86%D0%B0&amp;diff=1959&amp;oldid=prev</id>
		<title>Andras: Новая страница: «local p = {} local get_args = require(&#039;Module:Arguments&#039;).getArgs local mHatnote = require(&#039;Module:Hatnote&#039;) local mWikidata local category_ns_number = 14  local function get_property(args) 	return mWikidata.formatProperty(mw.getCurrentFrame(), args) end  local function get_link_target(wikitext) 	local target = wikitext:match(&#039;%[%[([^%]%|]+)%]&#039;) or wikitext:match(&#039;%[%[([^%|]+)%|&#039;) 	return { 		target = target or wikitext, 		contains_link = target ~= nil 	} en...»</title>
		<link rel="alternate" type="text/html" href="http://new.ru-skazki.ru/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D0%B0%D1%8F_%D1%81%D1%82%D0%B0%D1%82%D1%8C%D1%8F/%D0%BF%D0%B5%D1%81%D0%BE%D1%87%D0%BD%D0%B8%D1%86%D0%B0&amp;diff=1959&amp;oldid=prev"/>
		<updated>2023-05-19T11:10:48Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «local p = {} local get_args = require(&amp;#039;Module:Arguments&amp;#039;).getArgs local mHatnote = require(&amp;#039;Module:Hatnote&amp;#039;) local mWikidata local category_ns_number = 14  local function get_property(args) 	return mWikidata.formatProperty(mw.getCurrentFrame(), args) end  local function get_link_target(wikitext) 	local target = wikitext:match(&amp;#039;%[%[([^%]%|]+)%]&amp;#039;) or wikitext:match(&amp;#039;%[%[([^%|]+)%|&amp;#039;) 	return { 		target = target or wikitext, 		contains_link = target ~= nil 	} en...»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local p = {}&lt;br /&gt;
local get_args = require(&amp;#039;Module:Arguments&amp;#039;).getArgs&lt;br /&gt;
local mHatnote = require(&amp;#039;Module:Hatnote&amp;#039;)&lt;br /&gt;
local mWikidata&lt;br /&gt;
local category_ns_number = 14&lt;br /&gt;
&lt;br /&gt;
local function get_property(args)&lt;br /&gt;
	return mWikidata.formatProperty(mw.getCurrentFrame(), args)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function get_link_target(wikitext)&lt;br /&gt;
	local target = wikitext:match(&amp;#039;%[%[([^%]%|]+)%]&amp;#039;) or wikitext:match(&amp;#039;%[%[([^%|]+)%|&amp;#039;)&lt;br /&gt;
	return {&lt;br /&gt;
		target = target or wikitext,&lt;br /&gt;
		contains_link = target ~= nil&lt;br /&gt;
	}&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function get_catmain_from_wikidata(properties)&lt;br /&gt;
	if not mWikidata then&lt;br /&gt;
		mWikidata = require(&amp;#039;Module:Песочница/grain of sand&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local values, res = {}, {}&lt;br /&gt;
	for _, property in pairs(properties) do&lt;br /&gt;
		local property_values = get_property{property = property}&lt;br /&gt;
		local i = 1&lt;br /&gt;
		while property_values[i] do&lt;br /&gt;
			values[#values + 1] = property_values[i]&lt;br /&gt;
			i = i + 1&lt;br /&gt;
		end&lt;br /&gt;
		-- values[#values + 1] = get_property{property = property, plain = true}&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if #values &amp;gt; 0 then&lt;br /&gt;
		for _, value in pairs(values) do&lt;br /&gt;
			local link_target = get_link_target(value)&lt;br /&gt;
			local title = mw.title.new(link_target.target)&lt;br /&gt;
			res[#res + 1] = {&lt;br /&gt;
				title = value, &lt;br /&gt;
				exists = title and title.exists,&lt;br /&gt;
				missed = not link_target.contains_link&lt;br /&gt;
			}&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return res&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.main(frame)&lt;br /&gt;
	local args = get_args(frame)&lt;br /&gt;
	local current_title = mw.title.getCurrentTitle()&lt;br /&gt;
	local categories = mHatnote.define_categories{&lt;br /&gt;
		by_wikidata = &amp;#039;Википедия:Категории с основной статьей из Викиданных&amp;#039;,&lt;br /&gt;
		by_pagename = &amp;#039;Википедия:Категории c искусственно сконструированной основной статьёй&amp;#039;,&lt;br /&gt;
		missed = &amp;#039;Википедия:Категории с существующей основной статьей, не указанной в Викиданных&amp;#039;&lt;br /&gt;
	}&lt;br /&gt;
	local hatnote_args = setmetatable({&lt;br /&gt;
		prefix = &amp;#039;Основная статья:&amp;#039;,&lt;br /&gt;
		prefix_plural = &amp;#039;Основные статьи:&amp;#039;,&lt;br /&gt;
		bold_links = true&lt;br /&gt;
	}, { __index = args })&lt;br /&gt;
	local overridden_categories = {}&lt;br /&gt;
	local nocat = args.nocat&lt;br /&gt;
	&lt;br /&gt;
	if current_title.namespace == category_ns_number then&lt;br /&gt;
		hatnote_args.id = &amp;#039;catmore&amp;#039;&lt;br /&gt;
		overridden_categories.red_link = &amp;#039;Википедия:Категории без основных статей&amp;#039;&lt;br /&gt;
		&lt;br /&gt;
		local first_title_exists&lt;br /&gt;
		if not hatnote_args[1] then&lt;br /&gt;
			local catmain = get_catmain_from_wikidata{&amp;#039;p301&amp;#039;, &amp;#039;p1753&amp;#039;}&lt;br /&gt;
			&lt;br /&gt;
			if #catmain &amp;gt; 0 then&lt;br /&gt;
				local missed = false&lt;br /&gt;
				for i, v in pairs(catmain) do&lt;br /&gt;
					hatnote_args[i] = v.title&lt;br /&gt;
					missed = missed or v.missed&lt;br /&gt;
				end&lt;br /&gt;
				&lt;br /&gt;
				first_title_exists = not #catmain == 1 or catmain[1].exists or missed&lt;br /&gt;
				categories:add(&amp;#039;by_wikidata&amp;#039;, nocat)&lt;br /&gt;
				if missed then&lt;br /&gt;
					categories:add(&amp;#039;missed&amp;#039;)&lt;br /&gt;
				end&lt;br /&gt;
			else&lt;br /&gt;
				hatnote_args[1] = current_title.text&lt;br /&gt;
				categories:add(&amp;#039;by_pagename&amp;#039;, nocat)&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		if first_title_exists == nil then&lt;br /&gt;
			link = mHatnote.parse_link{hatnote_args[1]}&lt;br /&gt;
			first_title_exists = not link or mw.title.new(link).exists&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		if not first_title_exists then&lt;br /&gt;
			hatnote_args.prefix = &amp;#039;У этой категории нет основной статьи —&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return mHatnote.main(hatnote_args, overridden_categories) .. categories&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Andras</name></author>
	</entry>
</feed>