Ryszard Nowak - "The List, vol.2"
No to mam przechlapane,
No to po mnie
Praca dyplomowa w LaTeX’u
Wisi sobie ten poradnik na mojej nic-nie-mającej stronce już jakiś czas. Wywaliłbym go już w cholerę razem z całą stronką, bo wszyscy znajomi już dawno, dawno temu się pobronili, zresztą w necie można znaleźć o wiele lepsze artykuły. Ale jednak okresowo pojawiają się jakieś pytania (szczególnie na początku maja
Pozwalam więc sobie wrzucić poniżej całość poradnika w wersji do czytania i do ściągnięcia. Może komuś się przyda :-)
Oto treść. Uprzedzam, że pisane to było dość dawno, więc jest więcej niż prawdopodobne, że coś (np. linki) może być nieaktualne.
Ponieważ często, różni ludzie zamiast pogooglać, męczyli mnie pytaniami jak zainstalować i używać Latex'a do pisania magisterki, postanowiłem napisać ten krótki - łopatologiczny tekst. Skoro taki lamer jak ja potrafił uruchomić Latex'a, to na pewno innym też się uda. Od razu zastrzegam, że żadnym guru Latex'a nie jestem, przedstawiam tu tylko to co sam gdzieś przeczytałem lub do czego sam doszedłem.
Po 'kiego grzyba mi ten Latex, mam przecież Worda?
Tak na początek wymienię kilka najważniejszych z punktu widzenia pisania pracy zalet i wad Latex'a - tak dla odsiania połowy niezdecydowanych.
- Zalety
- Automagiczne generowanie spisów i skorowidzów
- Automagiczna numeracja rozdziałów, obrazów, tabel, stron, przypisów... itd.
- Rozdzielenie formy od treści.
- Gotowe schematy.
- Nic ci się nie zawiesi, bo TeX jest bezbłędny (serio !)
- Jakość wydruku warta niejednego wyrzeczenia
- Wady
- Konieczność opanowania kilku-kilkunastu komend i przyzwyczajenia się do czegoś co nie jest Wordem.
- Brak trybu WYSIWYG.
- Konieczność sciągnięcia i trzymania na dysku od kilkudziesięciu do nawet 400 MB.
Co do bezbłędności TeX'a proponuję przeczytać cytacik z Wikipedii:
(...) program został ukończony po ok. ośmiu latach, w 1985 roku. Z tą chwilą rozwój programu został zatrzymany, były poprawiane jedynie błędy. Profesor Knuth wyznaczył nagrodę pieniężną za każdy znaleziony w jego programie błąd. W roku 1985 nagroda wynosiła 1 cent, z każdym rokiem była podwajana. Na chwilę obecną za znalezienie błędu można otrzymać 327 dolarów i 68 centów. Ostatni błąd został poprawiony w 1994 roku. Tak więc program TeX można uznawać za bezbłędny (...)
Instalacja
Zakładam, że wszyscy korzystają z Windowsa (ci, którzy korzystają z Linucha zazwyczaj nie potrzebują takich tekstów) więc skupię się na programach przeznaczonych dla tego systemu.
Mój opis na pewno nie przedstawia najszybszej i najlepszej metody instalacji. Jest to jednak metoda sprawdzona i nie wymagająca zbyt wielkiego wysiłku, nie potrzebna jest żadna kompilacja, grzebanie w plikach konfiguracyjnych, itp.
MikTex
Zaczynamy od pobrania dystrybucji MikTeX - ściągamy Small MiKTeX installer, który zajmuje około 25MB. Opdalamy to cudo i po uruchomieniu i kliknięciu jednego guzika "next" widzimy następujący ekran:

Tego raczej nie trzeba tłumaczyć, zresztą czego nie klikniemy to i tak się zainstaluje :-) Kolejny "next" i naszym oczom ukazuje się takie okienko:

Tu - jak się wszyscy domyślają - należy podać ścieżkę pod którą zostanie zainstalowany nasz upragniony Latex. Nie radzę podawać nazw folderów ze spacjami bo mogą być(prawie na 100% bedą) problemy. Ja, jak widać, mam tex'a zainstalowanego w katalogu:
C:\Tex\Tex
Podwójnie dlatego, że w nadrzędnym katalogu
C:\Tex\
oprócz samego latex'a znajdą się jeszcze inne przydatne programy.
Klikamy next. Progam pyta nas o nazwę katalogu z linkami, który umieści dla nas w menu Start. Wpisujemy coś lub zostawiamy
i klikamy next.
Pojawia się takie okienko:

Zaznaczamy pierwszą opcję i wpisujemy odpowiednią ścieżkę, analogiczna do tej na obrazku byłaby najlepsza.
Kolejny next i pojawia się pytanie na które możemy udzielić jednej z dwóch odpowiedzi:
- Don't integrate existing TEXMF trees
- Integrate existing TEXMF trees
Kolejny next progam jest już gotowy do instalacji, znów next i zaczynamy oglądać latające, niebieskie paski postępu.

Paski kiedyś kończą latać i nasze okienko wygląda mniej więcej tak:

Kilkamy next oraz finish i cieszymy się że udało się nam zainstalować MikTexa :-).
Konfiguracja
Znajdujemy w menu Start katalog MikTex i odpalamy MiKTeX Options.
Naszy oczom ukazuje się okienko:

Przechodzimy do zakładki Languages, na liście języków zaznaczamy co nam się tylko podoba, z tym, że english, dumlang i nohypenation powinny zostać zaznaczone ... no i oczywiście najważniejszy: polish.
Następnie przechodzimy do zakładki Packages:

Najpierw klikamy w guzik Change w polu Package repository, pojawia nam się okienko:

Oczywiście wybieramy opcję Internet. Klikamy "dalej", pojawia się nam lista serwerów CTAN. Wybieramy ten najbliższy nam czyli (zazwyczaj):
ftp.gust.org.pl
lub
sunsite.icm.edu.pl

