// Mantenha a linha abaixo. Ela é usada para conferir o uso global do script por meio da página ]
// ] (ver ])
/*jslint browser: true, regexp:true, white: true */
/*global mw */
if ( window.LanguageConverter === undefined ) {
	window.LanguageConverter = {};
}
// Define as configurações específicas para a Wikipédia
window.LanguageConverter.config = {
	msg: {
		error_missing_dict	 : 'Não foi encontrado o seguinte dicionário: ',
		error_missing_dict_name  : 'É necessário definir o nome da página do dicionário para ',
		error_word_processing	 : 'Houve um erro ao processar esta palavra: ',
		error_typo_processing	 : 'Ocorreu um erro ao processar a seguinte alteração tipográfica:\n',
		help_page_link		 : 'Página de ajuda',
		show_changes_link	 : 'Mostrar alterações',
		hide_changes_link	 : 'Ocultar alterações',
		menu_title		 : 'Variantes'
	},
	word_chars : 'a-zA-Z0-9áàâãçéêíñóôúüáÁÀÂÃÇÉÊÍÑÓÔÕÚ\'ºª\\-§',
	typo_changes : {
		'pt-br': [
			,
			,
			)/g, 'ê$1' ],
			)/g, 'ô$1' ],
			?) de (abril|(?:(?:jan|fever)eir|ma(?:rç|i)|juh|agost|(?:outu|(?:set|nov|dez)em)br)o)/g, ' em $1 de $2' ],
			)e\(c\)ção/g, '$1eção' ]
                       
		],
		'pt-pt': [
// Acentuação 
			)ü()/g, '$1u$2' ],
			,
			,
			,
            )/g, 'é$1' ],
			)/g, 'ó$1' ],
// Tentativas de dupla versão pouco estéticas
                        )e\(c\)ç(ão|ões)/g, '$1ecç$2' ],
                        )ire\(c\)tor(?s?)/g, '$1iretor$2' ],
                        olonês\/(olaco)/g, '$1'],
                        )egist\(r\)o(s?)/g, '$1egisto$2'],
                        )a\(c\)to(s?)/g, '$1acto$2'],
                        )anadense\/anadian(oa)/g,'$1anadian$2'],
                        anadian(oa)\/()anadense/g,'$1anadian$2'],
// Datas
			bril|(?:(?:an|ever)eir|a(?:rç|i)|uh|gost|(?:utu|(?:et|ov|ez)em)br)o)/g, 'A $1 de $2' ],
			bril|(?:(?:an|ever)eir|a(?:rç|i)|uh|gost|(?:utu|(?:et|ov|ez)em)br)o)/g, 'a $1 de $2' ],
// Verbos e derivados
                        )(lun|mar|terr)iss/g, '$1$2'], // Ver em "anist"
                        )nist/g, '$1mnist'], // Grupo de letras grande o suficiente para não haver falsos positivos
                        ?|v|sse|n?d))(?:??))/g, 'verific$1'], // "checa" e "cheque" excluídos 
                        )ontat/g, '$1ontact'], // Grupo de letras grande o suficiente para não haver falsos positivos
                        )ecol((?:|ou)(?:r?|v|sse|n?d|ge)???)/g, '$1escol$2'],
                        )erencia?((?:a|r?|sse|n?d)??)\b/g, '$1eri$2'],
                        )erencia(m)?\b/g, '$1ere$2'],
                        )erencie(m)?/g, '$1ira$2'],                         
                        )erenciou/g, '$1eriu'],
                        )ndeniz/g, '$1ndemniz'], // Grupo de letras grande o suficiente para não haver falsos positivos
                        |ou)(?:i|r?|v|sse|n?d|ge)???)/g, 'decap$1'],
                        )lanej((?:|ou)(?:i|r?|v|sse|n?d|ment)???)/g, '$1lane$2'],
                        )lane?(m?)\b/g, '$1lanei$2'],
                        )egistr/g, '$1egist'], // Ver em "indeniz"
                        )evisa((?:r|nd)?)/g, '$1eve$2'],
                        )evisa?((?:r|sse|nd)?m?)/g, '$1evi$2'],
                        )evisad(?s?)/g, '$1evist$2'],
                        )evisa/g, '$1evê'],
                        )evisam/g, '$1eveem'],
                        )evise(m)?/g, '$1eveja$1'],                         
                        )evisou/g, '$1eviu'],
