Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Informatika pro moderní fyziky (7) Tvorba textových dokumentu˚ ˚ František HAVLUJ e-mail:
[email protected] ˇ ÚJV Rež ˇ oddelení Reaktorové fyziky a podpory palivového cyklu
akademický rok 2015/2016 24. listopadu 2015
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
1
Co jsme se nauˇcili minule
2
Pracky pryˇc, padouchu!
3
Výroba dokumentu v praxi
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Obsah
1
Co jsme se nauˇcili minule
2
Pracky pryˇc, padouchu!
3
Výroba dokumentu v praxi
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
technika šablonování a její použití pro tvorbu vstupních souboru˚ pro výpoˇcetní programy ˇ generování vetšího množství grafu˚ s využitím šablon
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Obsah
1
Co jsme se nauˇcili minule
2
Pracky pryˇc, padouchu!
3
Výroba dokumentu v praxi
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Klávesnice a myš myš je dobrá na grafiku a jako alternativa k tabletu taky se hodí tam, kde se potˇrebuju pˇresouvat mezi položkami, které nemají jednoznaˇcné poˇradí nebo prostorový vztah (neseˇrazené ikony na ploše, rozhraní s mrakem oken atd.) ˇ pˇrípadneˇ ješteˇ na použití menu pro úkony, které delám jednou za uherský rok naopak na programování je nejlepší na myš vubec ˚ nešahat a používat skoro jenom klávesnici extrémní školy dokonce brojí proti kurzorovým šipkám, ˇ polohu rukou, což protože (na velké klávesnici) nutí menit je pomalé ˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Pˇrepínání jazyku˚
je dobré se mu vyhnout, protože to opravdu trochu otravuje (i když se s tím dá docela dobˇre žít, pokud máte dobrou klávesovou zkratku) rozhodneˇ stojí za to zjistit – napˇríklad pro psaní v LaTeXu – kde na cˇ eské klávesnici máte potˇrebné speciální znaky (v tomto pˇrípadeˇ zejména backslash a složené závorky) chytré editory mají ruzné ˚ pochystávky a makra, která vám ˇ umožní se temto speciálním znakum ˚ defacto vyhnout pokud mužu, ˚ pracuju celou dobu s anglickou (tj. pokud výjimeˇcneˇ nepíšu cˇ eský dokument)
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Klávesové zkratky
ˇ nauˇcit / jako s programováním – musím se neco zapamatovat, ale pak mi to ušetˇrí hromadu cˇ asu minimálneˇ základní sadu stojí za to se nauˇcit ˇ cˇ asto jdou ruˇcneˇ editovat, ale vetšinou to není nutné (a je ˇ to stejne na houby, pokud zrovna nesedíte u svého poˇcítaˇce) jako s hudebním nástrojem – za cˇ as už neznáte ty zkratky, ale prosteˇ je umíte zmáˇcknout bez pˇremýšlení hodneˇ jich je sdílených napˇríˇc programy a editory
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Klávesové zkratky - MS Windows
copy-paste Ctrl+C/V undo Ctrl+Z pˇrepínání aplikací Alt+Tab pˇrepínání oken v rámci aplikace Ctrl+Tab
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Klávesové zkratky – Notepad++
pohyb v textu po slovech a stránkách Ctrl+šipky, PgUp/PgDn uložení, otevˇrení, zavˇrení Ctrl+S, O, W ˇ zmena odsazení bloku Tab / Shift+Tab pˇrepínání mezi soubory zakomentovat/odkomentovat Ctrl+Q
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Obsah
1
Co jsme se nauˇcili minule
2
Pracky pryˇc, padouchu!
3
Výroba dokumentu v praxi
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Úkol na dnešek
pro jeden blok JE mám provozní data - v urˇcitých dnech hodnotu koncentrace kyseliny borité a axiálního ofsetu ˇ pro nekolik kampaní (blíže neurˇcený poˇcet) chci vyrobit pˇrehledové PDF, které bude hezky prezentovat grafy obou veliˇcin pro každou kampanˇ a k tomu i tabulky data pro jednotlivé kampaneˇ mám v CSV souborech, každý má tˇri sloupce (datum, cB, AO)
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Rozbor
naˇcíst tabulky a vykreslit grafy umíme (a taky už jsme to ˇ udelali minule) pˇrevést tabulky v CSV na tabulky v LaTeXu se záhy nauˇcíme vložit obrázek do latexu taky umíme pˇredem neznámý poˇcet souboru˚ nás netrápí (Dir["*.csv"])
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Jak na tabulky
ˇ tabulky budou dost rozsáhlé a montovat je pˇrímo nejak do ˇ to jde i latexových vstupu˚ je asi spíš nepraktické, naštestí jinak ˇ má LaTex pˇríkaz \input, kterým mužeme naštestí ˚ prosteˇ ˇ vložit do dokumentu nejaký externí soubor takže si nejdˇrív pˇrichystáme soubory s tabulkami a pak se na neˇ budeme už jenom odkazovat
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Jak na tabulky v LaTeXu (1)
Základem tabulky je prostˇredí tabular s definicí poˇctu a zarovnání sloupcu: ˚ \begin{tabular}{lrr} ... \end{tabular}
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Jak na tabulky v LaTeXu (2)
ˇ Uvnitˇr tabulky se sloupce oddelují ampersandem a ˇrádky dvojitým backslashem: \begin{tabular}{lrr} Data 1 & a & 1.0 \\ Data 2 & b & 2.0 \\ Data 3 & c & 3.0 \\ \end{tabular}
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Jak na tabulky v LaTeXu (3)
Pˇridání mˇrížky je nesnadné, leˇc proveditelné a vlastneˇ docela dobˇre vymyšlené - pˇridáváme jednotlivé cˇ áry po sloupcích a ˇrádcích: \begin{tabular}{|l|r|r|} \hline Data 1 & a & 1.0 \\ \hline Data 2 & b & 2.0 \\ \hline Data 3 & c & 3.0 \\ \hline \end{tabular}
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Úkol na ted’: výroba tabulek
vyrobit z CSV souboru (tˇri sloupce) dveˇ LaTeX tabulky (po dvou sloupcích) postarat se, aby byly hezké chytré je vyrobit tabulku tˇreba o šesti sloupcích (jakože tˇri dvousloupce), pak už se to na stránku v klidu vejde
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Obsah
1
Co jsme se nauˇcili minule
2
Pracky pryˇc, padouchu!
3
Výroba dokumentu v praxi
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Úskalí šablon
ˇ snadno umíme nahradit jeden ˇretezec druhým ˇ bloky textu trochu méneˇ pohodlné pro vetší ˇ navíc by se hodila nejaká logika (cyklus) pˇrímo v šabloneˇ ˇ jsou na to postupy naštestí
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
ERb (Embedded Ruby)
lepší šablona - “aktivní text” používá se napˇríklad ve webových aplikacích hodí se ale i na generování latexových dokumentu, ˚ resp. všude, kde nám nesejde na whitespace ˇ eˇ jednoduchá syntax, zvládne skoro všechno (viz pomern ˇ MAA3) pˇredmet
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Základní syntaxe ERb (1)
Jakýkoli Ruby pˇríkaz, pˇriˇrazení, výpoˇcet ... <% a = b + 5 %> <% list = ary * ", " %>
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Základní syntaxe ERb (2)
ˇ vložit, staˇcí pˇridat rovnítko Pokud chci neco <%= a %> <%= ary[1] %> <%= b + 5 %>
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Základní syntaxe ERb (3)
Radost je možnost použít bloky a tedy i iterátory apod. v propojení s vkládaným textem: <% (1..5).each do |i| %> Number <%= i %> <% end %> <% ary.each do |x| %> Array contains <%= x %> <% end %>
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
ERb – shrnutí
dobrý sluha, ale špatný pán ˇ na malém mužu ˚ s tím vyrobit hromadu užiteˇcných vecí prostoru danˇ je velké riziko zamotaného kódu a nízké pˇrehlednosti (struktura naprosto není patrná na první pohled, proto je namísteˇ ji držet maximálneˇ jednoduchou)
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
ˇ Duležité ˚ upozornení
ˇ oddelení modelu a view ˇ zpracování dat a výpoˇcty pˇrímo v pˇrestože lze provádet ERb, je to nejvíc nejhorší nápad je chytré si všechno pˇripravit v modelu (tj. v Ruby skriptu, kterým data chystáme) ˇ omezit na naprosté a kód ve view (tj. v ERb šablone) minimum
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
ˇ výsledek Jak ze šablony udelat
Pˇríklad pˇrekladu ERb require ’erb_compiler’ erb(template, filename, {:x => 1, :y => 2})
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Pˇríklad – kreslení grafu˚ z minula
template.gp set terminal png set output "plot_<%=n%>.png" plot "data_<%=n%>.csv"
(1..10).each do |i| erb("template.gp", "plot_#{i}.gp", {:n => i}) end
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
Takže v latexu tˇreba
\subsection{Koncentrace kyseliny borité} <% files.each do |f| %> \subsubsection{Kampaˇ n <%= f.split(’_’).last %>} \begin{center} \includegraphics[width=0.8\textwidth]{<%= f %>_bc.eps} \end{center} <% end %>
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
A ted’ už to jenom dejte dohromady...
1
pˇripravit si základní kostru dokumentu v latexu
2
pˇrevést na šablonu: mít seznam souboru, ˚ správneˇ generovat kapitoly
3
vyrobit grafy
4
vložit grafy do šablony
5
vyrobit tabulky
6
vložit tabulky do šablony
7
A JE TO!
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)
Co jsme se nauˇcili minule Pracky pryˇc, padouchu! Výroba dokumentu v praxi
A to je vše, pˇrátelé!
˚ ORF ÚJV Rež ˇ František HAVLUJ,
IMF (7)