Wikipedia:Narzędzia/CoffeeScript dla MediaWiki
Uwaga! Skrypt nie działa poprawnie z wersją MediaWiki obsługującą pl-wiki. Nie używać do czasu naprawy!
Opisując swój problem, staraj się być możliwie precyzyjny – podaj wersję przeglądarki i nazwę używanej skórki. Powiadom mnie o nowym wątku na mojej stronie dyskusji, żebym nie przegapił.
autor: Wikipedysta:Skalee • kod źródłowy: Wikipedysta:Skalee/CoffeeScript dla MediaWiki.js • licencje: MIT i standardowe Wikipedii"CoffeeScript dla MediaWiki" umożliwia pisanie gadżetów (i innych skryptów użytkownika) w języku CoffeeScript. Przy zapisie kod w CoffeeScript jest tłumaczony do JavaScriptu (oryginalny kod CoffeeScript trzymany jest w komentarzu). Przy ponownej edycji przywracany jest kod ze wspomnianego komentarza, dlatego wprowadzając poprawki nigdy nie poprzestawaj na zmianach w samym wynikowym JavaScripcie – i tak zostaną kiedyś nadpisane – zamiast tego popraw kod CoffeeScript.
Narzędzie wykorzystuje CoffeeScript w wersji 1.4.0 hostowany na cdnjs.cloudflare.com.
"CoffeeScript dla MediaWiki" jest również napisany w CoffeeScripcie i skompilowany do JavaScriptu przy użyciu siebie samego.
Przykład instalacji
edytujW swoim common.js dopisz:
importScript('Wikipedysta:Skalee/CoffeeScript dla MediaWiki.js');
Jeżeli swój common.js chcesz utrzymywać również w CoffeeScripcie, zastąp dotychczasową zawartość common.js poniższym snippetem:
/// Ten plik został przygotowany przy użyciu narzędzia "CoffeeScript dla MediaWiki".
/// Nie edytuj go zanim nie przeczytasz opisu narzędzia na [[Wikipedysta:Skalee/CoffeeScript dla MediaWiki]].
/// W przeciwnym wypadku twoje zmiany mogą zostać niechcący nadpisane.
///
/// This file has been prepared using "CoffeeScript dla MediaWiki" tool.
/// Do not edit it unless you read instructions on [[Wikipedysta:Skalee/CoffeeScript dla MediaWiki]].
/// In other case your changes may be accidentally overwritten.
///
/// CS4MW: importScript 'Wikipedysta:Skalee/CoffeeScript dla MediaWiki.js'
(function() {
importScript('Wikipedysta:Skalee/CoffeeScript dla MediaWiki.js');
}).call(this);
Po zapisaniu strony odśwież cache i ponownie wciśnij "edytuj".
Zalety CoffeeScriptu
edytuj- wyraźnie krótszy i czytelniejszy kod daje mniej okazji do popełnienia błędu. Dla porównania – kod źródłowy narzędzia "CoffeeScript dla MediaWiki" w CoffeeScripcie ma 47 linii (wyłączając komentarze i puste wiersze), kod wynikowy w JavaScripcie zaś 71.
- nowe elementy języka, np. list comprehensions, splats itd.
- JavaScript kryje w sobie wiele pułapek, które nie są oczywiste dla osób pobieżnie znających ten język. Czy wiesz czym różnią się operatory == i === oraz że ten pierwszy nie jest przemienny? Czy wiesz, że nie należy stosować pętli
for … in
przy iteracji po elementach tablicy?
Ponadto opisywane narzędzie dopilnuje, by w zapisywanym skrypcie nie było żadnych błędów składniowych. Gdyby takowe się pojawiły, skrypt się nie zapisze i wyskoczy stosowny komunikat o błędzie.
Poradnik
edytuj- Nie chcę używać tego narzędzia, ale podoba mi się jakiś skrypt utrzymywany przy jego pomocy i chcę coś w nim zmienić
- Nic prostszego, skopiuj kod wynikowy – jest to całkowicie poprawny JavaScript, nawet całkiem czytelny i nieźle sformatowany.
- Mam już napisany skrypt w JavaScripcie, ale nie chce mi się go tłumaczyć na CoffeeScript
- Skorzystaj z js2coffee.
Błędy
edytuj- żadne nie są znane