2014-05-09 pandoc
by Vasil KolevНикога повече няма да ползва WYSIWYG редактор, за да си пиша презентациите.
(tldr – може да видите какво ползвам в github и да си го нагласяте по ваш вкус)
Преди rogueconf бях решил, че повече не ми се занимава с libreoffice и кривото писане на лекции, та с малко търсене в google и съвети от хора открих pandoc, който се оказа доста удобен инструмент – от markdown генерира pdf презентации (и reveal.js и други такива бози), като сгъва markdown-а до latex, и от него прави pdf чрез beamer модула. Пример за това може да се види в лекцията ми от rouge2014.
Аз обаче имам навика да пиша и текста на самата лекция, освен презентацията, т.е. процесът ми е “бележки, презентация, текст, и после редактиране на последните две докато стават за нещо”. Дразнеше ме идеята, че трябва да редактирам два файла и че не мога да свържа добре нещата, защото обичам после и да блогна текста.
В крайна сметка стигнах до setup-а от github repo-то горе, който изглежда по следния начин:
В един .pandoc файл си пиша презентацията, и след всеки slide – текстът, в html коментар (който pandoc-а игнорира);
Чрез Makefile (щото съм мързел) от .pandoc файла генерирам:
презентация (с разни параметри, които ще разкажа);
бележки (реално текстът на .pandoc файла, подреден чрез a2ps така, че да се събира добре на landscape A4 листи);
blog post, който казва номер на slide, заглавие и след това текста от коментара (което се прави чрез тъп php скрипт, който си написах).
(едно от големите удобства на makefile и т.н. е, че може да си отворите презентацията с evince, при всяка промяна на файл да пускате make и той автоматично ще reload-не файла, така че да си виждате промените)
За да генерирам презентацията, както аз искам (т.е. какво може лесно да пипнете по кода горе) са правени следните неща:
–slide-level 2 – на колко “нива” са ви slide-овете. Примерната презентация е на 2, тази за pCloud api-то е на 3, като май 3 е идеално за нормално 40-минутна презентация и изглежда много добре с тая тема (Warsaw), понеже така отгоре се виждат секцията и под-секцията. Мисля, че май първо видях Харалд Велте да ползва нещо такова и бая ми хареса, но не бях мислил как го прави.
–template beamer.my – наложи се да пипна стандартния beamer template, щото по default не изкарваше кирилица (за pCloud-ската го използвах и да сложа логото в нея, което беше бая куц процес). Също така там има едно място, в което може да махнете да показва slide-ове за тези, които не са от най-долното ниво (т.е. в примерната презентация да няма “проблемът”, “решението” и “примери”).
-V colortheme:krok – има beamercolorthemekrok.sty в директорията, което е crane color theme от beamer-а, само че със сменени цветове (при мен зелено, в pcloud API-то – странно синьо).
Разбира се, може да си изберете и други теми, на този сайт има матрица с комбинациите от тема и тема за цветовете (темите за шрифтовете са малко и май default-а е ок).
Цялото нещо си има и проблеми – добавянето на лого беше супер мъчително (и стана със странен hack, в който не ми се навлиза), да се влияе на шрифтовете от markdown-а до latex-а е малко сложно, и има някакви странности (например, като сложех коментар веднага след заглавния slide, ми добавяше един празен). Също така ако не знаете latex (като мен) може да ви е доста криво да си правите някакви custom неща, но па google е добър приятел и даже в stackoverflow им texexchange, където хората редовно си задават такива въпроси и може да намерите нещо полезно.
Tags: работа
November 11th, 2014 at 13:55
Ще пуснеш ли версиите на beamer, texlive-latex-base и pandoc, че нещо не ми изкарва секциите в заглавката на beamer темплейта :(
November 11th, 2014 at 14:19
ii texlive 2014.20141024-1 all TeX Live: A decent selection of the TeX Live packages
ii texlive-base 2014.20141024-1 all TeX Live: Essential programs and files
ii texlive-binaries 2014.20140926.35254-2 amd64 Binaries for TeX Live
ii texlive-fonts-recommended 2014.20141024-1 all TeX Live: Recommended fonts
ii texlive-lang-cyrillic 2014.20141024-1 all TeX Live: Cyrillic
ii texlive-latex-base 2014.20141024-1 all TeX Live: LaTeX fundamental packages
ii texlive-latex-extra 2014.20141024-1 all TeX Live: LaTeX additional packages
ii texlive-latex-recommended 2014.20141024-1 all TeX Live: LaTeX recommended packages
ii texlive-luatex 2014.20141024-1 all TeX Live: LuaTeX packages
ii texlive-pictures 2014.20141024-1 all TeX Live: Graphics, pictures, diagrams
ii texlive-xetex 2014.20141024-1 all TeX Live: XeTeX and packages
ii latex-beamer 2014.20141024-1 all TeX Live: transitional dummy package
ii pandoc 1.12.4.2~dfsg-1+b14 amd64 general markup converter
ii pandoc-data 1.12.4.2~dfsg-1 all general markup converter – data files