README.md (5293B)
1 # How to use this template 2 3 This is a template for creating lecture presentations based on the bfh-ci package using the bfhbeamer class. It helps to get started quickly. Problems and improvements can be reported via our issue tracker. Any kind of improvement is welcome, also other templates that cover a use case based on BFH classes. 4 5 ## Installing the dependencies 6 7 Install a recent LaTeX distribution and the latest version of the LaTeX package bfh-ci. How to do this is described in detail in the online manual. Follow the instructions for your operating system. 8 9 * https://latex.ti.bfh.ch 10 11 ## Information about the structure 12 13 The "*.tex" is a LaTeX document with a preamble and a LaTeX body with placeholder text. We recommend that you use this example as a quick introduction to writing short reports, such as a lab report. For an example of how to insert citations to online articles, books, etc., we recommend using biblatex. The bibliography database is stored in a ".bib" file. The content of such a file follows the definitions described in the biblatex user manual. Use the sample.bib file to get started. 14 15 ## Parameterization 16 17 There is a local `latexmk` configuration file called ".latexmkrc". This file contains some pre-configurations like the name of the output directory ("_build") and the default latex compiler ("lualatex"). Modify or delete this file. 18 19 ## Note 20 21 We recommend using Git for version control. If you are using Git, create a gitignore file with a good set of ignore patterns. For a quick start, we recommend the following patterns. 22 23 * Get a general set of ignore patterns 24 * https://www.toptal.com/developers/gitignore?templates=latex,windows,linux,vim,emacs,osx 25 26 ``` 27 curl -L -o .gitignore https://www.toptal.com/developers/gitignore/api/latex,windows,linux,vim,emacs,osx 28 ``` 29 * Ignore all directories that start with an underscore '_*/' 30 31 ``` 32 echo '_*/' >> .gitignore 33 ``` 34 35 ## Compiling 36 37 To compile the LaTeX document, use your favorite LaTeX editor together with the TeX compiler (xelatex and lualatex are supported). Thre is no support for pdflatex compiler. 38 39 If you use latexmk on the command line, the following command will do the compilation. 40 41 #### Running Latexmk 42 43 * In the simplest case you just have to type 44 45 ```bash 46 latexmk -lualatex 47 ``` 48 49 *This runs LaTeX on all .tex files in the current directory using the output format specified by the configuration files.* 50 51 * If you want to make sure to get a .pdf file as output, just mention it: 52 53 ```bash 54 latexmk -pdflua 55 ``` 56 57 * If you want to compile only one specific .tex file in the current directory, just provide the file name: 58 59 ```bash 60 latexmk -lualatex myfile.tex 61 ``` 62 63 * If you want to preview the resulting output file(s), just use 64 65 ```bash 66 latexmk -pv -lualatex 67 ``` 68 69 * And now the killer feature: If you want LaTeXmk to continuously check all input files for changes and re-compile the whole thing if needed and always display the result, type 70 71 ```bash 72 latexmk -pvc -lualatex -interaction=nonstopmode 73 ``` 74 75 Then, whenever you change something in any of your source files and save your changes, the preview is automatically updated. But: This doesn’t work with all viewers, especially not with Adobe Reader. See the section about configuration files below for setting a suitable viewer application. 76 77 * Of course, options can be combined, e.g. 78 79 ```bash 80 latexmk -outdir=_build -pdf -pv myfile.tex 81 ``` 82 83 #### Cleanup 84 85 * After running LaTeX, the current directory is contaminated with a myriad of temporary files; you can get rid of them with 86 87 ```bash 88 latexmk -c 89 ``` 90 * Previous command doesn’t delete the final .pdf/.ps/.dvi files. If you want to delete those too, use 91 92 ```bash 93 latexmk -C 94 ``` 95 96 #### Extra properties to controll the build process 97 98 * Build beamer presentation mode (slides) of FILE.tex. If there is no *.tex file passed to the command all tex files will be processed. 99 100 ``` 101 latexmk -lualatex -pv -usepretex="\PassOptionsToClass{final}{bfhbeamer}" -jobname="%A-slides" FILE.tex 102 ``` 103 * Build beamer handout mode (optimized for tablet use) of FILE.tex. If there is no *.tex file passed to the command all tex files will be processed. 104 105 ``` 106 latexmk -lualatex -pv -usepretex="\PassOptionsToClass{tabletNotes}{bfhbeamer}" -jobname="%A-tablet" FILE.tex 107 ``` 108 * Build beamer handout mode (optimized for printout use) of FILE.tex. If there is no *.tex file passed to the command all tex files will be processed. 109 110 ``` 111 latexmk -lualatex -pv -usepretex="\PassOptionsToClass{paperNotes}{bfhbeamer}" -jobname="%A-print" FILE.tex 112 ``` 113 * Build beamer handout with notes -- include the content of the note environment within a frame or outside a frame environment. If there is no *.tex file passed to the command all tex files will be processed. 114 115 ``` 116 latexmk -lualatex -CF -usepretex="\PassOptionsToClass{printNotes}{bfhbeamer}" -jobname="%A-notes" 117 ``` 118 * Build beamer in article mode (optimized as a reader) of FILE.tex. If there is no *.tex file passed to the command all tex files will be processed. 119 120 ``` 121 latexmk -lualatex -pv -usepretex="\PassOptionsToClass{type=beamerarticle}{bfhbeamer}" -jobname="%A-reader" FILE.tex 122 ``` 123 124 ## Image Sources 125 126 - Spiegel.de 127 128 - Flaticon.com