Sazba zdrojových kód. Jakub Kadl ík 20. 03. 2014



Podobné dokumenty
e²ení systém lineárních rovnic pomocí s ítací, dosazovací a srovnávací metody

P íklad 1 (Náhodná veli ina)

Základy graky. Jan Hamá ek. 13. zá í 2016

3 Vývojová prostředí, základní prvky jazyka Java, konvence jazyka Java

LATEX sazba zdrojového kódu

Vektory. Vektorové veli iny

Kompilace Makele C++ Zadání úlohy. Kompilace a Makele. OSD. O. Fi²er. April 18, O. Fi²er Kompilace, Makele

Efekt Zoom dokumentace testovacího prost edí - semestrální práce BI-SKJ

Limity funkcí v nevlastních bodech. Obsah

Pravd podobnost a statistika - cvi ení. Simona Domesová místnost: RA310 (budova CPIT) web:

Termíny zkoušek Komise Komise. subkomise 1 (obhaj.) :30 B subkomise 2 (obhaj.) :30 B8 120

PARADIGMATA PROGRAMOVÁNÍ 2A MAKRA I

Skalární sou in. Úvod. Denice skalárního sou inu

Kelvin v kapkový generátor

Binární operace. Úvod. Pomocný text

Integrování jako opak derivování

C/C++ projekt v programu NetBeans

Co je L Y X? Vlastnosti a nástroje Instalace Zdroje. Adam Farnik. V B - TU Ostrava. Elektronické publikování, 2008

DeepBurner (testování UI)

Informace a návod k pouºití ablony pro BP student FZS v Plzni. Ing. Petr V elák 20. únor 2012

Teorie her. Klasikace. Pomocný text

Uložené procedury Úvod ulehčit správu zabezpečení rychleji

Vektor náhodných veli in - práce s více prom nnými

Jemný úvod do editoru Vim

PARADIGMATA PROGRAMOVÁNÍ 2A MAKRA III

Stru né pokyny. D kujeme vám, že jste si k uspokojení svých pot eb v oblasti p enosných po íta vybrali notebook Acer.

ep ová ochrana tranzistoru

Seminá e. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, sem. 1-13

Sazba zdrojových kódů (balíček listings)

Základní praktikum laserové techniky

2. Ur íme sudost/lichost funkce a pr se íky s osami. 6. Na záv r na rtneme graf vy²et ované funkce. 8x. x 2 +4

PROGRAMOVÁNÍ V C++ CVIČENÍ

Ergodické Markovské et zce

Odhad sm si s dynamickým ukazovátkem a statickými komponentami 1

na za átku se denuje náhodná veli ina

Prezentace. Ing. Petr V elák 6. b ezna 2009

Java Cvičení 01. CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics

Specifikace systému ESHOP

Platební styk (mezibankovní, klientský) Jitka Vachtová 28. íjna 2011

Transformace ER SQL. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 9

Rovnice a nerovnice. Posloupnosti.

Státnice - Rekurzivní a rekurzivn spo etné mnoºiny

Derivování sloºené funkce

Text m ºe být postupn upravován a dopl ován. Datum poslední úpravy najdete u odkazu na staºení souboru. Veronika Sobotíková

T i hlavní v ty pravd podobnosti

<surface name="pozadi" file="obrazky/pozadi/pozadi.png"/> ****************************************************************************

Jak postupovat p i vyhledávání literárních zdroj

Návrh realizace transformátoru Thane C. Heinse IV.

Konceptuální modelování

Online konstrukce deterministického zásobníkového automatu pro indexování strom. Bc. Ond ej Brynda

IP kamerový systém Catr - uºivatelský návod k obsluze

Inovace (praxe) 1 Úvod, p edstavení rmy, omezení práce. 16. listopadu 2010, Organizace a informace. Karel Kohout

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

Algoritmizace a programování

Národní park umava. 9. kv tna Hnutí Duha

Státní maturita 2010 Maturitní generálka 2010 Matematika: didaktický test - základní úrove obtíºnosti MAGZD10C0T01 e²ené p íklady

