summaryrefslogtreecommitdiff
path: root/presentations/taler-mdb-36c3/.template/README.md
blob: 0cd078689d8ecf32cd16780505dad53354212755 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
<a href="http://www.ti.bfh.ch/bachelor/mikro_und_medizintechnik.html" target="_blank"><img src="https://www.bfh.ch/fileadmin/images/newsmeldungen/2013/BFH_Logo_C_en_100_RGB.png" alt="IMAGE ALT TEXT HERE"/></a>

# Description - LaTex Course Build System

This build system is based on BFH LaTex beamer template but can be used with any other LaTex beamer template.


##### Company
Bern University of Applied Sciences

##### Purpose
  This template is for creating and managing course lectures based on LaTex files.

  Building from LaTex source a complex beamer education bundle is quite tricky. To overcome this the build environment uses make for a layer of build system control and latexmk for converting Tex to PDF.
  
##### Author
  Andreas HABEGGER <andreas.habegger@bfh.ch>


## Linux Prerequisites (Debian/Ubuntu)
Follow the procedure below to install 3rd party package (Debian/Ubuntu).

Install used LaTex packages:
```bash
apt-get install texlive-base texlive-extra-utils texlive-generic-recommended texlive-latex-base texlive-latex-extra
```

Install used fonts packages:
```bash
apt-get install texlive-fonts-extra texlive-fonts-recommended
```
Install used build environment packages
```bash
apt-get install latexmk make git
```
Install used converter packages
```bash
apt-get install inkscape
```

## Set-Up the Build System
  - Create project directory
 
```bash
mkdir <YOUR_PROJECT>
cd <YOUR_PROJECT>
```
  - Activate Git version control for that project

```bash
git init
```
  - Add the build system as a git sub-module (the submodul name .template is important)

```bash
git submodule add git@gitlab.ti.bfh.ch:latex-utils/tpl_latex-course.git .template
```
  - Link the Makefile from within .template directory

```bash
ln -s .template/Makefile
```
  - Make default structure of project

```bash
make init
```
  - (optional) Create default sample presentation to get started quick.

```bash
make sample
```
  - List available lectures after creating a sample lecture

```bash
make list
```
  - Convert SVGs into PDF pictures
```bash
make convert
```

  - Translate sample lecture into PDF slides and handouts. (Look-up the documents in output drectory called "_output".)

```bash
LECTURE=sample_lecture make bundle
```
   - Display all possible make targets.

```bash
make help
```

## Did You Know!? 
### List Lectures
Get an overview of available lectures
```bash
make list
```

### LECTURE Environment Variable Support
If you do lots of builds when developing a specific "lecture", export the variable **LECTURE**
```bash
export LECTURE=lecture_sample
```
Having the variable "LECTURE" in the bash environment allows shorter build command.
```bash
make slide
```
### Increase Verbosity Level
The variable DEBUG controls the verbosity level
 * [0] As quiet as possible
 * [1] Get more details to build steps (latexmk still in batch mode)
 * [2] Build in interactive mode

Set a verbosity level other than zero
```bash
DEBUG=2
```
### Get List of Available Lectures
To get an overview about lectures available in the "lectures" folder use the **list** target
```bash
make list
```

### Convert XFIGs and SVGs
To convert fig and svg files use the **convert** target. Did you know the location for such files is fig or svg, respectively.
```bash
make convert
```
### Compress Your Work
```bash
make archive
```
or
```bash
git archive --format zip --prefix <COURSE_NAME> --output ../<COURSE_NAME>.zip master
```
___