Módulo:Texto simples

Fonte: Enciclopédia de conhecimento da Igreja de Deus
Saltar para a navegação Saltar para a pesquisa

A documentação para este módulo pode ser criada na página Módulo:Texto simples/doc

--converte texto com wikilinks em texto simples, por exemplo, "[[foo|gah]] é [[bar]]" para "gah é bar"
--remove qualquer coisa incluída em marcações (tags) que não esteja aninhada, marcadores de faixa de mediawiki (referências, etc.), arquivos, marcações em itálico e negrito
require[[strict]]
local p = {}
function p.main(frame)
	local text = frame.args[1]
	local encode = require('Módulo:Yesno')(frame.args.encode)
	return p._main(text, encode)
end
function p._main(text, encode)
	if not text then return end
	text = mw.text.killMarkers(text)
		:gsub(' ', ' ') --substitui os espaços "nbsp" por espaços regulares
		:gsub('<br ?/?>', ', ') --substitui o "br" por vírgulas
		:gsub('<span.->(.-)</span>', '%1') --remove os "spans" enquanto mantém o texto dentro
		:gsub('<i.->(.-)</i>', '%1') --remove o itálico enquanto mantém o texto dentro
		:gsub('<b.->(.-)</b>', '%1') --remove o negrito enquanto mantém o texto dentro
		:gsub('<em.->(.-)</em>', '%1') --remove a ênfase enquanto mantém o texto dentro
		:gsub('<strong.->(.-)</strong>', '%1') --remove os "strongs" enquanto mantém o texto dentro
		:gsub('<sub.->(.-)</sub>', '%1') --remove a marcação de subscrito; mantém o conteúdo
		:gsub('<sup.->(.-)</sup>', '%1') --remove a marcação de sobrescrito; mantém o conteúdo
		:gsub('<u.->(.-)</u>', '%1') --remove a marcação de sublinhado; mantém o conteúdo
		:gsub('<.->.-<.->', '') --remove as marcações (tags) restantes e o texto interno
		:gsub('<.->', '') --remove qualquer outra marcação de tag
		:gsub('%[%[%s*[Ff][Ii][Ll][Ee]%s*:.-%]%]', '') --remove os arquivos
		:gsub('%[%[%s*[Ff][Ii][Cc][Hh][Ee][Ii][Rr][Oo]%s*:.-%]%]', '') --remove os arquivos
		:gsub('%[%[%s*[Ii][Mm][Aa][Gg][Ee]%s*:.-%]%]', '') --remove o uso de imagem:
		:gsub('%[%[%s*[Ii][Mm][Aa][Gg][Ee][Mm]%s*:.-%]%]', '') --remove o uso de imagem:
		:gsub('%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Yy]%s*:.-%]%]', '') --remove categorias
		:gsub('%[%[%s*[Cc][Aa][Tt][Ee][Gg][Oo][Rr][Ii][Aa]%s*:.-%]%]', '') --remove categorias
		:gsub('%[%[[^%]]-|', '') --remove texto de ligação (link) canalizado
		:gsub('([^%[])%[[^%[%]][^%]]-%s', '%1') --remove texto de ligação (link) externa
		:gsub('^%[[^%[%]][^%]]-%s', '') --remove texto de ligação (link) externa
		:gsub('[%[%]]', '') --em seguida, retira o "[" e o "]" restante
		:gsub("'''''", "") --remove marcações de negrito e itálico
		:gsub("'''?", "") --sem remover '''' fornece a saída correta para texto em negrito entre aspas
		:gsub('----+', '') --remove linhas "----" 
		:gsub("^%s+", "") --remove os espaços iniciais
		:gsub("%s+$", "") --e os espaços finais (à direita)
		:gsub("%s+", " ") --remove os espaços redundantes
	if encode then
		return mw.text.encode(text)
	else
		return text
	end
end
return p