├── agh.jpg ├── rozdzial1.tex ├── bibliografia.bib ├── README.md ├── rozdzial3.tex ├── praca.tex ├── tests.tex ├── rozdzial2.tex └── aghdpl.cls /agh.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pkleczek-agh/aghdpl/HEAD/agh.jpg -------------------------------------------------------------------------------- /rozdzial1.tex: -------------------------------------------------------------------------------- 1 | \chapter{Wprowadzenie} 2 | \label{cha:wprowadzenie} 3 | 4 | \LaTeX~jest systemem składu umożliwiającym tworzenie dowolnego typu dokumentów (w~szczególności naukowych i technicznych) o wysokiej jakości typograficznej (\cite{Dil00}, \cite{Lam92}). Wysoka jakość składu jest niezależna od rozmiaru dokumentu -- zaczynając od krótkich listów do bardzo grubych książek. \LaTeX~automatyzuje wiele prac związanych ze składaniem dokumentów np.: referencje, cytowania, generowanie spisów (treśli, rysunków, symboli itp.) itd. 5 | 6 | \LaTeX~jest zestawem instrukcji umożliwiających autorom skład i wydruk ich prac na najwyższym poziomie typograficznym. Do formatowania dokumentu \LaTeX~stosuje \TeX a (wymiawamy 'tech' -- greckie litery $\tau$, $\epsilon$, $\chi$). Korzystając z~systemu składu \LaTeX~mamy za zadanie przygotować jedynie tekst źródłowy, cały ciężar składania, formatowania dokumentu przejmuje na siebie system. 7 | 8 | %--------------------------------------------------------------------------- 9 | 10 | \section{Cele pracy} 11 | \label{sec:celePracy} 12 | 13 | 14 | Celem poniższej pracy jest zapoznanie studentów z systemem \LaTeX~w zakresie umożliwiającym im samodzielne, profesjonalne złożenie pracy dyplomowej w systemie \LaTeX. 15 | 16 | \subsection{Jakiś tytuł} 17 | 18 | \subsubsection{Jakiś tytuł w subsubsection} 19 | 20 | 21 | \subsection{Jakiś tytuł 2} 22 | 23 | %--------------------------------------------------------------------------- 24 | 25 | \section{Zawartość pracy} 26 | \label{sec:zawartoscPracy} 27 | 28 | W rozdziale~\ref{cha:pierwszyDokument} przedstawiono podstawowe informacje dotyczące struktury dokumentów w \LaTeX u. Alvis~\cite{Alvis2011} jest językiem\textellipsis 29 | 30 | Jeszcze kilka odnośników do bibliografii \cite{PeDa04,BuDo03}. -------------------------------------------------------------------------------- /bibliografia.bib: -------------------------------------------------------------------------------- 1 | @Book{Lam92, 2 | author = {Lamport, L.}, 3 | title = {LaTeX system przygotowywania dokumentów}, 4 | publisher = {Wydawnictwo Ariel}, 5 | year = {1992}, 6 | address = {Kraków}, 7 | 8 | langid = {polish}, 9 | } 10 | 11 | @Book{Dil00, 12 | author = {Diller, A.}, 13 | title = {LaTeX wiersz po wierszu}, 14 | publisher = {Wydawnictwo Helion}, 15 | year = {2000}, 16 | address = {Gliwice}, 17 | 18 | langid = {polish}, 19 | } 20 | 21 | 22 | @Manual{ARM06, 23 | title = {Ada Reference Manual {ISO}/{IEC} 8652:200y({E}) {E}d. 3}, 24 | organization = {Ada Europe}, 25 | year = {2006} 26 | } 27 | 28 | @Article{BuDo03, 29 | author = {Burns, A. and Dobbing, B.}, 30 | title = {The {R}avenscar {P}rofile for Real--Time and High Integrity Systems}, 31 | journal = {Cross{T}alk}, 32 | year = {2003}, 33 | volume = {16}, 34 | number = {11}, 35 | pages = {9--12} 36 | } 37 | 38 | 39 | 40 | @InProceedings{PeDa04, 41 | author = {Peleska, J. and Große, D. and Haxthausen, A. E. and Drechsler, R.}, 42 | title = {Automated Verification for Train Control Systems}, 43 | booktitle = {Proc. of the 5th Symposium on Formal Methods for Automation and Safety in Railway and Automotive Systems (FORMS/FORMAT 2004)}, 44 | year = {2004}, 45 | pages = {252--265}, 46 | address = {Braunschweig, Germany}, 47 | month = {December} 48 | } 49 | 50 | @TechReport{BuDoVa03, 51 | author = {Burns, A. and Dobbing, B. and Vardanega, T.}, 52 | title = {Guide for the Use of the Ada Ravenscar Profile in High Integrity Systems}, 53 | institution = {University of York}, 54 | year = {2003}, 55 | number = {YCS-2003-348} 56 | } 57 | 58 | 59 | 60 | @manual{Alvis2011, 61 | organization = {AGH University of Science and Technology}, 62 | year = {2011}, 63 | title = {{On Line Alvis Manual}}, 64 | note = {\\\texttt{http://fm.ia.agh.edu.pl/alvis:manual}}, 65 | author = {Szpyrka, M.}, 66 | 67 | langid = {english}, 68 | } 69 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # README # 2 | 3 | Klasa **aghdpl** (szablon dokumentu) została opracowana w celu ułatwienia studentom naszej Uczelni składania prac dyplomowych w systemie LaTeX. Odpowiednie opcje pozwalają na skład zarówno prac inżynierskich jak i magisterskich przez studentów wszystkich wydziałów AGH. Praca może zostać przygotowana w języku polskim lub angielskim. 4 | 5 | Prezentowana wersja 4.0 jest zgodna z obowiązującym od roku akademickiego 2019/20 formatem przygotowania prac dyplomowych na Wydziale EAIiIB (zob. [Zasady dyplomowania](https://www.eaiib.agh.edu.pl/egzamin-dyplomowy-i-prace-dyplomowe/)). 6 | 7 | 8 | ## Autorzy ## 9 | 10 | * [Paweł Kłeczek](https://skos.agh.edu.pl/osoba/pawel-kleczek-8552.html) 11 | * [Grzegorz J. Nalepa](https://skos.agh.edu.pl/osoba/grzegorz-jacek-nalepa-5324.html) 12 | * [Marcin Szpyrka](https://skos.agh.edu.pl/osoba/marcin-szpyrka-5059.html) 13 | 14 | 15 | ## Pliki ## 16 | 17 | Repozytorium zawiera zawiera: 18 | * plik aghdpl.cls z klasą dokumentu, 19 | * logo AGH w formacie JPG (potrzebne przy kompilacji programem _pdflatex_), 20 | * przykładowe pliki źródłowe ilustrujące wykorzystanie klasy _aghdpl_. 21 | 22 | 23 | ## Uwagi ## 24 | 25 | * Wszystkie pliki zostały zapisane w kodowaniu **UTF-8**. 26 | * Klasa została zoptymalizowana do pracy z programem **pdflatex**. 27 | * Skrypt do usuwania wiszących przyimków: [tex-fixer](https://github.com/Alexander3/tex-fixer) (autor: Aleksander Kawala) 28 | * Uwagi dotyczące działania klasy _aghdpl_ proszę przesyłać na adres e-mail: [pkleczek@agh.edu.pl](mailto:pkleczek@agh.edu.pl) 29 | 30 | 31 | ## Changelog ## 32 | 33 | ### v4.0 ### 34 | 35 | Zmiany związane ze zmianami _Zasad dyplomowania_: 36 | * zmiana formatowania nazwy wydziału 37 | * usunięcie nazwy katedry 38 | * usunięcie _Oświadczenia o samodzielności pracy_ (obecnie dołączane jako osobny dokument) 39 | * zapewnienie odpowiedniej kolejność tytułów pracy w zależności od wersji językowej 40 | 41 | Zmiany techniczne: 42 | * zmiana sposobu podawania opcji języka pracy, obecnie jako parametr słownikowy klasy (np. `[language=en]`), domyślnie `pl` 43 | -------------------------------------------------------------------------------- /rozdzial3.tex: -------------------------------------------------------------------------------- 1 | \chapter{Przykłady elementów pracy dyplomowej} 2 | 3 | \section{Liczba} 4 | 5 | Pakiet \texttt{siunitx} zadba o to, by liczba została poprawnie sformatowana: \\ 6 | \begin{center} 7 | \num{1234567890.0987654321} 8 | \end{center} 9 | 10 | 11 | \section{Rysunek} 12 | 13 | Pakiet \texttt{subcaption} pozwala na umieszczanie w podpisie rysunku odnośników do ,,podilustracji'': \\ 14 | 15 | \begin{figure}[h] 16 | \centering 17 | \begin{subfigure}{0.35\textwidth} 18 | \centering 19 | \framebox[2.0\width]{A} 20 | \subcaption{\label{subfigure_a}} 21 | \end{subfigure} 22 | \begin{subfigure}{0.35\textwidth} 23 | \centering 24 | \framebox[2.0\width]{B} 25 | \subcaption{\label{subfigure_b}} 26 | \end{subfigure} 27 | 28 | \caption{\label{fig:subcaption_example}Przykład użycia \texttt{\textbackslash subcaption}: \protect\subref{subfigure_a} litera A, \protect\subref{subfigure_b} litera B.} 29 | \end{figure} 30 | 31 | \section{Tabela} 32 | 33 | Pakiet \texttt{threeparttable} umożliwia dodanie do tabeli adnotacji: \\ 34 | 35 | \begin{table}[h] 36 | \centering 37 | 38 | \begin{threeparttable} 39 | \caption{Przykład tabeli} 40 | \label{tab:table_example} 41 | 42 | \begin{tabularx}{0.6\textwidth}{C{1}} 43 | \toprule 44 | \thead{Nagłówek\tnote{a}} \\ 45 | \midrule 46 | Tekst 1 \\ 47 | Tekst 2 \\ 48 | \bottomrule 49 | \end{tabularx} 50 | 51 | \begin{tablenotes} 52 | \footnotesize 53 | \item[a] Jakiś komentarz\textellipsis 54 | \end{tablenotes} 55 | 56 | \end{threeparttable} 57 | \end{table} 58 | 59 | \section{Wzory matematyczne} 60 | 61 | Czasem zachodzi potrzeba wytłumaczenia znaczenia symboli użytych w równaniu. Można to zrobić z użyciem zdefiniowanego na potrzeby niniejszej klasy środowiska \texttt{eqwhere}. 62 | 63 | \begin{equation} 64 | E = mc^2 65 | \end{equation} 66 | gdzie 67 | \begin{eqwhere}[2cm] 68 | \item[$m$] masa 69 | \item[$c$] prędkość światła w próżni 70 | \end{eqwhere} 71 | 72 | Odległość półpauzy od lewego marginesu należy dobrać pod kątem najdłuższego symbolu (bądź listy symboli) poprzez odpowiednie ustawienie parametru tego środowiska (domyślnie: 2 cm). 73 | -------------------------------------------------------------------------------- /praca.tex: -------------------------------------------------------------------------------- 1 | \documentclass[12pt]{aghdpl} 2 | % \documentclass[language=en,11pt]{aghdpl} % praca w języku angielskim 3 | 4 | %--------------------------------------------------------------------------- 5 | 6 | \author{Paweł Kłeczek} 7 | \shortauthor{P. Kłeczek} 8 | 9 | %\titlePL{Przygotowanie bardzo długiej i pasjonującej pracy dyplomowej w~systemie~\LaTeX} 10 | %\titleEN{Preparation of a very long and fascinating bachelor or master thesis in \LaTeX} 11 | 12 | \titlePL{Przygotowanie pracy dyplomowej w~systemie~\LaTeX} 13 | \titleEN{Thesis in \LaTeX} 14 | 15 | 16 | \shorttitlePL{Przygotowanie pracy dyplomowej w~systemie \LaTeX} % skrócona wersja tytułu jeśli jest bardzo długi 17 | \shorttitleEN{Preparation of a long and fascinating thesis in \LaTeX} 18 | 19 | 20 | % Dopuszczalne wartości[1,2]: 21 | % * "Projekt dyplomowy" - na koniec studiów I stopnia 22 | % * "Praca dyplomowa" - na koniec studiów II stopnia 23 | % [1] Zasady dyplomowania w roku akademickim 2020/2021 (Decyzja Dziekana WEAIiIB nr 16/2020 z dnia 9 grudnia 2020 roku) 24 | % [2] Załącznik nr 1a) do Decyzji nr 16/2020 Dziekana Wydziału EAIiIB z dnia 09 grudnia 2020 r. 25 | \thesistype{Praca dyplomowa} 26 | %\thesistype{Master of Science Thesis} 27 | 28 | \supervisor{dr Paweł Kłeczek} 29 | %\supervisor{Paweł Kłeczek, PhD} 30 | 31 | \degreeprogramme{Automatyka i Robotyka} 32 | %\degreeprogramme{Automatics and Robotics} 33 | 34 | \date{2020} 35 | 36 | %\department{Katedra Informatyki Stosowanej} 37 | %\department{Department of Applied Computer Science} 38 | 39 | \faculty{Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej} 40 | %\faculty{Faculty of Electrical Engineering, Automatics, Computer Science and Biomedical Engineering} 41 | 42 | \acknowledgements{Serdecznie dziękuję \dots tu ciąg dalszych podziękowań np. dla promotora, żony, sąsiada itp.} 43 | 44 | 45 | \begin{document} 46 | 47 | \titlepages 48 | \RedefinePlainStyle 49 | 50 | \setcounter{tocdepth}{2} 51 | \tableofcontents 52 | \clearpage 53 | 54 | \include{rozdzial1} 55 | \include{rozdzial2} 56 | \include{rozdzial3} 57 | \include{tests} 58 | 59 | % itd. 60 | % \appendix 61 | % \include{dodatekA} 62 | % \include{dodatekB} 63 | % itd. 64 | 65 | \printbibliography 66 | 67 | \end{document} 68 | -------------------------------------------------------------------------------- /tests.tex: -------------------------------------------------------------------------------- 1 | \chapter{Testy} 2 | 3 | \section{Test URL-a} 4 | 5 | Wejdź na stronę \url{https://www.google.pl/} i wpisz szukane zdanie. 6 | 7 | \clearpage 8 | 9 | \section{Test dzielenia wdów} 10 | 11 | Lorem ipsum dolor sit amet, ex est alia dolorem commune. Duo modo errem no. Ea harum doming atomorum mei. Consul animal malorum cu qui, sumo dicta graece an est, vim ei clita regione. 12 | 13 | Vel eu quando doming fastidii, mei graeco indoctum an, legere theophrastus in pro. Te mei probatus eleifend interpretaris. Est no autem liber vituperatoribus, cu mea dicam constituto. Ea laudem tritani consectetuer sit, sanctus patrioque expetendis vix in. Duo id fugit adversarium signiferumque, an quot modus molestiae qui. 14 | 15 | Ut paulo definiebas pro. Mea an quod esse. Et atomorum facilisis moderatius sit. Graeco iudicabit forensibus in vel. Eam cu lorem aeterno offendit, cu vix nulla congue posidonium. Vel lucilius evertitur vituperata no. 16 | 17 | Mea eu graecis prodesset. Et tota eius nec. Ei etiam oratio has, vel ei homero eripuit invenire. Sed ex errem intellegebat, sea et elitr intellegat constituto. Nostro voluptua accusamus eos in, ei sale admodum has. Vim ne consetetur reformidans, ad has malis recusabo persequeris, per etiam virtute invenire in. 18 | 19 | Te nihil eruditi eam, sit aperiam accusam mediocritatem at. Nec ne nonumy dictas disputationi, vis ridens sadipscing ex. Harum euripidis ex vix, at consetetur instructior signiferumque mel, at mei elitr honestatis. Id sit congue vituperata. Temporibus eloquentiam no eum. 20 | 21 | Pro id esse phaedrum, nostro iudicabit eos ut. Sit ea aperiam alienum, harum audiam voluptua cu usu. Iudico invenire te vel, id suscipit disputando pri. Ut sumo expetenda mea. 22 | 23 | Cum at idque nullam aperiam, vis ex aeque ponderum luptatum. Vix soluta graeco dissentiet ut, ut est reque periculis similique, ut dicta dicant repudiare sea. Ne dolor legendos signiferumque ius, at eirmod convenire qui. Suas numquam conceptam mei ex. Autem homero eos et, sea dicta alienum iudicabit ut. 24 | 25 | Ea duo consulatu vulputate, id elit perpetua cum. His ei aeque saepe audiam. Prompta laoreet facilisi ne sed, per hinc consetetur te, oratio fuisset ullamcorper mel at. Quis suscipiantur ne nec, agam efficiendi usu in. 26 | 27 | Vis eu iuvaret singulis appellantur, usu ex saepe omittantur. Sed possit mnesarchum at, usu illum choro oratio in, et debet dolor vix. Mel aperiri suscipiantur ne, te per illum fuisset, lorem pericula mei ad. Pri id tale lucilius dissentiet, id sea sonet expetenda. Agam sensibus persequeris sed no, eum at tamquam sanctus. 28 | 29 | Omnis exerci soleat ut vis. Rebum vidisse sea ex. Ius animal gubergren efficiantur ad, mollis probatus nec ut. Meis platonem ex vel, ut qui tale tritani equidem. Vide meis fuisset mel at, nam an assum delenit gubergren. No illum reprimique vim, te augue nullam per, ludus dicant suscipiantur ne sed. 30 | 31 | An pri mediocrem deseruisse, ad sumo audire dissentiet sit. Sit ea civibus lobortis. Etiam ceteros commune ei vis. Pro ei equidem vivendo. Quo ne prima periculis omittantur, ex rebum veritus sit, ei dolor maiestatis mea. 32 | 33 | \subsection{Lorem ipsum} 34 | 35 | Et mel munere quodsi sapientem. Essent legimus ne pro. Est ornatus definiebas et. No habemus docendi ius, purto sapientem mei at. Tamquam vivendo necessitatibus has at, no habemus praesent nec. No quo modus iudicabit scriptorem. Modus intellegebat ea vim. Cu ius lorem regione offendit, ne accusata sensibus vituperatoribus quo. Sit ut iuvaret indoctum. Ut mea sale justo. Sapientem definitionem ius eu, at sea quem doming. Facete conclusionemque ut nec, vix at duis eius. Eos quot consequuntur et, ornatus liberavisse ne mei. 36 | 37 | Per an dicam commodo tractatos, usu in timeam numquam tacimates. Case delectus eu sea, usu audiam eleifend tincidunt id, nec at decore discere mentitum. Ut elit veri eloquentiam his, ceteros tractatos ea has. Duo impetus scribentur et, eu quo errem everti, ad recusabo consulatu ius. Fastidii comprehensam pri ea, ex duo augue quando denique. Eos aeterno deserunt sententiae cu, ius quas tation patrioque ex. 38 | 39 | Id autem scripta explicari nec, congue quidam possit te sit. Et usu ipsum bonorum graecis, ferri verear deterruisset eum cu. Purto porro accommodare cu vim. Cum ei tritani pertinacia voluptaria. -------------------------------------------------------------------------------- /rozdzial2.tex: -------------------------------------------------------------------------------- 1 | \chapter{Pierwszy dokument} 2 | \label{cha:pierwszyDokument} 3 | 4 | W rozdziale tym przedstawiono podstawowe informacje dotyczące struktury prostych plików \LaTeX a. Omówiono również metody kompilacji plików z zastosowaniem programów \emph{latex} oraz \emph{pdflatex}. 5 | 6 | %--------------------------------------------------------------------------- 7 | 8 | \section{Struktura dokumentu} 9 | \label{sec:strukturaDokumentu} 10 | 11 | Plik \LaTeX owy jest plikiem tekstowym, który oprócz tekstu zawiera polecenia formatujące ten tekst (analogicznie do języka HTML). Plik składa się z dwóch części: 12 | \begin{enumerate}%[1)] 13 | \item Preambuły -- określającej klasę dokumentu oraz zawierającej m.in. polecenia dołączającej dodatkowe pakiety; 14 | 15 | \item Części głównej -- zawierającej zasadniczą treść dokumentu. 16 | \end{enumerate} 17 | 18 | 19 | \begin{lstlisting} 20 | \documentclass[a4paper,12pt]{article} % preambuła 21 | \usepackage[polish]{babel} 22 | \usepackage[utf8]{inputenc} 23 | \usepackage[T1]{fontenc} 24 | \usepackage{times} 25 | 26 | \begin{document} % część główna 27 | 28 | \section{Sztuczne życie} 29 | 30 | % treść 31 | % ąśężźćńłóĘŚĄŻŹĆŃÓŁ 32 | 33 | \end{document} 34 | \end{lstlisting} 35 | 36 | Nie ma żadnych przeciwwskazań do tworzenia dokumentów w~\LaTeX u w~języku polskim. Plik źródłowy jest zwykłym plikiem tekstowym i~do jego przygotowania można użyć dowolnego edytora tekstów, a~polskie znaki wprowadzać używając prawego klawisza \texttt{Alt}. Jeżeli po kompilacji dokumentu polskie znaki nie są wyświetlane poprawnie, to na 95\% źle określono sposób kodowania znaków (należy zmienić opcje wykorzystywanych pakietów). 37 | 38 | 39 | %--------------------------------------------------------------------------- 40 | 41 | \section{Kompilacja} 42 | \label{sec:kompilacja} 43 | 44 | 45 | Załóżmy, że przygotowany przez nas dokument zapisany jest w pliku \texttt{test.tex}. Kolejno wykonane poniższe polecenia (pod warunkiem, że w pierwszym przypadku nie wykryto błędów i kompilacja zakończyła się sukcesem) pozwalają uzyskać nasz dokument w formacie PDF: 46 | \begin{lstlisting} 47 | latex test.tex 48 | dvips test.dvi -o test.ps 49 | ps2pdf test.ps 50 | \end{lstlisting} 51 | % 52 | lub za pomocą PDF\LaTeX: 53 | \begin{lstlisting} 54 | pdflatex test.tex 55 | \end{lstlisting} 56 | 57 | Przy pierwszej kompilacji po zmianie tekstu, dodaniu nowych etykiet itp., \LaTeX~tworzy sobie spis rozdziałów, obrazków, tabel itp., a dopiero przy następnej kompilacji korzysta z tych informacji. 58 | 59 | W pierwszym przypadku rysunki powinny być przygotowane w~formacie eps, a~w~drugim w~formacie PDF. Ponadto, jeżeli używamy polecenia \texttt{pdflatex test.tex} można wstawiać grafikę bitową (np. w formacie JPEG). 60 | 61 | 62 | 63 | %--------------------------------------------------------------------------- 64 | 65 | \section{Narzędzia} 66 | \label{sec:narzedzia} 67 | 68 | 69 | Do przygotowania pliku źródłowego może zostać wykorzystany dowolny edytor tekstowy. Niektóre edytory, np. GEdit, mają wbudowane moduły ułatwiające składanie tekstów w \LaTeX u (kolorowanie składni, skrypty kompilacji, itp.). 70 | 71 | Jednym z bardziej znanych środowisk do składania dokumentów \LaTeX a jest {\em TeXstudio}, oferujące kompletne środowisko pracy. Zobacz: \url{http://www.texstudio.org} 72 | 73 | 74 | Bardzo dobrym środowiskiem jest również edytor gEdit z wtyczką obsługującą \LaTeX a. Jest to standardowy edytor środowiska Gnome. Po instalacji wtyczki obsługującej \LaTeX~ zamienia się w wygodne i szybkie środowisko pracy. 75 | 76 | \textbf{Dla testu łamania stron powtórzenia powyższego tekstu.} 77 | 78 | 79 | Do przygotowania pliku źródłowego może zostać wykorzystany dowolny edytor tekstowy. Niektóre edytory, np. GEdit, mają wbudowane moduły ułatwiające składanie tekstów w LaTeXu (kolorowanie składni, skrypty kompilacji, itp.). 80 | Jednym z bardziej znanych środowisk do składania dokumentów \LaTeX a jest {\em TeXstudio}, oferujące kompletne środowisko pracy. Zobacz: \url{http://www.texstudio.org} 81 | Bardzo dobrym środowiskiem jest również edytor gEdit z wtyczką obsługującą \LaTeX a. Jest to standardowy edytor środowiska Gnome. Po instalacji wtyczki obsługującej \LaTeX~ zamienia się w wygodne i szybkie środowisko pracy. 82 | Po instalacji wtyczki obsługującej \LaTeX~ zamienia się w wygodne i szybkie środowisko pracy. 83 | 84 | Do przygotowania pliku źródłowego może zostać wykorzystany dowolny edytor tekstowy. Niektóre edytory, np. GEdit, mają wbudowane moduły ułatwiające składanie tekstów w LaTeXu (kolorowanie składni, skrypty kompilacji, itp. itd. itp.). 85 | Jednym z bardziej znanych środowisk do składania dokumentów \LaTeX a jest {\em TeXstudio}, oferujące kompletne środowisko pracy. Zobacz: \url{http://www.texstudio.org} 86 | Bardzo dobrym środowiskiem jest również edytor gEdit z wtyczką obsługującą \LaTeX a. Jest to standardowy edytor środowiska Gnome. Po instalacji wtyczki obsługującej \LaTeX~ zamienia się w wygodne i szybkie środowisko pracy. 87 | 88 | Do przygotowania pliku źródłowego może zostać wykorzystany dowolny edytor tekstowy. Niektóre edytory, np. GEdit, mają wbudowane moduły ułatwiające składanie tekstów w LaTeXu (kolorowanie składni, skrypty kompilacji, itp.). 89 | Jednym z bardziej znanych środowisk do składania dokumentów \LaTeX a jest {\em TeXstudio}, oferujące kompletne środowisko pracy. Zobacz: \url{http://www.texstudio.org} 90 | Bardzo dobrym środowiskiem jest również edytor gEdit z wtyczką obsługującą \LaTeX a. Jest to standardowy edytor środowiska Gnome. Po instalacji wtyczki obsługującej \LaTeX~ zamienia się w wygodne i szybkie środowisko pracy. 91 | 92 | %--------------------------------------------------------------------------- 93 | 94 | \section{Przygotowanie dokumentu} 95 | \label{sec:przygotowanieDokumentu} 96 | 97 | Plik źródłowy \LaTeX a jest zwykłym plikiem tekstowym. Przygotowując plik 98 | źródłowy warto wiedzieć o kilku szczegółach: 99 | 100 | \begin{itemize} 101 | \item 102 | Poszczególne słowa oddzielamy spacjami, przy czym ilość spacji nie ma znaczenia. 103 | Po kompilacji wielokrotne spacje i tak będą wyglądały jak pojedyncza spacja. 104 | Aby uzyskać {\em twardą spację}, zamiast znaku spacji należy użyć znaku {\em 105 | tyldy}. 106 | 107 | \item 108 | Znakiem końca akapitu jest pusta linia (ilość pusty linii nie ma znaczenia), a 109 | nie znaki przejścia do nowej linii. 110 | 111 | \item 112 | \LaTeX~sam formatuje tekst. \textbf{Nie starajmy się go poprawiać}, chyba, że 113 | naprawdę wiemy co robimy. 114 | \end{itemize} 115 | 116 | 117 | -------------------------------------------------------------------------------- /aghdpl.cls: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | % 3 | % File: aghdpl.cls (LaTeX Document class option "aghdpl") 4 | % 5 | % Author: Paweł Kłeczek (pkleczek@agh.edu.pl) 6 | % Grzegorz J. Nalepa (gjn@agh.edu.pl) 7 | % Marcin Szpyrka (mszpyrka@agh.edu.pl) 8 | % AGH University of Science and Technology, Kraków, POLAND 9 | % 10 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 11 | 12 | \message{*** [aghdpl.cls] --- (PK, GJN, MSz) v4.0 <2020-11-03> ***} 13 | 14 | \newif\ifpdflatex\pdflatexfalse 15 | \NeedsTeXFormat{LaTeX2e} % 16 | \ProvidesClass{aghdpl} 17 | 18 | \RequirePackage{kvoptions} 19 | 20 | \DeclareStringOption[pl]{language} 21 | \ProcessKeyvalOptions* 22 | 23 | \DeclareOption{pdflatex}{\pdflatextrue} 24 | \DeclareOption*{\PassOptionsToClass{\CurrentOption}{report}} 25 | \ProcessOptions\LoadClass[a4paper,twoside,openright]{report} 26 | 27 | \RequirePackage{xstring} 28 | 29 | \show\aghdpl@language 30 | 31 | \newcommand{\ThesisLanguage}{pl} 32 | \IfStrEqCase{\aghdpl@language}{% 33 | {en}{\renewcommand{\ThesisLanguage}{en}}% 34 | {pl}{\renewcommand{\ThesisLanguage}{pl}}% 35 | }[\PackageError{aghdpl}{Invalid thesis language.}{Available languages: Polish (pl), English (en)}] 36 | 37 | \show\ThesisLanguage 38 | 39 | \RequirePackage{times} 40 | \RequirePackage[T1]{fontenc} 41 | 42 | % Lista wszystkich języków stanowiących języki pozycji bibliograficznych użytych w pracy. 43 | % (Zgodnie z zasadami tworzenia bibliografii każda pozycja powinna zostać utworzona zgodnie z zasadami języka, w którym dana publikacja została napisana.) 44 | \RequirePackage[english,polish]{babel} 45 | 46 | % Użyj polskiego łamania wyrazów (zamiast domyślnego angielskiego). 47 | \RequirePackage{polski} 48 | 49 | % Użyj kodowania UTF-8. 50 | \RequirePackage[utf8]{inputenc} 51 | 52 | \RequirePackage{mathtools} 53 | \RequirePackage{amsfonts} 54 | \RequirePackage{amsmath} 55 | \RequirePackage{amsthm} 56 | 57 | \RequirePackage{graphicx} 58 | \RequirePackage[usenames]{color} 59 | \RequirePackage{url} 60 | \RequirePackage{titlesec} 61 | \RequirePackage{tocloft} 62 | 63 | \RequirePackage[font=small, labelfont=bf, labelsep=period]{caption} 64 | \RequirePackage{subcaption} 65 | \RequirePackage{enumerate} 66 | \RequirePackage{enumitem} 67 | 68 | % ============================================================================= 69 | % SEC: Ustawienia związane z formatowaniem tekstu 70 | % ============================================================================= 71 | 72 | \RequirePackage{geometry} 73 | 74 | \geometry{lmargin=30mm, rmargin=20mm, tmargin=30mm, bmargin=30mm, foot=10mm, head=10mm} % rozmiary marginesów i nagłówka/stopki 75 | \linespread{1.25} % interlinia 76 | \renewcommand{\labelitemi}{--} % znak wypunktowania użyty w liście wypunktowania 77 | 78 | \RequirePackage[all,defaultlines=2]{nowidow} % Kontrola sierot i wdów - działa lepiej niż \widowpenalty i \clubpenalty 79 | \brokenpenalty=10000\relax 80 | 81 | % ============================================================================= 82 | % SEC: Polecenia wymagane m.in. do generowania strony tytułowej 83 | % ============================================================================= 84 | 85 | \def\shorttitlePL#1 {\gdef\@shorttitlePL{#1}} 86 | \def\shorttitleEN#1 {\gdef\@shorttitleEN{#1}} 87 | \def\shortauthor#1 {\gdef\@shortauthor{#1}} 88 | \def\titlePL#1 {\gdef\@titlePL{#1}} 89 | \def\titleEN#1 {\gdef\@titleEN{#1}} 90 | \def\faculty#1 {\gdef\@faculty{#1}} 91 | \def\thesistype#1 {\gdef\@thesistype{#1}} 92 | \def\supervisor#1 {\gdef\@supervisor{#1}} 93 | \def\acknowledgements#1 {\gdef\@acknowledgements{#1}} 94 | \def\department#1 {\gdef\@department{#1}} 95 | \def\degreeprogramme#1 {\gdef\@degreeprogramme{#1}} 96 | 97 | %------------------------------------------------------------------------------ 98 | 99 | \IfStrEqCase{\ThesisLanguage}{ 100 | {pl}{% 101 | \def\thesisheaders{ 102 | \fancyfoot[LE,RO]{\small \@shortauthor\quad\textit{\@shorttitlePL}} 103 | } 104 | 105 | \def\thesistable{ 106 | \begin{tabular}{p{45mm}l} 107 | Autor: & {\itshape \@author}\\[-1mm] 108 | Kierunek studiów: & {\itshape \@degreeprogramme}\\[-1mm] 109 | Opiekun pracy: & {\itshape \@supervisor}\\ 110 | \end{tabular} 111 | } 112 | } 113 | {en}{% 114 | \def\thesisheaders{ 115 | \fancyfoot[LE,RO]{\small \@shortauthor\quad\textit{\@shorttitleEN}} 116 | } 117 | 118 | \def\thesistable{ 119 | \begin{tabular}{p{45mm}l} 120 | Author: & {\itshape \@author}\\[-1mm] 121 | Degree programme: & {\itshape \@degreeprogramme}\\[-1mm] 122 | Supervisor: & {\itshape \@supervisor}\\ 123 | \end{tabular} 124 | } 125 | }% 126 | } 127 | 128 | \newcommand{\titlepages}{% 129 | 130 | \titlepage 131 | 132 | \begin{center} 133 | \vspace*{1.5cm} 134 | 135 | \includegraphics[scale=0.6]{agh} 136 | 137 | \vspace*{2mm} 138 | { 139 | \scalebox{0.95}{\sffamily{\large{\bfseries{\scshape Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie}}}} 140 | 141 | \vspace*{1mm} 142 | 143 | {\sffamily\small\bfseries \@faculty} 144 | } 145 | \vspace*{15mm} 146 | 147 | {\sffamily\Large \@thesistype} 148 | \vspace*{9mm} 149 | 150 | {\sffamily\Large\itshape 151 | \IfStrEqCase{\ThesisLanguage}{% 152 | {pl}{\@titlePL} 153 | {en}{\@titleEN} 154 | } 155 | } 156 | \vspace*{1mm} 157 | 158 | {\sffamily\Large\itshape 159 | \IfStrEqCase{\ThesisLanguage}{% 160 | {pl}{\@titleEN} 161 | {en}{\@titlePL} 162 | } 163 | } 164 | \vspace{\fill} 165 | \end{center} 166 | 167 | \noindent 168 | { 169 | \sffamily 170 | \thesistable 171 | } 172 | 173 | \vspace*{17mm} 174 | 175 | \centerline{\small\sffamily Kraków, \@date} 176 | 177 | \clearpage 178 | \thispagestyle{empty} 179 | 180 | % Strona z podziękowaniami. 181 | {~}\vspace{20mm} 182 | 183 | \clearpage 184 | \titlepage 185 | 186 | \vspace*{15cm} \vfill 187 | \begin{flushright} 188 | \begin{minipage}[!h]{10cm} 189 | {\Large\itshape \@acknowledgements} 190 | \end{minipage} 191 | \end{flushright} 192 | 193 | \clearpage 194 | \thispagestyle{empty} 195 | 196 | ~ \newpage 197 | 198 | % Obecna strona będzie mieć nr 5. 199 | \setcounter{page}{5} 200 | } 201 | 202 | 203 | % ============================================================================= 204 | % SEC: Ustawienia nagłówków i stopek 205 | % ============================================================================= 206 | 207 | \RequirePackage{fancyhdr} 208 | 209 | \pagestyle{fancy} 210 | \renewcommand{\chaptermark}[1]{\markboth{\thechapter.\ #1}{}} 211 | \renewcommand{\sectionmark}[1]{\markright{\thesection.\ #1}} 212 | 213 | \renewcommand{\headrulewidth}{0.5pt} 214 | \renewcommand{\footrulewidth}{0.5pt} 215 | \fancyhf{} 216 | \fancyhead{} 217 | \fancyhead[RE,LO]{\slshape{\small \rightmark}} 218 | \fancyhead[RO,LE]{\bfseries \thepage} 219 | 220 | \thesisheaders 221 | 222 | \frenchspacing 223 | \sloppy 224 | \flushbottom 225 | 226 | 227 | % ============================================================================= 228 | % SEC: Ustawienia formatowania tytułów rozdziałów, podrozdziałów, itd. 229 | % ============================================================================= 230 | 231 | \titleformat{\chapter}[block] 232 | {\bfseries\LARGE}{\filright \LARGE\thechapter. }{0ex}{} 233 | %odstępy: lewy, góra, dół 234 | \titlespacing{\chapter}{0pt}{17mm}{19mm} 235 | \titleformat{\section}[block] 236 | {\bfseries\Large}{\filright \Large\thesection. }{0ex}{} 237 | \titlespacing{\section}{7mm}{8mm plus 0mm minus 1mm}{4mm plus 0mm minus 1mm} 238 | \titleformat{\subsection}[block] 239 | {\bfseries\large}{\filright \large\thesubsection. }{0ex}{} 240 | \titlespacing{\subsection}{7mm}{6mm}{2.5mm} 241 | \titleformat{\subsubsection}[block] 242 | {\bfseries\normalsize}{\filright \normalsize\thesubsubsection. }{0ex}{} 243 | \titlespacing{\subsubsection}{7mm}{3mm}{1.5mm} 244 | 245 | % Określ maksymalny poziom numeracji (głębsze poziomy nie będą miały numeru). 246 | % (np. 1 - chapter, 2 - section, itd.) 247 | \setcounter{secnumdepth}{4} 248 | 249 | 250 | % ============================================================================= 251 | % SEC: Ustawienia generowania spisu treści i spisu rysunków 252 | % ============================================================================= 253 | 254 | \renewcommand{\cfttoctitlefont}{\bfseries\Large} 255 | \renewcommand{\cftbeforetoctitleskip}{20mm} 256 | \renewcommand{\cftaftertoctitleskip}{19mm} 257 | \renewcommand{\cftchapleader}{\cftdotfill{\cftdot}} 258 | \renewcommand{\cftsecleader}{\cftdotfill{\cftdot}} 259 | \renewcommand{\cftsubsecleader}{\cftdotfill{\cftdot}} 260 | \renewcommand{\cftchapaftersnum}{.} 261 | \renewcommand{\cftsecaftersnum}{.} 262 | \renewcommand{\cftsubsecaftersnum}{.} 263 | \setlength{\cftparskip}{2pt} 264 | \setlength{\cftbeforechapskip}{0mm} 265 | \renewcommand{\cftchappagefont}{\normalsize} 266 | 267 | 268 | % ============================================================================= 269 | % SEC: Ustawienia wyświetlania liczb (zgodne z polskimi zwyczajami typograficznymi) 270 | % ============================================================================= 271 | 272 | \RequirePackage{siunitx} 273 | 274 | \sisetup{ 275 | output-decimal-marker = {,}, % symbol dziesiętny 276 | % round-mode=places, 277 | % round-precision=4, 278 | group-separator={~}, % separator grupy 3 cyfr 279 | } 280 | 281 | % ============================================================================= 282 | % SEC: Ustawienia wyświetlania URL-i 283 | % ============================================================================= 284 | 285 | % Zmiana kroju czcionki URL-i z czcionki o stałej szerokości na szeryfową z kursywą. 286 | \renewcommand\UrlFont{\rmfamily\itshape} 287 | 288 | 289 | % ============================================================================= 290 | % SEC: Ustawienia podpisów pod ilustracjami 291 | % ============================================================================= 292 | 293 | \captionsetup[subfigure]{labelfont=md} 294 | \captionsetup{% 295 | % Użyj okrągłych nawiasów wokół odwołań do "podilustracji". 296 | subrefformat=parens, 297 | % Margines z obu stron podpisu. 298 | margin=2cm, 299 | % W przypadku podpisów mieszczących się w jednej linii nie stosuj justowania, tylko wyśrodkuj cały podpis. 300 | singlelinecheck=on, 301 | } 302 | 303 | 304 | % ============================================================================= 305 | % SEC: Konfiguracja bibliografii 306 | % ============================================================================= 307 | 308 | \RequirePackage[ 309 | style=numeric, 310 | sorting=none, 311 | % 312 | % Zastosuj styl wpisu bibliograficznego właściwy językowi publikacji. 313 | language=autobib, 314 | autolang=other, 315 | % Zapisuj datę dostępu do strony WWW w formacie RRRR-MM-DD. 316 | urldate=iso8601, 317 | % Nie dodawaj numerów stron, na których występuje cytowanie. 318 | backref=false, 319 | % Podawaj ISBN. 320 | isbn=true, 321 | % Nie podawaj URL-i, o ile nie jest to konieczne. 322 | url=false, 323 | % 324 | % Ustawienia związane z polskimi normami dla bibliografii. 325 | maxbibnames=3, 326 | % Wybór silnika generowania bibliografii: 327 | % backend=bibtex % - jeżeli używamy BibTeX-a 328 | backend=biber % - jeżeli używamy biber-a 329 | ]{biblatex} 330 | 331 | \RequirePackage{csquotes} 332 | % Ponieważ `csquotes` nie posiada polskiego stylu, można skorzystać z mocno zbliżonego stylu chorwackiego. 333 | \DeclareQuoteAlias{croatian}{polish} 334 | 335 | \addbibresource{bibliografia.bib} 336 | 337 | % Nie wyświetlaj wybranych pól. 338 | %\AtEveryBibitem{\clearfield{note}} 339 | 340 | \DeclareFieldFormat*{title}{,,\textit{#1}''} 341 | 342 | 343 | % ============================================================================= 344 | % SEC: Konfiguracja listingów 345 | % ============================================================================= 346 | 347 | % Użyj czcionki kroju Courier. 348 | \RequirePackage{courier} 349 | 350 | \RequirePackage{listings} 351 | \lstloadlanguages{TeX} 352 | 353 | \lstset{ 354 | literate={ą}{{\k{a}}}1 355 | {ć}{{\'c}}1 356 | {ę}{{\k{e}}}1 357 | {ó}{{\'o}}1 358 | {ń}{{\'n}}1 359 | {ł}{{\l{}}}1 360 | {ś}{{\'s}}1 361 | {ź}{{\'z}}1 362 | {ż}{{\.z}}1 363 | {Ą}{{\k{A}}}1 364 | {Ć}{{\'C}}1 365 | {Ę}{{\k{E}}}1 366 | {Ó}{{\'O}}1 367 | {Ń}{{\'N}}1 368 | {Ł}{{\L{}}}1 369 | {Ś}{{\'S}}1 370 | {Ź}{{\'Z}}1 371 | {Ż}{{\.Z}}1, 372 | basicstyle=\footnotesize\ttfamily, 373 | } 374 | 375 | 376 | % ============================================================================= 377 | % SEC: Konfiguracja tabel 378 | % ============================================================================= 379 | 380 | \RequirePackage{array} 381 | \RequirePackage{tabularx} 382 | \RequirePackage{multirow} 383 | \RequirePackage{booktabs} 384 | \RequirePackage{makecell} 385 | \RequirePackage[flushleft]{threeparttable} 386 | 387 | % defines the X column to use m (\parbox[c]) instead of p (`parbox[t]`) 388 | \newcolumntype{C}[1]{>{\hsize=#1\hsize\centering\arraybackslash}X} 389 | 390 | % ============================================================================= 391 | % SEC: INNE 392 | % ============================================================================= 393 | 394 | \newcommand{\RedefinePlainStyle}{% 395 | % Ponowne zdefiniowanie stylu `plain`, aby usunąć numer strony z pierwszej strony spisu treści i poszczególnych rozdziałów. 396 | \fancypagestyle{plain} 397 | { 398 | % Usuń nagłówek i stopkę 399 | \fancyhf{} 400 | % Usuń linie. 401 | \renewcommand{\headrulewidth}{0pt} 402 | \renewcommand{\footrulewidth}{0pt} 403 | } 404 | } 405 | 406 | \AtBeginDocument{ 407 | \renewcommand{\tablename}{Tabela} 408 | \renewcommand{\figurename}{Rys.} 409 | } 410 | 411 | % ============================================================================= 412 | % SEC: Niestandardowe środowiska 413 | % ============================================================================= 414 | 415 | % ---------------------------------------------------------------------------- 416 | % Środowisko do tworzenia opisów symboli użytych w równaniu 417 | % ---------------------------------------------------------------------------- 418 | 419 | \SetLabelAlign{parright}{\parbox[t]{\labelwidth}{\raggedleft#1}} 420 | \setlist[description]{style=multiline, topsep=10pt, align=parright} 421 | 422 | % Odstęp po obu stronach półpauzy. 423 | \newlength{\descriptiondashgap} 424 | \setlength{\descriptiondashgap}{0.5em} 425 | 426 | % Element na liście symboli matematycznych użytych w równaniu (symbol wyrównany do prawej, oddzielony półpauzą od definicji) 427 | \renewcommand*\descriptionlabel[1]{\hspace \labelsep \normalfont \bfseries #1 \mdseries\hspace{\descriptiondashgap}--\hspace{\descriptiondashgap}} 428 | 429 | % Odległość półpauzy od lewego marginesu. 430 | \newlength{\eqwheremargin} 431 | \setlength{\eqwheremargin}{2cm} 432 | 433 | \newenvironment{eqwhere}[1][] 434 | {% 435 | \setlength{\eqwheremargin}{#1}% 436 | \begin{description}[leftmargin=\eqwheremargin, itemsep=0cm, labelsep=0cm] 437 | } 438 | {\end{description}} 439 | --------------------------------------------------------------------------------