Wikipedia:Narzędzia/veAutocorrect

Skrót: WP:NAC
Z Wikipedii, wolnej encyklopedii

veAutocorrect – gadżet do autokorekty dla VisualEditora. Automatyzuje wstawianie wybranych znaków specjalnych, w tym długiej pauzy „—” czy polskich cudzysłowów.

Od wersji 2.0 możliwe jest szybkie wstawianie szablonu {{fd}}. Wystarczy wpisać „{fd”, a gadżet automatycznie podmieni to na „[potrzebny przypis]” (razem z wpisaną datą). Mniej roboty, ten sam efekt 😎. A poniżej m.in., jak wstawiać sekcje końcowe, szablon przypisów itp. → #Dodatki dla Polskiej Wikipedii.

Uwaga!
Skrypt nie był i nie będzie testowany w przeglądarce Internet Explorer. Czas z tym skończyć 😉.
Polecam przeglądarki: Firefox lub Chrome. Edge i inne nakładki na Chrome/Chromium też powinny działać.

W skrócie[edytuj | edytuj kod]

Aktywne sekwencje[edytuj | edytuj kod]

Podstawowe sekwencje[edytuj | edytuj kod]

tekst wpisywany zamiana na
-- (półpauza, ndash)
--- (pauza, mdash)
" otwierający lub zamykający cudzysłów (zależnie od kontekstu).
<< « cudzysłów wewnętrzny
>> »
1/2 ½ (wymagana spacja po „2”)
1/4 ¼ (wymagana spacja po „4”)
3/4 ¾ (wymagana spacja po „4”)
+- ±
...
->

Dodatki dla Polskiej Wikipedii[edytuj | edytuj kod]

NAC dostępny jako gadżet ma wbudowane dodatkowe sekwencje. Większość z nich jest wzięta od pierwszych liter sekcji lub szablonów.

tekst wpisywany zamiana na
szablony
{fd wstawia szablon fakt z datą ({{fd}}).
{p szablon „Przypisy”.
sekcje końcowe
=z+ wszystkie sekcje końcowe na raz („Zobacz też” itp).
=zt (lub =zob) sekcja „Zobacz też”.
=p sekcja „Przypisy” (zaraz potem można użyć: „{p”).
=b sekcja „Bibliografia”.
=lz (lub =lnk) sekcja „Linki zewnętrzne”.

Własne sekwencje[edytuj | edytuj kod]

Własne sekwencje można dodać w swoim `common.js` (lub `vector.js`). Należy przy tym wykorzystać zdarzenie „userjs.veNuxAutocorrect.ready”.

Proste sekwencje[edytuj | edytuj kod]

Dodanie zamiany tekstu na tekst jest proste. Jedyne na co trzeba uważać, to żeby to co jest we „from” się nie powtarzało.

mw.hook('userjs.veNuxAutocorrect.ready').add(function (nac, helpers) {
    nac.add({from:' :-)', to:' 🙂'});
    nac.add({from:' ;-)', to:' 😉'});
});

Tak przy okazji, pod Windows 10 – do wstawiania emoji – można użyć skrótu Windows + . (wyskakuje menu, w którym można wyszukać emoji).

Szablon Osobny artykuł[edytuj | edytuj kod]

Dodawanie szablonów i innych elementów składni jest nieco bardziej skomplikowane, ale z użyciem funkcji nie jest aż takie trudne. Załóżmy, że często wstawiasz szablon {{Osobny artykuł}}, możesz go wstawiać np. po wpisaniu „{oa” (albo „{osob”).

mw.hook('userjs.veNuxAutocorrect.ready').add(function (nac, helpers) {
    const p = helpers.p;
    const h2 = helpers.h2;
    const tpl = helpers.tpl;

	// '{oa' -> {{Osobny artykuł}}
    nac.add({
    	from: '{oa',
    	to: tpl({
			target: {
				href: 'Szablon:Osobny artykuł',
				wt: 'Osobny artykuł'
			},
			//params: {}
		})
	});
});

Szablon Dopracować[edytuj | edytuj kod]

// '{d=*' -> {{Dopracować}}
mw.hook('userjs.veNuxAutocorrect.ready').add(function (nac, helpers) {
    // helper mapping
    const p = helpers.p;
    const tpl = helpers.tpl;

	function dopracowac(parametr) {
		var params = {};
		params[parametr] = {wt:'{{'+'subst:#time:Y-m'+'}}'};
		return tpl({
			target: {
				href: 'Szablon:Dopracować',
				wt: 'Dopracować'
			},
			params: params
		}, true);
	}
	//console.log(JSON.stringify(dopracowac('źródła'), true, '\t'));
    nac.add({
    	from: '{d=bz', // brak źródeł
    	to: dopracowac('źródła')
	});
    nac.add({
    	from: '{d=wp', // więcej przypisów
    	to: dopracowac('więcej przypisów')
	});
    nac.add({
    	from: '{d=wz',  // więcej źródeł
    	to: dopracowac('więcej przypisów')
	});
});

Więcej przykładów[edytuj | edytuj kod]

  • MediaWiki:Gadget-NAC-extras.js – sekwencje dla pl.wiki. Tu znajdziesz kod do tego jak zrobione są sekwencje ze wstawianiem sekcji.
  • github.com/Eccenux/veAutocorrect – przykłady w języku angielskim. Tu znajdziesz więcej przykładów z szablonami, w tym z parametrami. Jest też przykład możliwości użycia wikikodu w szablonie.

Uwagi do angielskiej wersji[edytuj | edytuj kod]

Jeśli kopiujesz sekwencje z pl.wiki na en.wiki i masz w komentarzach wywołania polskich szablonów (np. // '{d=*' -> {{Dopracować}}), to na en.wiki umieść je wszystkie w bloku pary komentarzy // <nowiki> i // </nowiki>. Zapobiegnie to wstawieniu strony z kodem do en:Special:WantedTemplates (Specjalna:Potrzebne szablony).

Zobacz też[edytuj | edytuj kod]