Для документации этого модуля может быть создана страница Модуль:Отексте/ТСД3/Документация

local p = {};
p.type = "join"; -- дополнения интегрированы в осн. статьи, раздельная навигация

-- Строки --------------------------------------------------------------------------------------
p.wordlist = { default = "ТСД-словник" }; -- оглавление словника

-- Для индексов
p.indexpat = { "Толковый словарь. Том %s.djvu " };
p.scanpat = { 
	"[https://ru.wikisource.org/w/index.php?title=Страница:Толковый_словарь._Том_%s.djvu/%u %s]",
};
p.scan4index = true; -- использовать ли volumes[n].scan вместо volumes[n].index
p.transclude = true; -- загружать ли текст статьи из индекса
p.transclude_onlysection = true;
p.section_mod = { [true] = "", [false] = "+" };

-- Прочее
-- вместо автора
p.noauthor = {
	[false] = "[[Толковый словарь живого великорусского языка|Толковый словарь живого великорусского языка]] [[Владимир Иванович Даль|Владимира Даля]]", 
	[true]  = "[[Толковый словарь живого великорусского языка|Толковый словарь живого великорусскаго языка]] [[Владимир Иванович Даль|Владиміра Даля]]" 
};
-- для нижнего колонтитула
p.override = {
	[false] = "[[ТСД]]",
	[true]  = "[[ТСД]]"
};

-- категории
p.maincat = { 
	[true] = "[[Категория:ТСД по алфавиту]][[Категория:ТСД:Дореформенная орфография]]", 
	[false] = "[[Категория:ТСД по алфавиту]][[Категория:ТСД:Современная орфография]]" 
};
p.alphacat = { [true] = "[[Категория:ТСД:", [false] = "[[Категория:ТСД:" };

p.other = { [false] = " • В 3-м издании [[ТСД3/Предварительное объяснение|в квадратных скобках]] — [[ТСД3/Предисловие к 1-му выпуску|добавления]] редактора [[Иван Александрович Бодуэн де Куртенэ|И. А. Бодуэна де Куртенэ]]" };
-- [[ТСД3/Предисловие к 1-му выпуску|Добавления]] редактора [[Иван Александрович Бодуэн де Куртенэ|И. А. Бодуэна де Куртенэ]] в 3-м изд. [[ТСД3/Предварительное объяснение|размещ. в квадр. скобках]]
p.wpsearch = true; -- если нужна ссылка на w:Special:Search/
p.rnum = "с. "; -- с./стлб.

-- Таблицы -----------------------------------------------------------------------------------------
-- Для типа join - несколько элементов (main, supplement etc.) со сборкой в body:


p.tsd3 = {
	cat = "[[Категория:ТСД:Статьи из 3-го издания]]",
	catnopage = "[[Категория:ТСД:3-е издание, не указана страница книги]]",
	listroot = { default = "ТСД-словник/3/" }, -- префикс секций словника
	-- subtitle = { [true] = "3 изданіе", [false] = "3 издание" },
	-- skipnav = true, -- не использовать для навигации	
	rnum = "стлб. ", -- в 3 издании столбцы
	
	-- Селектор секций
	listnum = {
		{ "Ё", { "Е" } },
		{ "А", { "А" } },
		{ "Б", { "Б", "Би" } },
		{ "Би", { "Би" } },
		{ "В", { "В", "Вы", "Во" } },
		{ "Во", { "Во" } },
		{ "Вы", { "Вы" } },
		{ "Г", { "Г" } },
		{ "Д", { "Д", "Дон" } },
		{ "Дон", { "Дон" } },
		{ "Е", { "Е", "Ѣ" } },
		{ "Ж", { "Ж" } },
		{ "З", { "З", "Заст" } },
		{ "Зал", { "Зал", "Заст" } },
		{ "Заст", { "Заст" } },
		{ "И", { "И", "І", "Ѵ", "Изу" } },
		{ "Изу", { "Изу", "И", "І", "Ѵ" } },
		{ "Й", { "И", "І", "Ѵ" } },
		{ "К", { "К", "Кор" } },
		{ "Ки", { "Ки" } },
		{ "Кор", { "Кор" } },
		{ "Л", { "Л" } },
		{ "М", { "М" } },
		{ "Н", { "Н", "Нар" } },
		{ "Нак", { "Нак" } },
		{ "Нар", { "Нар" } },
		{ "Не", { "Не" } },
		{ "О", { "О", "Обц" } },
		{ "Обц", { "Обц", "О" } },
		{ "Ор", { "Ор", "Ото", "О" } },
		{ "Ото", { "Ото", "О" } },
		{ "П", { "П", "Перел", "Прор" } },
		{ "Пи", { "Пи" } },
		{ "Под", { "Под", "Подт" } },
		{ "Пок", { "Пок" } },
		{ "Поо", { "Поо" } },
		{ "Пор", { "Пор" } },
		{ "Пот", { "Пот", "Приг", "Прор" } },
		{ "Про", { "Про", "Прор" } },
		{ "Р", { "Р" } },
		{ "Расп", { "Расп", "Р" } },
		{ "С", { "С", "Сп" } },
		{ "Сл", { "Сл" } },
		{ "Сп", { "Сп" } },
		{ "Т", { "Т" } },
		{ "У", { "У" } },
		{ "Ф", { "Ф", "Ѳ" } },
		{ "Х", { "Х" } },
		{ "Ц", { "Ц" } },
		{ "Ч", { "Ч" } },
		{ "Ш", { "Ш" } },
		{ "Щ", { "Щ" } },
		{ "Ъ", { "Ъ-Ы-Ь" } },
		{ "Ы", { "Ъ-Ы-Ь" } },
		{ "Ь", { "Ъ-Ы-Ь" } },
		{ "Э", { "Э" } },
		{ "Ю", { "Ю", "Ѧ" } },
		{ "Я", { "Я" } },
	},
	
	-- Заголовки словников
	wordlists = {},
	-- вычисляются из wordlists (ниже)
	
	-- Словник в том
	wl2volume = {
		{ from = "А", to = "Заст", volume ="1" },
		{ from = "І", to = "І", volume ="2" },
		{ from = "И", to = "Ото", volume ="2" },
		{ from = "П", to = "Расп", volume ="3" },
		{ from = "С", to = "Я", volume ="4" },
		{ from = "Ѣ", to = "Ѵ", volume ="4" },
	},	

	-- Заголовки томов
	volumes = {
		["1"] = {
			[false] = "т. 1 (3-е изд., 1903)",
			[true]  = "т. 1 (3-е изд., 1903)", 
			scan = { "1_(Даль_1903)", 1 },
			map = { { 1, 18 } },
			offsets = { { from = 1, to = 10000, offset = 17 }, },
			factor = 2,
			correction = 0,
			cat = "[[Категория:ТСД3:1 том]]",
		},
		["2"] = { 
			[false] = "т. 2 (3-е изд., 1905)", 
			[true]  = "т. 2 (3-е изд., 1905)", 
			scan = { "2_(Даль_1905)", 1 },
			map = { { 1, 3 } },
			offsets = { { from = 1, to = 10000, offset = 2 }, },
			factor = 2,
			correction = 0,
			cat = "[[Категория:ТСД3:2 том]]",
		},
		["3"] = { 
			[false] = "т. 3 (3-е изд., 1907)", 
			[true]  = "т. 3 (3-е изд., 1907)", 
			scan = { "3_(Даль_1907)", 1 },
			map = { { 1, 3 } },
			offsets = { { from = 1, to = 10000, offset = 2 }, },
			factor = 2,
			correction = 0,
			cat = "[[Категория:ТСД3:3 том]]",
		},
		["4"] = { 
			[false] = "т. 4 (3-е изд., 1909)", 
			[true]  = "т. 4 (3-е изд., 1909)", 
			scan = { "4_(Даль_1909)", 1 },
			map = { { 1, 5 } },
			offsets = { { from = 1, to = 10000, offset = 4 }, },
			factor = 2,
			correction = 0,
			cat = "[[Категория:ТСД3:4 том]]",
		},
	},
}

local wordlists = {
	"А", "Б", "Би",	"В", "Во", "Вы", "Г", "Д", "Дон", "Е", "Ж", "З", "Зал", "Заст",
	"И", "Изу", "І,Ѵ", "К", "Ки", "Кор", "Л", "М", "Н", "Нак", "Нар", "Не", "О", "Обц", "Ор", "Ото",
	"П", "Перел", "Пи", "Под", "Подт", "Пок", "Поо", "Пор", "Пот", "Приг", "Про", "Прор",
	"Р", "Расп", "С", "Сл", "Сп", "Т", "У", "Ф", "Х", "Ц", "Ч", "Ш", "Щ", "Ъ-Ы-Ь", "Ѣ", "Э", "Ю", "Ѧ", "Я", "Ѳ",
}

for _, v in ipairs(wordlists) do p.tsd3.wordlists[v] = {}; p.tsd3.wordlists[v][true] = v; p.tsd3.wordlists[v][false] = v end

p.body = { p.tsd3 }; -- сборка
p.reversenav = true; -- навигация в обратном порядке
p.jointitles = 2; -- объединять названия из разных словников

----------------------------------------------------------------------------------------------------

return p