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!

O spostrzeżonych błędach i życzeniach nowych funkcjonalności pisz w kawiarence, przy stoliku technicznym. Ale najpierw przejrzyj sekcję poświęconą błędom poniższego opisu, a następnie oczyść pamięć podręczną przeglądarki. Możliwe, że Twój problem został już rozwiązany.

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 edytuj

W 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

Zobacz też edytuj

Linki zewnętrzne edytuj