Odhad sm si se statickým ukazovátkem i komponentami 1

SCHÉMA PROCESU MTM ÚPRAV V SYSTÉMU INVESMARK FUTURA

CERIT-SC, MetaCentrum

Testování p ístupnosti stránek státní správy ƒeské republiky. Václav Trpák

1. (18 bod ) Náhodná veli ina X je po et rub p i 400 nezávislých hodech mincí. a) Pomocí ƒeby²evovy nerovnosti odhadn te pravd podobnost

P EHLED FUNKCÍ BRICX. Jan Mare²

simphoto verze Manuál k aplikaci Autor: Datum:

Dotazování nad stromem abstraktní syntaxe

Relace. Základní pojmy.

Online komunikace a videokonference

BOZP - akcepta ní testy

Poznámky k p edm tu: Práce s po íta em a programování

Úvod. Matematická ekonomie 1. Jan Zouhar. 20. zá í 2011

Manuál Kentico CMSDesk pro KDU-ČSL

Jevy, nezávislost, Bayesova v ta

Fakulta elektrotechnická

Návrh realizace transformátoru Thane C. Heinse III.

Uºivatelská p íru ka Octopus

IPCorder KNR-100 Instala ní p íru ka

ízení Tvorba kritéria 2. prosince 2014

Team Engineering. New in V13. TIA Portal news. Restricted / Siemens AG All Rights Reserved.

Manuál publicity projektu a pokyny k používání znaku a definice standardních barev

Cvi ení 7. Docházka a testík - 15 min. Distfun 10 min. Úloha 1

e²ení 5. série Binární kódy autor: Vlá a

Publicita projektu, udr itelnost projektu, pracovní místa, ú etnictví projektu. Seminá PAAK ízení projekt

Modelování v elektrotechnice

2 Datové typy v jazyce C

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

Jméno: P íjmení: Datum: 17. ledna 2018 Nechci zápo et p i hodnocení niº²ím neº (nezávazné): vadí mi vystavení mého hodnocení na internetu.

Lineární harmonický oscilátor

Základní pojmy teorie mnoºin.

Cvi ení 1. Modelování systém a proces. Mgr. Lucie Kárná, PhD. March 2, Organizace cvi ení 2 Matlab Za ínáme Základní operace Základní funkce

Základy programování (IZP)

Objektov orientované programování. C++ Akademie SH. 7. Objektov orientované programování. Michal Kvasni ka. Za áte níci C++ 2.

PARADIGMATA PROGRAMOVÁNÍ 2 AKTUÁLNÍ POKRAƒOVÁNÍ

P íklady k prvnímu testu - Pravd podobnost

Uºivatelská p íru ka Set-top Boxu

Reálná ísla a posloupnosti Jan Malý

SQL - úvod. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 6

Správné vytvoření a otevření textového souboru pro čtení a zápis představuje

e²ení 1. série Úvodní gulá²

Mapa kamer mobilní aplikace pro Android

Základní praktikum laserové techniky

Transkript:

Sazba zdrojových kód Jakub Kadl ík 20. 03. 2014 1

Obsah 1 Základní prost edí verbatim 3 2 Balí ek listings 3 3 Sazba kódu z externího souboru 5 4 Téma Solarized 5 4.1 Solarized light............................. 6 4.2 Solarized dark............................. 7 2