// Variação em género e número
                        )ceit(o)/g, '$1ceite$3'],
                        (s?)/g, 'talhante$1'],
                        )marronzad(?s?)/g, '$1castanhad$2'],
                        s?)/g, 'quotidian$1'],
                        )ublador(?s?)/g, '$1obrador$2'],
                        esportiv(?s?)/g, 'desportiv$1'],
                        s?)/g, 'isabelin$1'],
                        )erenciador(?s?)/g, '$1estor$2'],
                        (md)/g, 'h$1'], // Ver em "indeniz" 
                        )ajoritári(s?)/g, '$1aioritári$2'],
                        s?)/g, 'palestinian$1'], // Excluída "Palestina" (país)
                        )údit(s?)/g, '$1úbdit$2'],
                        s?)/g, 'c$1'],
// Expressões envolvendo palavras invariáveis em pt-br 
                        ?)(s?)(\s\w**\w*)? canadense(s)?/g, '$1$2 $3 canadian$2'],
                        ?)(s?)(\s\w**\w*)? estad(o\-)?unidense(s)?/g, '$1$2 $3  norte-american$2'],
                        ?)(s?)(\s\w**\w*)? marros?/g, '$1$2 $3 castanh$2'],
//Correcções às regexes anteriores no que diz respeito a palavras como "canadianO" ou "castanhà"
//Qualquer palavra terminada em "à" é erro ortográfico, por isso pode-se até estar a corrigir algo,
//ou quando muito, trocar um erro, por outro.
                         (s*)/g, '$1a$2'],
                         )A(s*)/g, '$1a$2'], 
                         )O(s*)/g, '$1o$2'], 
// Expressões envolvendo mudança de género   e outros caso
                        om\s||ara\s|el)o(s)? experimento?/g, '$1a$2 experiência$2'],
                         experimento(s?)/g, 'a$1 experiência$1'],
                         experimento(s?)/g, 'à$1 experiência$1'],
                         experimento(s?)/g, 'A$1 experiência$1'], 
                         experimento(s?)/g, 'À$1 experiência$1'], 
                        |om|e|m|ara|or) experimentos/g, '$1 experiências'],  
                        |oi|ão|oram|er(á|ão)) aceita(s?)/g, '$1 aceite$2'],
                        
//Pronomes pessoais
                        om|ara|em) (seu)(s?)/g, '$1 o$3 $2$3'],
                        )(e) (seu)(s?)/g, '$1o$4 $3$4'],
                        )(or) (seu)(s?)/g, '$1elo$4 $3$4'],
                        om|ara|em) (sua)(s?)/g, '$1 a$3 $2$3'],
                        )(e) (sua)(s?)/g, '$1a$4 $3$4'],
                        )(or) (sua)(s?)/g, '$1ela$4 $3$4']

]
           
	},
	variants_list : {
		'pt':'Texto original',
		'pt-br':'Português do Brasil',
		'pt-pt':'Português de Portugal'
	},
	ns_list : {
		'0': true, // Main
		'2': true, // User
		'4': true, // Project
		'10': true, // Template
		'14': true, // Category
		'100': true, // Portal
		'102': true // Anexo
	},
	local_dic_id : {
		'pt':'conv-idiomas',
		'pt-ao':'dic-local-AO',
		'pt-br':'dic-local-BR',
		'pt-pt':'dic-local-PT',
		'gl':'dic-local-GL'
	},
	global_dic_page : {
		'pt-ao':'Project:Dicionário/pt-AO',
		'pt-br':'Project:Dicionário/pt-BR',
		'pt-pt':'Project:Dicionário/pt-PT',
		'gl':'Project:Dicionário/gl'
	},
	help_page : 'Wikipedia:Conversor de idiomas',
	show_changes : true,
	show_menu_title : true,
	selection_mode: 'OR',
	max_seq : 3
}; // Config

// Importa uma cópia local de https://github.com/he7d3r/mw-gadget-LanguageConverter para permitir a conversão de idiomas
mw.loader.load( '//pt.wikipedia.org/w/index.php?title=User:Japf/Scripts/LanguageConverter.js&action=raw&ctype=text/javascript' );

// ]