You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Chrome下MediaWiki WikiEditor快捷键添加内部链接的Userscript需求

解决Chrome下MediaWiki WikiEditor内部链接快捷键问题

方法一:直接用快捷键给选中内容包裹[[ ]]

通过Tampermonkey油猴脚本实现,绑定自定义快捷键后,选中文本按下快捷键就能自动套上MediaWiki内部链接格式:

  1. 安装Chrome的Tampermonkey扩展
  2. 新建用户脚本,粘贴以下代码:
// ==UserScript==
// @name         WikiEditor Internal Link Shortcut
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  Add shortcut to wrap selected text in [[ ]] for MediaWiki WikiEditor
// @match        *://你的维基域名/*  // 替换成你实际的维基站点域名,比如 *://en.wikipedia.org/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    document.addEventListener('keydown', function(e) {
        // 绑定Ctrl+Shift+L作为快捷键,可自行修改
        if (e.ctrlKey && e.shiftKey && e.key === 'L') {
            e.preventDefault();
            const selection = window.getSelection().toString().trim();
            if (!selection) return;
            
            // 获取编辑器实例(适配WikiEditor的textarea或可视化编辑器)
            const editor = document.querySelector('#wpTextbox1') || document.querySelector('.oo-ui-textInputWidget-input');
            if (!editor) return;
            
            // 处理选中内容替换
            if (editor.tagName === 'TEXTAREA') {
                const start = editor.selectionStart;
                const end = editor.selectionEnd;
                const text = editor.value;
                editor.value = text.substring(0, start) + '[[' + selection + ']]' + text.substring(end);
                // 光标定位到链接末尾
                editor.selectionStart = editor.selectionEnd = start + 2 + selection.length;
            } else {
                // 可视化编辑器模式下替换选中内容
                const range = window.getSelection().getRangeAt(0);
                range.deleteContents();
                const linkText = document.createTextNode('[[' + selection + ']]');
                range.insertNode(linkText);
            }
        }
    });
})();
  1. 修改脚本里的@match规则,替换成你常用的维基站点域名
  2. 保存脚本后,在WikiEditor里选中文本,按下Ctrl+Shift+L就能自动生成[[选中内容]]格式的内部链接

方法二:用快捷键触发插入链接按钮

同样通过Tampermonkey脚本,绑定快捷键点击你指定的插入链接按钮:

  1. 安装Tampermonkey扩展后新建脚本,粘贴以下代码:
// ==UserScript==
// @name         WikiEditor Link Button Shortcut
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  Add shortcut to trigger WikiEditor's insert link button
// @match        *://你的维基域名/*  // 替换成实际域名
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    document.addEventListener('keydown', function(e) {
        // 绑定Ctrl+Shift+K作为快捷键,可自行修改
        if (e.ctrlKey && e.shiftKey && e.key === 'K') {
            e.preventDefault();
            // 找到目标span对应的按钮(span是按钮的子元素,所以取父元素)
            const linkIcon = document.querySelector('.oo-ui-iconElement-icon.oo-ui-icon-wikiText');
            const linkButton = linkIcon?.closest('.oo-ui-buttonElement-button');
            if (linkButton) {
                linkButton.click();
            }
        }
    });
})();
  1. 修改@match规则为你的维基站点域名
  2. 保存后,在WikiEditor里按下Ctrl+Shift+K就能直接触发插入链接的弹窗/面板

注意事项

  • 快捷键可自行修改脚本里的按键组合,比如把e.key === 'L'改成其他字母
  • 如果你的WikiEditor是可视化模式(而非纯文本),方法一的可视化编辑器部分可能需要根据站点实际情况微调

内容的提问来源于stack exchange,提问作者greektranslator

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 15:00:11