1 Základní prost edí verbatim Základní, LaTeXem nabízené, prost edí pro sazbu zdrojových kódu se nazývá verbatim. Nevyºaduje v bec ºádnou konguraci a lze ho okamºit pouºít. Kaºdá mince má ale dv strany a verbatim díky své jednoduchosti nepodporuje zvýraz ování syntaxe, ani p íli²né moºnosti kongurace. Hodí se spí²e pro ernobíle ti²t né texty. \ begin verbatim i n t main ( i n t argc, char ** argv ) p r i n t f (" Hello world " ) ; \end verbatim Listing 1: Ukázka zdrojového kódu: verbatim int main(int argc, char **argv) // Just print "Hello world" string to standard output printf("hello world"); Sázený zdrojový kód musí byt odsazován mezerami, nikoliv tabulátory. 2 Balí ek listings Balí ek listings naopak nabízí rozmanité moºnosti nastavení, zvýraz ování syntaxe mnoha r zných jazyk, výb r barev, vysázení kódu z externího souboru a dal²í zajímavé vlastnosti. Ve výchozím nastavení se p íli² neli²í od prost edí verbatim a jeho pouºití tedy není o moc sloºit j²í. Nejd íve je pot eba na íst balí ek listings, nastavit jej dle svých p edstav pomocí lstset a poté pouºít prost edí lstlistings podobn jako verbatim. Balí ek bohuºel ve výchozím nastavení nepodporuje kódování utf8, takºe pokud plánujeme sázet Non-ASCII znaky, musíme si je nejd íve denovat pomocí volby literate. Nastav íme s i barvi ky dle l i b o s t i \ usepackage c o l o r \ d e f i n e c o l o r mygreen rgb 0,0.6,0 \ d e f i n e c o l o r mygray rgb 0. 5, 0. 5, 0. 5 \ d e f i n e c o l o r mymauve rgb 0.58,0,0.82 Konfigurace prost ed í pro sazbu zdrojov ých kód \ usepackage l i s t i n g s \ l s t s e t Zá kladn í nastaven í 3

b a s i c s t y l e=\f o o t n o t e s i z e, Styl a typ p í sma captionpos=b, Pozice popisku showstringspaces=f a l s e, Kdyº true, odd l í slova podtr º í tky e. g. " Hello_world " t a b s i z e =4, Velikost tabul á toru ( po et mezer ) Barvi ky backgroundcolor=\c o l o r white, Pozad í commentstyle=\c o l o r mygreen, keywordstyle=\c o l o r blue, Komentá e Kl í ová slova jazyka s t r i n g s t y l e =\c o l o r mymauve, et zce Podpora esk ých znak l i t e r a t e= á \ ' a1 í \ ' i 1 é \ ' e 1 ý\ 'y1 ú\ 'u1 ó \ ' o1 \ve 1 ² \v s 1 \vc 1 \v r 1 º \vz 1 \vd1 \v t 1 \vn1 \ r u1 Á\ 'A1 Í \ ' I 1 É\ 'E1 Ý\ 'Y1 Ú\ 'U1 Ó\ 'O1 \ve1 \vs1 ƒ\vc1 \vr1 š\vz1 \vd1, \vt1 Œ\vN1 \ r U1 \ begin document \ begin l s t l i s t i n g [ language=c, gobble =8] i n t main ( i n t argc, char ** argv ) // Just print " Hello world " s t r i n g to standard output p r i n t f (" Hello world " ) ; \end l s t l i s t i n g \ end document Listing 2: Ukázka zdrojového kódu: lstlisting i n t main ( i n t argc, char ** argv ) // Just print " Hello world " s t r i n g to standard output p r i n t f ( " Hello world " ) ; Listing 3: Vysázení zdrojového kódu.2 Pokud máme zdrojový kód dokumentu odsazovaný pomocí tabulátor nebo mezer na za átku ádk, jakoºe asi máme, prost edí bude pon kud více posunuté sm rem doprava (práv o úrove odsazení v dokumentu). To lze vy e²it pomocí volby gobble. Ta ze za átku kaºdého ádku smaºe daný po et znak. 4