i po kliknięciu w odpowiedni guzik czekamy na ściągnięcie listy pakietów.
Kiedy ściąganie się skończy wracamy do okna z zakładką Packages i zaczynamy przeglądać drzewko. Zaznaczamy co nam się podoba. Ja poza domyślnymi pakietami zaznaczyłem dodatkowo: pstricks, całą gałąź Math, całą gałąź MiKTex, Tex-ps (może się przydać), listings (przyda się jeśli mamy zamiar wstawiać listingi programów)
W Language suport wiadomo, zahaczyć polish odhaczyć inne.
Po czym klikamy zastosuj i oglądamy latające paski na kolejnym okienku:
Gdy paski przestaną latać, a nam ubędzie kilkadziesiąt MB wolnego miejsca na dysku, klikamy guzik close i wracamy do okienka MiKTeX Options. Przechodzimy do pierwszej zakładki General i klikamy guzik Refresh Now a następnie Update Now. W trakcie updateowania może nam wyskoczyć okienko z prośbą o potwierdzenie instalacji jakiegoś pakietu - oczywiście należy pozwolić na instalację.
Po wszystkim zamykamy okno konfiguracji guzikiem OK.
LEd
Mamy już zainstalowanego LaTeX'a ... przydałby się jakiś fajny edytor.
Jeśli nie jesteś fanatykiem notatnika, polecam świetny darmowy edytor (wręcz środowisko) LEd, który ma nawet swoją
stronę na wikipedi.
Ściągamy to cudeńko i instalujemy. Instalacja jest banalna więc nie wymaga opisu. Za darmo dostajemy programik który nie tylko sprawdzi nam błędy ortograficzne, zaproponuje poprawę, ale nawet podpowie co oznacza dana komenda TeX'a.
Drobnej korekty wymaga okno głowne programu które standardowo przy pierwszym uruchomieniu ma włączonych zbyt wiele pasków. Każdy szanujący się użytkownik Worda, na pewno będzie wiedział jak je usunąć :-). Po zabiegach pielęgnacyjnych okienko LEd'a może wyglądać tak:
Zanim jednak zaczniemy cokolwiek pisać zainstalujemy sobie dwa super-przydatne programiki:
Pierwszy jest office'o-podobnym edytorem równań matematycznych, a drugi generatorem tabel - tak, tak ... w tex'u tabelki też się robi tekstowo i bez tego programiku nie jest to zbyt łatwe. Instalacja tych programików też jest banalna, więc nie ma sensu jej opisywać.Inne przydatne programy
Innych darmowe programy, które na pewno przydadzą nam się w pisaniu:
- Gimp - czyli PhotoShop dla oszczędnych :-)
- DIA - coś jak MS Visio ale mniejsze, fajniejsze i darmowe :-)
- Inkscape - wypaśny program do tworzenia grafiki wektorowej, bardzo, bardzo przydatny.
- Total Commander - tego programu nie trzeba chyba przedstawiać, przydaje się do wszystkiego (nie szanuję ludzi, którzy nie lubią TotalComander'a :-) ).
... zaczynamy pisać
Jako, że LEd napisali nasi rodacy, jest to kawał świetnej roboty. Obsługa jest banalna.
Zaczynamy standardowo: Plik->Nowy
Pojawia się okienko:

Przechodzimy do zakładki Szablony i wybieramy Praca magisterska (wer.polska) oprta na stylu memoir.
Nadajemy nazwę naszemu projektowi wybieramy lokalizację i klikamy OK, LED tworzy nam projekcik, którego główny plik wygląda tak:
%*** LEd - dokument oparty na szablonie pracy magisterskiej ***
\documentclass[11pt, a4paper, makeidx]{memoir}
\input{style.tex}
\begin{document}
% *** Front matter ***
\frontmatter
\input{front.tex}
% *** Main matter ***
\mainmatter
\input{ack//ack.tex}
\input{chap1//chap1.tex}
\input{chap2//chap2.tex}
% *** Bibliography ***
\nocite{*}
\bibliographystyle{plain}
{\small\bibliography{MSc}}
% *** Appendixes ***
\appendix
\appendixpage*
\input{app1//app1.tex}
% *** Back matter ***
\backmatter
\input{back.tex}
\end{document}
Czas na wyjaśnienia, co jest co?
\documentclass[11pt, a4paper, makeidx]{memoir}
Definicja naszego dokumentu: klasa memoir, parametry: czcionka rozmiar 11pt, papier A4
\begin{document}
Rozpoczęcie dokumentu
\frontmatter
Wstawianie stron startowych: spisów treści, itp.
mainmatter
\input{ack//ack.tex}
\input{chap1//chap1.tex}
\input{chap2//chap2.tex}
Rozpoczęcie głównej części dokumentu i dołączenie do projektu zewnętrznych plików, np. kolejnych rozdziałów, stron tytułowych, itp.
\nocite{*}
\bibliographystyle{plain}
{smallbibliography{MSc}}
Wstawienie bibliografii
\appendix
\appendixpage*
\input{app1//app1.tex}
Wstawienie dodatków
\backmatter
\input{back.tex}
Rozpoczęcie części końcowej dokumentu i wstawienie odpowiedniego pliku zewnętrznego
\end{document}
Zakończenie dokumentu.
Oczywiście linie zaczynające się od % są komentarzami i nie są brane pod uwagę w trakcie kompilacji dokumentu.
Ogólnie w tym pliku rzadko coś zmieniamy, co najwyżej dodajemy wpis typu
\input{plik.tex}
gdy dołączamy nowy rozdział do pracy.
Oczywiście cała praca może być napisana w jednym pliku, ale nie ma to większego sensu. Dzięki dzieleniu na pliki, zyskujemy na przejrzystości
i wygodzie pracy.
Niecierpliwi, którzy już chcieliby zobaczyć efekt działania tex'a wciskają F9 albo zielony trójkącik na pasku
W tym momencie prawdopodobnie kompilacja zakończy się niepowodzeniem, i wyświetli się nam takie okienko (lub kilka tego typu okienek):

Oczywiście wszędzie pozwalamy na instalację ... czekamy aż Tex dociągnie sobie brakujące paczki. Jeśli zauważysz, że przy następnej kompilacji dokumentu LEd znowu pyta o ściągnięcie i instalację tego samego pakietu - ściągnij go a następnie uruchom program konfiguracji MiKTex'a (patrz konfiguracja MiKTex'a) i na pierwszej zakładce wciśnij guzik Refresh Now. Powinno pomóc.
Kiedy już ściągną i zamontują się brakujące paczuszki, w dolnym oknie LEd'a zobaczysz prawdopodobnie coś takiego:
Co to znaczy?
Otóż latex przy pierwszej (po zmiane tekstu, dodaniu nowych etykiet, itp.) kompilacji tworzy sobie spis rozdziałów, obrazków, tabel, itp. ... dopiero przy
następnej kompilacji korzysta z tych informacji. Tak więc wciskamy jeszcze raz F9 i otrzymujemy:
(...) There were undefined.
Kolejny haczyk. W LEd'zie mamy dwa rodzaje (w sumie nawet więcej) kompilacji. Coś w rodzaju Compile i Build All z dowolnego środowiska programistycznego. Gdy robimy kompilację zwykłą - F9 - tworzone są spisy, składany jest tekst, itd. ... ale dopiero przy Build All tworzone są wpisy bibliografii, tworzone są skorowidze i inne takie pierdoły.
Wniosek jest taki, że jeśli podwójna kompilacja (F9) skutkuje komunikatem
(...) There were undefined (...)
należy zbudować cały projekt czyli zrobić Build All - Ctrl+F9.
Praktryka dowodzi, że przy dużych zmianach w tekście po zbudowaniu projektu (CTRL+F9) konieczne jest ponowienie jeszcze zwykłej kompilacji (F9).
Całe to zamieszanie bierze się z tąd, że do pełnego skompilowania projektu potrzebujemy 3 poleceń:
latex nazwaprojektu bibtex nazwaprojektu
oraz
makeindex nazwaprojektu
Zwykłe F9 wywołuje tylko to pierwsze polecenie. Ctrl-F9 wywołuje wszystkie 3.
No dobra projekt skompilowany, i co dalej, wciąż go nie widać.
Do tego właśnie trzeba się przyzwyczaić, to nie jest tryb WYSIWYG, w którym wszystko widzisz na bierząco. W tex'u pisze się czystym tekstem, raz na jakiś czas kompilując całość dla sprawdzenia poprawności i napawania się pięknem latexowego tekstu :-). Wynikiem kompilacji jest plik *.dvi. Można go obejrzeć poprzez zainstalowaną przez MiKTex'a przeglądarkę Yap.
Po kompilacji klikamy na ikonkę yap'a:
, co otwiera nam
przeglądarkę, w której możemy podziwiać efekt naszej pracy.
U mnie wygląda to tak:

Poprawki w polonizacji
Jak już wcześniej wspomniano, pisząc naszą pracę korzystamy z klasy memoir. Jest ona nie do końca spolszczona co trzeba niestety naprawić (chyba, że ktoś pisze po angielsku). Wyszukujemy plik o nazwie memoir.cls, u mnie był w tym miejscu:
C:Tex\Tex\tex\latex\memoir\memoir.cls
Następnie go otwieramy do edycji i znajdujemy prawie na samym końcu takie wpisy:
\newcommand*{\abstractname}{Abstract}
\newcommand*{\contentsname}{Contents}
\newcommand*{\listfigurename}{List of Figures}
\newcommand*{\listtablename}{List of Tables}
\newcommand*{\partname}{Part}
\newcommand*{\chaptername}{Chapter}
\newcommand*{\appendixname}{Appendix}
\newcommand*{\appendixtocname}{Appendices}
\newcommand*{\appendixpagename}{Appendices}
\newcommand*{\bibname}{Bibliography}
\newcommand*{\indexname}{Index}
\newcommand*{\glossaryname}{Glossary}
\newcommand*{\figurename}{Figure}
\newcommand*{\tablename}{Table}
\newcommand*{\figurerefname}{Figure}
\newcommand*{\tablerefname}{Table}
\newcommand*{\pagename}{page}
\newcommand*{\pagerefname}{page}
\newcommand*{\partrefname}{Part~}
\newcommand*{\chapterrefname}{Chapter~}
I zmieniamy to według własnego uznania. Ja zmieniłem to w następujący sposób:
\newcommand*{\abstractname}{Streszczenie}
\newcommand*{\contentsname}{Zawartość}
\newcommand*{\listfigurename}{Spis rysunków}
\newcommand*{\listtablename}{Spis tabel}
\newcommand*{\partname}{Część}
\newcommand*{\chaptername}{Rozdział}
\newcommand*{\appendixname}{Dodatek}
\newcommand*{\appendixtocname}{Dodatki}
\newcommand*{\appendixpagename}{Dodatki}
\newcommand*{\bibname}{Bibliografia}
\newcommand*{\indexname}{Indeks}
\newcommand*{\glossaryname}{słownik terminów}
\newcommand*{\figurename}{Rysunek}
\newcommand*{\tablename}{Tabela}
\newcommand*{\figurerefname}{Rysunek}
\newcommand*{\tablerefname}{Tabela}
\newcommand*{\pagename}{strona}
\newcommand*{\pagerefname}{strona}
\newcommand*{\partrefname}{Część~}
\newcommand*{\chapterrefname}{Rozdział~}
I już. Mamy szablonik spolonizowany. Nie było aż tak ciężko, prawda? :-)
(Można to oczywiście zrobić również za pomocą polecenia
\renewcommand
użytego na początku pisanej przez nas pracy, ale poprzedni sposób wydaje mi się być lepszym, ponieważ wykonujemy go jednorazowo dla całego Latex'a) Jak słusznie zaznaczyła Joanna (Typoagrafka) (patrz komentarze) pomysł z edycją głównego pliku klasy jest poroniony ponieważ pozbawiamy się jednej z ważniejszych zalet TeX'a - przenośności kodu.
Trochę składni i ogólnych zasad
Formatowanie tekstu jest dla początkujących strasznie denerwujące, ale idzie się do tego przyzyczaić. Przede wszystkim nie ma żadnych ikonek, albo skrótów Ctrl+B, Ctrl+i, itp.. Mamy za to najróżniejsze komendy. Należy pamiętać, że wielkość liter w komendach ma znaczenie.
Formatowanie tekstu, wielkość czcionki
Z własnego doświadczenia mogę stwierdzić, że bardzo rzadko korzysta się ze zmiany rozmiary czcionki, no ale jak już trzeba, to oczywiście można. Do zabaw z czcionką mamy w LEd'zie odpowiednie guziki:

które nie robią nic innego jak wstawiają odpowiednie komendy
- pogrubienie
\textbf{jakiś tekst}
- kursywa
\textit{jakiś tekst}
- podkreślenie
\underline{jakiś tekst}
- czcionka domyślna
\textrm{tekst}
- czcionka kapitalików
\textsc{}
- czcionka szeryfowa
\textsf{tekst}
- czcionka ukośna
\textsl{tekst}
- czcionka o stałej szerokości
\texttt{tekst}
Wielkość czcionki
Wielkość czcionki zmienia się poprzez podanie odpowiedniej komendy. Od miejsca jej wystąpienia obowiązuje określony rozmiar czcionki aż do miejsca wystąpienia kolejnej komendy zmieniajacej rozmiar czcionki.
Te komendy to:
- \Huge
- \huge
- \LARGE
- \Large
- \large
- \normalsize
- \small
- \footnotesize
- \scriptsize
- \tiny

Justowanie tekstu
Ogólnie tex wyrównuje i dzieli tekst automatycznie. Robi to tak pięknie, że Word może się schować. Czasami jednak trzeba coś samemu wyjustować. Robimy to w LEd'zie przy pomocy guzików:

które wstawiają nam taki oto kod:
- wyrównanie do lewej
\begin{flushleft}
tekst
\end{flushleft}
- wyrównanie do prawej
\begin{flushright}
tekst
\end{flushright}
- wyśrodkowanie
\begin{center}
tekst
\end{center}
Listy
Podobnie jak poprzednio, możemy wcisnąć odpowiedni guzik w LEd'zie albo od razu wpisać:
- Lista numerowana
\begin{enumerate}
\item pozycja pierwsza
\item pozycja druga
\end{enumerate}
- Lista nienumerowana
\begin{itemize}
\item pozycja pierwsza
\item pozycja druga
\end{itemize}
- Lista Alfabetyczna (wielkie litery)
\begin{description}
\item[pozycja 1]
\item[pozycja 2]
\end{description}
- Lista alfabetyczna (małe litery)
\begin{list}
\item[pozycja 1]
\item[pozycja 2]
\end{list}
Wstawianie równań matematycznych
Równania matematyczne wstawia się w niezwykle przyjemny sposób. Jak już się człowiek do tego przyzwyczai to na Worda patrzy się potem z ironicznym uśmieszkiem.... Ale do rzeczy.
W latex'u mamy kilka rodzajów równań:
- nienumerowane równanie w tekście - jest elementem zdania, jest łamane tak samo jak cały tekst. Wstawiamy je między dwoma znakami dolara $równanie$.
Lorem ipsum dolor sit amet, $y=ax+b$ consectetuer adipiscing elit.
rezultat:
- nienumerowane równanie w nowej lini - to samo co poprzednio, ale w nowej lini. Wstawiamy między 4 znaki dolara $$równanie$$.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean nunc. Aliquam bibendum accumsan quam. Vestibulum ultricies elementum mauris. Phasellus commodo urna eu urna. Proin lorem dui, $$y=ax+b$$ pretium non, dignissim in, lobortis at, massa. Proin id purus. Ut nec neque.
rezultat:
- równanie numerowane - równanie, w nowej lini, z utomatycznie nadanym numerem, opcjonalnie można dodać etykietę, ktora pozwoli nam odwoływać się do danego równania.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean nunc.
Aliquam bibendum accumsan quam. Vestibulum ultricies elementum mauris.
Phasellus commodo urna eu urna. Proin lorem dui,
\begin{equation}
\label{eq:row1}
y=ax+b
\end{equation}
pretium non, dignissim in, lobortis at, massa. Proin id purus. Ut nec
neque \ref{eq:row1}
rezultat:
komenda \label{} nie musi wystąpić jeśli nie zamierzasz się odwoływać do danego równania.
Tworzenie równań matematycznych
Nie będę tu opisywał składni tworzenia równań bo nie ma to najmniejszego sensu, skoro mamy program TeXaide. Jeśli ktoś bardzo chce pisać wzory ręcznie (przydaje się szczegolnie gdy mamy małe wzory i mało czasu :-) ) - wystarczy przeanalizować sobie kod tworzony przez ten programik. Zapewniam, że nie jest to nic skomplikowanego.
To teraz trochę o TeXaidzie. Wygląda mniej więcej tak:
Nic skomplikowanego, obsługa banalna - to samo co w Wordzie. Jedyna różnica jest taka, że gdy napiszemy równanko wstawiamy je przez kopiowanie czystego tekstu. Wciskamy Ctrl+A aby zaznaczyć wszystko, a następnie Ctrl+C żeby skopiować. Przechodzimy do LEd'a i wklejamy np. między dolarki $ $.:
Jakiś tekst $$
% MathType!MTEF!2!1!+-
% feqaeaartrvr0aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn
% hiov2DGi1BTfMBaeXatLxBI9gBaebbnrfifHhDYfgasaacH8srps0l
% bbf9q8WrFfeuY-Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0-yr0R
% Yxir-Jbba9q8aq0-yq-He9q8qqQ8frFve9Fve9Ff0dmeaabaqaciGa
% caGaaeqabaaaamaaaOqaaiaadAgadaqadaqaaiaadIhacaGGSaGaam
% yEaaGaayjkaiaawMcaaiabg2da9maakaaabaGaamiEaiabgUcaRiaa
% dMhaaSqabaaaaa!3AC1!
[
f\left( {x,y} \right) = sqrt {x + y}
]
$$ dalsza część tekstu
Oczywiście te krzaki z procentami, oraz nawiaski nie są potrzebne, więc je wywalamy i zostaje nam:
Jakiś tekst $$ f\left( {x,y} \right) = \sqrt {x + y} $$ dalsza cześć.
Co da nam następujący rezultat:
Identycznie wstawiamy między pojedyncze dolarki i między \begin{equation}, a \end{equation}.
Wstawianie listingów kodu źródłowego
Wstawianie listingów jest banalne. Wystarczy na początku dokumentu załadować paczkę listings.
\usepackage{listings}
Następnie ustawiamy parametry dla tej paczki poleceniem:
\lstset{language=Delphi,basicstyle=tiny,keywordstyle=color{black}bfseries,
stringstyle=ttfamily,tabsize=2}
... jak widać ustawiłem składnię języka Delphi, czcionkę podstawową na tiny... itd. Wszędzie tam gdzie chcemy ustawić inne parametry dla paczki listings używamy tej komendy.
Samo wstawianie listingów niewiele się różni od wstawiania np. obrazków.
\begin{lstlisting}[caption={Tytuł listingu},label=label_listingu,
frame=single,numbers=left]
(...kod źródłowy...)
\end{lstlisting}
Oczywiście opcji wstawiania jest o wiele więcej, ich opis można znaleźć w dokumentacji do paczki listings.
Samą paczkę, jak i jej dokumentację, można znaleźć na serwerach CTAN.
Do etykiety określonej przez label można się odnosić w tekście tak samo jak do innych etykiet czyli poprzez polecenie:
\ref{nazwa_etykiety}
Uff, Koniec
I to by było na tyle. Więcej nie pamiętam (lub poprostu mi się nie chce
).
Życzę miłego pisania :-).
Linki dla dociekliwych
Taśmy ojca Muchomora
Prawo, prawem, ale sprawiedliwość musi być po naszej stronie
...tak w ramach komentarza do tej informacji.
Bezdomny (przynajmniej kiedyś) Hubercie, trzeba było iść na księdza, nikt by Cię nie ścigał za lżenie prezydenta ... a w ramach bonusu jeszcze mógłbyś sobie po Żydach pojeździć.
Ocena z religii
Świetny pomysł, popieram.
Od razu proponuję przywołać i zmienić dawny pomysł pani Sowińskiej (jeśli mnie pamięć nie myli) o rejestracji konkubinatów. Należałoby więc spisać wszystkich niekatolików,
Zresztą to jest też rozwiązanie przejściowe. Możnaby przecież wpisywać ocenę z religii do dowodu osobistego i byłoby po kłopocie. Infrastruktura informatyczna PESEL już istnieje, dodanie jednego pola do tabeli nie powinno być wielkim problemem.
Lemingi w odzieży sportowej
Otóż mądre głowy wymyśliły, że zamontują w tych miejscach odpowiednio mocne głośniki, z których będzie emitowana muzyka poważna, która ponoć nieletnich chuliganów odstrasza.
Ja chciałem zaproponować coś lepszego co powinno się sprawdzić szczególne na polskim podwórku.
Oryginalny pomysł sam w sobie nie jest zły, ale niesie ze sobą konieczność montowania sprzętu grającego w każdym niszczonym dotychczas miejscu - a takich miejsc może być wiele. Ponadto rozwydrzone nielaty mogą się przenosić z miejsca na miejsce, i ktoś w końcu te głośniki będzie musiał przenieść.
Rozwiązanie, które mi przyszło do głowy nasunęła mi na myśl historia, którą usłyszałem kiedyś chyba w TeleExpresie.
Otóż pewni wędkarze wybierając się na rybki zakupili świetny niemiecki (chyba) środek na komary. Wysmarowali się od stóp do głów, po czym poszli łowić. Ryb nie złapali bo chmary komarów nie pozwoliły im skupić się na spławikach. Jeden był chyba nawet hospitalizowany (nie pamiętam dokładnie). Po całej przygodzie ktoś w końcu przeczytał instrukcję obsługi wspaniałego środka, w której jak byk stało, że płyn nie odstrasza a przyciąga komary i należy nim zwilżyć jakąś szmatkę, która następnie powinna być wywieszona w pewnej odległości od obozowiska.
Wracając więc do tematu nielatów-wandali proponuję zamontować jeden porządny głośnik gdzieś w jakimś ustronnym miejscu miasta i puszczać w nim eskę na zmianę z rmf'ką. Gdy wielbiciele odzieży sportowej i im podobni usłyszą "łatwe, ale ambitne linie melodyczne, określone rock'n'rollowym brzmieniem albo jakieś inne sample posklejane z porządnym bitem, nie będą mogli się oprzeć i jak lemingi w to miejsce się udadzą.








