Pomoc:Podświetlanie składni: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Piotr (dyskusja | edycje)
Piotr (dyskusja | edycje)
mNie podano opisu zmian
Linia 44:
Niestety takie podejście do kolorowania kodu jest dla większości jednak uciążliwe i Wikipisarz zamiast skupić się na treści za bardzo koncentruje się na wyglądzie (zresztą nie powinno się używać znacznika '''font'''), traci mnóstwo czasu na kolory, a jakość i czyteloność kodu kiepska.
 
Na szczęście pomimo tego większość przeglądarek obsługuje Javę Script, dlatego też został stworzony skrypt koloryzujący składnię różnych języków programowania ([[MediaWiki:Ext/Highlighting.js|Ext/Highlighting.js]]). Skorzystanie z niego jest dziecinnie proste, wystarczy wstawić blok '''pre''' lub '''tt''' i ustawić odpowiednią klasę przeznaczoną dla danego języka. Na przykład, aby podświetlić kod C++, napiszemy:
<div style="width: 70%">
<nowiki>
Linia 99:
</pre>
</div>
 
Gdy napiszemy <nowiki><tt class="lang-cpp">using namespace std;</tt></nowiki> otrzymamy <tt class="lang-cpp">using namespace std;</tt>.
 
W tabeli na górze strony została wypisana liczba obsługiwanych języków przez skrypt i jakiej klasy trzeba użyć.
 
W większości przypadków na jednej stronie opisujemy tylko jeden język programowania, dlatego też mamy możliwość zdefiniowania domyślnego podświetlania wewnątrz bloku '''div''' wstawiając <nowiki><div id="highlighting" class="lang-xx">zawartość strony</div></nowiki>. Podejście to ma jedną wadę, ponieważ w takim przypadku będą podświetlane jedynie te kody źródłowe, które się znajdują w tym bloku (w bloku, gdzie id="highlighting", a nie na całej stronie). Przykład:
 
<pre style="width: 70%">
<div id="highlighting" class="lang-py">
def dodaj(a, b):
return a + b
 
Instrukcja <tt>def</tt> służy do definiowania funkcji w Pythonie,
podobnie jak <tt class="lang-js">function</tt> w Javie Script.
</div>
</pre>
 
Otrzymamy:
<div style="background: white; width: 70%; padding: 5px; border: 1px solid black">
<pre class="lang-py" style="width: 90%">
def dodaj(a, b):
return a + b
</pre>
 
Instrukcja <tt class="lang-py">def</tt> służy do definiowania funkcji w Pythonie,
podobnie jak <tt class="lang-js">function</tt> w Javie Script.
</div>
 
Jeśli chcesz, aby została dodana obsługa pewnego języka, porozmawiaj o tym w [[WB:BAR|Barze]]. W przypadku znalezienia jakiś błędów w skrypcie, także powinnieneś o tym tam napisać.
 
</div>
[[Kategoria:Pomoc]]