Typsättning med TEX och L A TEX Kurstillfälle 3 Viktor Ahlqvist http://www.texempelvis.se E-sektionens teletekniska avdelning 10 april 2014
Vad gick vi igenom förra gången? Etiketter och korsreferenser med \label{} och \ref{} hyperref och cleveref lägger till bra funktion. Filer kan inkluderas i andra Matematik Två lägen, inline och block Kommandon och typsättningstips Figurer, tabeller och float
Exempelmall Finns på Github http://www.github.com/vikahl Tre versioner En minimal En för article En för KOMA
Typsnitt, igen Lättare med fontspec Kan ladda typsnitt från fil (.otf,.ttf) Kan ladda typsnitt från operativsystemet Laddas med \usepackage{fontspec} Laddas av polyglossia
fontspec Byt standardtypsnitt med \setmainfont{linux Libertine O} Byt sans-serif typsnitt med \setsansfont{open Sans} Byt monospace font med \setmonofont{source Code Pro} Ny fontfamilj med \newfontfamily\gillsans{gill Sans Std Light} Används som {\gillsans En text i Gill sans} Typsnittsnamn eller filnamn (med filändelse)
Specificera stilsorter Normalt sett laddas stilsorter automatiskt Kan manuellt laddas med: BoldFont=, ItalicFont=, BoldItalicFont=, SmallCapsFont= Exempel: 1 \setmainfont[italicfont={gill Sans Std Light Italic}, 2 BoldFont={Gill Sans Std Regular}]{Gill Sans Std Light} Eller: 1 \setmainfont[italicfont={* Italic}]{Gill Sans Std Light}
Mer fontspec inställningar Ligatures={TeX,Common} slår på vanliga ligaturer, samt TeX specialligaturer som och -- color= ställer in en färg Numbers=OldStyle ger gemena siffror, Numbers=Lining ger versala
Mer fontspec inställningar \defaultfontfeatures{} låter en ställa in val för alla typsnitt Tänk på att eventuellt ladda monospace-typsnittet innan Många inställningsmöjligheter: per storlek, stiltyp o.s.v. Varianter som finns i typsnitten Ligatures=Historic strict strict Ligatures=Rare wurtzite wurtzite Ligatures=NoCommon firefly firefly
Referenshantering Latex har kraftiga verktyg för att hantera externa referenser Då: Bibtex (eventuellt med natbib) Nu: Biblatex Biber (eller eventuellt bibtex8) Databas med referenserna Utseende styrs av mallar
Användning 1 \documentclass{article} 2 \usepackage[backend=biber]{biblatex} 3 \addbibresource{<database>.<filändelse>} 4 \begin{document} 5 \cite{<referens>} 6 \printbibliography 7 \end{document} 2 backend=biber styr vilken backend som används (biber eller bibtex) 3 \addbibresource{<database>.<filändelse>} lägger till en databas med referenser (filändelse!) Även externa \addbibresource[location=remote]{http://www.citeulike.org/bibtex/group/9517} 5 \cite{<referens>} citerar referensen <referens> 6 \printbibliography skriver ut referenslistan
Olika stilar Olika stilar väljs med style= \usepackage[style=ieee,backend=biber]{biblatex} style=numeric ger siffer-referenser style=ieee ger referenser emanligt IEEE style=apa ger referenser enligt APA ( Harvard ) Fler finns i manualen Språkinställningar med till exempel \DeclareLanguageMapping{swedish}{swedish-apa}
Citering \cite[<innan>][<efter>]{<referens>} \Cite[<innan>][<efter>]{<referens>} <innan> är text som skrivs ut innan, t.ex. se <efter> är text som skrivs ut efter <referens> är en unik nyckel för referensen Exempel: Styrinstrumenten brukar delas upp i tre kategorier och inom de formella styrmedlen aterfinns budgetering Ax, Johansson och Kullven, 2009. Eller Styrinstrumenten brukar delas upp i tre kategorier och inom de formella styrmedlen aterfinns budgetering [1].
Mer citering \parencite{} för parenteser runt referensen \footcite{} för fotnoter Speciella varianter \textcite{} för referenser i löpande text \cite*{} och \parencite*{} för bara årtal \citeauthor{} för bara författare \citetitle{} för bara titeln \citeyear{} för bara år
Referensdatabas @typ styr vilken typ av referens det är (artikel, bok, manual, ) nyckel är ett unikt namn för referensen Exempel: 1 @book{dne, 2 author = {Christian Ax and Christer Johansson and Håkan Kullvén}, 3 year = {2009}, 4 title = {Den nya ekonomistyrningen}, 5 location = {Malmö}, 6 publisher = {Liber AB} 7 } Finns program, t.ex. Jabref, om man inte vill skriva själv
Olika fälttyper Författare: author = {Christian Ax and Christer Johansson and Håkan Kullvén} Flera författare separeras alltid med and Skriv helst ut hela namnet, Biblatex förkortar och sköter om et al. Titeln: title = {Den nya ekonomistyrningen} Biblatex fixar versaler. Extra måsvingar om man vill att det ska skrivas ut precis som det står. title = {En rapport från {WHO} om {H1N1}} Publiceringsår: year = {2009} Year, month, day eller date = {2009-12-12}
Olika referenstyper @book för tryckta böcker Nödvändiga fält: author, title, year/date @article för artiklar i tidningar eller publikationer Nödvändiga fält: author, title, journaltitle, year/date @misc om inte annat passar Nödvändiga fält: author/editor, title, year/date @online för digital källor Nödvändiga fält: author/editor, title, year/date, url, urldate Nödvändiga fält behöver inte överensstämma med nödvändiga enligt referensregler! Finns fler typer, se manualen
Flöde Luatex skriver externa filer, som i sin tur läses av biber Andra gången läser Luatex från de nya filerna och sätter in i dokumentet 1 ~$ lualatex Arbetet 2 ~$ biber Arbetet eller ~$ bibtex8 --wolfgang Arbetet (men helst inte) 3 ~$ lualatex Arbetet
Skriva ut referenserna i dokumentet \printbibliography skriver ut listan med referenser title={en lista över verk} titeln på listan Många fler inställningar finns: välj typer, delar av dokumentet, Utseendet styrs av stilmallen Fasta termer (ed., pp./ss.) styrs av språket
Tips Fyll på med all information som går i aktuell referenstyp Tänk på att minimala informationen för Biblatex behöver inte vara minimala informationen för referensreglerna \nocite{<referens>} lägger till <referens> i listan men ej i dokumentet \nocite{*} lägger till alla referenser i filen i listan, men ej i dokumentet
siunitx Ger konsekvent och korrekt typsättning av enheter Kan formatera och avrunda tal Inte bara för SI-enheter Laddas med: \usepackage{siunitx}
Användning, enheter \SI{20}{\micro\metre} resulterar i 20 µm \si{\kilo\gram\metre\per\square\second} för bara enheter, kg m/s 2 \SIrange{10}{50}{\kilo\gram} för mängder, 10 kg till 50 kg Lista över enheter finns i manualen Nya enheter kan definieras
Användning, tal \num{120} ger 120 Komplexa tal fungerar \num{10+i20} ger 10+j20 Utskrift och inmatning styrs separat, jämför \num{10,20} 10,20 och \num{10.20} 10,20 Potensformer kan användas: \num{3.45e-2}, 3,45 10 2 Osäkerhet kan anges: \num{20+-10}, 20 ± 10 \numrange{}, \numlist{} finns även här Allt detta fungerar även i \SI
Inställningar Kan anges som valfri inställning till \num{}, \SI{}, Kan anges för allt framåt med \sisetup{} Några av inställningar i exempelmallen free-standing-units gör att enheterna kan användas var som. Man kan till exempel skriva sedan gick vi 100 \metre eller en ökning med 20 \percent
Inställningar exponent-product = \cdot styr multiplikationssymbolen (om man inte definierar om \times) output-decimal-marker={,} styr decimalavdelare output-complex-root = j styr vilket tecken som används för att representera 1 round-mode=figures avrundar till värdesiffror. Kan även avrunda till decimaler (places) round-precision=2 ger två värdesiffror/decimaler
Exempel \SI[output-decimal-marker={.},round-mode=figures,round-precision=2]{4,2283}{\metre} ger: 4.2 m \SI[output-decimal-marker={.},round-mode=places, round-precision=3]{4,2283}{\metre} ger: 4.228 m \SI[output-decimal-marker={,},scientificnotation=true,retain-explicit-plus ]{+422834,33}{\metre} ger: +4,2283433 10 5 m
parskip Byter mellan indrag och mellanrum mellan stycken \usepackage{parskip}
fancyhdr Gör det enkelt att ställa in sidhuvud och fot Lägger till \fancyhead{} och \fancyfoot{} Kan styras till L, C, R och E eller O Exempel: \fancyfoot[ro,le]{\thepage} Ett tips: töm sidhuvud och sidfot först med tomma \fancyhead{} och \fancyfoot{}
hyperref Måste laddas sist Kan ställa in metadata 1 \usepackage[hidelinks]{hyperref} 2 3 \hypersetup{ 4 unicode, % För att få unicode-kodade pdfsträngar. 5 breaklinks, % Tillåter att länkar radbryts. 6 pdfauthor = {August Strindberg},% Sätter författare på dokumentet. 7 pdftitle = {Röda rummet}, % Sätter titel på dokumentet 8 pdfsubject = {Roman}, % Ämne 9 } hidelinks döljer länkar i dokumenten
microtype Mikrotypografiska funktioner Kan användas utan inställningar eller finjusteras Exempel i manualen Kan användas för att spärra text
Spärrad text Kapitäler ser snyggare ut spärrade lite. \usepackage[letterspace=150]{microtype}, letterspace mellan 1000 och 1000 Jämför (utan letterspace) Ibland skriver man ingressen i artiklar i kapitäler.
Spärrad text Kapitäler ser snyggare ut spärrade lite. \usepackage[letterspace=150]{microtype}, letterspace mellan 1000 och 1000 Jämför (utan letterspace) Ibland skriver man ingressen i artiklar i kapitäler. Med letterspace, kommandot \lsstyle eller \textsl{} I b l a n d s k r i v e r m a n i n g r e s s e n i a r t i k l a r i k a p i t ä l e r.
Figurtexter, caption Gör det enkelt att formatera figurtexter Exempel: 1 \usepackage[format=hang, % Indrag på nästföljande rader 2 singlelinecheck=off, % Slår av centrering av enradstext 3 textfont=it, % Väljer kursiv text 4 ]{caption} Fler inställningar finns, typsnitt, position, Lägger till \captionof{<vad>}{<text>} som gör captions utan float
Exempel figurtexter med caption Figur 1: Time flies when you re having fun 1 \begin{figure}[htpb] 2 \centering 3 \includegraphics[width=0.5\textwidth] 4 {figures/timeflies} 5 \caption{ Time flies when you're having 6 fun } 7 \label{fig:timeflies} 8 \end{figure} Figur 1: Time flies when you re having fun 1 \begin{center} 2 \includegraphics[width=0.5\textwidth] 3 {figures/timeflies} 4 \captionof{figure}{ Time flies when you're having 5 fun } 6 \label{fig:timeflies} 7 \end{center}
minipage Används för att skapa sidor i sidor Kan användas för två bilder/tabeller bredvid varandra 1 \begin{minipage}[justering]{bredd} 2 Text, tabeller, figurer och jox 3 \end{minipage} justering (c,t,b) används för att justera innehållet i höjdled bredd är bredden på sidan, t.ex. 0.5\textwidth
Exempel figurer med caption och minipage Figur 1: Once again, war breaks out in the middle yeast Figur 2: Isopopes 1 \begin{minipage}[t]{0.5\textwidth} 2 \includegraphics[width=\textwidth]{figures/middleyeast} 3 \captionof{figure}{ Once again, war breaks out in the middle yeast } 4 \end{minipage} 5 \begin{minipage}[t]{0.5\textwidth} 6 \includegraphics[width=\textwidth]{figures/isopopes} 7 \captionof{figure}{ Isopopes } 8 \end{minipage}
Hur TeX typsätter dokument Betraktar alltid som lådor utan att bry sig om innehåll Flexibla mellanrum (rubber spaces) Typsätter stycken först och sätter sedan ihop stycken till sidor (vertical mode) Försöker bryta sidor snyggt, undvika änkor och horungar Ingen återvändo finns, kan inte gå tillbaka i dokumentet
Vertikala mellanrum \smallskip, \medskip, \bigskip ger utrymme definerade av klassen \smallbreak, \midbreak, \bigbreak tar hänsyn till annat utrymme \vspace{<längd>} ger ett valfritt utrymme \vspace*{<längd>} lägger in utrymmet även högst på en sida \vfill fyller sidan. Kan användas för att trycka text längst ner på sida.
Horisontella mellanrum, utslutning \enskip, \quad, \qquad ger halvt em, helt em, två em mellanrum \hspace{<längd>}, \hspace*{<längd>} analogt med \vspace{<längd>} Åttondelsfyrkantsmellanrum (thin space). Används bl.a. mellan tusental, jämför 10 000 och 10 000, i namn V. E. Ahlqvist. Odokumenterad bugg-feature i vertikalt läge. I matteläget: \!, \,, \:, \; negativt stort Exempel: \( a\: \text{och} \: b \in \mathbb{n} \)
unicode-math Gör det möjligt att använda OpenType (.otf) typsnitt i matteläget Implementerar Microsofts utökningar av OpenType Fullt stöd för unicode-inmatning och visning Uppdaterar till modern typsättning Ganska stabilt
unicode-math inställningar Inställningar i paket, med \unimathsetup och i fonter mathstyle=iso,tex,french,upright styr huruvida versaler och gemener är kursiva
unicode-math inställningar Inställningar i paket, med \unimathsetup och i fonter mathstyle=iso,tex,french,upright styr huruvida versaler och gemener är kursiva bold-style=iso,tex styr om feta glyfer är kursiva
unicode-math inställningar Inställningar i paket, med \unimathsetup och i fonter mathstyle=iso,tex,french,upright styr huruvida versaler och gemener är kursiva bold-style=iso,tex styr om feta glyfer är kursiva nabla=upright,italic styr om är kursiv
unicode-math inställningar Inställningar i paket, med \unimathsetup och i fonter mathstyle=iso,tex,french,upright styr huruvida versaler och gemener är kursiva bold-style=iso,tex styr om feta glyfer är kursiva nabla=upright,italic styr om är kursiv partial=upright,italic styr om är kursiv
unicode-math inställningar Inställningar i paket, med \unimathsetup och i fonter mathstyle=iso,tex,french,upright styr huruvida versaler och gemener är kursiva bold-style=iso,tex styr om feta glyfer är kursiva nabla=upright,italic styr om är kursiv partial=upright,italic styr om är kursiv vargreek-style=unicode,tex styr φ och ϕ samt ɛ och ε
unicode-math typsnitt Ladda typsnitt med \setmathfont{<typsnitt>} Tre mattetypsnitt i TeX Live: Latin modern, latinmodern-math.otf Asana math, Asana-Math.otf XITS math, xits-math.otf Typsnitt med mattesymboler mattetypsnitt unicode-symbols.pdf innehåller en stor jämförelse mellan typsnitt
unicode-math ladda typsnitt Ladda typsnitt med \setmathfont{<typsnitt>} Ladda flera med \setmathfont[version={versionsnamn}] Växla i dokumentet med \mathversion{<versionsnamn>}
unicode-math ladda typsnitt Olika typsnitt kan laddas för olika delar Bara ladda grekiska bokstäver \setmathfont[range=greek,greek]{<typsnitt>} Ladda en mängd tecken \setmathfont[range={"27d0-"27eb,"27ff,"297a-"297f}]{<typsnitt>} Ladda enskilda symboler \setmathfont[range=\int,\ mathopen,\sum]{<typsnitt>}
Typsättning med TEX och L A TEX Kurstillfälle 3 Viktor Ahlqvist http://www.texempelvis.se E-sektionens teletekniska avdelning 10 april 2014