3 Sazba kódu z externího souboru Balí ek listings také podporuje vysázení zdrojového kódu z externího souboru. Z ejm si dovedete p edstavit, ºe to zejména v p ípad del²ích kód výrazn zlep²uje p ehlednost zdrojového souboru dokumentu. \ l s t i n p u t l i s t i n g [ language=c] sources / l s t i n p u t l i s t i n g. c Listing 4: Ukázka zdrojového kódu: lstinputlisting 4 Téma Solarized Solarized je oblíbené barevné téma pouºívané zejména v linuxových konzolích a textových editorech. Téma se skládá z dvou perfektn vylad ných palet pro sv tlý i tmavý podklad. Nyní si vytvo íme ob témata jako styly pro listings. Mezi takovýmito styly je moºné se libovoln p epínat a pouºívat je nap í mnoha dokumenty. D e f i n i c e S o l a r i z e d barev \ d e f i n e c o l o r solarized@base 03HTML002B36 \ d e f i n e c o l o r solarized@base 02HTML073642 \ d e f i n e c o l o r solarized@base 01HTML586 e 75 \ d e f i n e c o l o r solarized@base 00HTML657b83 \ d e f i n e c o l o r solarized@base 0HTML839496 \ d e f i n e c o l o r solarized@base 1HTML93a1a1 \ d e f i n e c o l o r solarized@base 2HTMLEEE8D5 \ d e f i n e c o l o r solarized@base 3HTMLFDF6E3 \ d e f i n e c o l o r solarized@yellow HTMLB58900 \ d e f i n e c o l o r solarized@orange HTMLCB4B16 \ d e f i n e c o l o r solarized@red HTMLDC322F \ d e f i n e c o l o r solarized@magenta HTMLD33682 \ d e f i n e c o l o r s o l a r i z e d @ v i o l e t HTML6C71C4 \ d e f i n e c o l o r solarized@blue HTML268BD2 \ d e f i n e c o l o r solarized@cyan HTML2AA198 \ d e f i n e c o l o r solarized@green HTML859900 Listing 5: Denice Solarized barev 5

4.1 Solarized light D e f i n i c e s t y l u \ l s t d e f i n e s t y l e s o l a r i z e d l i g h t b a s i c s t y l e=\f o o t n o t e s i z e \ t t f a m i l y \ c o l o r solarized@base 00, backgroundcolor=\c o l o r solarized@base 3, r u l e s e p c o l o r=\c o l o r solarized@base 3, numberstyle=\tiny \ c o l o r solarized@base 1, keywordstyle=\c o l o r solarized@green, s t r i n g s t y l e =\c o l o r solarized@cyan \ ttfamily, i d e n t i f i e r s t y l e =\c o l o r solarized@blue, commentstyle=\c o l o r solarized@base 1, emphstyle=\c o l o r solarized@red, Vysázen í kódu s pouº i t ím s t y l u s o l a r i z e d l i g h t \ l s t i n p u t l i s t i n g [ language=c, s t y l e=s o l a r i z e d l i g h t ] sources /main. c Listing 6: Téma Solarized light zdrojový kód int main ( int argc, char ** argv ) // Just print " Hello world " string to standard output printf (" Hello world " ); Listing 7: Téma Solarized light vysázené 6

4.2 Solarized dark D e f i n i c e s t y l u \ l s t d e f i n e s t y l e s o l a r i z e d dark b a s i c s t y l e=\f o o t n o t e s i z e \ t t f a m i l y \ c o l o r solarized@base 0, backgroundcolor=\c o l o r solarized@base 03, r u l e s e p c o l o r=\c o l o r solarized@base 03, numberstyle=\tiny \ c o l o r solarized@base 01, keywordstyle=\c o l o r solarized@green, s t r i n g s t y l e =\c o l o r solarized@cyan \ ttfamily, i d e n t i f i e r s t y l e =\c o l o r solarized@blue, commentstyle=\c o l o r solarized@base 01, emphstyle=\c o l o r solarized@red, Vysázen í kódu s pouº i t ím s t y l u s o l a r i z e d dark \ l s t i n p u t l i s t i n g [ language=c, s t y l e=s o l a r i z e d dark ] sources /main. c Listing 8: Téma Solarized dark zdrojový kód int main ( int argc, char ** argv ) // Just print " Hello world " string to standard output printf (" Hello world " ); Listing 9: Téma Solarized dark vysázené 7

Reference [1] C. Heinz, B. Moses, J. Homann: The Listings Package ftp://ftp.tex. ac.uk/tex-archive/macros/latex/contrib/listings/listings.pdf [2] http://en.wikibooks.org/wiki/latex/source_code_listings [3] http://tex.stackexchange.com/questions/30512/ how-to-insert-code-with-accents-with-listings/85947#85947 [4] http://ethanschoonover.com/solarized 8