MediaWiki:EditacniKlavesoveZkratky.js
Z WikiSkript
Poznámka: Po zveřejnění musíte vyprázdnit cache vašeho prohlížeče, jinak změny neuvidíte.
- Firefox / Safari: Při kliknutí na Aktualizovat držte Shift nebo stiskněte Ctrl-F5 nebo Ctrl-R (na Macu ⌘-R)
- Google Chrome: Stiskněte Ctrl-Shift-R (na Macu ⌘-Shift-R)
- Internet Explorer / Edge: Při kliknutí na Aktualizovat držte Ctrl nebo stiskněte Ctrl-F5
- Opera: Stiskněte Ctrl-F5.
/**
* Přidání klávesových zkratek do editačního pole WikiEditoru.
*
* @file Přidá klávesové zkratky do WikiEditoru
* @author Slepi
* @license https://www.gnu.org/licenses/gpl.html GNU General Public License 3.0
*/
pridatZkratky = {
/* funkce nahrazující původní mw.toolbar.insertTags() */
pridej: function(pretag, posttag, text) {
$("#wpTextbox1").textSelection("encapsulateSelection", {
pre: pretag,
post: posttag || "",
peri: text || ""
});
},
start: function() {
/* stisknutá klávesa Ctrl */
var isCtrl = false, keycode = 0;
/* reset: po odeznění stisku klávesy Ctrl */
$("#wpTextbox1").on("keyup", function(event) {
keycode=event.which;
isCtrl=false;
});
/* zkratky */
$("#wpTextbox1").on("keydown", function(event) {
keycode=event.which;
/* nastavení: klávesa Ctrl */
if(keycode === 17) isCtrl = true;
if(keycode === 91) isCtrl = true; // Cmd - uživatelé Mac
/* nastavení: klávesa Alt (pro případ stisku pravého Alt) */
if(keycode === 18) {
isCtrl = false;
return true;
}
/* zkratka CTRL+B: tučné písmo */
if(keycode === 66 && isCtrl === true) {
pridatZkratky.pridej("'''", "'''", "Tučný text");
return false;
}
/* zkratka CTRL+I: kurzíva */
if(keycode === 73 && isCtrl === true) {
pridatZkratky.pridej("''", "''", "Kurzíva");
return false;
}
/* zkratka CTRL+L: odkaz */
if(keycode === 76 && isCtrl === true) {
pridatZkratky.pridej("[[", "]]", "Název článku");
return false;
}
});
}
}
/* zapnout po načtení stránky */
$(function(){
if (document.getElementById("wpTextbox1") && $.inArray(mw.config.get("wgAction"), ["edit", "submit"]) !== -1) pridatZkratky.start();
});