跳转到内容

User:微肿头龙/外文重定向.js

维基百科,自由的百科全书
注意:保存之后,你必须清除浏览器缓存才能看到做出的更改。Google ChromeFirefoxMicrosoft EdgeSafari:按住⇧ Shift键并单击工具栏的“刷新”按钮。参阅Help:绕过浏览器缓存以获取更多帮助。
// <nowiki>
/* vim: set noexpandtab ft=javascript ts=4 sw=4: */

mw.loader.using(['ext.gadget.ToolsRedirect'], function() {
    "use strict";

    var langMap = {
    	'ab': '阿布哈兹语重定向',
    	'ar': '阿拉伯语重定向',
    	'cs': '捷克语重定向',
    	'da': '丹麦语重定向',
    	'de': '德语重定向',
        'en': '英语重定向',
        'es': '西班牙语重定向',
        'fi': '芬兰语重定向',
        'fr': '法语重定向',
        'hu': '匈牙利语重定向',
        'it': '意大利语重定向',
        'ja': '日语重定向',
        'ka': '格鲁吉亚语重定向',
        'ko': '韩语重定向',
//        'la': '拉丁语重定向', // 会导致学名重定向也被加入此重定向
        'lt': '立陶宛语重定向',
        'mn': '蒙古语重定向',
        'ms': '马来语重定向',
        'nl': '荷兰语重定向',
        'no': '挪威语重定向',
        'pl': '波兰语重定向',
        'pt': '葡萄牙语重定向',
        'ro': '罗马尼亚语重定向',
        'ru': '俄语重定向',
        'sv': '瑞典语重定向',
        'tr': '土耳其语重定向',
        'uk': '乌克兰语重定向',
        'uz': '乌兹别克语重定向',
        'vi': '越南语重定向'
    };

    var tr = mw.toolsRedirect;
    var processedTitles = {};

    tr.findRedirectCallback(function(pagename, $content) {
        var retTitles = [];

        $content.find('span[lang]').each(function() {
            var $this = jQuery(this);

            if ($this.closest('.ilh-all, .ilh-comment').length > 0) {
                return;
            }
            
            var title = jQuery(this).text().trim();
            var langCode = jQuery(this).attr('lang');

            if (langMap[langCode]) {
                var redirectTemplate = '{{' + langMap[langCode] + '}}';

                if (!processedTitles[title]) {
                    processedTitles[title] = true;
                    retTitles.push(title);

                    tr.setRedirectTextSuffix(title, '\n' + redirectTemplate);
                }
            }
        });

        return jQuery.unique(retTitles);
    });
});
// </nowiki>