User:沒有羽翼的格雷塔/common.js
注意:在您儲存之後您必須清除瀏覽器快取才可看到最新的變動。
- Firefox / Safari:按住「Shift」時點選「重新整理」,或按「Ctrl-F5」或「Ctrl-R」 (Mac則為「⌘-R」)
- Google Chrome:按「Ctrl-Shift-R」 (Mac 則為「⌘-Shift-R」)
- Internet Explorer:按住「Ctrl」時點選「重新整理」,或按「Ctrl-F5」
- Opera:進入「工具→偏好設定」中清除快取。
- 如果您已登入但該頁面出現未登入狀態,請嘗試在網址列的URL最後新增代碼
?_=1
來訪問最新頁面。
該用戶是一名GitHub 用戶其ID是 Mustafabot |
僅列舉部分個人強烈推薦使用的js和個人改造的js,本人設置具體參見User:沒有羽翼的格雷塔/common.js,反饋請到我的討論頁。
一鍵插入
- 由於本站強大的WAF,該插件的改造版無法直接保存在站內,改造後須經站外渠道引入。
增加了快速MAR的個人自用版
(雖然已經沒啥用了……) 在common.js中插入:[1]
- mw.loader.load("//testingcf.jsdelivr.net/gh/Mustafabot/js-MoegirlPedia/QuickInsert.min.js");
批量編輯(MassEdit)
阿熊妙妙小工具,還不來試嗎?
Wikiplus
站內小工具就有,不過穩定吃驗證碼,這裡建議使用-{Dreammu}-[更多]的修復版(WikiplusSP):
- mw.loader.load("/index.php?title=User:Dreammu/WikiplusSP.js&action=raw&ctype=text/javascript");
Wikiplus代碼高亮
- mw.loader.load('https://cdn.jsdelivr.net/npm/wikiplus-highlight');
歌詞注音
U:屠麟傲血/lyricRuby.js,現已支持MoeSkin。
- 本小工具改造自User:東東君/js/ruby.js,使用vue創建對話框
- 新增了標記歌詞中特殊讀音的功能,同時修改複製歌詞功能實現方式
- 1.38+可以使用mediawiki自帶的vue3模塊,小工具版本參見 https://github.com/fallenice2022/moeGadget/blob/main/gadgets/lyricRuby
- 使用本小工具前請先去除個人js中對User:東東君/js/ruby.js的引用,因為我懶得改class和id名稱
更新日誌:
- 2024.9.24(Special:diff/7657702):
- 增加了moeskin下按鈕
- 更換了vue的cdn
已知bug:
MoeSkin下特殊注音功能無法正常使用。已於2024.10.2修復- 與Monaco編輯器衝突。
不過可以複製粘貼,影響不大
快速撤銷
基於User:Nzh21/js/QuickUndo.js改造而來:
- mw.loader.load("//fastly.jsdelivr.net/gh/Mustafabot/js-MoegirlPedia/QuickUndo.min.js");
- +半自動標籤;
- +不改變監視狀態;
- +小編輯;
- 修改編輯摘要。
但是……
其實星海的工具也能用,雖然只能在用戶貢獻頁面,但是除了撤銷還有回退/版本刪除:
- mw.loader.load("//testingcf.jsdelivr.net/gh/lovelyCARDINAL/wikitool/massRollback.min.js");
非鏈入使用檢測
維護人員必備的妙妙小工具,就是誤報率有點高,建議insource搜索一遍。
Dreammu小工具
自動查詢非鏈入使用,雖然可以偷懶,但多開有很大的被WAF風險。(腳本在共享站,共享站使用不需要額外加域名)
- mw.loader.load('/index.php?title=User:Dreammu/FileUsedNotLinkedAutoload.js&action=raw&ctype=text/javascript');
防止誤回退
似乎效果不佳 |
---|
快速填寫移動理由
在移動頁面時快速填寫理由。(來自U:BearBin/common.js,請在“reasons”數組內自行增刪改理由)
- if (mw.config.get("wgCanonicalSpecialPageName") === "Movepage") {
- var reasons = [
- ["理由1鏈接顯示文字","理由1填入框內內容"],
- ["理由2"],
- ];
- $("#wpReason").after($('<div id="move-reason" style="margin-top: .3em"></div>')
- .append(reasons.map(function (reason) {
- return $('<a title="' + (reason[1] || reason[0]) + '">' + reason[0] + '</a>').on("click", function () {
- $("#wpReason input").val(reason[1] || reason[0]);
- });
- }).reduce(function (acc, cur, index) {
- if (index !== 0) {
- acc.push("丨");
- }
- return acc.concat(cur);
- }, [])));
- }
Cat-a-lot
基於餵雞共享同名插件的4.77版:
- 受api限制,僅限維護人員/機器人/機器用戶使用。
- 測試中,有已知bug。
- 共享站有同名的js鏡像,在共享站調用時無需修改調用鏈接。
- mw.loader.load("/index.php?title=User:穆斯塔法凱末爾/Cat-a-lot.js&action=raw&ctype=text/javascript");
配套的css:
- @import url('//testingcf.jsdelivr.net/gh/Mustafabot/js-MoegirlPedia/Cat-a-lot.min.css');
- 已知bug:
- “參數設置”無法正常使用。(待修)
- 臨時解決辦法:在個人js中添加設置代碼:
- window.catALotPrefs = {"disambig_category":"消歧義分類","redir_category":"已重定向的分類","watchlist":"nochange","minor":true,"editpages":true,"docleanup":false,"subcatcount":50,"uncat":false,"button":false};
- disambig_category:消歧義分類名稱,萌百的全部消歧義分類皆在Category:消歧義分類下;
- redir_category:重定向分類名稱,萌百的全部重定向分類皆在Category:已重定向的分類下;
- watchlist:編輯頁面的監視列表選項;
- minor:將編輯標記為小修改(如果您在系統參數設置中已設置將所有編輯標記為小修改,此選項不會對現有行為進行改動),默認為false;
- editpages:允許對不是文件的頁面和子分類進行分類操作,默認為false;
- docleanup:移除{{Check categories}}並進行其他細節清理,此項設置為false即可,萌百無此模板,不需要該功能;
- subcatcount:最多顯示的子分類數量,不建議超過50個。
- uncat:移除{{Uncategorized}},萌百無此模板,保持false即可;
- button:以按鈕取代文字,默認為true。[2]
輸入分類名後必須回車,移動端打不出回車導致無法正常使用。(維基共享也沒修好這個bug,但是AI幫我修好了)有不小概率操作失敗,請刷新重試。(已修復)- 分類名含不可見字符時編輯出錯:“找不到分類”
Inspector
- 主頁面:U:Bhsd/Inspector
熱修復版,修復了Wikiplus同款bug。
- mw.loader.load("//fastly.jsdelivr.net/gh/Mustafabot/js-MoegirlPedia/Inspector.min.js");
DisamAssist
引入自zhwp:User:暁月凜奈/DisamAssist.js,測試中,尚待更多適應性修改。
- mw.loader.load("/index.php?title=User:穆斯塔法凱末爾/DisamAssist.js&action=raw&ctype=text/javascript");
- @import url('/index.php?title=User:穆斯塔法凱末爾/DisamAssist.css&action=raw&ctype=text/css');
修改配置:複製上述文件源碼後自行修改。
批量檢測文件全域用途
Claude 3.7 Sonnet新鮮出爐,純AI幾乎無人工,快來嘗一下罷
- mw.loader.load("//fastly.jsdelivr.net/gh/Mustafabot/js-MoegirlPedia/MassGlobalUsageChecker.min.js");
神秘bug:有概率無法正常加載,清除緩存後可解決。
註釋與外部鏈接
let namespace = mw.config.get("wgNamespaceNumber"),
pageName = mw.config.get('wgPageName');
_addText = "{{Documentation|User:沒有羽翼的格雷塔/js}}";
//mw.loader.load(['ext.gadget.moeskin-classic']);
mw.loader.load("//wiki.biligame.com/tools/MediaWiki:DiffTool.js?action=raw&ctype=text/javascript");
//mw.loader.load('//zh.wikipedia.org/w/load.php?modules=ext.gadget.Navigation_popups'); // [[enwp:Tools/Navigation popups]],但從zhwp引入,臨時措施
window.inspector = {
summary: "//[[U:Bhsd/Inspector|Inspector]]",
variants: true,
replace: true,
resizable: true,
entity: true,
diff: true
};
if (mw.config.get( 'skin' ) == 'vector-2022') {
mw.loader.using( 'mediawiki.util' ).then(function() {
$(mw.util.addPortletLink('p-cactions', '#', 'Inspector')).click(function(e) {
e.preventDefault();
this.remove();
mw.loader.load('//fastly.jsdelivr.net/gh/Mustafabot/js-MoegirlPedia/Inspector.min.js');
});
});
}
mw.loader.load('//www.qiuwenbaike.cn/load.php?modules=ext.gadget.JSX');
mw.loader.load('//www.qiuwenbaike.cn/load.php?modules=ext.gadget.Util');
mw.loader.load('//www.qiuwenbaike.cn/load.php?modules=ext.gadget.ToolsRedirect');
mw.loader.load('//www.qiuwenbaike.cn/load.php?modules=ext.gadget.ToolsRedirect-opt-bolds');
mw.loader.load("//fastly.jsdelivr.net/gh/BearBin1215/MoegirlPedia@master/dist/gadgets/ExportXML.min.js");
window.ExportXML = true;
mw.loader.load("//fastly.jsdelivr.net/gh/lovelyCARDINAL/wikitool/massRollback.min.js");
mw.loader.load("//fastly.jsdelivr.net/gh/Mustafabot/js-MoegirlPedia/Wikiplus-api.min.js");
mw.loader.load("//fastly.jsdelivr.net/gh/Mustafabot/js-MoegirlPedia/MarkBlocked.min.js");
mw.loader.load("/index.php?title=User:穆斯塔法凱末爾/Cat-a-lot.js&action=raw&ctype=text/javascript");
mw.loader.load("/index.php?title=User:沒有羽翼的格雷塔/DisamAssist.js&action=raw&ctype=text/javascript");
mw.loader.load("/index.php?title=User:屠麟傲血/lyricRuby.js&action=raw&ctype=text/javascript");
//mw.loader.load("//fastly.jsdelivr.net/gh/Mustafabot/js-MoegirlPedia/DisamAssist.min.js");
window.catALotPrefs = {"watchlist":"preferences","minor":true,"editpages":true,"docleanup":false,"subcatcount":10};
//mw.loader.load("//fastly.jsdelivr.net/gh/Mustafabot/js-MoegirlPedia/MassEditWithWarning.min.js");
if (mw.config.get("wgNamespaceNumber") === -1) { // 此處為MediaWiki名字空間編號,可參見[[Help:名字空間]]
switch (mw.config.get("wgTitle")) {
case "MassEdit":
mw.loader.load("/index.php?title=User:BearBin/js/MassEdit.js&action=raw&ctype=text/javascript"); // 僅在訪問Special:MassEdit時加載批量編輯工具
break;
case "TextDiff":
mw.loader.load("//fastly.jsdelivr.net/gh/BearBin1215/MoegirlPedia@master/dist/gadgets/TextDiff.min.js");
}
} else if (mw.config.get("wgNamespaceNumber") === 2) {
mw.loader.load("/index.php?title=User:SaoMikoto/js/DraftToMain.js&action=raw&ctype=text/javascript"); // 僅在用戶名字空間下加載本快速移動工具
} else {
switch (mw.config.get("wgAction")) {
case "edit":
case "submit":
mw.loader.load("//fastly.jsdelivr.net/gh/BearBin1215/MoegirlPedia@master/dist/gadgets/CtrlS.min.js"); // 僅在動作為“edit”或“submit”時啟用Ctrl+S快速保存工具
break;
case "view":
mw.loader.load("//fastly.jsdelivr.net/gh/BearBin1215/MoegirlPedia@master/dist/gadgets/ShowContributors.min.js"); // 僅在動作為“view”時啟用頁面貢獻者統計工具
break;
}
}
// 由於Special頁面的工具並非全局啟用,需額外添加側邊欄快速入口
[
["MassEdit", "批量編輯"],
["TextDiff","文本差異比較"], // 可自行添加
].forEach(function (gadget) {
if (mw.config.get("wgTitle") !== gadget[0]) {
mw.loader.using("mediawiki.util").then(function () {
mw.util.addPortletLink("p-tb", "/Special:" + gadget[0], gadget[1], "t-" + gadget[0].toLowerCase());
});
}
});
/** InPageEdit Preferences */
(window.InPageEdit = window.InPageEdit || {}).myPreference = {
"doNotCollectMyInfo": false,
"editMinor": false,
"editSummary": "$section//[[U:機智的小魚君/InPageEdit|InPageEdit]] $oldid",
"lockToolBox": false,
"redLinkQuickEdit": false,
"outSideClose": false,
"watchList": "preferences",
"noConfirmEdit": false,
"plugins": [
"toolbox.js",
"edit-any-page.js",
"quick-thank.js",
"code-mirror/cm6.js",
"color-preview.js",
"fix-double-entrance.js",
"https://wiki.biligame.com/tools/MediaWiki:DiffTool.js?action=raw&ctype=text/javascript",
]
}
if (mw.config.get("wgCanonicalSpecialPageName") === "Movepage") {
const reasons = [
["編寫完成"],
["編寫基本完成"],
["名從主人(官方名稱優先)"],
["應當消歧義"],
["命名錯誤"],
["常用名稱"],
["不留特殊符號"],
["無需消歧義"]
];
$("#wpReason").after($('<div id="move-reason" style="margin-top: .3em"></div>')
.append(reasons.map(function (reason) {
return $('<a title="' + (reason[1] || reason[0]) + '">' + reason[0] + '</a>').on("click", function () {
$("#wpReason input").val(reason[1] || reason[0]);
});
}).reduce(function (acc, cur, index) {
if (index !== 0) {
acc.push("丨");
}
return acc.concat(cur);
}, [])));
}
mw.loader.load("//fastly.jsdelivr.net/gh/BearBin1215/MoegirlPedia@master/dist/gadgets/ListEnhancer.min.js");
mw.loader.load('//fastly.jsdelivr.net/gh/BearBin1215/MoegirlPedia@master/dist/gadgets/TableExporter.min.js');
mw.loader.load('/index.php?title=User:AnnAngela/js/userStatus.js&action=raw&ctype=text/javascript');
mw.loader.load('/index.php?title=User:AnnAngela/js/Music163Lrc.js&action=raw&ctype=text/javascript');
// Wikiplus
mw.loader.load("//fastly.jsdelivr.net/gh/BearBin1215/wikiTools@master/Wikiplus/Wikiplus-replace.min.js");
window.WPSummary = [
"修正筆誤",
"修正事實錯誤",
"內部鏈接",
"內容擴充",
"去除表達歧義",
"消歧義",
"排版",
{
name:"noinclude前後多餘換行",
detail:"noinclude前後多餘換行會嵌入,導致排版混亂",
},
{
name:"MoeSkin下顯示異常",
detail:"[[MGP:MoeSkin|MoeSkin]]下顯示異常",
},
{
name: "頁頂模板順序",
detail: "[[MGP:模板規範#頂部模板排序|頂部模板排序]]",
},
{
name:"應使用播放器或外部鏈接",
detail:"[[MGP:音樂與視聽作品使用指引|存在可替代合法外部播放源時,應使用播放器或外部鏈接]]",
}
];
mw.loader.load("//fastly.jsdelivr.net/gh/BearBin1215/MoegirlPedia@master/dist/gadgets/WikiplusSummary.min.js");
window.popupStructure='menus';
window.popupFixDabs=true;
window.popupRedlinkRemoval=true;
window.popupShortcutKeys=true;
window.popupTocLinks=true;
window.popupFixRedirs=true;
window.popupRedirAutoClick='wpSave';
window.popupDabsAutoClick='wpSave';
window.popupStubRegexp='\\{\\{急需改[進進]';//你百雖然沒有小作品,但可以識別一下急需改進的條目
window.popupDabRegexp='(\\{\\{\\s*disambig(?!uation needed)|disambig|消除?歧[義義]|可以是?指|可能是?指|Dablink|Hatnote\\s*\\}\\}|disamb\\s*\\}\\}|dab\\s*\\}\\})|\\{\\{\\s*(((geo|hn|road?|school|number)dis)|[234][lc][acw]|(road|ship)index)(\\s*[|][^}]*)?\\s*[}][}]|is a .*disambiguation.*page';//消歧義頁
mw.loader.load("//fastly.jsdelivr.net/gh/BearBin1215/MoegirlPedia@master/dist/gadgets/Excel2Wiki.min.js");
mw.loader.load('/index.php?title=User:bhsd/js/SettingsDialog.js&action=raw&ctype=text/javascript');
mw.loader.load("//fastly.jsdelivr.net/gh/BearBin1215/MoegirlPedia@master/dist/gadgets/AdvancedSearch.min.js");
mw.loader.load("//fastly.jsdelivr.net/gh/GuoPCinGitHub/MGP@master/js/TSIndicator.min.js");
mw.loader.load('//fastly.jsdelivr.net/gh/Mustafabot/js-MoegirlPedia/QuickUndo.min.js');
mw.loader.load("//fastly.jsdelivr.net/gh/BearBin1215/MoegirlPedia@master/dist/gadgets/HistoryViewer.min.js");
mw.loader.load("//fastly.jsdelivr.net/gh/BearBin1215/MoegirlPedia@master/dist/gadgets/BulkMove.min.js");
mw.loader.load('//fastly.jsdelivr.net/gh/Mustafabot/js-MoegirlPedia/MassDelete.min.js');
window.MassDelete = true;
/*UserMessages*/
window.AxUserMsgCustomTemplate = [
['User:BearBin/UserMessages/WelcomeToMGPVNG', "WelcomeToMGPVNG", "萌娘百科視覺小說研究會邀請函", 16, "邀請加入[[Template:萌娘百科視覺小說研究會|萌娘百科視覺小說研究會]]"],
['User:穆斯塔法凱末爾/UserMessages/VUP', "WelcomeToVUP", "萌娘百科虛擬UP主編輯組邀請函", 128, "邀請加入[[Template:萌娘百科虛擬UP主編輯組|萌娘百科虛擬UP主編輯組]]"],
];
//mw.loader.load("//fastly.jsdelivr.net/gh/GuoPCinGitHub/MGP@master/js/ModIcon.min.js");
//mw.loader.load("//fastly.jsdelivr.net/gh/GuoPCinGitHub/MGP@master/js/ModIconPrep.min.js");
window.TextDiff = true;
// 標記有權編輯/移動的保護頁面的保護等級
if (![-1].includes(namespace)) {
if (mw.config.get('wgRestrictionEdit').includes('patrolleredit')) {
$('#ca-edit a').css({'cursor':'not-allowed', 'color':'darkred', 'font-variant':'small-caps'}).html('<b>[Patroller Edit]</b>');
}
else if (mw.config.get('wgRestrictionEdit').includes('extendedconfirmed')){
$('#ca-edit a').css({'cursor':'not-allowed', 'color':'darkred', 'font-variant':'small-caps'}).html('<b>[EC-Protected Edit]</b>');
}
else if (mw.config.get('wgRestrictionEdit').includes('autoconfirmed')){
$('#ca-edit a').css({'cursor':'not-allowed', 'color':'darkred', 'font-variant':'small-caps'}).html('<b>[Semi-Protected Edit]</b>');
}
if (mw.config.get('wgRestrictionMove').includes('patrolleredit')) {
$('#ca-move a').css({'cursor':'not-allowed', 'color':'darkred', 'font-variant':'small-caps'}).html('<b>[Patroller Move]</b>');
}
else if (mw.config.get('wgRestrictionMove').includes('extendedconfirmed')){
$('#ca-move a').css({'cursor':'not-allowed', 'color':'darkred', 'font-variant':'small-caps'}).html('<b>[EC-Protected Edit]</b>');
}
else if (mw.config.get('wgRestrictionMove').includes('autoconfirmed')){
$('#ca-move a').css({'cursor':'not-allowed', 'color':'darkred', 'font-variant':'small-caps'}).html('<b>[Semi-Protected Move]</b>');
}
mw.loader.addStyleTag("#ca-quick-edit{display:none;}");
}