Content deleted Content added
Vector 2022 compatibility |
var SearchRegexes should add to, not replace, the default values. |
||
(37 intermediate revisions by the same user not shown) | |||
Line 1:
/*<onlyinclude><syntaxhighlight lang="javascript">/*
Based on [[User:SiBr4/TemplateSearch.js]] by [[User:SiBr4]], with added support for the Vector 2022 and Minerva Neue skins.▼
▲Based on [[User:SiBr4/TemplateSearch.js]] by [[User:SiBr4]]
Allows using "TP:" and "{{" as shortcuts for "Template:" in the search box. See
[[Wikipedia:Village pump (proposals)/Archive 127#Prefix suggestion: TP: for Template:]].
Install by adding the following row to your
mw.loader.load( "//en.wikipedia.org/w/index.php?title=User:Ahecht/Scripts/TemplateSearch.js&action=raw&ctype=text/javascript" ); // Linkback: [[:en:User:Ahecht/Scripts/TemplateSearch.js]]
*/
function
searchboxes.forEach(function (searchbox) {
if (searchbox.classList.contains("cdx-text-input__input") || searchbox.classList.contains("
searchbox.setAttribute("onkeyup",
searchbox.setAttribute("onpaste","replaceBracesInSearch(this);");
replaceBracesInSearch(searchbox);
}
} );
}
var SearchRegexes =
"^(\\\{\\\{#invoke|[Mm][Dd]):":"Module:",
var searchboxes = document.getElementsByName("search");▼
"^(\\\{\\\{|[Tt][Pp]:)":"Template:",
"\\\}\\\}$":"",
for (var search in SearchRegexes) {▼
function replaceBracesInSearch(box) {
▲ for (var search in SearchRegexes) {
re = new RegExp(search);
if(re.test(box.value)) {
box.value=box.value.replace(re,SearchRegexes[search]);
box.dispatchEvent(new Event('input'));
}
}
}
var x = new MutationObserver(function () {
▲});
addSearchBoxChangeListener(document.getElementsByName("search"));
});
document.querySelectorAll(".search-box, .vector-search-box").forEach(function (box) {
x.observe(box, { subtree: true, childList: true });
} );
} );
//</syntaxhighlight></onlyinclude>
|