New Repo due to file problems in old commits
This commit is contained in:
commit
75759d61b8
33
.gitignore
vendored
Executable file
33
.gitignore
vendored
Executable file
@ -0,0 +1,33 @@
|
|||||||
|
*.*~
|
||||||
|
*.SET
|
||||||
|
*.ods#
|
||||||
|
*.aux
|
||||||
|
*.vim
|
||||||
|
*.upb
|
||||||
|
*.bbl
|
||||||
|
*.bcf
|
||||||
|
*.lot
|
||||||
|
*.toc
|
||||||
|
*.upa
|
||||||
|
*.run.xml
|
||||||
|
*.blg
|
||||||
|
*.dvi
|
||||||
|
*.glo
|
||||||
|
*.gls
|
||||||
|
*.ilg
|
||||||
|
*.ind
|
||||||
|
*.lof
|
||||||
|
*.log
|
||||||
|
*.swp
|
||||||
|
*.toc
|
||||||
|
*.tps
|
||||||
|
*.rtf
|
||||||
|
*.tex.backup
|
||||||
|
*.out
|
||||||
|
*._log
|
||||||
|
*.fdb_latexmk
|
||||||
|
*.fls
|
||||||
|
*.idx
|
||||||
|
*.ilg
|
||||||
|
*.ind
|
||||||
|
*.loexample
|
87
README
Normal file
87
README
Normal file
@ -0,0 +1,87 @@
|
|||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
| |
|
||||||
|
| PACKAGE `bewerbung' |
|
||||||
|
| |
|
||||||
|
This project has the aim to provide packages and classes for typesetting an application with
|
||||||
|
titlepage, letter, cv and additional documents in just one document. Also there is a class for
|
||||||
|
printing a table with the latest applications that can be shown to the german authorities. The
|
||||||
|
data of the applications can be edited in a simple csv file.
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
Version: 1.0
|
||||||
|
Last Change: 2015-07-12
|
||||||
|
Current Maintainer: André Hilbig
|
||||||
|
mail@andrehilbig.de
|
||||||
|
https://git.andrehilbig.de/ahilbig/vorlagebewerbung
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
|
||||||
|
This work may be distributed and/or modified under the
|
||||||
|
conditions of the LaTeX Project Public License, either version 1.3
|
||||||
|
of this license of (at your option) any later version.
|
||||||
|
The latest version of this license is in
|
||||||
|
http://www.latex-project.org/lppl.txt
|
||||||
|
and version 1.3 or later is part of all distributions of LaTeX
|
||||||
|
version 2005/12/01 or later.
|
||||||
|
|
||||||
|
This work has the LPPL maintenance status `maintained'.
|
||||||
|
|
||||||
|
This work consists of the files bewerbung.dtx and bewerbung.ins and the derived files
|
||||||
|
bewerbung-cv-casual.sty, bewerbung-cv-classic.sty, bewerbung-cv-oldstyle.sty, bewerbung-cv.sty,
|
||||||
|
bewerbung.sty, argetabelle.cls, bewerbung.cls, neueBewerbung.sh, config.inc, titlepage.inc.
|
||||||
|
| |
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
| |
|
||||||
|
| Installation |
|
||||||
|
| |
|
||||||
|
Getting the files:
|
||||||
|
latex bewerbung.ins
|
||||||
|
|
||||||
|
Getting the documentation:
|
||||||
|
latexmk -pdf bewerbung.pdf
|
||||||
|
|
||||||
|
Copy the following files into a TeX-readable directory:
|
||||||
|
bewerbung*.sty
|
||||||
|
argetabelle.cls
|
||||||
|
bewerbung.cls
|
||||||
|
titlepage.inc
|
||||||
|
|
||||||
|
The following files are needed to make a new application:
|
||||||
|
anschrift.csv
|
||||||
|
bewerbung-example.tex
|
||||||
|
config.inc
|
||||||
|
Foto.pdf
|
||||||
|
|
||||||
|
The following files are needed to make a new documentation-table:
|
||||||
|
anschrift.csv
|
||||||
|
argetabelle-example.tex
|
||||||
|
| |
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
| |
|
||||||
|
| Create a new application (in that directory-structure; only OS with a shell) |
|
||||||
|
| |
|
||||||
|
Structure of the project:
|
||||||
|
Bewerbungen:
|
||||||
|
|
|
||||||
|
+-----Anhang:
|
||||||
|
|-diplom.pdf
|
||||||
|
|-zeugnis.pdf
|
||||||
|
|
|
||||||
|
+-----bewerbung-dreamjob:
|
||||||
|
|-Anhang -> ../Anhang
|
||||||
|
|-Foto.pdf -> ../Foto.pdf
|
||||||
|
|-anschrift.csv -> ../anschrift.csv
|
||||||
|
|-bewerbung-Traumjob.tex
|
||||||
|
|-config.inc
|
||||||
|
|-Foto.pdf
|
||||||
|
|-anschrift.csv
|
||||||
|
|-argetabelle.tex (wie argetabelle-example.tex)
|
||||||
|
|-bewerbung.tex (wie bewerbung-example.tex)
|
||||||
|
|-config.inc
|
||||||
|
To create a new application just execute neueBewerbung with NAME being an identifier for the new
|
||||||
|
application. It will create a new directory NAME and copy or link all the needed files out of
|
||||||
|
Bewerbungen.
|
||||||
|
./neueBewerbung BEZEICHNER
|
||||||
|
|
||||||
|
With that structure in mind the files bewerbung.tex and config.inc are your templates in
|
||||||
|
Bewerbungen. They get copied everytime you create a new application.
|
||||||
|
| |
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
90
README_DE
Normal file
90
README_DE
Normal file
@ -0,0 +1,90 @@
|
|||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
| |
|
||||||
|
| PACKAGE `bewerbung' |
|
||||||
|
| |
|
||||||
|
Das `bewerbung' Bundle hat das Ziel, Pakete und Klassen zum Setzen von Bewerbungsmappen mit
|
||||||
|
Titelseite, Brief, Lebenslauf und zusätzlichen Dokumenten bereitzustellen. Außerdem gibt es eine
|
||||||
|
Klasse zum Setzen einer Tabelle mit den aktuellen Bewerbungsversuchen, die der Agentur für Arbeit
|
||||||
|
vorgelegt werden kann. Die Daten der Bewerbungsversuche werden in einer simplen csv-Datei
|
||||||
|
verwaltet.
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
Version: 1.0
|
||||||
|
Last Change: 2015-07-12
|
||||||
|
Current Maintainer: André Hilbig
|
||||||
|
mail@andrehilbig.de
|
||||||
|
https://git.andrehilbig.de/ahilbig/vorlagebewerbung
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
|
||||||
|
This work may be distributed and/or modified under the
|
||||||
|
conditions of the LaTeX Project Public License, either version 1.3
|
||||||
|
of this license of (at your option) any later version.
|
||||||
|
The latest version of this license is in
|
||||||
|
http://www.latex-project.org/lppl.txt
|
||||||
|
and version 1.3 or later is part of all distributions of LaTeX
|
||||||
|
version 2005/12/01 or later.
|
||||||
|
|
||||||
|
This work has the LPPL maintenance status `maintained'.
|
||||||
|
|
||||||
|
This work consists of the files bewerbung.dtx and bewerbung.ins and the derived files
|
||||||
|
bewerbung-cv-casual.sty, bewerbung-cv-classic.sty, bewerbung-cv-oldstyle.sty, bewerbung-cv.sty,
|
||||||
|
bewerbung.sty, argetabelle.cls, bewerbung.cls, neueBewerbung.sh, config.inc, titlepage.inc.
|
||||||
|
| |
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
| |
|
||||||
|
| Installation |
|
||||||
|
| |
|
||||||
|
Dateien des Pakets erhalten:
|
||||||
|
latex bewerbung.ins
|
||||||
|
|
||||||
|
Dokumentation setzen:
|
||||||
|
latexmk -pdf bewerbung.pdf
|
||||||
|
|
||||||
|
Folgende Dateien müssen in ein für TeX lesbares Verzeichnis kopiert werden:
|
||||||
|
bewerbung*.sty
|
||||||
|
argetabelle.cls
|
||||||
|
bewerbung.cls
|
||||||
|
titlepage.inc
|
||||||
|
|
||||||
|
Folgende Dateien sind für das Anlegen einer neuen Bewerbungsmappe notwendig:
|
||||||
|
anschrift.csv
|
||||||
|
bewerbung-example.tex
|
||||||
|
config.inc
|
||||||
|
Foto.pdf
|
||||||
|
|
||||||
|
Folgende Dateien sind für das Setzen einer Dokumentationstabelle notwendig:
|
||||||
|
anschrift.csv
|
||||||
|
argetabelle-example.tex
|
||||||
|
| |
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
| |
|
||||||
|
| Neue Bewerbung anlegen (bei gegebener Verzeichnisstruktur, nur OS mit Shell) |
|
||||||
|
| |
|
||||||
|
Struktur des Projektverzeichnisses:
|
||||||
|
Bewerbungen:
|
||||||
|
|
|
||||||
|
+-----Anhang:
|
||||||
|
|-diplom.pdf
|
||||||
|
|-zeugnis.pdf
|
||||||
|
|
|
||||||
|
+-----bewerbung-Traumjob:
|
||||||
|
|-Anhang -> ../Anhang
|
||||||
|
|-Foto.pdf -> ../Foto.pdf
|
||||||
|
|-anschrift.csv -> ../anschrift.csv
|
||||||
|
|-bewerbung-Traumjob.tex
|
||||||
|
|-config.inc
|
||||||
|
|-Foto.pdf
|
||||||
|
|-anschrift.csv
|
||||||
|
|-argetabelle.tex (wie argetabelle-example.tex)
|
||||||
|
|-bewerbung.tex (wie bewerbung-example.tex)
|
||||||
|
|-config.inc
|
||||||
|
|
||||||
|
Ausführung von neueBewerbung, wobei BEZEICHNER ein geeigneter Name für die neue Bewerbung sein
|
||||||
|
sollte. Es wird automatisch ein neues Verzeichnis angelegt und alle notwendigen Dateien werden
|
||||||
|
kopiert oder verlinkt.
|
||||||
|
./neueBewerbung BEZEICHNER
|
||||||
|
|
||||||
|
Demnach wird immer die bewerbung.tex aus dem Stammverzeichnis als Vorlage benutzt, um eine neue
|
||||||
|
Bewerbung zu erstellen. Veränderungen an der neuen Bewerbung werden nicht in diese Vorlage
|
||||||
|
übernommen.
|
||||||
|
| |
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
3
anschrift.csv
Normal file
3
anschrift.csv
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
ID,KW,Datum,Firma,FirmaAnrede,FirmaName,Str,PLZ,Ort,Stelle,Rueckmeldung,Sonstiges
|
||||||
|
2,13,26.09.15,Packisbar GmbH,Frau,Nauti,Traumstraße 19,59888,Traumort,Traumberuf,n,n
|
||||||
|
1,12,14.09.15,Packbar GmbH,Herr,Nubil,Traumstraße 4,59888,Traumort,Traumberuf,n,n
|
|
BIN
argetabelle-example.pdf
Normal file
BIN
argetabelle-example.pdf
Normal file
Binary file not shown.
28
argetabelle-example.tex
Normal file
28
argetabelle-example.tex
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
% -*- coding: utf-8; -*-
|
||||||
|
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
% |
|
||||||
|
% (C)opyright A. Hilbig, mail@andrehilbig.de |
|
||||||
|
% http://www.andrehilbig.de/index.cgi/Publications/Bewerbung |
|
||||||
|
% |
|
||||||
|
% this file: argetabelle-example.tex |
|
||||||
|
% |
|
||||||
|
% |
|
||||||
|
% This work may be distributed and/or modified under the |
|
||||||
|
% conditions of the LaTeX Project Public License, either version 1.3 |
|
||||||
|
% of this license or (at your option) any later version. |
|
||||||
|
% The latest version of this license is in |
|
||||||
|
% http://www.latex-project.org/lppl.txt |
|
||||||
|
% and version 1.3 or later is part of all distributions of LaTeX |
|
||||||
|
% version 2005/12/01 or later. |
|
||||||
|
% |
|
||||||
|
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
% |
|
||||||
|
\documentclass[11pt,a4paper]{argetabelle}
|
||||||
|
\usepackage[utf8]{inputenc}
|
||||||
|
\usepackage[T1]{fontenc}
|
||||||
|
|
||||||
|
\usepackage[ngerman]{babel}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
\argetabelle
|
||||||
|
\end{document}
|
49
argetabelle.cls
Normal file
49
argetabelle.cls
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
|
||||||
|
\ProvidesClass{argetabelle}[2015/07/14 v1.1 %
|
||||||
|
Klasse zur automatisierten Erstellen von Tabellen %
|
||||||
|
zur Dokumentation der eigenen Bewerbungsversuche]
|
||||||
|
|
||||||
|
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}}
|
||||||
|
\ProcessOptions\relax
|
||||||
|
\LoadClass[]{scrartcl}
|
||||||
|
|
||||||
|
\RequirePackage{marvosym}
|
||||||
|
|
||||||
|
\RequirePackage[%
|
||||||
|
left=1cm, %
|
||||||
|
top=2.5cm, %
|
||||||
|
bottom=1.5cm, %
|
||||||
|
right=1cm %
|
||||||
|
]{geometry}
|
||||||
|
|
||||||
|
\RequirePackage{datatool}
|
||||||
|
|
||||||
|
\RequirePackage[right]{eurosym}
|
||||||
|
\RequirePackage{xspace}
|
||||||
|
|
||||||
|
|
||||||
|
\RequirePackage{multicol}
|
||||||
|
\RequirePackage{pdfpages}
|
||||||
|
|
||||||
|
\RequirePackage{comment}
|
||||||
|
|
||||||
|
\RequirePackage{xparse}
|
||||||
|
|
||||||
|
\RequirePackage{longtable}
|
||||||
|
\RequirePackage{booktabs}
|
||||||
|
\RequirePackage{array}
|
||||||
|
\RequirePackage{ragged2e}
|
||||||
|
\newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}}
|
||||||
|
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
|
||||||
|
\newcolumntype{R}[1]{>{\raggedleft\arraybackslash}p{#1}}
|
||||||
|
|
||||||
|
\RequirePackage{bewerbung}
|
||||||
|
|
||||||
|
\AtBeginDocument{%
|
||||||
|
%\hypersetup{colorlinks=true}
|
||||||
|
\InputIfFileExists{config.inc}{}{%
|
||||||
|
\@latex@warning@no@line{%
|
||||||
|
Achtung die Datei config.inc ist nicht lesbar.}%
|
||||||
|
} %
|
||||||
|
}
|
||||||
|
%%\endinput
|
112
bewerbung-cv-casual.sty
Normal file
112
bewerbung-cv-casual.sty
Normal file
@ -0,0 +1,112 @@
|
|||||||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||||||
|
\ProvidesPackage{bewerbung-cv-casual} %
|
||||||
|
[2015/07/14 v1.1 theme für bewerbungen basiert auf komacv-casual]
|
||||||
|
%% this file is based on komacv-casual.sty from Salome Södergran
|
||||||
|
%% every change is marked by
|
||||||
|
%% %% ahilbig begin
|
||||||
|
%% CHANGE
|
||||||
|
%% %% ahilbig end
|
||||||
|
\addtokomafont{firstnamefont}{\sffamily\fontsize{38}{40}}
|
||||||
|
\addtokomafont{acadtitlefont}{\sffamily}
|
||||||
|
\addtokomafont{addressfont}{\sffamily\small}
|
||||||
|
\addtokomafont{hintfont}{\sffamily}
|
||||||
|
\newsavebox\@fboxa
|
||||||
|
\newsavebox\@fboxb
|
||||||
|
\newcommand*\@sboxa[1]{\sbox\@fboxa{#1}}
|
||||||
|
\newcommand*\@sboxb[1]{\sbox\@fboxb{#1}}
|
||||||
|
\newcommand*\@uboxa{\usebox\@fboxa}
|
||||||
|
\newcommand*\@uboxb{\usebox\@fboxb}
|
||||||
|
\newcommand*\@flushf{\strut\@uboxa\@sboxa{}\@sboxb{}}
|
||||||
|
\newcommand*\addtofooter[2][\@fsymbol]{%
|
||||||
|
\@sboxb{\@uboxa{}#1#2}%
|
||||||
|
\settowidth\@fboxwidth{\@uboxb}%
|
||||||
|
\ifdimgreater{\@footerwidth}{\@fboxwidth}{%
|
||||||
|
\@sboxa{\@uboxb}
|
||||||
|
}{%
|
||||||
|
\@flushf\\
|
||||||
|
\@sboxa{#2}
|
||||||
|
\@sboxb{#2}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\ifdimequal{\footerwidth}{0pt}{}{%
|
||||||
|
\setlength\@footerwidth{\footerwidth}%
|
||||||
|
}
|
||||||
|
\defpagestyle{footer}
|
||||||
|
{{}{}{}}% head definition (empty)
|
||||||
|
{% foot definition
|
||||||
|
{}{}% definition for twoside layout
|
||||||
|
{% definition for oneside layout
|
||||||
|
\hspace*{\fill}%
|
||||||
|
\parbox{\@footerwidth}{%
|
||||||
|
\centering%
|
||||||
|
\color{@addresscolor}\usekomafont{addressfont}%
|
||||||
|
\ifdefempty{\addressstreet}{}{%
|
||||||
|
\addtofooter[]{\@addresssymbol\addressstreet}%
|
||||||
|
\ifdefempty{\addresscity}{}{%
|
||||||
|
\addtofooter[~--~]{\addresscity}}}%
|
||||||
|
\ifdefempty{\mobile}{}{%
|
||||||
|
\addtofooter{\@mobilesymbol\mobile}}%
|
||||||
|
\ifdefempty{\phonenr}{}{%
|
||||||
|
\addtofooter{\@phonesymbol\phonenr}}
|
||||||
|
\ifdefempty{\faxnr}{}{%
|
||||||
|
\addtofooter{\@faxsymbol\faxnr}}%
|
||||||
|
\ifdefempty{\email}{}{%
|
||||||
|
\addtofooter{\@emailsymbol\emaillink{\email}}}
|
||||||
|
\ifdefempty{\homepage}{}{%
|
||||||
|
\addtofooter{\@homepagesymbol\httplink{\homepage}}}%
|
||||||
|
\ifdefempty{\extrainfo}{}{%
|
||||||
|
\addtofooter{\extrainfo}}\@flushf%
|
||||||
|
}% Ende parbox
|
||||||
|
\hspace*{\fill}%
|
||||||
|
\makebox[0pt][r]{\pagemark/\totalpagemark}
|
||||||
|
}% end definition onesided layout
|
||||||
|
}% end footer definition
|
||||||
|
\providecommand\@cvtitlecasual{%
|
||||||
|
\newbox{\@picbox}
|
||||||
|
\savebox{\@picbox}{%
|
||||||
|
\ifundef{\@photoname}{}{% with picture:
|
||||||
|
\ifthenelse{%
|
||||||
|
\equal{\@photoframe}{frame} \OR
|
||||||
|
\equal{\@photoframe}{mframe}
|
||||||
|
}{% with frame:
|
||||||
|
\fcolorbox{@framecolor}{@framebackcolor}{%
|
||||||
|
\includegraphics[width=\@photowidth]{\@photoname}%
|
||||||
|
}% end fcolorbox
|
||||||
|
}{% without frame:
|
||||||
|
\includegraphics[width=\@photowidth]{\@photoname}%
|
||||||
|
}% end ifdefstring frame
|
||||||
|
}% end ifundef photoname
|
||||||
|
}% end savebox picbox
|
||||||
|
\settowidth\@titlepicwidth{\usebox{\@picbox}}
|
||||||
|
\setlength\@titlenamewidth{\textwidth-\@titlesepwidth-\@titlepicwidth}
|
||||||
|
|
||||||
|
\usebox{\@picbox}%
|
||||||
|
\hspace*{\@titlesepwidth}%
|
||||||
|
\parbox[b]{\@titlenamewidth}{%
|
||||||
|
\raggedleft{\firstnamestyle\firstname}%
|
||||||
|
~{\familynamestyle\familyname}\\
|
||||||
|
\raggedleft\color{@firstnamecolor}\rule{%
|
||||||
|
\@titlenamewidth}{.25ex}\par
|
||||||
|
}% end parbox
|
||||||
|
\vspace{\@aftertitlevspace}
|
||||||
|
%% optional acadtitle
|
||||||
|
\ifdefempty{\acadtitle}{}{%
|
||||||
|
\raggedleft\acadtitlestyle{\acadtitle}}\\[2.5em]%
|
||||||
|
%% optional quote
|
||||||
|
\ifdefempty{\cvquote}{}{%
|
||||||
|
{\centering
|
||||||
|
\begin{minipage}{\@quotewidth}%
|
||||||
|
\centering\quotestyle{\cvquote}
|
||||||
|
\end{minipage}\\[\@afterquotevspace]%
|
||||||
|
}
|
||||||
|
}%
|
||||||
|
}% end @cvtitle-casual
|
||||||
|
|
||||||
|
\AtBeginDocument{%
|
||||||
|
\thispagestyle{footer}
|
||||||
|
} % end AtBeginDocument
|
||||||
|
\renewcommand{\section}[1]{\@cvbarsection{#1}}
|
||||||
|
\renewcommand{\subsection}[1]{\@cvbarsubsection{#1}}
|
||||||
|
%%\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `bewerbung-cv-casual.sty'.
|
106
bewerbung-cv-classic.sty
Normal file
106
bewerbung-cv-classic.sty
Normal file
@ -0,0 +1,106 @@
|
|||||||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||||||
|
\ProvidesPackage{bewerbung-cv-classic} %
|
||||||
|
[2015/07/14 v1.1 theme für bewerbungen basiert auf komacv-classic]
|
||||||
|
%% this file is based on komacv-classic.sty from Salome Södergran
|
||||||
|
%% every change is marked by
|
||||||
|
%% %% ahilbig begin
|
||||||
|
%% CHANGE
|
||||||
|
%% %% ahilbig end
|
||||||
|
\addtokomafont{firstnamefont}{\sffamily}
|
||||||
|
\addtokomafont{acadtitlefont}{\sffamily}
|
||||||
|
\addtokomafont{addressfont}{\sffamily}
|
||||||
|
\addtokomafont{hintfont}{\sffamily}
|
||||||
|
\AtEndPreamble{%
|
||||||
|
%AtBeginDocument{
|
||||||
|
% mframepicshift
|
||||||
|
\ifdimequal{\mframepicshift}{0pt}{%
|
||||||
|
\setlength\@mframepicshift{.5\@photowidth+\@fboxextra}
|
||||||
|
}{%
|
||||||
|
\setlength\@mframepicshift{\mframepicshift}
|
||||||
|
}
|
||||||
|
} % end AtBeginDocument
|
||||||
|
\providecommand\@cvtitleclassic{%
|
||||||
|
%% set cs{@titlenamemaxwidth| to the full name length
|
||||||
|
%% , capped by cs{@titlenamemaxwidth|
|
||||||
|
\setlength{\@titlenamemaxwidth}{.525\textwidth}
|
||||||
|
\settowidth{\@titlenamefullwidth}{%
|
||||||
|
\firstnamestyle{\firstname~}\familynamestyle{\familyname}}
|
||||||
|
\ifdimless{\@titlenamemaxwidth}{\@titlenamefullwidth}{%
|
||||||
|
\setlength{\@titlenamewidth}{\@titlenamemaxwidth}
|
||||||
|
}{%
|
||||||
|
\setlength{\@titlenamewidth}{\@titlenamefullwidth}
|
||||||
|
}
|
||||||
|
% set titlenamedetailswidth
|
||||||
|
\setlength{\@titledetailswidth}{%
|
||||||
|
\textwidth-\@titlenamewidth-\@titlesepwidth}%
|
||||||
|
\ifundef{\@photoname}{}{% else
|
||||||
|
\ifdefstring{\@photoframe}{frame}{%
|
||||||
|
\setlength{\@titledetailswidth}{%
|
||||||
|
\@titledetailswidth-\@photowidth-2\@fboxextra}
|
||||||
|
}{% else
|
||||||
|
\ifdefstring{\@photoframe}{mframe}{%
|
||||||
|
\setlength{\@titledetailswidth}{%
|
||||||
|
\@titledetailswidth-\@mframepicshift}%
|
||||||
|
}{}%
|
||||||
|
}%
|
||||||
|
}%
|
||||||
|
% name and title
|
||||||
|
\begin{minipage}[b]{\@titlenamewidth}%
|
||||||
|
%% ahilbig begin
|
||||||
|
\firstnamestyle{\firstname}\\ %
|
||||||
|
\familynamestyle{\familyname}%
|
||||||
|
\ifdefempty{\acadtitle}{}{%
|
||||||
|
\\[1.25em]\acadtitlestyle{\acadtitle}}%
|
||||||
|
\\[1.25em]\titlestyle{\lebenslaufTitel}%
|
||||||
|
\end{minipage}%
|
||||||
|
% optional data
|
||||||
|
\begin{minipage}[b]{\@titledetailswidth}%
|
||||||
|
\raggedleft\addressstyle{%
|
||||||
|
\ifdefempty{\addressstreet}{}{%
|
||||||
|
\@titledetailsnewline%
|
||||||
|
\@addresssymbol\addressstreet%
|
||||||
|
\ifdefempty{\addresscity}{}{%
|
||||||
|
\@titledetailsnewline\addresscity}}%
|
||||||
|
\ifdefempty{\mobile}{}{%
|
||||||
|
\@titledetailsnewline\@mobilesymbol~\mobile}%
|
||||||
|
\ifdefempty{\phonenr}{}{%
|
||||||
|
\@titledetailsnewline\@phonesymbol~\phonenr}%
|
||||||
|
\ifdefempty{\faxnr}{}{%
|
||||||
|
\@titledetailsnewline\@faxsymbol~\faxnr}%
|
||||||
|
\ifdefempty{\email}{}{%
|
||||||
|
\@titledetailsnewline\@emailsymbol\emaillink{\email}}%
|
||||||
|
\ifdefempty{\homepage}{}{%
|
||||||
|
\@titledetailsnewline\@homepagesymbol\httplink{\homepage}}%
|
||||||
|
\ifdefempty{\extrainfo}{}{%
|
||||||
|
\@titledetailsnewline\extrainfo}%
|
||||||
|
}%
|
||||||
|
%% ahilbig end
|
||||||
|
\end{minipage}%
|
||||||
|
% optional photo
|
||||||
|
\ifundef{\@photoname}{}{% with picture:
|
||||||
|
\hspace*{\@titlesepwidth}%
|
||||||
|
\ifthenelse{%
|
||||||
|
\equal{\@photoframe}{frame} \OR
|
||||||
|
\equal{\@photoframe}{mframe}
|
||||||
|
}{% with frame:
|
||||||
|
\begin{minipage}[b]{\@photowidth}%
|
||||||
|
\fcolorbox{@framecolor}{@framebackcolor}{%
|
||||||
|
\includegraphics[width=\@photowidth]{\@photoname}}%
|
||||||
|
\end{minipage}}{% without frame:
|
||||||
|
\begin{minipage}[b]{\@photowidth}
|
||||||
|
\includegraphics[width=\@photowidth]{\@photoname}
|
||||||
|
\end{minipage}}}
|
||||||
|
\\[\@aftertitlevspace]
|
||||||
|
% optional quote
|
||||||
|
\ifundef{\cvquote}{}{%
|
||||||
|
\centering
|
||||||
|
\begin{minipage}{\@quotewidth}%
|
||||||
|
\centering\quotestyle{\cvquote}%
|
||||||
|
\end{minipage}\\[\@afterquotevspace]%
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
\renewcommand*{\section}[1]{\@cvbarsection{#1}}
|
||||||
|
\renewcommand{\subsection}[1]{\@cvbarsubsection{#1}}
|
||||||
|
%%\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `bewerbung-cv-classic.sty'.
|
142
bewerbung-cv-oldstyle.sty
Normal file
142
bewerbung-cv-oldstyle.sty
Normal file
@ -0,0 +1,142 @@
|
|||||||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||||||
|
\ProvidesPackage{bewerbung-cv-oldstyle} %
|
||||||
|
[2015/07/14 v1.1 theme für bewerbungen basiert auf komacv-oldstyle]
|
||||||
|
%% this file is based on komacv-oldstyle.sty from Salome Södergran
|
||||||
|
%% every change is marked by
|
||||||
|
%% %% ahilbig begin
|
||||||
|
%% CHANGE
|
||||||
|
%% %% ahilbig end
|
||||||
|
\KOMAoptions{DIV=15}
|
||||||
|
\setlength{\hintscolwidth}{3cm}
|
||||||
|
\addtokomafont{addressfont}{\small}
|
||||||
|
\addtokomafont{hintfont}{\bfseries}
|
||||||
|
\setkomafont{section}{\Large\bfseries\upshape}
|
||||||
|
\setkomafont{subsection}{\large\bfseries\itshape}
|
||||||
|
\colorlet{addresscolor}{gray}
|
||||||
|
\renewcommand*{\listitemsymbol}{\labelitemi~}
|
||||||
|
\renewcommand*{\addresssymbol}{}
|
||||||
|
\renewcommand*{\mobilesymbol}{\textbf{M}~}
|
||||||
|
\renewcommand*{\phonesymbol}{\textbf{T}~}
|
||||||
|
\renewcommand*{\faxsymbol}{\textbf{F}~}
|
||||||
|
\renewcommand*{\emailsymbol}{\textbf{E}~}
|
||||||
|
\renewcommand*{\homepagesymbol}{}
|
||||||
|
\setlength{\infocolwidth}{3.5cm}
|
||||||
|
\setlength{\sepinfocolwidth}{2em}
|
||||||
|
|
||||||
|
\providecommand\@infocontent{%
|
||||||
|
\ifdefempty{\addressstreet}{}{%
|
||||||
|
\@titledetailsnewline%
|
||||||
|
\@addresssymbol\addressstreet%
|
||||||
|
\ifdefempty{\addresscity}{}{%
|
||||||
|
\@titledetailsnewline\addresscity}}%
|
||||||
|
\ifdefempty{\mobile}{}{%
|
||||||
|
\@titledetailsnewline\@mobilesymbol~\mobile}%
|
||||||
|
\ifdefempty{\phonenr}{}{%
|
||||||
|
\@titledetailsnewline \@phonesymbol\phonenr}%
|
||||||
|
\ifdefempty{\faxnr}{}{%
|
||||||
|
\@titledetailsnewline\@faxsymbol\faxnr}%
|
||||||
|
\ifdefempty{\email}{}{%
|
||||||
|
\@titledetailsnewline\@emailsymbol\emaillink{\email}}%
|
||||||
|
\ifdefempty{\homepage}{}{%
|
||||||
|
\@titledetailsnewline\@homepagesymbol\httplink{\homepage}}%
|
||||||
|
\ifdefempty{\extrainfo}{}{%
|
||||||
|
\@titledetailsnewline\extrainfo}%
|
||||||
|
} % end @infocontent
|
||||||
|
|
||||||
|
\providecommand{\@makeinfo}{%
|
||||||
|
\newbox{\@infobox}%
|
||||||
|
\savebox{\@infobox}{%
|
||||||
|
\parbox[b]{\@infocolwidth}{%
|
||||||
|
% put the first line on the same
|
||||||
|
% baseline as the first sectiontitle:
|
||||||
|
{\usekomafont{section}
|
||||||
|
\vspace*{1.6ex}
|
||||||
|
}
|
||||||
|
\raggedleft\addressstyle{%
|
||||||
|
\@infocontent%
|
||||||
|
}
|
||||||
|
}% end parbox
|
||||||
|
} % end savebox @infobox%
|
||||||
|
\newlength{\@infoheight}%
|
||||||
|
\setlength{\@infoheight}{%
|
||||||
|
\totalheightof{\usebox{\@infobox}}%
|
||||||
|
}%
|
||||||
|
\usebox{\@infobox}\vspace*{-\@infoheight}%
|
||||||
|
\par\nointerlineskip%
|
||||||
|
\vspace*{-\parskip}%
|
||||||
|
\vspace*{-\@aftersecvspace}
|
||||||
|
}% end \providecommand @makeinfo
|
||||||
|
|
||||||
|
\providecommand{\@cvtitleoldstyle}{%
|
||||||
|
% optional picture box
|
||||||
|
\newbox{\@picbox}
|
||||||
|
\savebox{\@picbox}{%
|
||||||
|
\ifundef{\@photoname}{}{% with picture:
|
||||||
|
\ifthenelse{%
|
||||||
|
\equal{\@photoframe}{frame} \OR
|
||||||
|
\equal{\@photoframe}{mframe}
|
||||||
|
}{% with frame:
|
||||||
|
\fcolorbox{@framecolor}{@framebackcolor}{%
|
||||||
|
\includegraphics[width=\@photowidth]{\@photoname}%
|
||||||
|
}% end fcolorbox
|
||||||
|
}{% without frame:
|
||||||
|
\includegraphics[width=\@photowidth]{\@photoname}%
|
||||||
|
}% end ifdefstring frame
|
||||||
|
}% end ifundef photoname
|
||||||
|
}% end savebox picbox
|
||||||
|
\settowidth\@titlepicwidth{\usebox{\@picbox}}
|
||||||
|
\setlength\@titlenamewidth{%
|
||||||
|
\textwidth-\@titlesepwidth-\@titlepicwidth}
|
||||||
|
\begin{minipage}[b]{\@titlenamewidth}%
|
||||||
|
\firstnamestyle{\firstname}\ %
|
||||||
|
\familynamestyle{\familyname}%
|
||||||
|
\ifdefempty{\acadtitle}{}{%
|
||||||
|
\\[1.25em]\acadtitlestyle{\acadtitle}}%
|
||||||
|
\end{minipage}%
|
||||||
|
% optional photo
|
||||||
|
\usebox{\@picbox}%
|
||||||
|
\\[\@aftertitlevspace]%
|
||||||
|
% optional quote
|
||||||
|
\ifdefempty{\cvquote}{}{%
|
||||||
|
{\centering%
|
||||||
|
\begin{minipage}{\@quotewidth}%
|
||||||
|
\centering\quotestyle{\cvquote}%
|
||||||
|
\end{minipage}\\[\@afterquotevspace]%
|
||||||
|
}%
|
||||||
|
}%
|
||||||
|
% address info box
|
||||||
|
\@makeinfo
|
||||||
|
\par
|
||||||
|
\begin{addmargin}[\komacvinfocolextrawidth]{0pt}
|
||||||
|
} % end @cvtitleoldstyle
|
||||||
|
|
||||||
|
\AtEndDocument{%
|
||||||
|
\end{addmargin}
|
||||||
|
}
|
||||||
|
\renewcommand{\section}[1]{\@cvsimplesection{#1}}
|
||||||
|
\renewcommand{\subsection}[1]{\@cvsimplesubsection{#1}}
|
||||||
|
\renewcommand*{\cvitem}[3][\@afterelementsvspace]{%
|
||||||
|
\begin{tabular}{%
|
||||||
|
@{}p{\@maincolwidth}%
|
||||||
|
@{\hspace{\@sepcolwidth}}p{\@hintscolwidth}@{}%
|
||||||
|
}%
|
||||||
|
{#3} & \raggedright\hintstyle{#2}%
|
||||||
|
\end{tabular}\\[#1]%
|
||||||
|
}
|
||||||
|
|
||||||
|
\renewcommand*{\cvdoubleitem}[5][\@afterelementsvspace]{%
|
||||||
|
\cvitem[#1]{#4}{%
|
||||||
|
\begin{minipage}[t]{\@dbitemmaincolwidth}#3\end{minipage}%
|
||||||
|
\hspace*{\@sepcolwidth}%
|
||||||
|
\begin{minipage}[t]{\@hintscolwidth}%
|
||||||
|
\noindent\raggedleft\hintstyle{#2}
|
||||||
|
\end{minipage}%
|
||||||
|
\hspace*{\@sepcolwidth}%
|
||||||
|
\begin{minipage}[t]{\@dbitemmaincolwidth}%
|
||||||
|
\noindent #5
|
||||||
|
\end{minipage}%
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
%%\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `bewerbung-cv-oldstyle.sty'.
|
662
bewerbung-cv.sty
Normal file
662
bewerbung-cv.sty
Normal file
@ -0,0 +1,662 @@
|
|||||||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||||||
|
\ProvidesPackage{bewerbung-cv} %
|
||||||
|
[2015/07/14 v1.1 Importierung der Klasse koma-cv %
|
||||||
|
für bewerbungen]
|
||||||
|
%% this file is based on komacv.cls from Salome Södergran
|
||||||
|
%% every change is marked by
|
||||||
|
%% %% ahilbig begin
|
||||||
|
%% CHANGE
|
||||||
|
%% %% ahilbig end
|
||||||
|
\providecommand*\mycolor{blue}
|
||||||
|
%% ahilbig begin
|
||||||
|
%\iffalse
|
||||||
|
%%\RequirePackage{ifthen,kvoptions,calc}
|
||||||
|
%%\SetupKeyvalOptions{%
|
||||||
|
%%family=komacv,%
|
||||||
|
%%prefix=komacv@,%
|
||||||
|
%%setkeys=\kvsetkeys%
|
||||||
|
%%}
|
||||||
|
%%\DeclareStringOption[mycolor]{color}[mycolor]
|
||||||
|
%%\DeclareStringOption[x11names]{xcolor}[x11names]
|
||||||
|
%%\DeclareStringOption[classic]{style}[classic]
|
||||||
|
%%\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}}
|
||||||
|
%%\ProcessKeyvalOptions{komacv} % evaluate keyval options
|
||||||
|
%%\ProcessOptions\relax % execute given options
|
||||||
|
%\fi
|
||||||
|
%% ahilbig end
|
||||||
|
\RequirePackage[\ahbewerbung@lebenslaufXcolor]{xcolor}
|
||||||
|
|
||||||
|
\definecolor{myblue}{rgb}{0.2,0.3,0.65}
|
||||||
|
\colorlet{mycolor}{myblue}
|
||||||
|
\AtEndPreamble{%
|
||||||
|
\renewcommand*\mycolor{\ahbewerbung@lebenslaufColor}
|
||||||
|
\colorlet{colortheme}{\mycolor}% specified in documentclass option
|
||||||
|
\@ifundefinedcolor{firstnamecolor}{%
|
||||||
|
\colorlet{@firstnamecolor}{black}}{%
|
||||||
|
\colorlet{@firstnamecolor}{firstnamecolor}}
|
||||||
|
\@ifundefinedcolor{familynamecolor}{%
|
||||||
|
\colorlet{@familynamecolor}{@firstnamecolor}}{%
|
||||||
|
\colorlet{@familynamecolor}{familynamecolor}}
|
||||||
|
\@ifundefinedcolor{acadtitlecolor}{%
|
||||||
|
\colorlet{@acadtitlecolor}{@firstnamecolor}}{%
|
||||||
|
\colorlet{@acadtitlecolor}{acadtitlecolor}}
|
||||||
|
%% ahilbig begin
|
||||||
|
% additional color for title
|
||||||
|
\@ifundefinedcolor{titlecolor}{%
|
||||||
|
\colorlet{@titlecolor}{@firstnamecolor}}{%
|
||||||
|
\colorlet{@titlecolor}{titlecolor}}
|
||||||
|
%% ahilbig end
|
||||||
|
\@ifundefinedcolor{addresscolor}{%
|
||||||
|
\colorlet{@addresscolor}{@firstnamecolor}}{%
|
||||||
|
\colorlet{@addresscolor}{addresscolor}}
|
||||||
|
%% ahilbig begin
|
||||||
|
% additional handling of coloring of urls
|
||||||
|
\@ifundefinedcolor{urllinkcolor}{%
|
||||||
|
\colorlet{@urllinkcolor}{@addresscolor}}{%
|
||||||
|
\colorlet{@urllinkcolor}{urllinkcolor}}
|
||||||
|
\hypersetup{urlcolor=@urllinkcolor}
|
||||||
|
%% ahilbig end
|
||||||
|
\@ifundefinedcolor{quotecolor}{%
|
||||||
|
\colorlet{@quotecolor}{@firstnamecolor}}{%
|
||||||
|
\colorlet{@quotecolor}{quotecolor}}
|
||||||
|
\@ifundefinedcolor{secbarcolor}{%
|
||||||
|
\colorlet{@secbarcolor}{colortheme}}{%
|
||||||
|
\colorlet{@secbarcolor}{secbarcolor}}
|
||||||
|
\@ifundefinedcolor{seccolor}{%
|
||||||
|
\colorlet{@seccolor}{colortheme}}{%
|
||||||
|
\colorlet{@seccolor}{seccolor}}
|
||||||
|
\@ifundefinedcolor{subseccolor}{%
|
||||||
|
\colorlet{@subseccolor}{colortheme}}{%
|
||||||
|
\colorlet{@subseccolor}{subseccolor}}
|
||||||
|
\@ifundefinedcolor{hintcolor}{%
|
||||||
|
\colorlet{@hintcolor}{black}}{%
|
||||||
|
\colorlet{@hintcolor}{hintcolor}}
|
||||||
|
\@ifundefinedcolor{framecolor}{%
|
||||||
|
\colorlet{@framecolor}{colortheme}}{%
|
||||||
|
\colorlet{@framecolor}{framecolor}}
|
||||||
|
\@ifundefinedcolor{framebackcolor}{%
|
||||||
|
\colorlet{@framebackcolor}{white}}{%
|
||||||
|
\colorlet{@framebackcolor}{framebackcolor}}
|
||||||
|
} % end AtEndPreamble
|
||||||
|
\ifboolexpr{bool{xetex} or bool{luatex}}{%
|
||||||
|
\RequirePackage{fontspec}%
|
||||||
|
}{%
|
||||||
|
%% ahilbig begin
|
||||||
|
%\iffalse
|
||||||
|
%% \RequirePackage[utf8]{inputenc}
|
||||||
|
%% \RequirePackage[T1]{fontenc}%
|
||||||
|
%\fi
|
||||||
|
%% ahilbig end
|
||||||
|
}
|
||||||
|
|
||||||
|
%% ahilbig begin
|
||||||
|
\newkomafont{firstnamefont}{%fontsize{34}{36}
|
||||||
|
\Huge\mdseries\upshape}
|
||||||
|
%% ahilbig end
|
||||||
|
\newkomafont{familynamefont}{\usekomafont{firstnamefont}}
|
||||||
|
|
||||||
|
%% ahilbig begin
|
||||||
|
%\iffalse
|
||||||
|
%%\addtokomafont{familynamefont}{}
|
||||||
|
%%\setkomafont{\namefont}{\Huge\sffamily\mdseries\upshape}%
|
||||||
|
%\fi
|
||||||
|
\newkomafont{titlefont}{\Large\sffamily\mdseries\itshape}
|
||||||
|
%% ahilbig end
|
||||||
|
\newkomafont{acadtitlefont}{\LARGE\mdseries\itshape}
|
||||||
|
\newkomafont{addressfont}{\normalsize\mdseries\itshape}
|
||||||
|
\newkomafont{quotefont}{\large\itshape}
|
||||||
|
\newkomafont{hintfont}{}
|
||||||
|
\newkomafont{linkfont}{}
|
||||||
|
\newkomafont{httplinkfont}{}
|
||||||
|
\newkomafont{emaillinkfont}{}
|
||||||
|
\newkomafont{commentmainfont}{\bfseries} % in cvitemwithcomment
|
||||||
|
\newkomafont{commentfont}{\footnotesize\itshape} % cvitemwidthcomment
|
||||||
|
%% ahilbig begin:
|
||||||
|
\newkomafont{section}{\LARGE\mdseries\upshape}
|
||||||
|
\newkomafont{subsection}{\Large\mdseries\upshape}
|
||||||
|
\newcommand{\section}[1]{}
|
||||||
|
\newcommand{\subsection}[1]{}
|
||||||
|
%% ahilbig end
|
||||||
|
\setlength\parindent{0pt}
|
||||||
|
\setlength\columnsep{10\p@}
|
||||||
|
\setlength\columnseprule{0\p@}
|
||||||
|
\newlength\@komacvtextwidth
|
||||||
|
\newlength\@hintscolwidth
|
||||||
|
\newlength\hintscolwidth
|
||||||
|
\setlength\hintscolwidth{0pt}
|
||||||
|
\newlength\@sepcolwidth
|
||||||
|
\newlength\sepcolwidth
|
||||||
|
\setlength\sepcolwidth{0pt}
|
||||||
|
\newlength\@maincolwidth
|
||||||
|
\newlength\maincolwidth
|
||||||
|
\setlength\maincolwidth{0pt}
|
||||||
|
\newlength\@quotewidth
|
||||||
|
\newlength\quotewidth
|
||||||
|
\setlength\quotewidth{0pt}
|
||||||
|
\newlength\@dbitemmaincolwidth
|
||||||
|
\newlength\dbitemmaincolwidth
|
||||||
|
\setlength\dbitemmaincolwidth{0pt}
|
||||||
|
\newlength\@listitemsymbolwidth
|
||||||
|
\newlength\listitemsymbolwidth
|
||||||
|
\setlength\listitemsymbolwidth{0pt}
|
||||||
|
\newlength\@listitemmaincolwidth
|
||||||
|
\newlength\listitemmaincolwidth
|
||||||
|
\setlength\listitemmaincolwidth{0pt}
|
||||||
|
\newlength\@listdbitemmaincolwidth
|
||||||
|
\newlength\listdbitemmaincolwidth
|
||||||
|
\setlength\listdbitemmaincolwidth{0pt}
|
||||||
|
\newlength\@titlepicwidth
|
||||||
|
\newlength\@titlesepwidth
|
||||||
|
\setlength\@titlesepwidth{0pt}
|
||||||
|
\newlength\titlesepwidth
|
||||||
|
\setlength\titlesepwidth{0pt}
|
||||||
|
\newlength\@mframepicshift
|
||||||
|
\newlength\mframepicshift
|
||||||
|
\setlength\mframepicshift{0pt}
|
||||||
|
\newlength\@commentmainlength
|
||||||
|
\newlength\@commentlength
|
||||||
|
\newlength\@titlenamewidth
|
||||||
|
\newlength\@titlenamemaxwidth
|
||||||
|
\newlength\@titlenamefullwidth
|
||||||
|
\newlength\@titledetailswidth
|
||||||
|
\newlength\@infocolwidth
|
||||||
|
\newlength\infocolwidth
|
||||||
|
\setlength\infocolwidth{0pt}
|
||||||
|
\newlength\@sepinfocolwidth
|
||||||
|
\newlength\sepinfocolwidth
|
||||||
|
\setlength\sepinfocolwidth{0pt}
|
||||||
|
\newlength\komacvinfocolextrawidth % witout @ for use inside document
|
||||||
|
\newlength\@footerwidth
|
||||||
|
\setlength\@footerwidth{.6\textwidth}
|
||||||
|
\newlength\@fboxwidth
|
||||||
|
\newlength\footerwidth
|
||||||
|
\setlength\footerwidth{0pt}
|
||||||
|
\newlength\@aftertitlevspace
|
||||||
|
\newlength\aftertitlevspace
|
||||||
|
\setlength\aftertitlevspace{0pt}
|
||||||
|
\newlength\@afterquotevspace
|
||||||
|
\newlength\afterquotevspace
|
||||||
|
\setlength\afterquotevspace{0pt}
|
||||||
|
\newlength\@afterelementsvspace
|
||||||
|
\newlength\afterelementsvspace
|
||||||
|
\newlength\@beforesecvspace
|
||||||
|
\newlength\beforesecvspace
|
||||||
|
\setlength\beforesecvspace{0pt}
|
||||||
|
\newlength\@aftersecvspace
|
||||||
|
\newlength\aftersecvspace
|
||||||
|
\setlength\aftersecvspace{0pt}
|
||||||
|
\newlength\@beforesubsecvspace
|
||||||
|
\newlength\beforesubsecvspace
|
||||||
|
\setlength\beforesubsecvspace{0pt}
|
||||||
|
\newlength\@aftersubsecvspace
|
||||||
|
\newlength\aftersubsecvspace
|
||||||
|
\setlength\aftersubsecvspace{0pt}
|
||||||
|
|
||||||
|
\AtEndPreamble{%
|
||||||
|
% infocol (oldstyle)
|
||||||
|
\setlength{\@infocolwidth}{\infocolwidth}
|
||||||
|
\setlength{\@sepinfocolwidth}{\sepinfocolwidth}
|
||||||
|
\setlength\komacvinfocolextrawidth{\@infocolwidth+\@sepinfocolwidth}
|
||||||
|
\setlength\@komacvtextwidth{\textwidth-\komacvinfocolextrawidth}
|
||||||
|
|
||||||
|
% fboxextra (picture frame)
|
||||||
|
\newlength\@fboxextra
|
||||||
|
\setlength\@fboxextra{\fboxsep+\fboxrule}
|
||||||
|
|
||||||
|
% hintscolumn
|
||||||
|
\ifdimequal{\hintscolwidth}{0pt}{%
|
||||||
|
\setlength\@hintscolwidth{.2\@komacvtextwidth}
|
||||||
|
}{%
|
||||||
|
\setlength{\@hintscolwidth}{\hintscolwidth}%
|
||||||
|
} %
|
||||||
|
|
||||||
|
% separatorcolumn
|
||||||
|
\ifdimequal{\sepcolwidth}{0pt}{%
|
||||||
|
\setlength\@sepcolwidth{2em}%
|
||||||
|
}{%
|
||||||
|
\setlength{\@sepcolwidth}{\sepcolwidth}%
|
||||||
|
} %
|
||||||
|
|
||||||
|
% maincolumn
|
||||||
|
\ifdimequal{\maincolwidth}{0pt}{%
|
||||||
|
\setlength{\@maincolwidth}{%
|
||||||
|
\@komacvtextwidth-\@sepcolwidth-\@hintscolwidth}%
|
||||||
|
}{%
|
||||||
|
\setlength{\@maincolwidth}{\maincolwidth}%
|
||||||
|
} %
|
||||||
|
|
||||||
|
% doubleitem
|
||||||
|
\ifdimequal{\dbitemmaincolwidth}{0pt}{%
|
||||||
|
\setlength{\@dbitemmaincolwidth}{%
|
||||||
|
\@maincolwidth-\@hintscolwidth-2\@sepcolwidth}%
|
||||||
|
\setlength{\@dbitemmaincolwidth}{0.5\@dbitemmaincolwidth}%
|
||||||
|
}{%
|
||||||
|
\setlength{\@dbitemmaincolwidth}{\dbitemmaincolwidth}%
|
||||||
|
} %
|
||||||
|
|
||||||
|
% listitem
|
||||||
|
\ifdimequal{\listitemsymbolwidth}{0pt}{%
|
||||||
|
\settowidth{\@listitemsymbolwidth}{\listitemsymbol{}~}%
|
||||||
|
\setlength{\@listitemmaincolwidth}{%
|
||||||
|
\@maincolwidth-\@listitemsymbolwidth}%
|
||||||
|
}{%
|
||||||
|
\setlength{\@listitemsymbolwidth}{\listitemsymbolwidth}%
|
||||||
|
} %
|
||||||
|
|
||||||
|
% listdoubleitem
|
||||||
|
\ifdimequal{\listdbitemmaincolwidth}{0pt}{%
|
||||||
|
\setlength{\@listdbitemmaincolwidth}{%
|
||||||
|
\@maincolwidth-\@listitemsymbolwidth}%
|
||||||
|
\setlength{\@listdbitemmaincolwidth}{%
|
||||||
|
0.475\@listdbitemmaincolwidth}%
|
||||||
|
}{%
|
||||||
|
\setlength{\@listdbitemmaincolwidth}{\listdbitemmaincolwidth}%
|
||||||
|
} %
|
||||||
|
|
||||||
|
% quote
|
||||||
|
\ifdimequal{\quotewidth}{0pt}{%
|
||||||
|
\setlength{\@quotewidth}{0.65\textwidth}%
|
||||||
|
}{%
|
||||||
|
\setlength{\@quotewidth}{\quotewidth}%
|
||||||
|
}
|
||||||
|
\ifdimequal{\afterquotevspace}{0pt}{%
|
||||||
|
\setlength\@afterquotevspace{2\baselineskip}%
|
||||||
|
}{%
|
||||||
|
\setlength\@afterquotevspace{\afterquotevspace}%
|
||||||
|
} %
|
||||||
|
|
||||||
|
% title
|
||||||
|
\ifundef{\@photoname}{% without picture:
|
||||||
|
\setlength\@aftertitlevspace{\aftertitlevspace}
|
||||||
|
}{% with picture:
|
||||||
|
\ifthenelse{%
|
||||||
|
\equal{\@photoframe}{frame} \OR
|
||||||
|
\equal{\@photoframe}{mframe}
|
||||||
|
}{% with frame:
|
||||||
|
\ifdimequal{\aftertitlevspace}{0pt}{%
|
||||||
|
\setlength\@aftertitlevspace{1.5\@fboxextra}
|
||||||
|
}{%
|
||||||
|
\setlength\@aftertitlevspace{\aftertitlevspace}
|
||||||
|
}
|
||||||
|
}{% without frame:
|
||||||
|
\setlength\@aftertitlevspace{\aftertitlevspace}
|
||||||
|
}%
|
||||||
|
}%
|
||||||
|
\ifundef{\@photoname}{}{%
|
||||||
|
\ifdimequal{\titlesepwidth}{0pt}{%
|
||||||
|
\setlength\@titlesepwidth{\@sepcolwidth}
|
||||||
|
}{%
|
||||||
|
\setlength{\@titlesepwidth}{\titlesepwidth}
|
||||||
|
}
|
||||||
|
} %
|
||||||
|
|
||||||
|
% afterelementsvspace
|
||||||
|
\ifdimequal{\afterelementsvspace}{0pt}{%
|
||||||
|
\setlength{\@afterelementsvspace}{0.25em}%
|
||||||
|
}{%
|
||||||
|
\setlength{\@afterelementsvspace}{\afterelementsvspace}%
|
||||||
|
} %
|
||||||
|
|
||||||
|
% beforesecvspace
|
||||||
|
\ifdimequal{\beforesecvspace}{0pt}{%
|
||||||
|
\setlength{\@beforesecvspace}{3.5ex \@plus -1ex \@minus -.2ex}%
|
||||||
|
}{%
|
||||||
|
\setlength{\@beforesecvspace}{\beforesecvspace}%
|
||||||
|
} %
|
||||||
|
|
||||||
|
% aftersecvspace
|
||||||
|
\ifdimequal{\aftersecvspace}{0pt}{%
|
||||||
|
\setlength{\@aftersecvspace}{2.3ex \@plus.2ex}%
|
||||||
|
}{%
|
||||||
|
\setlength{\@aftersecvspace}{\aftersecvspace}%
|
||||||
|
} %
|
||||||
|
% beforesubsecvspace
|
||||||
|
\ifdimequal{\beforesubsecvspace}{0pt}{%
|
||||||
|
\setlength{\@beforesubsecvspace}{%
|
||||||
|
3.25ex\@plus -1ex \@minus -.2ex}%
|
||||||
|
}{ %
|
||||||
|
\setlength{\@beforesubsecvspace}{\beforesubsecvspace}%
|
||||||
|
} %
|
||||||
|
|
||||||
|
% aftersubsecvspace
|
||||||
|
\ifdimequal{\aftersubsecvspace}{0pt}{%
|
||||||
|
\setlength{\@aftersubsecvspace}{1.5ex \@plus .2ex}%
|
||||||
|
}{%
|
||||||
|
\setlength{\@aftersubsecvspace}{\aftersubsecvspace}%
|
||||||
|
} %
|
||||||
|
} % end AtEndPreamble
|
||||||
|
\providecommand*\@addresssymbol{}
|
||||||
|
\providecommand*\addresssymbol{}
|
||||||
|
\providecommand*\@mobilesymbol{\Mobilefone~}
|
||||||
|
\providecommand*\mobilesymbol{}
|
||||||
|
\providecommand*\@phonesymbol{\Telefon~}
|
||||||
|
\providecommand*\phonesymbol{}
|
||||||
|
\providecommand*\@faxsymbol{\FAX~}
|
||||||
|
\providecommand*\faxsymbol{}
|
||||||
|
\providecommand*\@emailsymbol{\Letter~}
|
||||||
|
\providecommand*\emailsymbol{}
|
||||||
|
\providecommand*\@homepagesymbol{}
|
||||||
|
\providecommand*\homepagesymbol{}
|
||||||
|
\providecommand*\@fsymbol{~~~\textbullet~~~}
|
||||||
|
\providecommand*\fsymbol{}
|
||||||
|
\providecommand*\@listitemsymbol{\textcolor{colortheme}{\Neutral}~}
|
||||||
|
\providecommand*\listitemsymbol{}
|
||||||
|
|
||||||
|
\AtEndPreamble{%
|
||||||
|
\ifdefempty{\addresssymbol}{}{%
|
||||||
|
\renewcommand*\@addresssymbol{\addresssymbol}
|
||||||
|
} %
|
||||||
|
\ifdefempty{\mobilesymbol}{}{%
|
||||||
|
\renewcommand*\@mobilesymbol{\mobilesymbol}
|
||||||
|
} %
|
||||||
|
\ifdefempty{\phonesymbol}{}{%
|
||||||
|
\renewcommand*\@phonesymbol{\phonesymbol}
|
||||||
|
} %
|
||||||
|
\ifdefempty{\faxsymbol}{}{%
|
||||||
|
\renewcommand*\@faxsymbol{\faxsymbol}
|
||||||
|
} %
|
||||||
|
\ifdefempty{\emailsymbol}{}{%
|
||||||
|
\renewcommand*\@emailsymbol{\emailsymbol}
|
||||||
|
} %
|
||||||
|
\ifdefempty{\homepagesymbol}{}{%
|
||||||
|
\renewcommand*\@homepagesymbol{\homepagesymbol}
|
||||||
|
} %
|
||||||
|
\ifdefempty{\fsymbol}{}{%
|
||||||
|
\renewcommand*\@fsymbol{\fsymbol}
|
||||||
|
} %
|
||||||
|
\ifdefempty{\listitemsymbol}{}{%
|
||||||
|
\renewcommand*\@listitemsymbol{\listitemsymbol}
|
||||||
|
} %
|
||||||
|
|
||||||
|
} % end AtEndPreamble
|
||||||
|
|
||||||
|
\providecommand*{\firstname}{}
|
||||||
|
\providecommand*{\familyname}{}
|
||||||
|
\providecommand*{\acadtitle}{}
|
||||||
|
\providecommand*{\addressstreet}{}
|
||||||
|
\providecommand*{\addresscity}{}
|
||||||
|
\providecommand*{\address}[2]{\addressstreet{#1}\addresscity{#2}}
|
||||||
|
\providecommand*{\mobile}{}
|
||||||
|
\providecommand*{\phonenr}{}
|
||||||
|
\providecommand*{\faxnr}{}
|
||||||
|
\providecommand*{\email}{}
|
||||||
|
\providecommand*{\homepage}{}
|
||||||
|
\providecommand*{\extrainfo}{}
|
||||||
|
\providecommand*{\cvquote}{}
|
||||||
|
\newlist{compactitem}{itemize}{3}
|
||||||
|
\newlist{compactenum}{enumerate}{3}
|
||||||
|
\newlist{compactdesc}{description}{3}
|
||||||
|
\setlist[compactitem,compactenum,compactdesc]{%
|
||||||
|
topsep=0pt,%
|
||||||
|
partopsep=0pt,%
|
||||||
|
itemsep=0pt,%
|
||||||
|
parsep=0pt,%
|
||||||
|
leftmargin=*%
|
||||||
|
} % end setlist
|
||||||
|
\AtEndPreamble{%
|
||||||
|
\setlist[compactitem,1]{label=\@listitemsymbol}
|
||||||
|
\setlist[compactitem,2]{label={\textcolor{colortheme}\textendash}}
|
||||||
|
\setlist[compactitem,3]{label={%
|
||||||
|
\textcolor{colortheme}\textperiodcentered}} %
|
||||||
|
\setlist[compactenum,1]{label={\textcolor{colortheme}{\arabic*.}}}
|
||||||
|
\setlist[compactenum,2]{label={\textcolor{colortheme}{\alph*.}}}
|
||||||
|
\setlist[compactenum,3]{label={\textcolor{colortheme}{\roman*.}}}
|
||||||
|
} % end AtEndPreamble
|
||||||
|
\newlength\@photowidth
|
||||||
|
\providecommand{\photo}[3][]{%
|
||||||
|
\providecommand{\@photoframe}{#1}%
|
||||||
|
\setlength{\@photowidth}{#2}%
|
||||||
|
\providecommand{\@photoname}{#3}}
|
||||||
|
\newif\if@firstdetailselement\@firstdetailselementtrue
|
||||||
|
\providecommand*{\@titledetailsnewline}{ %
|
||||||
|
\if@firstdetailselement%
|
||||||
|
\@firstdetailselementfalse%
|
||||||
|
\else%
|
||||||
|
\\[.4ex]
|
||||||
|
\fi%
|
||||||
|
}
|
||||||
|
%% ahilbig begin
|
||||||
|
\renewcommand\maketitle{%
|
||||||
|
\csexpandonce{@cvtitle\ahbewerbung@lebenslaufStyle}}
|
||||||
|
%% ahilbig end
|
||||||
|
\RequirePackage{lastpage}
|
||||||
|
\providecommand*{\totalpagemark}{% page and pagetotal
|
||||||
|
\usekomafont{pagenumber}\pageref{LastPage}%
|
||||||
|
}
|
||||||
|
\newcommand*{\firstnamestyle}[1]{{%
|
||||||
|
\usekomafont{firstnamefont}%
|
||||||
|
\textcolor{@firstnamecolor}{#1}}}
|
||||||
|
\newcommand*{\familynamestyle}[1]{{%
|
||||||
|
\usekomafont{familynamefont}%
|
||||||
|
\textcolor{@familynamecolor}{#1}}}
|
||||||
|
\newcommand*{\acadtitlestyle}[1]{{%
|
||||||
|
\usekomafont{acadtitlefont}%
|
||||||
|
\textcolor{@acadtitlecolor}{#1}}}
|
||||||
|
%% ahilbig begin
|
||||||
|
\newcommand*{\titlestyle}[1]{{%
|
||||||
|
\usekomafont{titlefont}%
|
||||||
|
\textcolor{@titlecolor}{#1}}}
|
||||||
|
%% ahilbig end
|
||||||
|
\newcommand*{\addressstyle}[1]{{%
|
||||||
|
\usekomafont{addressfont}%
|
||||||
|
\textcolor{@addresscolor}{#1}}}
|
||||||
|
\newcommand*{\quotestyle}[1]{{%
|
||||||
|
\usekomafont{quotefont}%
|
||||||
|
\textcolor{@quotecolor}{#1}}}
|
||||||
|
\newcommand*{\hintstyle}[1]{{%
|
||||||
|
\usekomafont{hintfont}%
|
||||||
|
\textcolor{@hintcolor}{#1}}}
|
||||||
|
\newcommand*{\sectionstyle}[1]{%
|
||||||
|
\usekomafont{section}%
|
||||||
|
\textcolor{@seccolor}{#1}}
|
||||||
|
\newcommand*{\subsectionstyle}[1]{%
|
||||||
|
\usekomafont{subsection}%
|
||||||
|
\textcolor{@subseccolor}{#1}}
|
||||||
|
\providecommand*{\cvitem}[3][\@afterelementsvspace]{%
|
||||||
|
\begin{tabular}{%
|
||||||
|
@{}p{\@hintscolwidth}%
|
||||||
|
@{\hspace{\@sepcolwidth}}p{\@maincolwidth}@{}%
|
||||||
|
}%
|
||||||
|
\raggedleft\hintstyle{#2} &{#3}%
|
||||||
|
\end{tabular}\\[#1]%
|
||||||
|
}
|
||||||
|
\providecommand*{\cvdoubleitem}[5][\@afterelementsvspace]{%
|
||||||
|
\cvitem[#1]{#2}{%
|
||||||
|
\begin{minipage}[t]{\@dbitemmaincolwidth}#3\end{minipage}%
|
||||||
|
\hspace*{\@sepcolwidth}%
|
||||||
|
\begin{minipage}[t]{\@hintscolwidth}%
|
||||||
|
\noindent\raggedleft\hintstyle{#4}
|
||||||
|
\end{minipage}%
|
||||||
|
\hspace*{\@sepcolwidth}%
|
||||||
|
\begin{minipage}[t]{\@dbitemmaincolwidth}%
|
||||||
|
\noindent #5
|
||||||
|
\end{minipage}%
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
\providecommand*{\cvlistitem}[2][\@afterelementsvspace]{%
|
||||||
|
\cvitem[#1]{}{%
|
||||||
|
\@listitemsymbol%
|
||||||
|
\begin{minipage}[t]{\@listitemmaincolwidth}%
|
||||||
|
#2%
|
||||||
|
\end{minipage}%
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
\providecommand*{\cvlistdoubleitem}[3][\@afterelementsvspace]{%
|
||||||
|
\cvitem[#1]{}{%
|
||||||
|
\@listitemsymbol%
|
||||||
|
\begin{minipage}[t]{\@listdbitemmaincolwidth}%
|
||||||
|
#2%
|
||||||
|
\end{minipage}%
|
||||||
|
\hspace*{\@sepcolwidth}
|
||||||
|
\ifstrempty{#3}{}{%
|
||||||
|
\@listitemsymbol%
|
||||||
|
\begin{minipage}[t]{\@listdbitemmaincolwidth}%
|
||||||
|
#3%
|
||||||
|
\end{minipage}
|
||||||
|
}%
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
\providecommand*{\cventry}[7][\@afterelementsvspace]{%
|
||||||
|
\cvitem[#1]{#2}{%
|
||||||
|
{\bfseries#3}%
|
||||||
|
\ifstrempty{#4}{}{, {\itshape#4}}%
|
||||||
|
\ifstrempty{#5}{}{, #5}%
|
||||||
|
\ifstrempty{#6}{}{, #6}%
|
||||||
|
.%
|
||||||
|
\ifx&%
|
||||||
|
\else{%
|
||||||
|
\newline{}\begin{minipage}[t]{\linewidth}%
|
||||||
|
\small#7%
|
||||||
|
\end{minipage}%
|
||||||
|
}%
|
||||||
|
\fi%
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
%% ahilbig begin
|
||||||
|
\providecommand{\cvlanguage}[3]{%
|
||||||
|
\cvitemwithcomment{#1}{#2}{#3}%
|
||||||
|
}
|
||||||
|
%% ahilbig end
|
||||||
|
\newbox{\@commentmainbox}
|
||||||
|
\providecommand*{\cvitemwithcomment}[4][\@afterelementsvspace]{%
|
||||||
|
\savebox{\@commentmainbox}{{\usekomafont{commentmainfont}#3}}%
|
||||||
|
\settowidth\@commentmainlength{\usebox{\@commentmainbox}}%
|
||||||
|
\setlength{\@commentlength}{%
|
||||||
|
\@maincolwidth-\@sepcolwidth-\@commentmainlength%
|
||||||
|
}%
|
||||||
|
\cvitem[#1]{#2}{%
|
||||||
|
\begin{minipage}[t]{\@commentmainlength}%
|
||||||
|
\usekomafont{commentmainfont} #3%
|
||||||
|
\end{minipage}%
|
||||||
|
\hfill%
|
||||||
|
\begin{minipage}[t]{\@commentlength}%
|
||||||
|
\raggedleft\usekomafont{commentfont} #4%
|
||||||
|
\end{minipage}%
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
\providecommand*{\link}[2][]{%
|
||||||
|
\ifstrempty{#1}{%
|
||||||
|
\href{#2}{\usekomafont{linkfont}#2}}{%
|
||||||
|
\href{#2}{\usekomafont{linkfont}#1}}%
|
||||||
|
}
|
||||||
|
\providecommand*{\httplink}[2][]{%
|
||||||
|
\ifstrempty{#1}{%
|
||||||
|
\href{http://#2}{\usekomafont{httplinkfont}#2}}{%
|
||||||
|
\href{http://#2}{\usekomafont{httplinkfont}#1}}%
|
||||||
|
}
|
||||||
|
\providecommand*{\emaillink}[2][]{%
|
||||||
|
\ifstrempty{#1}{%
|
||||||
|
\href{mailto:#2}{\usekomafont{emaillinkfont}#2}}{%
|
||||||
|
\href{mailto:#2}{\usekomafont{emaillinkfont}#1}}%
|
||||||
|
}
|
||||||
|
\providecommand\origsection{}
|
||||||
|
\let\origsection\section
|
||||||
|
\providecommand\origsubsection{}
|
||||||
|
\let\origsubsection\subsection
|
||||||
|
|
||||||
|
\providecommand\@cvsimplesection[1]{%
|
||||||
|
\origsection*{\sectionstyle{#1}}
|
||||||
|
}
|
||||||
|
\providecommand\@cvsimplesubsection[1]{%
|
||||||
|
\origsubsection*{\subsectionstyle{#1}}
|
||||||
|
}
|
||||||
|
|
||||||
|
\providecommand\@cvbarsection[1]{%
|
||||||
|
%% ahilbig begin
|
||||||
|
% needed some additional space between the sections to look nicer
|
||||||
|
\vspace{0.75em}
|
||||||
|
%% ahilbig end
|
||||||
|
\origsection*{%
|
||||||
|
\phantomsection{}% reset the anchor for hyperrefs
|
||||||
|
\addcontentsline{toc}{section}{#1}%
|
||||||
|
\cvitem[0pt]{%
|
||||||
|
\raggedleft\hintstyle{\color{@secbarcolor}%
|
||||||
|
\rule{\@hintscolwidth}{1ex}}%
|
||||||
|
%% ahilbig begin
|
||||||
|
% we need more space^^
|
||||||
|
}{\sectionstyle{#1}\vspace{0.4em}} %
|
||||||
|
%% ahilbig end
|
||||||
|
}% end origsection
|
||||||
|
} % end cvbarsection
|
||||||
|
|
||||||
|
\providecommand\@cvbarsubsection[1]{%
|
||||||
|
\origsubsection*{%
|
||||||
|
\cvitem[0pt]{}{\subsectionstyle{#1}}%
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
|
||||||
|
\hypersetup{%
|
||||||
|
breaklinks,%
|
||||||
|
unicode, %
|
||||||
|
%% ahilbig begin
|
||||||
|
% make links look nicer
|
||||||
|
colorlinks = true,%
|
||||||
|
%% ahilbig end
|
||||||
|
pdfborder = {0 0 .3},%
|
||||||
|
pdfstartview = FitH,%
|
||||||
|
%% ahilbig begin
|
||||||
|
%\iffalse
|
||||||
|
%% pdfstartpage = 1,%
|
||||||
|
%% pdfcreator = \LaTeX{},%
|
||||||
|
%% pdfproducer = \LaTeX{} %
|
||||||
|
%\fi
|
||||||
|
%% ahilbig end
|
||||||
|
}%
|
||||||
|
\urlstyle{same}
|
||||||
|
\providecommand*\@citebordercolor{}
|
||||||
|
\providecommand*\citebordercolor{\@citebordercolor}
|
||||||
|
\providecommand*\@filebordercolor{}
|
||||||
|
\providecommand*\filebordercolor{\@filebordercolor}
|
||||||
|
\providecommand*\@linkbordercolor{}
|
||||||
|
\providecommand*\linkbordercolor{\@linkbordercolor}
|
||||||
|
\providecommand*\@menubordercolor{}
|
||||||
|
\providecommand*\menubordercolor{\@menubordercolor}
|
||||||
|
\providecommand*\@runbordercolor{}
|
||||||
|
\providecommand*\runbordercolor{\@runbordercolor}
|
||||||
|
\providecommand*\@urlbordercolor{}
|
||||||
|
\providecommand*\urlbordercolor{\@urlbordercolor}
|
||||||
|
\providecommand*\allbordercolors{}
|
||||||
|
\providecommand*\pdfauthor{}
|
||||||
|
\providecommand*\pdfsubject{}
|
||||||
|
\providecommand*\pdftitle{}
|
||||||
|
\providecommand*\pdfkeywords{}
|
||||||
|
|
||||||
|
\AtEndPreamble{%
|
||||||
|
\providecommand*\@allbordercolors{colortheme}
|
||||||
|
\ifdefempty{\allbordercolors}{}{%
|
||||||
|
\renewcommand*\@allbordercolors{\allbordercolors}}
|
||||||
|
\providecommand*\@pdfauthor{\firstname~\familyname}
|
||||||
|
\ifdefempty{\pdfauthor}{}{\renewcommand*\@pdfauthor{\pdfauthor}}
|
||||||
|
\providecommand*\@pdfsubject{\firstname~\familyname}
|
||||||
|
\providecommand*\pdfsubject{\@pdfsubject}
|
||||||
|
\providecommand*\@pdftitle{\title~\firstname~\familyname}
|
||||||
|
\providecommand*\pdftitle{\@pdftitle}
|
||||||
|
\providecommand*\@pdfkeywords{%
|
||||||
|
\firstname~\familyname{} curriculum~vit\ae{} CV{}}
|
||||||
|
\providecommand*\pdfkeywords{\@pdfkeywords}
|
||||||
|
\hypersetup{%
|
||||||
|
allbordercolors = \@allbordercolors,%
|
||||||
|
citebordercolor = \citebordercolor,%
|
||||||
|
filebordercolor = \filebordercolor,%
|
||||||
|
linkbordercolor = \linkbordercolor,%
|
||||||
|
menubordercolor = \menubordercolor,%
|
||||||
|
runbordercolor = \runbordercolor,%
|
||||||
|
urlbordercolor = \urlbordercolor,%
|
||||||
|
pdfauthor = \@pdfauthor,%
|
||||||
|
pdfsubject = \pdfsubject,%
|
||||||
|
pdftitle = \pdftitle,%
|
||||||
|
pdfkeywords = \pdfkeywords,%
|
||||||
|
}%
|
||||||
|
} % end AtEndPreamble
|
||||||
|
\AtBeginDocument{%
|
||||||
|
\raggedbottom %
|
||||||
|
} % End AtBeginDocument
|
||||||
|
%% ahilbig begin
|
||||||
|
%\iffalse
|
||||||
|
%%\clearscrheadfoot
|
||||||
|
%\fi
|
||||||
|
\RequirePackage{bewerbung-cv-\ahbewerbung@lebenslaufStyle}
|
||||||
|
%% ahilbig end
|
||||||
|
%%\endinput
|
||||||
|
%%
|
||||||
|
%% End of file `bewerbung-cv.sty'.
|
BIN
bewerbung-example.pdf
Normal file
BIN
bewerbung-example.pdf
Normal file
Binary file not shown.
81
bewerbung-example.tex
Normal file
81
bewerbung-example.tex
Normal file
@ -0,0 +1,81 @@
|
|||||||
|
% -*- coding: utf-8; -*-
|
||||||
|
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
% |
|
||||||
|
% (C)opyright A. Hilbig, mail@andrehilbig.de |
|
||||||
|
% http://www.andrehilbig.de/index.cgi/Publications/Bewerbung |
|
||||||
|
% |
|
||||||
|
% this file: bewerbung-example.tex |
|
||||||
|
% |
|
||||||
|
% |
|
||||||
|
% This work may be distributed and/or modified under the |
|
||||||
|
% conditions of the LaTeX Project Public License, either version 1.3 |
|
||||||
|
% of this license or (at your option) any later version. |
|
||||||
|
% The latest version of this license is in |
|
||||||
|
% http://www.latex-project.org/lppl.txt |
|
||||||
|
% and version 1.3 or later is part of all distributions of LaTeX |
|
||||||
|
% version 2005/12/01 or later. |
|
||||||
|
% |
|
||||||
|
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
% |
|
||||||
|
\documentclass[%
|
||||||
|
% color option derived from komacv
|
||||||
|
lebenslaufColor=light-gray,
|
||||||
|
% which cv style (from komacv) do you want to use?
|
||||||
|
% -> classic is default and slightly edited
|
||||||
|
% -> casual
|
||||||
|
% -> oldstyle
|
||||||
|
%lebenslaufStyle=classic,
|
||||||
|
% which id-format is used?
|
||||||
|
% plain -> search for the exact match of id in the column ID
|
||||||
|
% noplain (default) -> get the row with number id (first one is 0)
|
||||||
|
% for additional information take a look into config.inc
|
||||||
|
idPlain %
|
||||||
|
]{bewerbung}
|
||||||
|
\usepackage[utf8]{inputenc}
|
||||||
|
\usepackage[T1]{fontenc}
|
||||||
|
\usepackage[ngerman]{babel}
|
||||||
|
|
||||||
|
\definecolor{light-gray}{gray}{0.6}
|
||||||
|
\definecolor{titlecolor}{gray}{0.62}
|
||||||
|
\definecolor{addresscolor}{gray}{0.45}
|
||||||
|
|
||||||
|
% here are some possible color hacks:
|
||||||
|
%\xdefinecolor{mycolor}{cmyk}{0.92,0,0.87,0.09}
|
||||||
|
%\colorlet{firstnamecolor}{blue}
|
||||||
|
%\colorlet{familynamecolor}{red}
|
||||||
|
%\colorlet{acadtitlecolor}{green}
|
||||||
|
%\colorlet{addresscolor}{titlecolor}
|
||||||
|
%\colorlet{quotecolor}{pink}
|
||||||
|
%\colorlet{framecolor}{yellow}
|
||||||
|
%\colorlet{framebackcolor}{black}
|
||||||
|
%\colorlet{secbarcolor}{firstnamecolor}
|
||||||
|
%\colorlet{seccolor}{familynamecolor}
|
||||||
|
%\colorlet{subseccolor}{pink!70!black}
|
||||||
|
%\colorlet{hintcolor}{orange}
|
||||||
|
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
\begin{anschreiben}
|
||||||
|
Hier kommt das Anschreiben hin
|
||||||
|
\end{anschreiben}
|
||||||
|
|
||||||
|
\begin{lebenslauf}[none][]
|
||||||
|
\maketitle
|
||||||
|
\makePerson
|
||||||
|
|
||||||
|
\section{Studium}
|
||||||
|
\cventry{03/13}{Abschluss: Dipl.-Pädagogin (Univ.)}{}{}{}{}
|
||||||
|
|
||||||
|
\section{Führerschein}
|
||||||
|
\cvlistitem{Klasse B (eigener PKW)}
|
||||||
|
|
||||||
|
\section{Sprachen}
|
||||||
|
\cvlanguage{Deutsch}{Muttersprache}{}
|
||||||
|
\cvlanguage{Englisch}{gut}{}
|
||||||
|
\end{lebenslauf}
|
||||||
|
|
||||||
|
% Sometimes it could be nice to add some diploma, certificates and so on
|
||||||
|
% Feel free to use pdfpages for that stuff:
|
||||||
|
%\includepdf[pages=-]{Anhang/diploma.pdf}
|
||||||
|
%\includepdfmerge[pages=-,landscape,angle=270]{Anhang/schoolout1.pdf,Anhang/schoolout2.pdf}
|
||||||
|
\end{document}
|
41
bewerbung.bib
Normal file
41
bewerbung.bib
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
%% LaTeX2e file `bewerbung.bib'
|
||||||
|
%% generated by the `filecontents' environment
|
||||||
|
%% from source `dokumentation' on 2015/07/11.
|
||||||
|
%%
|
||||||
|
@electronic{komacv,
|
||||||
|
author = "Salome Södergan",
|
||||||
|
month = {Aug},
|
||||||
|
year = "2014",
|
||||||
|
title = "komacv",
|
||||||
|
subtitle = "Typesetting a beuatiful CV with various style options",
|
||||||
|
url = {http://www.ctan.org/pkg/komacv},
|
||||||
|
urldate = {2015-07-09},
|
||||||
|
}
|
||||||
|
|
||||||
|
@electronic{scrlttr2,
|
||||||
|
author = "Markus Kohm",
|
||||||
|
month = {Jul},
|
||||||
|
year = "2015",
|
||||||
|
title = "scrlttr2",
|
||||||
|
subtitle = "Koma-Script ‘letter’ class",
|
||||||
|
url = {http://www.ctan.org/pkg/scrlttr2},
|
||||||
|
urldate = {2015-07-09},
|
||||||
|
}
|
||||||
|
|
||||||
|
@electronic{datatool,
|
||||||
|
author = "Nicola Talbot",
|
||||||
|
year = "2014",
|
||||||
|
title = "datatool",
|
||||||
|
subtitle = "Tools to load and manipulate data",
|
||||||
|
url = {http://www.ctan.org/pkg/datatool},
|
||||||
|
urldate = {2015-07-09},
|
||||||
|
}
|
||||||
|
|
||||||
|
@electronic{pdfpages,
|
||||||
|
author = "Andreas Matthias",
|
||||||
|
year = "2015",
|
||||||
|
title = "pdfpages",
|
||||||
|
subtitle = "Include PDF documents in LaTeX",
|
||||||
|
url = {http://www.ctan.org/pkg/pdfpages},
|
||||||
|
urldate = {2015-07-09},
|
||||||
|
}
|
88
bewerbung.cls
Normal file
88
bewerbung.cls
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
|
||||||
|
\ProvidesClass{bewerbung}[2015/07/14 v1.1 %
|
||||||
|
Klasse zur Erstellung von Bewerbungsschreiben]
|
||||||
|
\RequirePackage{ifthen,kvoptions,calc}
|
||||||
|
\SetupKeyvalOptions{%
|
||||||
|
family=ahbewerbung,%
|
||||||
|
prefix=ahbewerbung@,%
|
||||||
|
setkeys=\kvsetkeys%
|
||||||
|
}
|
||||||
|
%%
|
||||||
|
%% for komacv are some color options available, that %
|
||||||
|
%% needed to get passed to the new cv package
|
||||||
|
%% ALL OPTIONS ARE CHANGED TO THE IDENTIFIER ahbewerbung
|
||||||
|
%%
|
||||||
|
\DeclareStringOption[mycolor]{lebenslaufColor}[mycolor]
|
||||||
|
\DeclareStringOption[x11names]{lebenslaufXcolor}[x11names]
|
||||||
|
\DeclareStringOption[classic]{lebenslaufStyle}[classic]
|
||||||
|
\DeclareStringOption[anschrift.csv]{anschrift}[anschrift.csv]
|
||||||
|
\DeclareBoolOption{idPlain}
|
||||||
|
\ProcessKeyvalOptions{ahbewerbung} % evaluate keyval options
|
||||||
|
|
||||||
|
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrlttr2}}
|
||||||
|
\ProcessOptions\relax
|
||||||
|
\LoadClass[
|
||||||
|
DIN, pagenumber=botright, backaddress=true, parskip=half,%
|
||||||
|
fromalign=left, fromemail=true, fromfax=true, %
|
||||||
|
fromphone=true, fromurl=false, fromalign=right, %
|
||||||
|
fromlogo=false, fromrule=true, foldmarks=true, %
|
||||||
|
paper=a4, fontsize=10pt,enlargefirstpage=true, firstfoot=false
|
||||||
|
]{scrlttr2}
|
||||||
|
|
||||||
|
%\iffalse
|
||||||
|
%% import from komacv.cls for easier maintaining
|
||||||
|
%\fi
|
||||||
|
\RequirePackage{%
|
||||||
|
etoolbox,%
|
||||||
|
ifpdf,%
|
||||||
|
ifluatex,%
|
||||||
|
ifxetex,%
|
||||||
|
marvosym, %
|
||||||
|
scrlayer-scrpage, %
|
||||||
|
array,%
|
||||||
|
graphicx,%
|
||||||
|
microtype,%
|
||||||
|
enumitem, %
|
||||||
|
hyperref, %
|
||||||
|
}
|
||||||
|
|
||||||
|
\RequirePackage[%
|
||||||
|
%\iffalse
|
||||||
|
%% xcolor=\ahbewerbung@lebenslaufXcolor,%
|
||||||
|
%% color=\ahbewerbung@lebenslaufColor,%
|
||||||
|
%% style=\ahbewerbung@lebenslaufStyle,%
|
||||||
|
%\fi
|
||||||
|
]{bewerbung-cv}
|
||||||
|
\RequirePackage[autostyle,german=guillemets]{csquotes}
|
||||||
|
|
||||||
|
\RequirePackage[top=2.5cm]{geometry}
|
||||||
|
|
||||||
|
\RequirePackage{datatool}
|
||||||
|
|
||||||
|
\RequirePackage[right]{eurosym}
|
||||||
|
\RequirePackage{xspace}
|
||||||
|
|
||||||
|
|
||||||
|
\RequirePackage{multicol}
|
||||||
|
\RequirePackage{pdfpages}
|
||||||
|
|
||||||
|
\RequirePackage{comment}
|
||||||
|
|
||||||
|
\RequirePackage{xparse}
|
||||||
|
|
||||||
|
\RequirePackage{bewerbung}
|
||||||
|
|
||||||
|
\AtBeginDocument{%
|
||||||
|
\hypersetup{colorlinks=true}%
|
||||||
|
\InputIfFileExists{config.inc}{}{%
|
||||||
|
\@latex@warning@no@line{%
|
||||||
|
Achtung die Datei config.inc ist nicht lesbar.}%
|
||||||
|
}
|
||||||
|
\getBewerbung[\ahbewerbung@anschrift] %
|
||||||
|
\runKomaVar %
|
||||||
|
\InputIfFileExists{titlepage.inc}{}{%
|
||||||
|
\@latex@warning@no@line{%
|
||||||
|
Achtung die Datei titlepage.inc ist nicht lesbar.}%
|
||||||
|
} %
|
||||||
|
}
|
||||||
|
%%\endinput
|
3021
bewerbung.dtx
Normal file
3021
bewerbung.dtx
Normal file
File diff suppressed because it is too large
Load Diff
57
bewerbung.ins
Normal file
57
bewerbung.ins
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
%% Copyright (C) 2015 by A. Hilbig <mail@andrehilbig.de>
|
||||||
|
%% --------------------------------------------------------------------------
|
||||||
|
%% This work may be distributed and/or modified under the
|
||||||
|
%% conditions of the LaTeX Project Public License, either version 1.3
|
||||||
|
%% of this license or (at your option) any later version.
|
||||||
|
%% The latest version of this license is in
|
||||||
|
%% http://www.latex-project.org/lppl.txt
|
||||||
|
%% and version 1.3 or later is part of all distributions of LaTeX
|
||||||
|
%% version 2005/12/01 or later.
|
||||||
|
%%
|
||||||
|
%% This work has the LPPL maintenance status `maintained'.
|
||||||
|
%%
|
||||||
|
%% The Current Maintainer of this work is A. Hilbig.
|
||||||
|
%%
|
||||||
|
%% This work consists of the files bewerbung.dtx and bewerbung.ins
|
||||||
|
%% and the derived filebase bewerbung.sty.
|
||||||
|
%%
|
||||||
|
|
||||||
|
\input docstrip.tex
|
||||||
|
\keepsilent
|
||||||
|
|
||||||
|
\usedir{tex/latex/bewerbung}
|
||||||
|
|
||||||
|
\preamble
|
||||||
|
|
||||||
|
This is a generated file.
|
||||||
|
|
||||||
|
Copyright (C) 2015 by A. Hilbig <mail@andrehilbig.de>
|
||||||
|
--------------------------------------------------------------------------
|
||||||
|
This work may be distributed and/or modified under the
|
||||||
|
conditions of the LaTeX Project Public License, either version 1.3
|
||||||
|
of this license or (at your option) any later version.
|
||||||
|
The latest version of this license is in
|
||||||
|
http://www.latex-project.org/lppl.txt
|
||||||
|
and version 1.3 or later is part of all distributions of LaTeX
|
||||||
|
version 2005/12/01 or later.
|
||||||
|
|
||||||
|
\endpreamble
|
||||||
|
|
||||||
|
\generate{\file{bewerbung.sty}{\from{bewerbung.dtx}{package}}}
|
||||||
|
|
||||||
|
\obeyspaces
|
||||||
|
\Msg{*************************************************************}
|
||||||
|
\Msg{* *}
|
||||||
|
\Msg{* To finish the installation you have to move the following *}
|
||||||
|
\Msg{* file into a directory searched by TeX: *}
|
||||||
|
\Msg{* *}
|
||||||
|
\Msg{* bewerbung.sty *}
|
||||||
|
\Msg{* *}
|
||||||
|
\Msg{* To produce the documentation run the file bewerbung.dtx *}
|
||||||
|
\Msg{* through LaTeX. *}
|
||||||
|
\Msg{* *}
|
||||||
|
\Msg{* Happy TeXing! *}
|
||||||
|
\Msg{* *}
|
||||||
|
\Msg{*************************************************************}
|
||||||
|
|
||||||
|
\endbatchfile
|
329
bewerbung.sty
Normal file
329
bewerbung.sty
Normal file
@ -0,0 +1,329 @@
|
|||||||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||||||
|
\ProvidesPackage{bewerbung}
|
||||||
|
[2015/07/14 v1.1 makros zum setzen der bewerbung]
|
||||||
|
|
||||||
|
% Macros for setting up your personal informations
|
||||||
|
\providecommand{\name}{}
|
||||||
|
\providecommand{\Name}[1]{\renewcommand{\name}{#1}}
|
||||||
|
|
||||||
|
\providecommand{\vorname}{}
|
||||||
|
\providecommand{\Vorname}[1]{\renewcommand{\vorname}{#1}}
|
||||||
|
|
||||||
|
% the optional argument indicates wether to print vor + nachname
|
||||||
|
% or nachname, vorname
|
||||||
|
\providecommand{\fullname}[1][n]{%
|
||||||
|
\ifthenelse{\equal{#1}{n}}{%
|
||||||
|
\vorname\xspace\name %
|
||||||
|
}{%
|
||||||
|
\name, \vorname %
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
|
||||||
|
\providecommand{\street}{}
|
||||||
|
\providecommand{\Street}[1]{\renewcommand{\street}{#1}}
|
||||||
|
|
||||||
|
\providecommand{\plz}{}
|
||||||
|
\providecommand{\Plz}[1]{\renewcommand{\plz}{#1}}
|
||||||
|
|
||||||
|
\providecommand{\stadt}{}
|
||||||
|
\providecommand{\Stadt}[1]{\renewcommand{\stadt}{#1}}
|
||||||
|
|
||||||
|
\providecommand{\anschrift}[1][n]{%
|
||||||
|
\ifthenelse{\equal{#1}{n}}{%
|
||||||
|
\street\\%
|
||||||
|
\plz\xspace\stadt%
|
||||||
|
}{%
|
||||||
|
\street, \plz\xspace\stadt%
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
|
||||||
|
\providecommand{\meinBeruf}{}
|
||||||
|
\providecommand{\meinberuf}{\meinBeruf}
|
||||||
|
\providecommand{\MeinBeruf}[1]{\renewcommand{\meinBeruf}{#1}}
|
||||||
|
|
||||||
|
\providecommand{\gebDatum}{}
|
||||||
|
\providecommand{\GebDatum}[1]{\renewcommand{\gebDatum}{#1}}
|
||||||
|
|
||||||
|
\providecommand{\sta}{}
|
||||||
|
\providecommand{\Sta}[1]{\renewcommand{\sta}{#1}}
|
||||||
|
|
||||||
|
\providecommand{\email}{}
|
||||||
|
\providecommand{\EMail}[1]{\renewcommand{\email}{#1}}
|
||||||
|
|
||||||
|
\providecommand{\tel}{}
|
||||||
|
\providecommand{\Tel}[1]{\renewcommand{\tel}{#1}}
|
||||||
|
|
||||||
|
\providecommand{\mobile}{}
|
||||||
|
\providecommand{\Mobile}[1]{\renewcommand{\mobile}{#1}}
|
||||||
|
|
||||||
|
\ProvideDocumentCommand{\anhang}{o}{%
|
||||||
|
\IfNoValueTF{#1}{%
|
||||||
|
Curriculum Vitae.\anhangTmpFlat
|
||||||
|
}{%
|
||||||
|
\item Anschreiben
|
||||||
|
\item Curriculum Vitae
|
||||||
|
\anhangTmpList
|
||||||
|
} %
|
||||||
|
}
|
||||||
|
\providecommand{\anhangTmpFlat}{}
|
||||||
|
\providecommand{\anhangTmpList}{}
|
||||||
|
|
||||||
|
\providecommand{\Anhang}[2]{%
|
||||||
|
\renewcommand{\anhangTmpFlat}{\\ #1}
|
||||||
|
\renewcommand{\anhangTmpList}{#2}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
\providecommand{\todayOrt}{\stadt}
|
||||||
|
\providecommand{\TodayOrt}[1]{\renewcommand{\todayOrt}{#1}}
|
||||||
|
\providecommand{\todayTime}{\today}
|
||||||
|
\providecommand{\TodayTime}[1]{\renewcommand{\todayTime}{#1}}
|
||||||
|
|
||||||
|
\providecommand{\lebenslaufTitel}{Curriculum Vitae}
|
||||||
|
\providecommand{\LebenslaufTitel}[1]{%
|
||||||
|
\renewcommand{\lebenslaufTitel}{#1}}
|
||||||
|
|
||||||
|
% Macros for setting up the information of the company
|
||||||
|
\providecommand{\firma}{a}
|
||||||
|
\providecommand{\firmaAnrede}{a}
|
||||||
|
\providecommand{\firmaName}{a}
|
||||||
|
\providecommand{\firmaStreet}{a}
|
||||||
|
\providecommand{\firmaPlz}{a}
|
||||||
|
\providecommand{\firmaStadt}{a}
|
||||||
|
|
||||||
|
\providecommand{\beruf}{a}
|
||||||
|
\providecommand{\setzekomma}{,}
|
||||||
|
|
||||||
|
\providecommand{\bewerbungKW}{}
|
||||||
|
\providecommand{\BewerbungKW}[1]{%
|
||||||
|
\renewcommand{\bewerbungKW}{#1}}%
|
||||||
|
\providecommand{\bewerbungDatum}{}
|
||||||
|
\providecommand{\BewerbungDatum}[1]{%
|
||||||
|
\renewcommand{\bewerbungDatum}{#1}%
|
||||||
|
}
|
||||||
|
|
||||||
|
\providecommand{\bewerbungFirma}{}
|
||||||
|
\providecommand{\BewerbungFirma}[1]{%
|
||||||
|
\renewcommand{\bewerbungFirma}{#1}%
|
||||||
|
}
|
||||||
|
\providecommand{\bewerbungFirmaAnrede}{}
|
||||||
|
\providecommand{\BewerbungFirmaAnrede}[1]{%
|
||||||
|
\renewcommand{\bewerbungAnrede}{#1}%
|
||||||
|
}
|
||||||
|
\providecommand{\bewerbungFirmaName}{}
|
||||||
|
\providecommand{\BewerbungFirmaName}[1]{%
|
||||||
|
\renewcommand{\bewerbungName}{#1}%
|
||||||
|
}
|
||||||
|
\providecommand{\bewerbungFirmaStr}{}
|
||||||
|
\providecommand{\BewerbungFirmaStr}[1]{%
|
||||||
|
\renewcommand{\bewerbungFirmaStr}{#1}%
|
||||||
|
}
|
||||||
|
\providecommand{\bewerbungFirmaPlz}{}
|
||||||
|
\providecommand{\BewerbungFirmaPlz}[1]{%
|
||||||
|
\renewcommand{\bewerbungPlz}{#1}%
|
||||||
|
}
|
||||||
|
\providecommand{\bewerbungFirmaOrt}{}
|
||||||
|
\providecommand{\BewerbungFirmaOrt}[1]{%
|
||||||
|
\renewcommand{\bewerbungOrt}{#1}%
|
||||||
|
}
|
||||||
|
|
||||||
|
\providecommand{\bewerbungStelle}{}
|
||||||
|
\providecommand{\BewerbungStelle}[1]{%
|
||||||
|
\renewcommand{\bewerbungStelle}{#1}%
|
||||||
|
}
|
||||||
|
\providecommand{\bewerbungRueckmeldung}{}
|
||||||
|
\providecommand{\BewerbungRueckmeldung}[1]{%
|
||||||
|
\renewcommand{\bewerbungRueckmeldung}{#1}%
|
||||||
|
}
|
||||||
|
\providecommand{\bewerbungSonstiges}{}
|
||||||
|
\providecommand{\BewerbungSonstiges}[1]{%
|
||||||
|
\renewcommand{\bewerbungSonstiges}{#1}%
|
||||||
|
}
|
||||||
|
|
||||||
|
\RequirePackage{datatool}
|
||||||
|
|
||||||
|
% Need to know which company you mean today
|
||||||
|
\providecommand{\id}{}
|
||||||
|
\providecommand{\ID}[1]{\renewcommand{\id}{#1}}
|
||||||
|
% How does the table of applications look like?
|
||||||
|
% ID, KW, Datum, Firma, FirmaAnrede, FirmaName, Str, PLZ,
|
||||||
|
% Ort, Stelle, Rueckmeldung, Sonstiges
|
||||||
|
|
||||||
|
% Get the information of the current company out of the table
|
||||||
|
\providecommand{\getBewerbung}[1][anschrift.csv]{
|
||||||
|
\IfFileExists{#1}{%
|
||||||
|
% load the table
|
||||||
|
\DTLloaddb[ %
|
||||||
|
]{anschrift}{#1} %
|
||||||
|
% which id-format is used?
|
||||||
|
% plain -> search for the exact match
|
||||||
|
% of id in the column ID
|
||||||
|
% noplain (default) -> get the row with number id
|
||||||
|
% (first one is 0)
|
||||||
|
\ifahbewerbung@idPlain %
|
||||||
|
\edtlgetrowforvalue{anschrift}{1}{\id} %
|
||||||
|
\else %
|
||||||
|
\dtlgetrow{anschrift}{\id} %
|
||||||
|
\fi %
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungKW}{2}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungDatum}{3}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungFirma}{4}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungFirmaAnrede}{5}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungFirmaName}{6}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungFirmaStr}{7}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungFirmaPlz}{8}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungFirmaOrt}{9}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungStelle}{10}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungRueckmeldung}{11}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungSonstiges}{12}
|
||||||
|
}{%
|
||||||
|
\@latex@warning@no@line{Achtung die Datei #1 ist nicht lesbar.} %
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
|
||||||
|
% Change the komavars for komacv implementation of this project
|
||||||
|
\providecommand{\runKomaVar}{%
|
||||||
|
\setkomavar{fromname}{\fullname} %
|
||||||
|
\setkomavar{fromaddress}{\street\\\plz\xspace\stadt} %
|
||||||
|
\setkomavar{fromphone}[\Telefon\enskip]{\tel} %
|
||||||
|
\setkomavar{fromfax}[\Mobilefone\enskip]{\mobile} %
|
||||||
|
\setkomavar{fromemail}[\Letter\enskip]{\email} %
|
||||||
|
\setkomavar{signature}{\vorname\xspace\name} %
|
||||||
|
\setkomavar{subject}{Bewerbung als \bewerbungStelle} %
|
||||||
|
\renewcommand*{\raggedsignature}{} %
|
||||||
|
%\iffalse
|
||||||
|
%% \renewcommand*{\title}{\}% PDF metadata
|
||||||
|
%\fi
|
||||||
|
\renewcommand*{\firstname}{\vorname} %
|
||||||
|
\renewcommand*{\familyname}{\name} %
|
||||||
|
%\iffalse
|
||||||
|
%% \renewcommand*{\acadtitle}{}
|
||||||
|
%\fi
|
||||||
|
\renewcommand*{\addressstreet}{\street} %
|
||||||
|
\renewcommand*{\addresscity}{\plz\xspace\stadt} %
|
||||||
|
\renewcommand*{\address}{\street\\\plz\xspace\stadt} %
|
||||||
|
\renewcommand*{\phonenr}{\tel} %
|
||||||
|
%\iffalse
|
||||||
|
%% \renewcommand*{\extrainfo}{Some extra info}
|
||||||
|
%\fi
|
||||||
|
} %
|
||||||
|
|
||||||
|
% Provide the right paper for a nice titlepage
|
||||||
|
\ProvideDocumentEnvironment{titlepage}{}{%
|
||||||
|
\thispagestyle{empty} %
|
||||||
|
\newgeometry{top=4cm,left=3cm,right=2.5cm,bottom=2cm} %
|
||||||
|
}{ %
|
||||||
|
\clearpage %
|
||||||
|
\restoregeometry %
|
||||||
|
} %
|
||||||
|
|
||||||
|
% This environment will make a nice letter to you company
|
||||||
|
\ProvideDocumentEnvironment{anschreiben}{oo}{%
|
||||||
|
\begin{letter}{%
|
||||||
|
\bewerbungFirma\\
|
||||||
|
\bewerbungFirmaAnrede\xspace\bewerbungFirmaName\\
|
||||||
|
\bewerbungFirmaStr\\
|
||||||
|
\bewerbungFirmaPlz\xspace\bewerbungFirmaOrt
|
||||||
|
} %
|
||||||
|
\IfNoValueF{#2}{\enlargethispage{#2}} %
|
||||||
|
\newcommand{\geehrt}{#1} %
|
||||||
|
\ifthenelse{\equal{\bewerbungFirmaAnrede}{Frau}}{%
|
||||||
|
\renewcommand{\geehrt}{geehrte}%
|
||||||
|
}{}%
|
||||||
|
\ifthenelse{\equal{\bewerbungFirmaAnrede}{Herr}}{%
|
||||||
|
\renewcommand{\geehrt}{geehrter}%
|
||||||
|
}{}%
|
||||||
|
\opening{Sehr \geehrt\xspace %
|
||||||
|
\bewerbungFirmaAnrede\xspace\bewerbungFirmaName, %
|
||||||
|
}%
|
||||||
|
}{
|
||||||
|
\closing{Mit freundlichen Gr\"u{\ss}en} %
|
||||||
|
%\iffalse
|
||||||
|
%%\signature{}
|
||||||
|
%\fi
|
||||||
|
\encl{%
|
||||||
|
\anhang %
|
||||||
|
} %
|
||||||
|
\end{letter}
|
||||||
|
}
|
||||||
|
|
||||||
|
% This environment will produce a nice cv like komacv
|
||||||
|
% but within the same document
|
||||||
|
\ProvideDocumentEnvironment{lebenslauf}{oo}{%
|
||||||
|
\clearpage
|
||||||
|
\newgeometry{top=2.5cm,left=3cm,right=2.5cm,bottom=3cm}
|
||||||
|
\pagestyle{empty}
|
||||||
|
\ifthenelse{\equal{#1}{none}}{\renewcommand{\@listitemsymbol}{}}{} %
|
||||||
|
%\iffalse
|
||||||
|
%%\clearscrheadfoot
|
||||||
|
%%\ifoot{CV~\firstname~\familyname}
|
||||||
|
%%\ofoot{n}
|
||||||
|
%\fi
|
||||||
|
}{
|
||||||
|
\vfill
|
||||||
|
\begin{raggedright}
|
||||||
|
\begin{tabular}{p{\textwidth}}
|
||||||
|
\fullname\\
|
||||||
|
\todayOrt, \todayTime
|
||||||
|
\end{tabular}
|
||||||
|
\end{raggedright}
|
||||||
|
\IfNoValueF{#2}{%
|
||||||
|
\newpage %
|
||||||
|
#2 %
|
||||||
|
} %
|
||||||
|
\restoregeometry
|
||||||
|
}
|
||||||
|
|
||||||
|
% Make the entry of your personality in the cv-environment
|
||||||
|
\providecommand{\makePerson}{ %
|
||||||
|
\section{Pers\"onliche Angaben} %
|
||||||
|
\cvitem{Name}{\fullname} %
|
||||||
|
\cvitem{Anschrift}{\anschrift[k]} %
|
||||||
|
\cvitem{StA}{\sta} %
|
||||||
|
\cvitem{Geburtsdatum}{\gebDatum} %
|
||||||
|
%\iffalse
|
||||||
|
%%\cvitem{Konfession}{}
|
||||||
|
%%\cvitem{Familienstand}{}
|
||||||
|
%\fi
|
||||||
|
\cvitem{Beruf}{\meinBeruf} %
|
||||||
|
}
|
||||||
|
|
||||||
|
% Print a table with all your latest applications
|
||||||
|
\providecommand{\argetabelle}[1][anschrift.csv]{ %
|
||||||
|
\IfFileExists{#1}{%
|
||||||
|
% load the table
|
||||||
|
\DTLloaddb{anschrift}{anschrift.csv} %
|
||||||
|
|
||||||
|
% create a nice table environment for printing
|
||||||
|
% over more than one page
|
||||||
|
\begin{longtable}{rrL{6cm}L{3cm}L{4cm}}
|
||||||
|
\toprule
|
||||||
|
\multicolumn{1}{l}{\textbf{KW}} & %
|
||||||
|
\multicolumn{1}{l}{\textbf{Datum}} & \textbf{Arbeitgeber} & %
|
||||||
|
\textbf{Stelle} & \textbf{R\"uckmeldung} \\\midrule
|
||||||
|
\endfirsthead
|
||||||
|
\toprule
|
||||||
|
\multicolumn{5}{r}{Fortsetzung\ldots}\\\toprule
|
||||||
|
\multicolumn{1}{l}{\textbf{KW}} & %
|
||||||
|
\multicolumn{1}{l}{\textbf{Datum}} & \textbf{Arbeitgeber} & %
|
||||||
|
{Stelle} & \textbf{R\"uckmeldung} \\\midrule
|
||||||
|
\endhead
|
||||||
|
\midrule\multicolumn{5}{r}{%
|
||||||
|
Fortsetzung auf der n\"achsten Seite\ldots}\\\bottomrule
|
||||||
|
\endfoot
|
||||||
|
\bottomrule
|
||||||
|
\endlastfoot
|
||||||
|
% read the whole table-file and print it nicely into the table
|
||||||
|
\DTLforeach{anschrift}{%
|
||||||
|
\kw=KW,\datum=Datum,\firma=Firma,\firmaanrede=FirmaAnrede,%
|
||||||
|
\firmaname=FirmaName,\str=Str,\plz=PLZ,\ort=Ort,%
|
||||||
|
\stelle=Stelle,\rueckmeldung=Rueckmeldung}{%
|
||||||
|
\\
|
||||||
|
\kw & \datum & \firma\newline\firmaanrede\ \firmaname\ \str,%
|
||||||
|
\plz\ \ort & \stelle & \rueckmeldung \\\midrule} %
|
||||||
|
\end{longtable}
|
||||||
|
}{%
|
||||||
|
\@latex@warning@no@line{Achtung die Datei #1 ist nicht lesbar.} %
|
||||||
|
} %
|
||||||
|
}
|
||||||
|
%%\endinput
|
BIN
bewerbung/Foto.pdf
Normal file
BIN
bewerbung/Foto.pdf
Normal file
Binary file not shown.
87
bewerbung/README
Normal file
87
bewerbung/README
Normal file
@ -0,0 +1,87 @@
|
|||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
| |
|
||||||
|
| PACKAGE `bewerbung' |
|
||||||
|
| |
|
||||||
|
This project has the aim to provide packages and classes for typesetting an application with
|
||||||
|
titlepage, letter, cv and additional documents in just one document. Also there is a class for
|
||||||
|
printing a table with the latest applications that can be shown to the german authorities. The
|
||||||
|
data of the applications can be edited in a simple csv file.
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
Version: 1.3
|
||||||
|
Last Change: 2022-01-17
|
||||||
|
Current Maintainer: André Hilbig
|
||||||
|
mail@andrehilbig.de
|
||||||
|
https://git.andrehilbig.de/ahilbig/vorlagebewerbung
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
|
||||||
|
This work may be distributed and/or modified under the
|
||||||
|
conditions of the LaTeX Project Public License, either version 1.3
|
||||||
|
of this license of (at your option) any later version.
|
||||||
|
The latest version of this license is in
|
||||||
|
http://www.latex-project.org/lppl.txt
|
||||||
|
and version 1.3 or later is part of all distributions of LaTeX
|
||||||
|
version 2005/12/01 or later.
|
||||||
|
|
||||||
|
This work has the LPPL maintenance status `maintained'.
|
||||||
|
|
||||||
|
This work consists of the files bewerbung.dtx and bewerbung.ins and the derived files
|
||||||
|
bewerbung-cv-casual.sty, bewerbung-cv-classic.sty, bewerbung-cv-oldstyle.sty, bewerbung-cv.sty,
|
||||||
|
bewerbung.sty, argetabelle.cls, bewerbung.cls, neueBewerbung.sh, config.inc, titlepage.inc.
|
||||||
|
| |
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
| |
|
||||||
|
| Installation |
|
||||||
|
| |
|
||||||
|
Getting the files:
|
||||||
|
latex bewerbung.ins
|
||||||
|
|
||||||
|
Getting the documentation:
|
||||||
|
latexmk -pdf bewerbung.pdf
|
||||||
|
|
||||||
|
Copy the following files into a TeX-readable directory:
|
||||||
|
bewerbung*.sty
|
||||||
|
argetabelle.cls
|
||||||
|
bewerbung.cls
|
||||||
|
titlepage.inc
|
||||||
|
|
||||||
|
The following files are needed to make a new application:
|
||||||
|
anschrift.csv
|
||||||
|
bewerbung-example.tex
|
||||||
|
config.inc
|
||||||
|
Foto.pdf
|
||||||
|
|
||||||
|
The following files are needed to make a new documentation-table:
|
||||||
|
anschrift.csv
|
||||||
|
argetabelle-example.tex
|
||||||
|
| |
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
| |
|
||||||
|
| Create a new application (in that directory-structure; only OS with a shell) |
|
||||||
|
| |
|
||||||
|
Structure of the project:
|
||||||
|
Bewerbungen:
|
||||||
|
|
|
||||||
|
+-----Anhang:
|
||||||
|
|-diplom.pdf
|
||||||
|
|-zeugnis.pdf
|
||||||
|
|
|
||||||
|
+-----bewerbung-dreamjob:
|
||||||
|
|-Anhang -> ../Anhang
|
||||||
|
|-Foto.pdf -> ../Foto.pdf
|
||||||
|
|-anschrift.csv -> ../anschrift.csv
|
||||||
|
|-bewerbung-Traumjob.tex
|
||||||
|
|-config.inc
|
||||||
|
|-Foto.pdf
|
||||||
|
|-anschrift.csv
|
||||||
|
|-argetabelle.tex (wie argetabelle-example.tex)
|
||||||
|
|-bewerbung.tex (wie bewerbung-example.tex)
|
||||||
|
|-config.inc
|
||||||
|
To create a new application just execute neueBewerbung with NAME being an identifier for the new
|
||||||
|
application. It will create a new directory NAME and copy or link all the needed files out of
|
||||||
|
Bewerbungen.
|
||||||
|
./neueBewerbung BEZEICHNER
|
||||||
|
|
||||||
|
With that structure in mind the files bewerbung.tex and config.inc are your templates in
|
||||||
|
Bewerbungen. They get copied everytime you create a new application.
|
||||||
|
| |
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
90
bewerbung/README_DE
Normal file
90
bewerbung/README_DE
Normal file
@ -0,0 +1,90 @@
|
|||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
| |
|
||||||
|
| PACKAGE `bewerbung' |
|
||||||
|
| |
|
||||||
|
Das `bewerbung' Bundle hat das Ziel, Pakete und Klassen zum Setzen von Bewerbungsmappen mit
|
||||||
|
Titelseite, Brief, Lebenslauf und zusätzlichen Dokumenten bereitzustellen. Außerdem gibt es eine
|
||||||
|
Klasse zum Setzen einer Tabelle mit den aktuellen Bewerbungsversuchen, die der Agentur für Arbeit
|
||||||
|
vorgelegt werden kann. Die Daten der Bewerbungsversuche werden in einer simplen csv-Datei
|
||||||
|
verwaltet.
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
Version: 1.3
|
||||||
|
Last Change 2022-01-17
|
||||||
|
Current Maintainer: André Hilbig
|
||||||
|
mail@andrehilbig.de
|
||||||
|
https://git.andrehilbig.de/ahilbig/vorlagebewerbung
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
|
||||||
|
This work may be distributed and/or modified under the
|
||||||
|
conditions of the LaTeX Project Public License, either version 1.3
|
||||||
|
of this license of (at your option) any later version.
|
||||||
|
The latest version of this license is in
|
||||||
|
http://www.latex-project.org/lppl.txt
|
||||||
|
and version 1.3 or later is part of all distributions of LaTeX
|
||||||
|
version 2005/12/01 or later.
|
||||||
|
|
||||||
|
This work has the LPPL maintenance status `maintained'.
|
||||||
|
|
||||||
|
This work consists of the files bewerbung.dtx and bewerbung.ins and the derived files
|
||||||
|
bewerbung-cv-casual.sty, bewerbung-cv-classic.sty, bewerbung-cv-oldstyle.sty, bewerbung-cv.sty,
|
||||||
|
bewerbung.sty, argetabelle.cls, bewerbung.cls, neueBewerbung.sh, config.inc, titlepage.inc.
|
||||||
|
| |
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
| |
|
||||||
|
| Installation |
|
||||||
|
| |
|
||||||
|
Dateien des Pakets erhalten:
|
||||||
|
latex bewerbung.ins
|
||||||
|
|
||||||
|
Dokumentation setzen:
|
||||||
|
latexmk -pdf bewerbung.pdf
|
||||||
|
|
||||||
|
Folgende Dateien müssen in ein für TeX lesbares Verzeichnis kopiert werden:
|
||||||
|
bewerbung*.sty
|
||||||
|
argetabelle.cls
|
||||||
|
bewerbung.cls
|
||||||
|
titlepage.inc
|
||||||
|
|
||||||
|
Folgende Dateien sind für das Anlegen einer neuen Bewerbungsmappe notwendig:
|
||||||
|
anschrift.csv
|
||||||
|
bewerbung-example.tex
|
||||||
|
config.inc
|
||||||
|
Foto.pdf
|
||||||
|
|
||||||
|
Folgende Dateien sind für das Setzen einer Dokumentationstabelle notwendig:
|
||||||
|
anschrift.csv
|
||||||
|
argetabelle-example.tex
|
||||||
|
| |
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
| |
|
||||||
|
| Neue Bewerbung anlegen (bei gegebener Verzeichnisstruktur, nur OS mit Shell) |
|
||||||
|
| |
|
||||||
|
Struktur des Projektverzeichnisses:
|
||||||
|
Bewerbungen:
|
||||||
|
|
|
||||||
|
+-----Anhang:
|
||||||
|
|-diplom.pdf
|
||||||
|
|-zeugnis.pdf
|
||||||
|
|
|
||||||
|
+-----bewerbung-Traumjob:
|
||||||
|
|-Anhang -> ../Anhang
|
||||||
|
|-Foto.pdf -> ../Foto.pdf
|
||||||
|
|-anschrift.csv -> ../anschrift.csv
|
||||||
|
|-bewerbung-Traumjob.tex
|
||||||
|
|-config.inc
|
||||||
|
|-Foto.pdf
|
||||||
|
|-anschrift.csv
|
||||||
|
|-argetabelle.tex (wie argetabelle-example.tex)
|
||||||
|
|-bewerbung.tex (wie bewerbung-example.tex)
|
||||||
|
|-config.inc
|
||||||
|
|
||||||
|
Ausführung von neueBewerbung, wobei BEZEICHNER ein geeigneter Name für die neue Bewerbung sein
|
||||||
|
sollte. Es wird automatisch ein neues Verzeichnis angelegt und alle notwendigen Dateien werden
|
||||||
|
kopiert oder verlinkt.
|
||||||
|
./neueBewerbung BEZEICHNER
|
||||||
|
|
||||||
|
Demnach wird immer die bewerbung.tex aus dem Stammverzeichnis als Vorlage benutzt, um eine neue
|
||||||
|
Bewerbung zu erstellen. Veränderungen an der neuen Bewerbung werden nicht in diese Vorlage
|
||||||
|
übernommen.
|
||||||
|
| |
|
||||||
|
+ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
3
bewerbung/anschrift.csv
Normal file
3
bewerbung/anschrift.csv
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
ID,KW,Datum,Firma,FirmaAnrede,FirmaName,Str,PLZ,Ort,Stelle,Rueckmeldung,Sonstiges
|
||||||
|
2,13,26.09.15,Packisbar GmbH,Frau,Nauti,Traumstraße 19,59888,Traumort,Traumberuf,n,n
|
||||||
|
1,12,14.09.15,Packbar GmbH,Herr,Nubil,Traumstraße 4,59888,Traumort,Traumberuf,n,n
|
|
BIN
bewerbung/argetabelle-example.pdf
Normal file
BIN
bewerbung/argetabelle-example.pdf
Normal file
Binary file not shown.
28
bewerbung/argetabelle-example.tex
Normal file
28
bewerbung/argetabelle-example.tex
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
% -*- coding: utf-8; -*-
|
||||||
|
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
% |
|
||||||
|
% (C)opyright A. Hilbig, mail@andrehilbig.de |
|
||||||
|
% http://www.andrehilbig.de/index.cgi/Publications/Bewerbung |
|
||||||
|
% |
|
||||||
|
% this file: argetabelle-example.tex |
|
||||||
|
% |
|
||||||
|
% |
|
||||||
|
% This work may be distributed and/or modified under the |
|
||||||
|
% conditions of the LaTeX Project Public License, either version 1.3 |
|
||||||
|
% of this license or (at your option) any later version. |
|
||||||
|
% The latest version of this license is in |
|
||||||
|
% http://www.latex-project.org/lppl.txt |
|
||||||
|
% and version 1.3 or later is part of all distributions of LaTeX |
|
||||||
|
% version 2005/12/01 or later. |
|
||||||
|
% |
|
||||||
|
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
% |
|
||||||
|
\documentclass[11pt,a4paper]{argetabelle}
|
||||||
|
\usepackage[utf8]{inputenc}
|
||||||
|
\usepackage[T1]{fontenc}
|
||||||
|
|
||||||
|
\usepackage[ngerman]{babel}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
\argetabelle
|
||||||
|
\end{document}
|
38
bewerbung/argetabelle.cls
Normal file
38
bewerbung/argetabelle.cls
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
% \begin{macrocode}
|
||||||
|
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
|
||||||
|
\ProvidesClass{argetabelle}[2015/07/14 v1.1 %
|
||||||
|
Klasse zur automatisierten Erstellen von Tabellen %
|
||||||
|
zur Dokumentation der eigenen Bewerbungsversuche]
|
||||||
|
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}}
|
||||||
|
\ProcessOptions\relax
|
||||||
|
\LoadClass[]{scrartcl}
|
||||||
|
\RequirePackage{marvosym}
|
||||||
|
\RequirePackage[%
|
||||||
|
left=1cm, %
|
||||||
|
top=2.5cm, %
|
||||||
|
bottom=1.5cm, %
|
||||||
|
right=1cm %
|
||||||
|
]{geometry}
|
||||||
|
\RequirePackage{datatool}
|
||||||
|
\RequirePackage[right]{eurosym}
|
||||||
|
\RequirePackage{xspace}
|
||||||
|
\RequirePackage{multicol}
|
||||||
|
\RequirePackage{pdfpages}
|
||||||
|
\RequirePackage{comment}
|
||||||
|
\RequirePackage{xparse}
|
||||||
|
\RequirePackage{longtable}
|
||||||
|
\RequirePackage{booktabs}
|
||||||
|
\RequirePackage{array}
|
||||||
|
\RequirePackage{ragged2e}
|
||||||
|
\newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}}
|
||||||
|
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
|
||||||
|
\newcolumntype{R}[1]{>{\raggedleft\arraybackslash}p{#1}}
|
||||||
|
\RequirePackage{bewerbung}
|
||||||
|
\AtBeginDocument{%
|
||||||
|
%\hypersetup{colorlinks=true}
|
||||||
|
\InputIfFileExists{config.inc}{}{%
|
||||||
|
\@latex@warning@no@line{%
|
||||||
|
Achtung die Datei config.inc ist nicht lesbar.}%
|
||||||
|
} %
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
165
bewerbung/bewerbung-cv-casual.sty
Normal file
165
bewerbung/bewerbung-cv-casual.sty
Normal file
@ -0,0 +1,165 @@
|
|||||||
|
% \begin{macrocode}
|
||||||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||||||
|
\ProvidesPackage{bewerbung-cv-casual} %
|
||||||
|
[2015/07/14 v1.1 theme für bewerbungen basiert auf komacv-casual]
|
||||||
|
%% this file is based on komacv-casual.sty from Salome Södergran
|
||||||
|
%% every change is marked by
|
||||||
|
%% %% ahilbig begin
|
||||||
|
%% CHANGE
|
||||||
|
%% %% ahilbig end
|
||||||
|
\addtokomafont{firstnamefont}{\sffamily\fontsize{38}{40}}
|
||||||
|
\addtokomafont{acadtitlefont}{\sffamily}
|
||||||
|
\addtokomafont{addressfont}{\sffamily\small}
|
||||||
|
\addtokomafont{hintfont}{\sffamily}
|
||||||
|
\newsavebox\@fboxa
|
||||||
|
\newsavebox\@fboxb
|
||||||
|
% \end{macrocode}
|
||||||
|
%
|
||||||
|
% \begin{macro}{\@sboxa}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\newcommand*\@sboxa[1]{\sbox\@fboxa{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\@sboxb}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\newcommand*\@sboxb[1]{\sbox\@fboxb{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\@uboxa}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\newcommand*\@uboxa{\usebox\@fboxa}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\@uboxb}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\newcommand*\@uboxb{\usebox\@fboxb}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\@flushf}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\newcommand*\@flushf{\strut\@uboxa\@sboxa{}\@sboxb{}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\addtofooter}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\newcommand*\addtofooter[2][\@fsymbol]{%
|
||||||
|
\@sboxb{\@uboxa{}#1#2}%
|
||||||
|
\settowidth\@fboxwidth{\@uboxb}%
|
||||||
|
\ifdimgreater{\@footerwidth}{\@fboxwidth}{%
|
||||||
|
\@sboxa{\@uboxb}
|
||||||
|
}{%
|
||||||
|
\@flushf\\
|
||||||
|
\@sboxa{#2}
|
||||||
|
\@sboxb{#2}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
% \begin{macrocode}
|
||||||
|
\ifdimequal{\footerwidth}{0pt}{}{%
|
||||||
|
\setlength\@footerwidth{\footerwidth}%
|
||||||
|
}
|
||||||
|
\defpagestyle{footer}
|
||||||
|
{{}{}{}}% head definition (empty)
|
||||||
|
{% foot definition
|
||||||
|
{}{}% definition for twoside layout
|
||||||
|
{% definition for oneside layout
|
||||||
|
\hspace*{\fill}%
|
||||||
|
\parbox{\@footerwidth}{%
|
||||||
|
\centering%
|
||||||
|
\color{@addresscolor}\usekomafont{addressfont}%
|
||||||
|
\ifdefempty{\addressstreet}{}{%
|
||||||
|
\addtofooter[]{\@addresssymbol\addressstreet}%
|
||||||
|
\ifdefempty{\addresscity}{}{%
|
||||||
|
\addtofooter[~--~]{\addresscity}}}%
|
||||||
|
\ifdefempty{\mobile}{}{%
|
||||||
|
\addtofooter{\@mobilesymbol\mobile}}%
|
||||||
|
\ifdefempty{\phonenr}{}{%
|
||||||
|
\addtofooter{\@phonesymbol\phonenr}}
|
||||||
|
\ifdefempty{\faxnr}{}{%
|
||||||
|
\addtofooter{\@faxsymbol\faxnr}}%
|
||||||
|
\ifdefempty{\email}{}{%
|
||||||
|
\addtofooter{\@emailsymbol\emaillink{\email}}}
|
||||||
|
\ifdefempty{\homepage}{}{%
|
||||||
|
\addtofooter{\@homepagesymbol\httplink{\homepage}}}%
|
||||||
|
\ifdefempty{\extrainfo}{}{%
|
||||||
|
\addtofooter{\extrainfo}}\@flushf%
|
||||||
|
}% Ende parbox
|
||||||
|
\hspace*{\fill}%
|
||||||
|
\makebox[0pt][r]{\pagemark/\totalpagemark}
|
||||||
|
}% end definition onesided layout
|
||||||
|
}% end footer definition
|
||||||
|
% \end{macrocode}
|
||||||
|
%
|
||||||
|
% \begin{macro}{\@cvtitlecasual}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand\@cvtitlecasual{%
|
||||||
|
\newbox{\@picbox}
|
||||||
|
\savebox{\@picbox}{%
|
||||||
|
\ifundef{\@photoname}{}{% with picture:
|
||||||
|
\ifthenelse{%
|
||||||
|
\equal{\@photoframe}{frame} \OR
|
||||||
|
\equal{\@photoframe}{mframe}
|
||||||
|
}{% with frame:
|
||||||
|
\fcolorbox{@framecolor}{@framebackcolor}{%
|
||||||
|
\includegraphics[width=\@photowidth]{\@photoname}%
|
||||||
|
}% end fcolorbox
|
||||||
|
}{% without frame:
|
||||||
|
\includegraphics[width=\@photowidth]{\@photoname}%
|
||||||
|
}% end ifdefstring frame
|
||||||
|
}% end ifundef photoname
|
||||||
|
}% end savebox picbox
|
||||||
|
\settowidth\@titlepicwidth{\usebox{\@picbox}}
|
||||||
|
\setlength\@titlenamewidth{\textwidth-\@titlesepwidth-\@titlepicwidth}
|
||||||
|
\usebox{\@picbox}%
|
||||||
|
\hspace*{\@titlesepwidth}%
|
||||||
|
\parbox[b]{\@titlenamewidth}{%
|
||||||
|
\raggedleft{\firstnamestyle\firstname}%
|
||||||
|
~{\familynamestyle\familyname}\\
|
||||||
|
\raggedleft\color{@firstnamecolor}\rule{%
|
||||||
|
\@titlenamewidth}{.25ex}\par
|
||||||
|
}% end parbox
|
||||||
|
\vspace{\@aftertitlevspace}
|
||||||
|
%% optional acadtitle
|
||||||
|
\ifdefempty{\acadtitle}{}{%
|
||||||
|
\raggedleft\acadtitlestyle{\acadtitle}}\\[2.5em]%
|
||||||
|
%% optional quote
|
||||||
|
\ifdefempty{\cvquote}{}{%
|
||||||
|
{\centering
|
||||||
|
\begin{minipage}{\@quotewidth}%
|
||||||
|
\centering\quotestyle{\cvquote}
|
||||||
|
\end{minipage}\\[\@afterquotevspace]%
|
||||||
|
}
|
||||||
|
}%
|
||||||
|
}% end @cvtitle-casual
|
||||||
|
\AtBeginDocument{%
|
||||||
|
\thispagestyle{footer}
|
||||||
|
} % end AtBeginDocument
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\section}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand{\section}[1]{\@cvbarsection{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\subsection}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand{\subsection}[1]{\@cvbarsubsection{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
139
bewerbung/bewerbung-cv-classic.sty
Normal file
139
bewerbung/bewerbung-cv-classic.sty
Normal file
@ -0,0 +1,139 @@
|
|||||||
|
% \begin{macrocode}
|
||||||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||||||
|
\ProvidesPackage{bewerbung-cv-classic} %
|
||||||
|
[2015/07/14 v1.1 theme für bewerbungen basiert auf komacv-classic]
|
||||||
|
%% this file is based on komacv-classic.sty from Salome Södergran
|
||||||
|
%% every change is marked by
|
||||||
|
%% %% ahilbig begin
|
||||||
|
%% CHANGE
|
||||||
|
%% %% ahilbig end
|
||||||
|
\addtokomafont{firstnamefont}{\sffamily}
|
||||||
|
\addtokomafont{acadtitlefont}{\sffamily}
|
||||||
|
\addtokomafont{addressfont}{\sffamily}
|
||||||
|
\addtokomafont{hintfont}{\sffamily}
|
||||||
|
\AtEndPreamble{%
|
||||||
|
%AtBeginDocument{
|
||||||
|
% \end{macrocode}
|
||||||
|
% mframepicshift
|
||||||
|
% \begin{macrocode}
|
||||||
|
\ifdimequal{\mframepicshift}{0pt}{%
|
||||||
|
\setlength\@mframepicshift{.5\@photowidth+\@fboxextra}
|
||||||
|
}{%
|
||||||
|
\setlength\@mframepicshift{\mframepicshift}
|
||||||
|
}
|
||||||
|
} % end AtBeginDocument
|
||||||
|
% \end{macrocode}
|
||||||
|
%
|
||||||
|
% \begin{macro}{\@cvtitleclassic}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand\@cvtitleclassic{%
|
||||||
|
%% set cs{@titlenamemaxwidth| to the full name length
|
||||||
|
%% , capped by cs{@titlenamemaxwidth|
|
||||||
|
\setlength{\@titlenamemaxwidth}{.525\textwidth}
|
||||||
|
\settowidth{\@titlenamefullwidth}{%
|
||||||
|
\firstnamestyle{\firstname~}\familynamestyle{\familyname}}
|
||||||
|
\ifdimless{\@titlenamemaxwidth}{\@titlenamefullwidth}{%
|
||||||
|
\setlength{\@titlenamewidth}{\@titlenamemaxwidth}
|
||||||
|
}{%
|
||||||
|
\setlength{\@titlenamewidth}{\@titlenamefullwidth}
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% set titlenamedetailswidth
|
||||||
|
% \begin{macrocode}
|
||||||
|
\setlength{\@titledetailswidth}{%
|
||||||
|
\textwidth-\@titlenamewidth-\@titlesepwidth}%
|
||||||
|
\ifundef{\@photoname}{}{% else
|
||||||
|
\ifdefstring{\@photoframe}{frame}{%
|
||||||
|
\setlength{\@titledetailswidth}{%
|
||||||
|
\@titledetailswidth-\@photowidth-2\@fboxextra}
|
||||||
|
}{% else
|
||||||
|
\ifdefstring{\@photoframe}{mframe}{%
|
||||||
|
\setlength{\@titledetailswidth}{%
|
||||||
|
\@titledetailswidth-\@mframepicshift}%
|
||||||
|
}{}%
|
||||||
|
}%
|
||||||
|
}%
|
||||||
|
% \end{macrocode}
|
||||||
|
% name and title
|
||||||
|
% \begin{macrocode}
|
||||||
|
\begin{minipage}[b]{\@titlenamewidth}%
|
||||||
|
% \end{macrocode}
|
||||||
|
%% ahilbig begin
|
||||||
|
% \begin{macrocode}
|
||||||
|
\firstnamestyle{\firstname}\\ %
|
||||||
|
\familynamestyle{\familyname}%
|
||||||
|
\ifdefempty{\acadtitle}{}{%
|
||||||
|
\\[1.25em]\acadtitlestyle{\acadtitle}}%
|
||||||
|
\\[1.25em]\titlestyle{\lebenslaufTitel}%
|
||||||
|
\end{minipage}%
|
||||||
|
% \end{macrocode}
|
||||||
|
% optional data
|
||||||
|
% \begin{macrocode}
|
||||||
|
\begin{minipage}[b]{\@titledetailswidth}%
|
||||||
|
\raggedleft\addressstyle{%
|
||||||
|
\ifdefempty{\addressstreet}{}{%
|
||||||
|
\@titledetailsnewline%
|
||||||
|
\@addresssymbol\addressstreet%
|
||||||
|
\ifdefempty{\addresscity}{}{%
|
||||||
|
\@titledetailsnewline\addresscity}}%
|
||||||
|
\ifdefempty{\mobile}{}{%
|
||||||
|
\@titledetailsnewline\@mobilesymbol~\mobile}%
|
||||||
|
\ifdefempty{\phonenr}{}{%
|
||||||
|
\@titledetailsnewline\@phonesymbol~\phonenr}%
|
||||||
|
\ifdefempty{\faxnr}{}{%
|
||||||
|
\@titledetailsnewline\@faxsymbol~\faxnr}%
|
||||||
|
\ifdefempty{\email}{}{%
|
||||||
|
\@titledetailsnewline\@emailsymbol\emaillink{\email}}%
|
||||||
|
\ifdefempty{\homepage}{}{%
|
||||||
|
\@titledetailsnewline\@homepagesymbol\httplink{\homepage}}%
|
||||||
|
\ifdefempty{\extrainfo}{}{%
|
||||||
|
\@titledetailsnewline\extrainfo}%
|
||||||
|
}%
|
||||||
|
% \end{macrocode}
|
||||||
|
%% ahilbig end
|
||||||
|
% \begin{macrocode}
|
||||||
|
\end{minipage}%
|
||||||
|
% \end{macrocode}
|
||||||
|
% optional photo
|
||||||
|
% \begin{macrocode}
|
||||||
|
\ifundef{\@photoname}{}{% with picture:
|
||||||
|
\hspace*{\@titlesepwidth}%
|
||||||
|
\ifthenelse{%
|
||||||
|
\equal{\@photoframe}{frame} \OR
|
||||||
|
\equal{\@photoframe}{mframe}
|
||||||
|
}{% with frame:
|
||||||
|
\begin{minipage}[b]{\@photowidth}%
|
||||||
|
\fcolorbox{@framecolor}{@framebackcolor}{%
|
||||||
|
\includegraphics[width=\@photowidth]{\@photoname}}%
|
||||||
|
\end{minipage}}{% without frame:
|
||||||
|
\begin{minipage}[b]{\@photowidth}
|
||||||
|
\includegraphics[width=\@photowidth]{\@photoname}
|
||||||
|
\end{minipage}}}
|
||||||
|
\\[\@aftertitlevspace]
|
||||||
|
% \end{macrocode}
|
||||||
|
% optional quote
|
||||||
|
% \begin{macrocode}
|
||||||
|
\ifundef{\cvquote}{}{%
|
||||||
|
\centering
|
||||||
|
\begin{minipage}{\@quotewidth}%
|
||||||
|
\centering\quotestyle{\cvquote}%
|
||||||
|
\end{minipage}\\[\@afterquotevspace]%
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\section}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand*{\section}[1]{\@cvbarsection{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\subsection}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand{\subsection}[1]{\@cvbarsubsection{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
220
bewerbung/bewerbung-cv-oldstyle.sty
Normal file
220
bewerbung/bewerbung-cv-oldstyle.sty
Normal file
@ -0,0 +1,220 @@
|
|||||||
|
% \begin{macrocode}
|
||||||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||||||
|
\ProvidesPackage{bewerbung-cv-oldstyle} %
|
||||||
|
[2015/07/14 v1.1 theme für bewerbungen basiert auf komacv-oldstyle]
|
||||||
|
%% this file is based on komacv-oldstyle.sty from Salome Södergran
|
||||||
|
%% every change is marked by
|
||||||
|
%% %% ahilbig begin
|
||||||
|
%% CHANGE
|
||||||
|
%% %% ahilbig end
|
||||||
|
\KOMAoptions{DIV=15}
|
||||||
|
\setlength{\hintscolwidth}{3cm}
|
||||||
|
\addtokomafont{addressfont}{\small}
|
||||||
|
\addtokomafont{hintfont}{\bfseries}
|
||||||
|
\setkomafont{section}{\Large\bfseries\upshape}
|
||||||
|
\setkomafont{subsection}{\large\bfseries\itshape}
|
||||||
|
\colorlet{addresscolor}{gray}
|
||||||
|
% \end{macrocode}
|
||||||
|
%
|
||||||
|
% \begin{macro}{\listitemsymbol}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand*{\listitemsymbol}{\labelitemi~}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\addresssymbol}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand*{\addresssymbol}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\mobilesymbol}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand*{\mobilesymbol}{\textbf{M}~}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\phonesymbol}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand*{\phonesymbol}{\textbf{T}~}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\faxsymbol}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand*{\faxsymbol}{\textbf{F}~}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\emailsymbol}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand*{\emailsymbol}{\textbf{E}~}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\homepagesymbol}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand*{\homepagesymbol}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
% \begin{macrocode}
|
||||||
|
\setlength{\infocolwidth}{3.5cm}
|
||||||
|
\setlength{\sepinfocolwidth}{2em}
|
||||||
|
% \end{macrocode}
|
||||||
|
%
|
||||||
|
% \begin{macro}{\@infocontent}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand\@infocontent{%
|
||||||
|
\ifdefempty{\addressstreet}{}{%
|
||||||
|
\@titledetailsnewline%
|
||||||
|
\@addresssymbol\addressstreet%
|
||||||
|
\ifdefempty{\addresscity}{}{%
|
||||||
|
\@titledetailsnewline\addresscity}}%
|
||||||
|
\ifdefempty{\mobile}{}{%
|
||||||
|
\@titledetailsnewline\@mobilesymbol~\mobile}%
|
||||||
|
\ifdefempty{\phonenr}{}{%
|
||||||
|
\@titledetailsnewline \@phonesymbol\phonenr}%
|
||||||
|
\ifdefempty{\faxnr}{}{%
|
||||||
|
\@titledetailsnewline\@faxsymbol\faxnr}%
|
||||||
|
\ifdefempty{\email}{}{%
|
||||||
|
\@titledetailsnewline\@emailsymbol\emaillink{\email}}%
|
||||||
|
\ifdefempty{\homepage}{}{%
|
||||||
|
\@titledetailsnewline\@homepagesymbol\httplink{\homepage}}%
|
||||||
|
\ifdefempty{\extrainfo}{}{%
|
||||||
|
\@titledetailsnewline\extrainfo}%
|
||||||
|
} % end @infocontent
|
||||||
|
\providecommand{\@makeinfo}{%
|
||||||
|
\newbox{\@infobox}%
|
||||||
|
\savebox{\@infobox}{%
|
||||||
|
\parbox[b]{\@infocolwidth}{%
|
||||||
|
% \end{macrocode}
|
||||||
|
% put the first line on the same
|
||||||
|
% baseline as the first sectiontitle:
|
||||||
|
% \begin{macrocode}
|
||||||
|
{\usekomafont{section}
|
||||||
|
\vspace*{1.6ex}
|
||||||
|
}
|
||||||
|
\raggedleft\addressstyle{%
|
||||||
|
\@infocontent%
|
||||||
|
}
|
||||||
|
}% end parbox
|
||||||
|
} % end savebox @infobox%
|
||||||
|
\newlength{\@infoheight}%
|
||||||
|
\setlength{\@infoheight}{%
|
||||||
|
\totalheightof{\usebox{\@infobox}}%
|
||||||
|
}%
|
||||||
|
\usebox{\@infobox}\vspace*{-\@infoheight}%
|
||||||
|
\par\nointerlineskip%
|
||||||
|
\vspace*{-\parskip}%
|
||||||
|
\vspace*{-\@aftersecvspace}
|
||||||
|
}% end \providecommand @makeinfo
|
||||||
|
\providecommand{\@cvtitleoldstyle}{%
|
||||||
|
% \end{macrocode}
|
||||||
|
% optional picture box
|
||||||
|
% \begin{macrocode}
|
||||||
|
\newbox{\@picbox}
|
||||||
|
\savebox{\@picbox}{%
|
||||||
|
\ifundef{\@photoname}{}{% with picture:
|
||||||
|
\ifthenelse{%
|
||||||
|
\equal{\@photoframe}{frame} \OR
|
||||||
|
\equal{\@photoframe}{mframe}
|
||||||
|
}{% with frame:
|
||||||
|
\fcolorbox{@framecolor}{@framebackcolor}{%
|
||||||
|
\includegraphics[width=\@photowidth]{\@photoname}%
|
||||||
|
}% end fcolorbox
|
||||||
|
}{% without frame:
|
||||||
|
\includegraphics[width=\@photowidth]{\@photoname}%
|
||||||
|
}% end ifdefstring frame
|
||||||
|
}% end ifundef photoname
|
||||||
|
}% end savebox picbox
|
||||||
|
\settowidth\@titlepicwidth{\usebox{\@picbox}}
|
||||||
|
\setlength\@titlenamewidth{%
|
||||||
|
\textwidth-\@titlesepwidth-\@titlepicwidth}
|
||||||
|
\begin{minipage}[b]{\@titlenamewidth}%
|
||||||
|
\firstnamestyle{\firstname}\ %
|
||||||
|
\familynamestyle{\familyname}%
|
||||||
|
\ifdefempty{\acadtitle}{}{%
|
||||||
|
\\[1.25em]\acadtitlestyle{\acadtitle}}%
|
||||||
|
\end{minipage}%
|
||||||
|
% \end{macrocode}
|
||||||
|
% optional photo
|
||||||
|
% \begin{macrocode}
|
||||||
|
\usebox{\@picbox}%
|
||||||
|
\\[\@aftertitlevspace]%
|
||||||
|
% \end{macrocode}
|
||||||
|
% optional quote
|
||||||
|
% \begin{macrocode}
|
||||||
|
\ifdefempty{\cvquote}{}{%
|
||||||
|
{\centering%
|
||||||
|
\begin{minipage}{\@quotewidth}%
|
||||||
|
\centering\quotestyle{\cvquote}%
|
||||||
|
\end{minipage}\\[\@afterquotevspace]%
|
||||||
|
}%
|
||||||
|
}%
|
||||||
|
% \end{macrocode}
|
||||||
|
% address info box
|
||||||
|
% \begin{macrocode}
|
||||||
|
\@makeinfo
|
||||||
|
\par
|
||||||
|
\begin{addmargin}[\komacvinfocolextrawidth]{0pt}
|
||||||
|
} % end @cvtitleoldstyle
|
||||||
|
\AtEndDocument{%
|
||||||
|
\end{addmargin}
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\section}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand{\section}[1]{\@cvsimplesection{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\subsection}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand{\subsection}[1]{\@cvsimplesubsection{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\cvitem}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand*{\cvitem}[3][\@afterelementsvspace]{%
|
||||||
|
\begin{tabular}{%
|
||||||
|
@{}p{\@maincolwidth}%
|
||||||
|
@{\hspace{\@sepcolwidth}}p{\@hintscolwidth}@{}%
|
||||||
|
}%
|
||||||
|
{#3} & \raggedright\hintstyle{#2}%
|
||||||
|
\end{tabular}\\[#1]%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\cvdoubleitem}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand*{\cvdoubleitem}[5][\@afterelementsvspace]{%
|
||||||
|
\cvitem[#1]{#4}{%
|
||||||
|
\begin{minipage}[t]{\@dbitemmaincolwidth}#3\end{minipage}%
|
||||||
|
\hspace*{\@sepcolwidth}%
|
||||||
|
\begin{minipage}[t]{\@hintscolwidth}%
|
||||||
|
\noindent\raggedleft\hintstyle{#2}
|
||||||
|
\end{minipage}%
|
||||||
|
\hspace*{\@sepcolwidth}%
|
||||||
|
\begin{minipage}[t]{\@dbitemmaincolwidth}%
|
||||||
|
\noindent #5
|
||||||
|
\end{minipage}%
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
1246
bewerbung/bewerbung-cv.sty
Normal file
1246
bewerbung/bewerbung-cv.sty
Normal file
File diff suppressed because it is too large
Load Diff
BIN
bewerbung/bewerbung-example.pdf
Normal file
BIN
bewerbung/bewerbung-example.pdf
Normal file
Binary file not shown.
81
bewerbung/bewerbung-example.tex
Normal file
81
bewerbung/bewerbung-example.tex
Normal file
@ -0,0 +1,81 @@
|
|||||||
|
% -*- coding: utf-8; -*-
|
||||||
|
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
% |
|
||||||
|
% (C)opyright A. Hilbig, mail@andrehilbig.de |
|
||||||
|
% http://www.andrehilbig.de/index.cgi/Publications/Bewerbung |
|
||||||
|
% |
|
||||||
|
% this file: bewerbung-example.tex |
|
||||||
|
% |
|
||||||
|
% |
|
||||||
|
% This work may be distributed and/or modified under the |
|
||||||
|
% conditions of the LaTeX Project Public License, either version 1.3 |
|
||||||
|
% of this license or (at your option) any later version. |
|
||||||
|
% The latest version of this license is in |
|
||||||
|
% http://www.latex-project.org/lppl.txt |
|
||||||
|
% and version 1.3 or later is part of all distributions of LaTeX |
|
||||||
|
% version 2005/12/01 or later. |
|
||||||
|
% |
|
||||||
|
% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -+
|
||||||
|
% |
|
||||||
|
\documentclass[%
|
||||||
|
% color option derived from komacv
|
||||||
|
lebenslaufColor=light-gray,
|
||||||
|
% which cv style (from komacv) do you want to use?
|
||||||
|
% -> classic is default and slightly edited
|
||||||
|
% -> casual
|
||||||
|
% -> oldstyle
|
||||||
|
%lebenslaufStyle=classic,
|
||||||
|
% which id-format is used?
|
||||||
|
% plain -> search for the exact match of id in the column ID
|
||||||
|
% noplain (default) -> get the row with number id (first one is 0)
|
||||||
|
% for additional information take a look into config.inc
|
||||||
|
idPlain %
|
||||||
|
]{bewerbung}
|
||||||
|
\usepackage[utf8]{inputenc}
|
||||||
|
\usepackage[T1]{fontenc}
|
||||||
|
\usepackage[ngerman]{babel}
|
||||||
|
|
||||||
|
\definecolor{light-gray}{gray}{0.6}
|
||||||
|
\definecolor{titlecolor}{gray}{0.62}
|
||||||
|
\definecolor{addresscolor}{gray}{0.45}
|
||||||
|
|
||||||
|
% here are some possible color hacks:
|
||||||
|
%\xdefinecolor{mycolor}{cmyk}{0.92,0,0.87,0.09}
|
||||||
|
%\colorlet{firstnamecolor}{blue}
|
||||||
|
%\colorlet{familynamecolor}{red}
|
||||||
|
%\colorlet{acadtitlecolor}{green}
|
||||||
|
%\colorlet{addresscolor}{titlecolor}
|
||||||
|
%\colorlet{quotecolor}{pink}
|
||||||
|
%\colorlet{framecolor}{yellow}
|
||||||
|
%\colorlet{framebackcolor}{black}
|
||||||
|
%\colorlet{secbarcolor}{firstnamecolor}
|
||||||
|
%\colorlet{seccolor}{familynamecolor}
|
||||||
|
%\colorlet{subseccolor}{pink!70!black}
|
||||||
|
%\colorlet{hintcolor}{orange}
|
||||||
|
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
\begin{anschreiben}
|
||||||
|
Hier kommt das Anschreiben hin
|
||||||
|
\end{anschreiben}
|
||||||
|
|
||||||
|
\begin{lebenslauf}[none][]
|
||||||
|
\maketitle
|
||||||
|
\makePerson
|
||||||
|
|
||||||
|
\section{Studium}
|
||||||
|
\cventry{03/13}{Abschluss: Dipl.-Pädagogin (Univ.)}{}{}{}{}
|
||||||
|
|
||||||
|
\section{Führerschein}
|
||||||
|
\cvlistitem{Klasse B (eigener PKW)}
|
||||||
|
|
||||||
|
\section{Sprachen}
|
||||||
|
\cvlanguage{Deutsch}{Muttersprache}{}
|
||||||
|
\cvlanguage{Englisch}{gut}{}
|
||||||
|
\end{lebenslauf}
|
||||||
|
|
||||||
|
% Sometimes it could be nice to add some diploma, certificates and so on
|
||||||
|
% Feel free to use pdfpages for that stuff:
|
||||||
|
%\includepdf[pages=-]{Anhang/diploma.pdf}
|
||||||
|
%\includepdfmerge[pages=-,landscape,angle=270]{Anhang/schoolout1.pdf,Anhang/schoolout2.pdf}
|
||||||
|
\end{document}
|
41
bewerbung/bewerbung.bib
Normal file
41
bewerbung/bewerbung.bib
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
%% LaTeX2e file `bewerbung.bib'
|
||||||
|
%% generated by the `filecontents' environment
|
||||||
|
%% from source `bewerbung' on 2015/07/14.
|
||||||
|
%%
|
||||||
|
@electronic{komacv,
|
||||||
|
author = "Salome Södergan",
|
||||||
|
month = {Aug},
|
||||||
|
year = "2014",
|
||||||
|
title = "komacv",
|
||||||
|
subtitle = "Typesetting a beuatiful CV with various style options",
|
||||||
|
url = {http://www.ctan.org/pkg/komacv},
|
||||||
|
urldate = {2015-07-09},
|
||||||
|
}
|
||||||
|
|
||||||
|
@electronic{scrlttr2,
|
||||||
|
author = "Markus Kohm",
|
||||||
|
month = {Jul},
|
||||||
|
year = "2015",
|
||||||
|
title = "scrlttr2",
|
||||||
|
subtitle = "Koma-Script ‘letter’ class",
|
||||||
|
url = {http://www.ctan.org/pkg/scrlttr2},
|
||||||
|
urldate = {2015-07-09},
|
||||||
|
}
|
||||||
|
|
||||||
|
@electronic{datatool,
|
||||||
|
author = "Nicola Talbot",
|
||||||
|
year = "2014",
|
||||||
|
title = "datatool",
|
||||||
|
subtitle = "Tools to load and manipulate data",
|
||||||
|
url = {http://www.ctan.org/pkg/datatool},
|
||||||
|
urldate = {2015-07-09},
|
||||||
|
}
|
||||||
|
|
||||||
|
@electronic{pdfpages,
|
||||||
|
author = "Andreas Matthias",
|
||||||
|
year = "2015",
|
||||||
|
title = "pdfpages",
|
||||||
|
subtitle = "Include PDF documents in LaTeX",
|
||||||
|
url = {http://www.ctan.org/pkg/pdfpages},
|
||||||
|
urldate = {2015-07-09},
|
||||||
|
}
|
83
bewerbung/bewerbung.cls
Normal file
83
bewerbung/bewerbung.cls
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
% \begin{macrocode}
|
||||||
|
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
|
||||||
|
\ProvidesClass{bewerbung}[2015/07/14 v1.1 %
|
||||||
|
Klasse zur Erstellung von Bewerbungsschreiben]
|
||||||
|
\RequirePackage{ifthen,kvoptions,calc}
|
||||||
|
\SetupKeyvalOptions{%
|
||||||
|
family=ahbewerbung,%
|
||||||
|
prefix=ahbewerbung@,%
|
||||||
|
setkeys=\kvsetkeys%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
%%
|
||||||
|
%% for komacv are some color options available, that %
|
||||||
|
%% needed to get passed to the new cv package
|
||||||
|
%% ALL OPTIONS ARE CHANGED TO THE IDENTIFIER ahbewerbung
|
||||||
|
%%
|
||||||
|
% \begin{macrocode}
|
||||||
|
\DeclareStringOption[mycolor]{lebenslaufColor}[mycolor]
|
||||||
|
\DeclareStringOption[x11names]{lebenslaufXcolor}[x11names]
|
||||||
|
\DeclareStringOption[classic]{lebenslaufStyle}[classic]
|
||||||
|
\DeclareStringOption[anschrift.csv]{anschrift}[anschrift.csv]
|
||||||
|
\DeclareBoolOption{idPlain}
|
||||||
|
\ProcessKeyvalOptions{ahbewerbung} % evaluate keyval options
|
||||||
|
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrlttr2}}
|
||||||
|
\ProcessOptions\relax
|
||||||
|
\LoadClass[
|
||||||
|
DIN, pagenumber=botright, backaddress=true, parskip=half,%
|
||||||
|
fromalign=left, fromemail=true, fromfax=true, %
|
||||||
|
fromphone=true, fromurl=false, fromalign=right, %
|
||||||
|
fromlogo=false, fromrule=true, foldmarks=true, %
|
||||||
|
paper=a4, fontsize=10pt,enlargefirstpage=true, firstfoot=false
|
||||||
|
]{scrlttr2}
|
||||||
|
% \end{macrocode}
|
||||||
|
%\iffalse
|
||||||
|
%% import from komacv.cls for easier maintaining
|
||||||
|
%\fi
|
||||||
|
% \begin{macrocode}
|
||||||
|
\RequirePackage{%
|
||||||
|
etoolbox,%
|
||||||
|
ifpdf,%
|
||||||
|
ifluatex,%
|
||||||
|
ifxetex,%
|
||||||
|
marvosym, %
|
||||||
|
scrlayer-scrpage, %
|
||||||
|
array,%
|
||||||
|
graphicx,%
|
||||||
|
microtype,%
|
||||||
|
enumitem, %
|
||||||
|
hyperref, %
|
||||||
|
}
|
||||||
|
\RequirePackage[%
|
||||||
|
% \end{macrocode}
|
||||||
|
%\iffalse
|
||||||
|
%% xcolor=\ahbewerbung@lebenslaufXcolor,%
|
||||||
|
%% color=\ahbewerbung@lebenslaufColor,%
|
||||||
|
%% style=\ahbewerbung@lebenslaufStyle,%
|
||||||
|
%\fi
|
||||||
|
% \begin{macrocode}
|
||||||
|
]{bewerbung-cv}
|
||||||
|
\RequirePackage[autostyle,german=guillemets]{csquotes}
|
||||||
|
\RequirePackage[top=2.5cm]{geometry}
|
||||||
|
\RequirePackage{datatool}
|
||||||
|
\RequirePackage[right]{eurosym}
|
||||||
|
\RequirePackage{xspace}
|
||||||
|
\RequirePackage{multicol}
|
||||||
|
\RequirePackage{pdfpages}
|
||||||
|
\RequirePackage{comment}
|
||||||
|
\RequirePackage{xparse}
|
||||||
|
\RequirePackage{bewerbung}
|
||||||
|
\AtBeginDocument{%
|
||||||
|
\hypersetup{colorlinks=true}%
|
||||||
|
\InputIfFileExists{config.inc}{}{%
|
||||||
|
\@latex@warning@no@line{%
|
||||||
|
Achtung die Datei config.inc ist nicht lesbar.}%
|
||||||
|
}
|
||||||
|
\getBewerbung[\ahbewerbung@anschrift] %
|
||||||
|
\runKomaVar %
|
||||||
|
\InputIfFileExists{titlepage.inc}{}{%
|
||||||
|
\@latex@warning@no@line{%
|
||||||
|
Achtung die Datei titlepage.inc ist nicht lesbar.}%
|
||||||
|
} %
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
3895
bewerbung/bewerbung.dtx
Normal file
3895
bewerbung/bewerbung.dtx
Normal file
File diff suppressed because it is too large
Load Diff
48
bewerbung/bewerbung.ins
Normal file
48
bewerbung/bewerbung.ins
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
% bewerbung.ins generated using makedtx version 0.94b 2022-01-17:16:26:37 -- Version 1.3/1/17 16:26
|
||||||
|
\input docstrip
|
||||||
|
|
||||||
|
\preamble
|
||||||
|
|
||||||
|
bewerbung.dtx
|
||||||
|
Copyright 2022-01-17:16:26:37 -- Version 1.3 André Hilbig, mail@andrehilbig.de
|
||||||
|
|
||||||
|
This work may be distributed and/or modified under the
|
||||||
|
conditions of the LaTeX Project Public License, either version 1.3
|
||||||
|
of this license of (at your option) any later version.
|
||||||
|
The latest version of this license is in
|
||||||
|
http://www.latex-project.org/lppl.txt
|
||||||
|
and version 1.3 or later is part of all distributions of LaTeX
|
||||||
|
version 2005/12/01 or later.
|
||||||
|
|
||||||
|
This work has the LPPL maintenance status `maintained'.
|
||||||
|
|
||||||
|
The Current Maintainer of this work is André Hilbig, mail@andrehilbig.de.
|
||||||
|
|
||||||
|
This work consists of the files bewerbung.dtx and bewerbung.ins and the derived files bewerbung-cv-casual.sty, bewerbung-cv-classic.sty, bewerbung-cv-oldstyle.sty, bewerbung-cv.sty, bewerbung.sty, argetabelle.cls, bewerbung.cls, neueBewerbung.sh, config.inc, titlepage.inc.
|
||||||
|
|
||||||
|
\endpreamble
|
||||||
|
|
||||||
|
\askforoverwritefalse
|
||||||
|
|
||||||
|
\generate{\file{bewerbung-cv-casual.sty}{\usepreamble\defaultpreamble
|
||||||
|
\usepostamble\defaultpostamble\from{bewerbung.dtx}{bewerbung-cv-casual.sty,package}}
|
||||||
|
\file{bewerbung-cv-classic.sty}{\usepreamble\defaultpreamble
|
||||||
|
\usepostamble\defaultpostamble\from{bewerbung.dtx}{bewerbung-cv-classic.sty,package}}
|
||||||
|
\file{bewerbung-cv-oldstyle.sty}{\usepreamble\defaultpreamble
|
||||||
|
\usepostamble\defaultpostamble\from{bewerbung.dtx}{bewerbung-cv-oldstyle.sty,package}}
|
||||||
|
\file{bewerbung-cv.sty}{\usepreamble\defaultpreamble
|
||||||
|
\usepostamble\defaultpostamble\from{bewerbung.dtx}{bewerbung-cv.sty,package}}
|
||||||
|
\file{bewerbung.sty}{\usepreamble\defaultpreamble
|
||||||
|
\usepostamble\defaultpostamble\from{bewerbung.dtx}{bewerbung.sty,package}}
|
||||||
|
\file{argetabelle.cls}{\usepreamble\defaultpreamble
|
||||||
|
\usepostamble\defaultpostamble\from{bewerbung.dtx}{argetabelle.cls,package}}
|
||||||
|
\file{bewerbung.cls}{\usepreamble\defaultpreamble
|
||||||
|
\usepostamble\defaultpostamble\from{bewerbung.dtx}{bewerbung.cls,package}}
|
||||||
|
\file{neueBewerbung.sh}{\nopreamble\nopostamble\from{bewerbung.dtx}{neueBewerbung.sh}}
|
||||||
|
\file{config.inc}{\usepreamble\defaultpreamble
|
||||||
|
\usepostamble\defaultpostamble\from{bewerbung.dtx}{config.inc,package}}
|
||||||
|
\file{titlepage.inc}{\usepreamble\defaultpreamble
|
||||||
|
\usepostamble\defaultpostamble\from{bewerbung.dtx}{titlepage.inc,package}}
|
||||||
|
}
|
||||||
|
|
||||||
|
\endbatchfile
|
BIN
bewerbung/bewerbung.pdf
Normal file
BIN
bewerbung/bewerbung.pdf
Normal file
Binary file not shown.
744
bewerbung/bewerbung.sty
Normal file
744
bewerbung/bewerbung.sty
Normal file
@ -0,0 +1,744 @@
|
|||||||
|
% \begin{macrocode}
|
||||||
|
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
|
||||||
|
\ProvidesPackage{bewerbung}
|
||||||
|
[2015/07/14 v1.1 makros zum setzen der bewerbung]
|
||||||
|
% \end{macrocode}
|
||||||
|
%
|
||||||
|
% \begin{macro}{\name}
|
||||||
|
% Macros for setting up your personal informations
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\name}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\Name}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\Name}[1]{\renewcommand{\name}{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\vorname}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\vorname}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\Vorname}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\Vorname}[1]{\renewcommand{\vorname}{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\fullname}
|
||||||
|
% the optional argument indicates wether to print vor + nachname
|
||||||
|
% or nachname, vorname
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\fullname}[1][n]{%
|
||||||
|
\ifthenelse{\equal{#1}{n}}{%
|
||||||
|
\vorname\xspace\name %
|
||||||
|
}{%
|
||||||
|
\name, \vorname %
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\street}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\street}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\Street}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\Street}[1]{\renewcommand{\street}{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\plz}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\plz}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\Plz}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\Plz}[1]{\renewcommand{\plz}{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\stadt}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\stadt}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\Stadt}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\Stadt}[1]{\renewcommand{\stadt}{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\anschrift}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\anschrift}[1][n]{%
|
||||||
|
\ifthenelse{\equal{#1}{n}}{%
|
||||||
|
\street\\%
|
||||||
|
\plz\xspace\stadt%
|
||||||
|
}{%
|
||||||
|
\street, \plz\xspace\stadt%
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\meinBeruf}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\meinBeruf}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\meinberuf}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\meinberuf}{\meinBeruf}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\MeinBeruf}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\MeinBeruf}[1]{\renewcommand{\meinBeruf}{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\gebDatum}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\gebDatum}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\GebDatum}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\GebDatum}[1]{\renewcommand{\gebDatum}{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\sta}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\sta}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\Sta}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\Sta}[1]{\renewcommand{\sta}{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\email}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\email}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\EMail}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\EMail}[1]{\renewcommand{\email}{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\tel}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\tel}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\Tel}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\Tel}[1]{\renewcommand{\tel}{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\mobile}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\mobile}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\Mobile}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\Mobile}[1]{\renewcommand{\mobile}{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
% \begin{macrocode}
|
||||||
|
\ProvideDocumentCommand{\anhang}{o}{%
|
||||||
|
\IfNoValueTF{#1}{%
|
||||||
|
Curriculum Vitae.\anhangTmpFlat
|
||||||
|
}{%
|
||||||
|
\item Anschreiben
|
||||||
|
\item Curriculum Vitae
|
||||||
|
\anhangTmpList
|
||||||
|
} %
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
%
|
||||||
|
% \begin{macro}{\anhangTmpFlat}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\anhangTmpFlat}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\anhangTmpList}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\anhangTmpList}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\Anhang}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\Anhang}[2]{%
|
||||||
|
\renewcommand{\anhangTmpFlat}{\\ #1}
|
||||||
|
\renewcommand{\anhangTmpList}{#2}
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\todayOrt}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\todayOrt}{\stadt}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\TodayOrt}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\TodayOrt}[1]{\renewcommand{\todayOrt}{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\todayTime}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\todayTime}{\today}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\TodayTime}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\TodayTime}[1]{\renewcommand{\todayTime}{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\lebenslaufTitel}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\lebenslaufTitel}{Curriculum Vitae}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\LebenslaufTitel}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\LebenslaufTitel}[1]{%
|
||||||
|
\renewcommand{\lebenslaufTitel}{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\firma}
|
||||||
|
% Macros for setting up the information of the company
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\firma}{a}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\firmaAnrede}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\firmaAnrede}{a}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\firmaName}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\firmaName}{a}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\firmaStreet}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\firmaStreet}{a}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\firmaPlz}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\firmaPlz}{a}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\firmaStadt}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\firmaStadt}{a}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\beruf}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\beruf}{a}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\setzekomma}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\setzekomma}{,}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\bewerbungKW}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\bewerbungKW}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\BewerbungKW}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\BewerbungKW}[1]{%
|
||||||
|
\renewcommand{\bewerbungKW}{#1}}%
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\bewerbungDatum}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\bewerbungDatum}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\BewerbungDatum}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\BewerbungDatum}[1]{%
|
||||||
|
\renewcommand{\bewerbungDatum}{#1}%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\bewerbungFirma}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\bewerbungFirma}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\BewerbungFirma}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\BewerbungFirma}[1]{%
|
||||||
|
\renewcommand{\bewerbungFirma}{#1}%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\bewerbungFirmaAnrede}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\bewerbungFirmaAnrede}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\BewerbungFirmaAnrede}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\BewerbungFirmaAnrede}[1]{%
|
||||||
|
\renewcommand{\bewerbungAnrede}{#1}%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\bewerbungFirmaName}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\bewerbungFirmaName}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\BewerbungFirmaName}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\BewerbungFirmaName}[1]{%
|
||||||
|
\renewcommand{\bewerbungName}{#1}%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\bewerbungFirmaStr}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\bewerbungFirmaStr}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\BewerbungFirmaStr}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\BewerbungFirmaStr}[1]{%
|
||||||
|
\renewcommand{\bewerbungFirmaStr}{#1}%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\bewerbungFirmaPlz}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\bewerbungFirmaPlz}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\BewerbungFirmaPlz}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\BewerbungFirmaPlz}[1]{%
|
||||||
|
\renewcommand{\bewerbungPlz}{#1}%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\bewerbungFirmaOrt}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\bewerbungFirmaOrt}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\BewerbungFirmaOrt}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\BewerbungFirmaOrt}[1]{%
|
||||||
|
\renewcommand{\bewerbungOrt}{#1}%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\bewerbungStelle}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\bewerbungStelle}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\BewerbungStelle}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\BewerbungStelle}[1]{%
|
||||||
|
\renewcommand{\bewerbungStelle}{#1}%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\bewerbungRueckmeldung}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\bewerbungRueckmeldung}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\BewerbungRueckmeldung}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\BewerbungRueckmeldung}[1]{%
|
||||||
|
\renewcommand{\bewerbungRueckmeldung}{#1}%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\bewerbungSonstiges}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\bewerbungSonstiges}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\BewerbungSonstiges}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\BewerbungSonstiges}[1]{%
|
||||||
|
\renewcommand{\bewerbungSonstiges}{#1}%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
% \begin{macrocode}
|
||||||
|
\RequirePackage{datatool}
|
||||||
|
% \end{macrocode}
|
||||||
|
%
|
||||||
|
% \begin{macro}{\id}
|
||||||
|
% Need to know which company you mean today
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\id}{}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\ID}
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\ID}[1]{\renewcommand{\id}{#1}}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
% How does the table of applications look like?
|
||||||
|
% ID, KW, Datum, Firma, FirmaAnrede, FirmaName, Str, PLZ,
|
||||||
|
% Ort, Stelle, Rueckmeldung, Sonstiges
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\getBewerbung}
|
||||||
|
% Get the information of the current company out of the table
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\getBewerbung}[1][anschrift.csv]{
|
||||||
|
\IfFileExists{#1}{%
|
||||||
|
% \end{macrocode}
|
||||||
|
% load the table
|
||||||
|
% \begin{macrocode}
|
||||||
|
\DTLloaddb[ %
|
||||||
|
]{anschrift}{#1} %
|
||||||
|
% \end{macrocode}
|
||||||
|
% which id-format is used?
|
||||||
|
% plain -> search for the exact match
|
||||||
|
% of id in the column ID
|
||||||
|
% noplain (default) -> get the row with number id
|
||||||
|
% (first one is 0)
|
||||||
|
% \begin{macrocode}
|
||||||
|
\ifahbewerbung@idPlain %
|
||||||
|
\edtlgetrowforvalue{anschrift}{1}{\id} %
|
||||||
|
\else %
|
||||||
|
\dtlgetrow{anschrift}{\id} %
|
||||||
|
\fi %
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungKW}{2}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungDatum}{3}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungFirma}{4}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungFirmaAnrede}{5}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungFirmaName}{6}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungFirmaStr}{7}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungFirmaPlz}{8}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungFirmaOrt}{9}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungStelle}{10}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungRueckmeldung}{11}
|
||||||
|
\dtlgetentryfromcurrentrow{\bewerbungSonstiges}{12}
|
||||||
|
}{%
|
||||||
|
\@latex@warning@no@line{Achtung die Datei #1 ist nicht lesbar.} %
|
||||||
|
}%
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\runKomaVar}
|
||||||
|
% Change the komavars for komacv implementation of this project
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\runKomaVar}{%
|
||||||
|
\setkomavar{fromname}{\fullname} %
|
||||||
|
\setkomavar{fromaddress}{\street\\\plz\xspace\stadt} %
|
||||||
|
\setkomavar{fromphone}[\Telefon\enskip]{\tel} %
|
||||||
|
\setkomavar{fromfax}[\Mobilefone\enskip]{\mobile} %
|
||||||
|
\setkomavar{fromemail}[\Letter\enskip]{\email} %
|
||||||
|
\setkomavar{signature}{\vorname\xspace\name} %
|
||||||
|
\setkomavar{subject}{Bewerbung als \bewerbungStelle} %
|
||||||
|
\renewcommand*{\raggedsignature}{} %
|
||||||
|
% \end{macrocode}
|
||||||
|
%\iffalse
|
||||||
|
%% \renewcommand*{\title}{\}% PDF metadata
|
||||||
|
%\fi
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand*{\firstname}{\vorname} %
|
||||||
|
\renewcommand*{\familyname}{\name} %
|
||||||
|
% \end{macrocode}
|
||||||
|
%\iffalse
|
||||||
|
%% \renewcommand*{\acadtitle}{}
|
||||||
|
%\fi
|
||||||
|
% \begin{macrocode}
|
||||||
|
\renewcommand*{\addressstreet}{\street} %
|
||||||
|
\renewcommand*{\addresscity}{\plz\xspace\stadt} %
|
||||||
|
\renewcommand*{\address}{\street\\\plz\xspace\stadt} %
|
||||||
|
\renewcommand*{\phonenr}{\tel} %
|
||||||
|
% \end{macrocode}
|
||||||
|
%\iffalse
|
||||||
|
%% \renewcommand*{\extrainfo}{Some extra info}
|
||||||
|
%\fi
|
||||||
|
% \begin{macrocode}
|
||||||
|
} %
|
||||||
|
% \end{macrocode}
|
||||||
|
% Provide the right paper for a nice titlepage
|
||||||
|
% \begin{macrocode}
|
||||||
|
\ProvideDocumentEnvironment{titlepage}{}{%
|
||||||
|
\thispagestyle{empty} %
|
||||||
|
\newgeometry{top=4cm,left=3cm,right=2.5cm,bottom=2cm} %
|
||||||
|
}{ %
|
||||||
|
\clearpage %
|
||||||
|
\restoregeometry %
|
||||||
|
} %
|
||||||
|
% \end{macrocode}
|
||||||
|
% This environment will make a nice letter to you company
|
||||||
|
% \begin{macrocode}
|
||||||
|
\ProvideDocumentEnvironment{anschreiben}{oo}{%
|
||||||
|
\begin{letter}{%
|
||||||
|
\bewerbungFirma\\
|
||||||
|
\bewerbungFirmaAnrede\xspace\bewerbungFirmaName\\
|
||||||
|
\bewerbungFirmaStr\\
|
||||||
|
\bewerbungFirmaPlz\xspace\bewerbungFirmaOrt
|
||||||
|
} %
|
||||||
|
\IfNoValueF{#2}{\enlargethispage{#2}} %
|
||||||
|
\newcommand{\geehrt}{#1} %
|
||||||
|
\ifthenelse{\equal{\bewerbungFirmaAnrede}{Frau}}{%
|
||||||
|
\renewcommand{\geehrt}{geehrte}%
|
||||||
|
}{}%
|
||||||
|
\ifthenelse{\equal{\bewerbungFirmaAnrede}{Herr}}{%
|
||||||
|
\renewcommand{\geehrt}{geehrter}%
|
||||||
|
}{}%
|
||||||
|
\opening{Sehr \geehrt\xspace %
|
||||||
|
\bewerbungFirmaAnrede\xspace\bewerbungFirmaName, %
|
||||||
|
}%
|
||||||
|
}{
|
||||||
|
\closing{Mit freundlichen Gr\"u{\ss}en} %
|
||||||
|
%\iffalse
|
||||||
|
%%\signature{}
|
||||||
|
%\fi
|
||||||
|
\encl{%
|
||||||
|
\anhang %
|
||||||
|
} %
|
||||||
|
\end{letter}
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
% This environment will produce a nice cv like komacv
|
||||||
|
% but within the same document
|
||||||
|
% \begin{macrocode}
|
||||||
|
\ProvideDocumentEnvironment{lebenslauf}{oo}{%
|
||||||
|
\clearpage
|
||||||
|
\newgeometry{top=2.5cm,left=3cm,right=2.5cm,bottom=3cm}
|
||||||
|
\pagestyle{empty}
|
||||||
|
\ifthenelse{\equal{#1}{none}}{\renewcommand{\@listitemsymbol}{}}{} %
|
||||||
|
%\iffalse
|
||||||
|
%%\clearscrheadfoot
|
||||||
|
%%\ifoot{CV~\firstname~\familyname}
|
||||||
|
%%\ofoot{n}
|
||||||
|
%\fi
|
||||||
|
}{
|
||||||
|
\vfill
|
||||||
|
\begin{raggedright}
|
||||||
|
\begin{tabular}{p{\textwidth}}
|
||||||
|
\fullname\\
|
||||||
|
\todayOrt, \todayTime
|
||||||
|
\end{tabular}
|
||||||
|
\end{raggedright}
|
||||||
|
\IfNoValueF{#2}{%
|
||||||
|
\newpage %
|
||||||
|
#2 %
|
||||||
|
} %
|
||||||
|
\restoregeometry
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
%
|
||||||
|
% \begin{macro}{\makePerson}
|
||||||
|
% Make the entry of your personality in the cv-environment
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\makePerson}{ %
|
||||||
|
\section{Pers\"onliche Angaben} %
|
||||||
|
\cvitem{Name}{\fullname} %
|
||||||
|
\cvitem{Anschrift}{\anschrift[k]} %
|
||||||
|
\cvitem{StA}{\sta} %
|
||||||
|
\cvitem{Geburtsdatum}{\gebDatum} %
|
||||||
|
%\iffalse
|
||||||
|
%%\cvitem{Konfession}{}
|
||||||
|
%%\cvitem{Familienstand}{}
|
||||||
|
%\fi
|
||||||
|
\cvitem{Beruf}{\meinBeruf} %
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
||||||
|
%
|
||||||
|
% \begin{macro}{\argetabelle}
|
||||||
|
% Print a table with all your latest applications
|
||||||
|
% \begin{macrocode}
|
||||||
|
\providecommand{\argetabelle}[1][anschrift.csv]{ %
|
||||||
|
\IfFileExists{#1}{%
|
||||||
|
% \end{macrocode}
|
||||||
|
% load the table
|
||||||
|
% \begin{macrocode}
|
||||||
|
\DTLloaddb{anschrift}{anschrift.csv} %
|
||||||
|
% \end{macrocode}
|
||||||
|
% create a nice table environment for printing
|
||||||
|
% over more than one page
|
||||||
|
% \begin{macrocode}
|
||||||
|
\begin{longtable}{rrL{6cm}L{3cm}L{4cm}}
|
||||||
|
\toprule
|
||||||
|
\multicolumn{1}{l}{\textbf{KW}} & %
|
||||||
|
\multicolumn{1}{l}{\textbf{Datum}} & \textbf{Arbeitgeber} & %
|
||||||
|
\textbf{Stelle} & \textbf{R\"uckmeldung} \\\midrule
|
||||||
|
\endfirsthead
|
||||||
|
\toprule
|
||||||
|
\multicolumn{5}{r}{Fortsetzung\ldots}\\\toprule
|
||||||
|
\multicolumn{1}{l}{\textbf{KW}} & %
|
||||||
|
\multicolumn{1}{l}{\textbf{Datum}} & \textbf{Arbeitgeber} & %
|
||||||
|
{Stelle} & \textbf{R\"uckmeldung} \\\midrule
|
||||||
|
\endhead
|
||||||
|
\midrule\multicolumn{5}{r}{%
|
||||||
|
Fortsetzung auf der n\"achsten Seite\ldots}\\\bottomrule
|
||||||
|
\endfoot
|
||||||
|
\bottomrule
|
||||||
|
\endlastfoot
|
||||||
|
% \end{macrocode}
|
||||||
|
% read the whole table-file and print it nicely into the table
|
||||||
|
% \begin{macrocode}
|
||||||
|
\DTLforeach{anschrift}{%
|
||||||
|
\kw=KW,\datum=Datum,\firma=Firma,\firmaanrede=FirmaAnrede,%
|
||||||
|
\firmaname=FirmaName,\str=Str,\plz=PLZ,\ort=Ort,%
|
||||||
|
\stelle=Stelle,\rueckmeldung=Rueckmeldung}{%
|
||||||
|
\\
|
||||||
|
\kw & \datum & \firma\newline\firmaanrede\ \firmaname\ \str,%
|
||||||
|
\plz\ \ort & \stelle & \rueckmeldung \\\midrule} %
|
||||||
|
\end{longtable}
|
||||||
|
}{%
|
||||||
|
\@latex@warning@no@line{Achtung die Datei #1 ist nicht lesbar.} %
|
||||||
|
} %
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
||||||
|
% \end{macro}
|
||||||
|
%
|
43
bewerbung/config.inc
Normal file
43
bewerbung/config.inc
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
%\iffalse
|
||||||
|
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
|
||||||
|
%% +
|
||||||
|
%% Konfiguration der eigenen Daten +
|
||||||
|
%% +
|
||||||
|
%\fi
|
||||||
|
% \begin{macrocode}
|
||||||
|
\Name{Musterfrau}
|
||||||
|
\Vorname{Maja}
|
||||||
|
\Street{Musterstraße 9}
|
||||||
|
\Plz{45878}
|
||||||
|
\Stadt{Musterstadt}
|
||||||
|
\MeinBeruf{Dipl.-Pädagogin (Univ.)}
|
||||||
|
\EMail{mail@email.com}
|
||||||
|
\Tel{03131~465488}
|
||||||
|
\Mobile{01534~6324524353}
|
||||||
|
\Sta{deutsch}
|
||||||
|
\GebDatum{31.02.1990}
|
||||||
|
% \end{macrocode}
|
||||||
|
%\iffalse
|
||||||
|
%% +
|
||||||
|
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
|
||||||
|
%% +
|
||||||
|
%% +----Achtung--------------------------------------+
|
||||||
|
%% + ID meint (Zeilennummer-1) und nicht das Feld id +
|
||||||
|
%% + Bsp: Eintrag in Zeile 48: ID 47 +
|
||||||
|
%% + +
|
||||||
|
%% + Außer der Klasse ahilbig-bewerbung wird die +
|
||||||
|
%% + Option idPlain mitgegeben. Dann wird nach dem +
|
||||||
|
%% + exakten Match im Feld id gesucht. +
|
||||||
|
%\fi
|
||||||
|
% \begin{macrocode}
|
||||||
|
\ID{1}
|
||||||
|
% \end{macrocode}
|
||||||
|
%\iffalse
|
||||||
|
%% +-------------------------------------------------+
|
||||||
|
%\fi
|
||||||
|
% \begin{macrocode}
|
||||||
|
\Anhang{Abiturzeugnis.\newline Diplomzeugnis.}{%
|
||||||
|
\item Abiturzeugnis
|
||||||
|
\item Diplomzeugnis
|
||||||
|
}
|
||||||
|
% \end{macrocode}
|
979
bewerbung/makedtx.pl
Normal file
979
bewerbung/makedtx.pl
Normal file
@ -0,0 +1,979 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
|
||||||
|
# File : makedtx
|
||||||
|
# Author : Nicola L. C. Talbot
|
||||||
|
# Date : 29 Oct 2004
|
||||||
|
# Last Modified : 19 Aug 2007
|
||||||
|
# Version : 0.94b
|
||||||
|
|
||||||
|
# usage : makedtx [options] -src <expr>=><expr> -doc <filename> <basename>
|
||||||
|
#
|
||||||
|
# -h : help message
|
||||||
|
# -src <expr>=><expr> : e.g. -src "(foo)src\.(bar)=>$1.$2" will add foosrc.bar to <basename>.dtx to be extracted to foo.bar
|
||||||
|
# -doc <filename> : file containing documentation.
|
||||||
|
# -prefinale <string> : text to add to dtx file just before \Finale (added to version 0.91b)
|
||||||
|
# <basename> : create <basename>.dtx and <basename>.ins
|
||||||
|
|
||||||
|
use Getopt::Long;
|
||||||
|
|
||||||
|
$version = "0.94b";
|
||||||
|
|
||||||
|
# process command line options
|
||||||
|
|
||||||
|
%optctl = ();
|
||||||
|
|
||||||
|
&GetOptions(\%optctl, "h", "help", "v", "src=s@", "doc=s",
|
||||||
|
"dir=s", "op=s", "askforoverwrite!", "ins!",
|
||||||
|
"preamble=s", "postamble=s", "setambles=s@", "macrocode=s@",
|
||||||
|
"author=s", "date=s", "stopeventually=s",
|
||||||
|
"prefinale=s", "codetitle=s", "comment=s@",
|
||||||
|
"version", "license=s") or &syntaxerror();
|
||||||
|
|
||||||
|
$srcdir = ".";
|
||||||
|
$patternop = "=";
|
||||||
|
$verbose = 0;
|
||||||
|
$noins = 0;
|
||||||
|
$askforoverwrite = 0;
|
||||||
|
$preamble = "";
|
||||||
|
$postamble = "";
|
||||||
|
$author = (getpwuid($<))[6] || 'Unknown';
|
||||||
|
$stopeventually = "";
|
||||||
|
$prefinale = "";
|
||||||
|
$codetitle = "The Code";
|
||||||
|
$license = "lppl";
|
||||||
|
|
||||||
|
($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(time);
|
||||||
|
|
||||||
|
$year = $year + 1900;
|
||||||
|
|
||||||
|
foreach $setting (keys %optctl)
|
||||||
|
{
|
||||||
|
if (($setting eq "h") || ($setting eq "help"))
|
||||||
|
{
|
||||||
|
&help();
|
||||||
|
}
|
||||||
|
elsif ($setting eq "version")
|
||||||
|
{
|
||||||
|
die "makedtx version $version\n";
|
||||||
|
}
|
||||||
|
elsif ($setting eq "doc")
|
||||||
|
{
|
||||||
|
$docsrc = $optctl{$setting};
|
||||||
|
}
|
||||||
|
elsif ($setting eq "src")
|
||||||
|
{
|
||||||
|
@source = @{ $optctl{$setting} };
|
||||||
|
}
|
||||||
|
elsif ($setting eq "dir")
|
||||||
|
{
|
||||||
|
$srcdir = $optctl{$setting};
|
||||||
|
}
|
||||||
|
elsif ($setting eq "op")
|
||||||
|
{
|
||||||
|
$patternop = $optctl{$setting};
|
||||||
|
}
|
||||||
|
elsif ($setting eq "v")
|
||||||
|
{
|
||||||
|
$verbose = 1;
|
||||||
|
}
|
||||||
|
elsif ($setting eq "ins")
|
||||||
|
{
|
||||||
|
$noins = 1-$optctl{$setting};
|
||||||
|
}
|
||||||
|
elsif ($setting eq "askforoverwrite")
|
||||||
|
{
|
||||||
|
$askforoverwrite = $optctl{$setting};
|
||||||
|
}
|
||||||
|
elsif ($setting eq "preamble")
|
||||||
|
{
|
||||||
|
$preamble = $optctl{$setting};
|
||||||
|
}
|
||||||
|
elsif ($setting eq "postamble")
|
||||||
|
{
|
||||||
|
$postamble = $optctl{$setting};
|
||||||
|
}
|
||||||
|
elsif ($setting eq "setambles")
|
||||||
|
{
|
||||||
|
@setambles = @{ $optctl{$setting} };
|
||||||
|
}
|
||||||
|
elsif ($setting eq "macrocode")
|
||||||
|
{
|
||||||
|
@macrocode = @{ $optctl{$setting} };
|
||||||
|
}
|
||||||
|
elsif ($setting eq "author")
|
||||||
|
{
|
||||||
|
$author = $optctl{$setting};
|
||||||
|
}
|
||||||
|
elsif ($setting eq "date")
|
||||||
|
{
|
||||||
|
$year = $optctl{$setting};
|
||||||
|
}
|
||||||
|
elsif ($setting eq "stopeventually")
|
||||||
|
{
|
||||||
|
$stopeventually = $optctl{$setting};
|
||||||
|
}
|
||||||
|
elsif ($setting eq "prefinale")
|
||||||
|
{
|
||||||
|
$prefinale = $optctl{$setting};
|
||||||
|
}
|
||||||
|
elsif ($setting eq "codetitle")
|
||||||
|
{
|
||||||
|
$codetitle = $optctl{$setting};
|
||||||
|
}
|
||||||
|
elsif ($setting eq "comment")
|
||||||
|
{
|
||||||
|
@comment = @{ $optctl{$setting} };
|
||||||
|
}
|
||||||
|
elsif ($setting eq "license")
|
||||||
|
{
|
||||||
|
$license = $optctl{$setting};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($#ARGV != 0)
|
||||||
|
{
|
||||||
|
print "No basename specified\n";
|
||||||
|
&syntaxerror();
|
||||||
|
}
|
||||||
|
|
||||||
|
$basename = $ARGV[0];
|
||||||
|
|
||||||
|
if ($docsrc eq "")
|
||||||
|
{
|
||||||
|
print "No document source specified (missing -doc)\n";
|
||||||
|
&syntaxerror();
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($#source == -1)
|
||||||
|
{
|
||||||
|
print "No source code specified (missing -src)\n";
|
||||||
|
&syntaxerror();
|
||||||
|
}
|
||||||
|
|
||||||
|
open DTX, ">$basename.dtx" or die "Can't open '$basename.dtx'\n";
|
||||||
|
|
||||||
|
if ($verbose)
|
||||||
|
{
|
||||||
|
print "Documentation source : " . $docsrc . "\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
# work out the derived files
|
||||||
|
|
||||||
|
@srcdirfile = glob("$srcdir/*");
|
||||||
|
|
||||||
|
@derivedfiles = ();
|
||||||
|
|
||||||
|
@outputfiles = ();
|
||||||
|
|
||||||
|
$numoutput = 0;
|
||||||
|
|
||||||
|
foreach $source (@source)
|
||||||
|
{
|
||||||
|
($infile, $outfile, $remainder) = split /=>/, $source;
|
||||||
|
|
||||||
|
if ($outfile eq "")
|
||||||
|
{
|
||||||
|
print "-src $source argument invalid (no output file specified)\n";
|
||||||
|
|
||||||
|
&syntaxerror();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (not ($remainder eq ""))
|
||||||
|
{
|
||||||
|
print "-src $source argument invalid (too many => specified)\n";
|
||||||
|
|
||||||
|
&syntaxerror();
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach $srcdirfile (@srcdirfile)
|
||||||
|
{
|
||||||
|
$fileexp = $srcdir . "/" . $infile;
|
||||||
|
|
||||||
|
$_ = $srcdirfile;
|
||||||
|
|
||||||
|
$expr = "s$patternop$fileexp$patternop$outfile$patternop";
|
||||||
|
|
||||||
|
if (eval($expr))
|
||||||
|
{
|
||||||
|
$thisoutfile = $_;
|
||||||
|
|
||||||
|
$thisinfile = $srcdirfile;
|
||||||
|
|
||||||
|
$file{$thisinfile} = $thisoutfile;
|
||||||
|
$derivedfiles[$numoutput]{'in'} = $thisinfile;
|
||||||
|
$derivedfiles[$numoutput]{'out'} = $thisoutfile;
|
||||||
|
$outputfiles[$numoutput] = $thisoutfile;
|
||||||
|
|
||||||
|
$numoutput++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($preamble eq "")
|
||||||
|
{
|
||||||
|
if ($license eq "lppl")
|
||||||
|
{
|
||||||
|
$preamble = <<_END_LICENSE
|
||||||
|
|
||||||
|
$basename.dtx
|
||||||
|
Copyright $year $author
|
||||||
|
|
||||||
|
This work may be distributed and/or modified under the
|
||||||
|
conditions of the LaTeX Project Public License, either version 1.3
|
||||||
|
of this license of (at your option) any later version.
|
||||||
|
The latest version of this license is in
|
||||||
|
http://www.latex-project.org/lppl.txt
|
||||||
|
and version 1.3 or later is part of all distributions of LaTeX
|
||||||
|
version 2005/12/01 or later.
|
||||||
|
|
||||||
|
This work has the LPPL maintenance status `maintained'.
|
||||||
|
|
||||||
|
The Current Maintainer of this work is $author.
|
||||||
|
|
||||||
|
_END_LICENSE
|
||||||
|
}
|
||||||
|
elsif ($license eq 'bsd')
|
||||||
|
{
|
||||||
|
$preamble = <<_END_LICENSE
|
||||||
|
|
||||||
|
$basename.dtx
|
||||||
|
Copyright (c) $year $author
|
||||||
|
All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions
|
||||||
|
are met:
|
||||||
|
1. Redistributions of source code must retain the above copyright
|
||||||
|
notice, this list of conditions and the following disclaimer.
|
||||||
|
2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
notice, this list of conditions and the following disclaimer in the
|
||||||
|
documentation and/or other materials provided with the distribution.
|
||||||
|
3. The name of the author may not be used to endorse or promote products
|
||||||
|
derived from this software without specific prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||||
|
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||||
|
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||||
|
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||||
|
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||||
|
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||||
|
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||||
|
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
_END_LICENSE
|
||||||
|
}
|
||||||
|
elsif ($license eq 'gpl')
|
||||||
|
{
|
||||||
|
$preamble = <<_END_LICENSE
|
||||||
|
|
||||||
|
$basename.dtx
|
||||||
|
Copyright (c) $year $author
|
||||||
|
|
||||||
|
This program is free software; you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation; either version 2 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program; if not, write to the Free Software
|
||||||
|
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
|
_END_LICENSE
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
die "Unknown license '$license'\n".
|
||||||
|
"Known licenses: lppl, bsd, gpl";
|
||||||
|
}
|
||||||
|
|
||||||
|
$preamble .= " This work consists of the files "
|
||||||
|
. "$basename.dtx and $basename.ins and the derived "
|
||||||
|
. ($numoutput > 1 ? "files" : "file")
|
||||||
|
. " " . join(', ', @outputfiles) . ".\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
open DOC, $docsrc or die "Can't open '$docsrc'\n";
|
||||||
|
|
||||||
|
print DTX "\%\\iffalse\n";
|
||||||
|
print DTX "\% $basename.dtx generated using makedtx version $version (c) Nicola Talbot\n";
|
||||||
|
print DTX "\% Command line args:\n";
|
||||||
|
|
||||||
|
foreach $setting (keys %optctl)
|
||||||
|
{
|
||||||
|
if ($setting eq "src")
|
||||||
|
{
|
||||||
|
foreach $source (@source)
|
||||||
|
{
|
||||||
|
print DTX "\% -src \"$source\"\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
elsif ($setting eq "setambles")
|
||||||
|
{
|
||||||
|
foreach $setamble (@setambles)
|
||||||
|
{
|
||||||
|
print DTX "\% -setambles \"$setamble\"\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
elsif ($setting eq "macrocode")
|
||||||
|
{
|
||||||
|
foreach $macrocode (@macrocode)
|
||||||
|
{
|
||||||
|
print DTX "\% -macrocode \"$macrocode\"\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
elsif ($setting eq "comment")
|
||||||
|
{
|
||||||
|
foreach $comment (@comment)
|
||||||
|
{
|
||||||
|
print DTX "\% -comment \"$comment\"\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$val = $optctl{$setting};
|
||||||
|
$val=~s/\\/\\\\/g;
|
||||||
|
print DTX "\% -", $setting, " \"", $val, "\"\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
print DTX "\% $basename\n";
|
||||||
|
|
||||||
|
print DTX "\% Created on $year/", $mon+1, "/$mday $hour:", $min<10?"0$min" : $min,"\n";
|
||||||
|
print DTX "\%\\fi\n";
|
||||||
|
print DTX "\%\\iffalse\n";
|
||||||
|
print DTX "\%<*package>\n";
|
||||||
|
print DTX "\%\% \\CharacterTable\n";
|
||||||
|
print DTX "\%\% {Upper-case \\A\\B\\C\\D\\E\\F\\G\\H\\I\\J\\K\\L\\M\\N\\O\\P\\Q\\R\\S\\T\\U\\V\\W\\X\\Y\\Z\n";
|
||||||
|
print DTX "\%\% Lower-case \\a\\b\\c\\d\\e\\f\\g\\h\\i\\j\\k\\l\\m\\n\\o\\p\\q\\r\\s\\t\\u\\v\\w\\x\\y\\z\n";
|
||||||
|
print DTX "\%\% Digits \\0\\1\\2\\3\\4\\5\\6\\7\\8\\9\n";
|
||||||
|
print DTX "\%\% Exclamation \\! Double quote \\\" Hash (number) \\#\n";
|
||||||
|
print DTX "\%\% Dollar \\\$ Percent \\\% Ampersand \\&\n";
|
||||||
|
print DTX "\%\% Acute accent \\\' Left paren \\( Right paren \\)\n";
|
||||||
|
print DTX "\%\% Asterisk \\* Plus \\+ Comma \\,\n";
|
||||||
|
print DTX "\%\% Minus \\- Point \\. Solidus \\/\n";
|
||||||
|
print DTX "\%\% Colon \\: Semicolon \\; Less than \\<\n";
|
||||||
|
print DTX "\%\% Equals \\= Greater than \\> Question mark \\?\n";
|
||||||
|
print DTX "\%\% Commercial at \\\@ Left bracket \\[ Backslash \\\\\n";
|
||||||
|
print DTX "\%\% Right bracket \\] Circumflex \\^ Underscore \\_\n";
|
||||||
|
print DTX "\%\% Grave accent \\\` Left brace \\{ Vertical bar \\|\n";
|
||||||
|
print DTX "\%\% Right brace \\} Tilde \\~}\n";
|
||||||
|
print DTX "\%</package>\n";
|
||||||
|
print DTX "\%\\fi\n";
|
||||||
|
|
||||||
|
print DTX "\% \\iffalse\n";
|
||||||
|
print DTX "\% Doc-Source file to use with LaTeX2e\n";
|
||||||
|
print DTX "\% Copyright (C) $year $author, all rights reserved.\n";
|
||||||
|
print DTX "\% \\fi\n";
|
||||||
|
|
||||||
|
# driver
|
||||||
|
|
||||||
|
print DTX "\% \\iffalse\n";
|
||||||
|
print DTX "\%<*driver>\n";
|
||||||
|
|
||||||
|
$indoc=0;
|
||||||
|
|
||||||
|
while (<DOC>)
|
||||||
|
{
|
||||||
|
s/\\usepackage{creatdtx}//;
|
||||||
|
|
||||||
|
$restofline = $_;
|
||||||
|
|
||||||
|
$beginline = "";
|
||||||
|
$line = $restofline;
|
||||||
|
|
||||||
|
while ($restofline =~ /(.*)\\ifmakedtx(.*)/)
|
||||||
|
{
|
||||||
|
$beginline = $1;
|
||||||
|
|
||||||
|
($group,$restofline,$done) = &getnextgroup($2);
|
||||||
|
|
||||||
|
$startline = $.;
|
||||||
|
|
||||||
|
while (!$done)
|
||||||
|
{
|
||||||
|
if ($nextline = <DOC>)
|
||||||
|
{
|
||||||
|
$line = $line . $nextline;
|
||||||
|
|
||||||
|
$restofline = $restofline . $nextline;
|
||||||
|
|
||||||
|
($group,$restofline,$done) = &getnextgroup($restofline);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
die "EOF found whilst scanning first argument to \\ifmakedtx on line $startline\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# print first arg, ignore second
|
||||||
|
|
||||||
|
$beginline = $beginline . $group;
|
||||||
|
|
||||||
|
($group,$restofline,$done) = &getnextgroup($restofline);
|
||||||
|
|
||||||
|
while (!$done)
|
||||||
|
{
|
||||||
|
if ($nextline = <DOC>)
|
||||||
|
{
|
||||||
|
$line = $line . $nextline;
|
||||||
|
|
||||||
|
$restofline = $restofline . $nextline;
|
||||||
|
|
||||||
|
($group,$restofline,$done) = &getnextgroup($restofline);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
die "EOF found whilst scanning second argument to \\ifmakedtx on line $startline\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$line = $restofline;
|
||||||
|
}
|
||||||
|
|
||||||
|
$line = $beginline . $restofline;
|
||||||
|
|
||||||
|
print DTX $line;
|
||||||
|
|
||||||
|
if ($line=~/\\begin{document}/)
|
||||||
|
{
|
||||||
|
$indoc = 1;
|
||||||
|
|
||||||
|
last;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
print DTX "\\DocInput{$basename.dtx}\n";
|
||||||
|
print DTX "\\end{document}\n";
|
||||||
|
print DTX "\%</driver>\n";
|
||||||
|
print DTX "\%\\fi\n";
|
||||||
|
|
||||||
|
$inverb=0;
|
||||||
|
$stopfound=0;
|
||||||
|
|
||||||
|
print DTX "\%";
|
||||||
|
|
||||||
|
while (<DOC>)
|
||||||
|
{
|
||||||
|
if (/\\begin{verbatim}/)
|
||||||
|
{
|
||||||
|
$inverb=1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (/\\end{verbatim}/)
|
||||||
|
{
|
||||||
|
$inverb=0;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (/\\StopEventually/ && ($inverb==0))
|
||||||
|
{
|
||||||
|
$stopfound=1;
|
||||||
|
}
|
||||||
|
|
||||||
|
$restofline = $_;
|
||||||
|
|
||||||
|
$beginline = "";
|
||||||
|
$line = $restofline;
|
||||||
|
|
||||||
|
while ($restofline =~ /(.*)\\ifmakedtx(.*)/)
|
||||||
|
{
|
||||||
|
$beginline = $1;
|
||||||
|
|
||||||
|
($group,$restofline,$done) = &getnextgroup($2);
|
||||||
|
|
||||||
|
$startline = $.;
|
||||||
|
|
||||||
|
while (!$done)
|
||||||
|
{
|
||||||
|
if ($nextline = <DOC>)
|
||||||
|
{
|
||||||
|
$line = $line . $nextline;
|
||||||
|
|
||||||
|
$restofline = $restofline . $nextline;
|
||||||
|
|
||||||
|
($group,$restofline,$done) = &getnextgroup($restofline);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
die "EOF found whilst scanning first argument to \\ifmakedtx on line $startline\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# print first arg, ignore second
|
||||||
|
|
||||||
|
$beginline = $beginline . $group;
|
||||||
|
|
||||||
|
($group,$restofline,$done) = &getnextgroup($restofline);
|
||||||
|
|
||||||
|
while (!$done)
|
||||||
|
{
|
||||||
|
if ($nextline = <DOC>)
|
||||||
|
{
|
||||||
|
$line = $line . $nextline;
|
||||||
|
|
||||||
|
$restofline = $restofline . $nextline;
|
||||||
|
|
||||||
|
($group,$restofline,$done) = &getnextgroup($restofline);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
die "EOF found whilst scanning second argument to \\ifmakedtx on line $startline\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$line = $restofline;
|
||||||
|
}
|
||||||
|
|
||||||
|
$line = $beginline . $restofline;
|
||||||
|
|
||||||
|
if (($line=~/\\end{document}/) and not $inverb)
|
||||||
|
{
|
||||||
|
$indoc=0;
|
||||||
|
|
||||||
|
$line=~s/\\end{document}//;
|
||||||
|
}
|
||||||
|
|
||||||
|
$line=~s/\n/\n\%/mg;
|
||||||
|
|
||||||
|
print DTX "$line";
|
||||||
|
}
|
||||||
|
|
||||||
|
close DOC;
|
||||||
|
|
||||||
|
print DTX "\n";
|
||||||
|
|
||||||
|
if ($stopfound==0)
|
||||||
|
{
|
||||||
|
print DTX "\%\\StopEventually{$stopeventually}\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
print DTX "\%\\section{$codetitle}\n";
|
||||||
|
|
||||||
|
for (my $idx = 0; $idx <= $#derivedfiles; $idx++)
|
||||||
|
{
|
||||||
|
$thisinfile = $derivedfiles[$idx]{'in'};
|
||||||
|
$thisoutfile = $derivedfiles[$idx]{'out'};
|
||||||
|
|
||||||
|
if ($verbose)
|
||||||
|
{
|
||||||
|
print "$srcdirfile -> $_ \n";
|
||||||
|
}
|
||||||
|
|
||||||
|
open SRC, $thisinfile or die "Can't open $thisinfile\n";
|
||||||
|
|
||||||
|
print DTX "\%\\iffalse\n";
|
||||||
|
print DTX "\% \\begin{macrocode}\n";
|
||||||
|
print DTX "\%<*$thisoutfile>\n";
|
||||||
|
print DTX "\% \\end{macrocode}\n";
|
||||||
|
print DTX "\%\\fi\n";
|
||||||
|
|
||||||
|
$macrocode = 0;
|
||||||
|
$comment = 0;
|
||||||
|
|
||||||
|
foreach $expr (@comment)
|
||||||
|
{
|
||||||
|
if ($thisoutfile =~ m/$expr/)
|
||||||
|
{
|
||||||
|
print DTX "\%\\iffalse\n";
|
||||||
|
|
||||||
|
$comment = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach $expr (@macrocode)
|
||||||
|
{
|
||||||
|
if ($thisoutfile =~ m/$expr/)
|
||||||
|
{
|
||||||
|
print DTX "\% \\begin{macrocode}\n";
|
||||||
|
|
||||||
|
$macrocode = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
while (<SRC>)
|
||||||
|
{
|
||||||
|
print DTX "$_";
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($macrocode == 1)
|
||||||
|
{
|
||||||
|
print DTX "\% \\end{macrocode}\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($comment == 1)
|
||||||
|
{
|
||||||
|
print DTX "\%\\fi\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
print DTX "\%\\iffalse\n";
|
||||||
|
print DTX "\% \\begin{macrocode}\n";
|
||||||
|
print DTX "\%</$thisoutfile>\n";
|
||||||
|
print DTX "\% \\end{macrocode}\n";
|
||||||
|
print DTX "\%\\fi\n";
|
||||||
|
|
||||||
|
close SRC;
|
||||||
|
}
|
||||||
|
|
||||||
|
print DTX "\%$prefinale\n" if ($prefinale);
|
||||||
|
print DTX "\%\\Finale\n";
|
||||||
|
print DTX "\\endinput\n";
|
||||||
|
|
||||||
|
close DTX;
|
||||||
|
|
||||||
|
if (!$noins)
|
||||||
|
{
|
||||||
|
open INS, ">$basename.ins" or die "Can't open '$basename.ins'\n";
|
||||||
|
|
||||||
|
print INS "\% $basename.ins generated using makedtx version $version $year/",$mon+1,"/$mday $hour:", $min<10?"0$min":$min,"\n";
|
||||||
|
|
||||||
|
print INS "\\input docstrip\n\n";
|
||||||
|
print INS "\\preamble\n";
|
||||||
|
print INS "$preamble\n";
|
||||||
|
print INS "\\endpreamble\n\n";
|
||||||
|
|
||||||
|
if ($postamble ne "")
|
||||||
|
{
|
||||||
|
print INS "\\postamble\n";
|
||||||
|
print INS "$postamble\n";
|
||||||
|
print INS "\\endpostamble\n\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($askforoverwrite)
|
||||||
|
{
|
||||||
|
print INS "\\askforoverwritetrue\n\n";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
print INS "\\askforoverwritefalse\n\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
print INS "\\generate{";
|
||||||
|
|
||||||
|
for (my $idx = 0; $idx <= $#derivedfiles; $idx++)
|
||||||
|
{
|
||||||
|
$file = $derivedfiles[$idx]{'in'};
|
||||||
|
$outfile = $derivedfiles[$idx]{'out'};
|
||||||
|
|
||||||
|
print INS "\\file{$outfile}{";
|
||||||
|
|
||||||
|
$ambleset = 0;
|
||||||
|
$noamble = 0;
|
||||||
|
|
||||||
|
foreach $setamble (@setambles)
|
||||||
|
{
|
||||||
|
($fileexp, $amble, $remainder) = split /=>/, $setamble;
|
||||||
|
|
||||||
|
if (not ($remainder eq ""))
|
||||||
|
{
|
||||||
|
die "-setambles $setamble argument invalid (too many => specified)\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($outfile =~ m/$fileexp/)
|
||||||
|
{
|
||||||
|
if ($verbose)
|
||||||
|
{
|
||||||
|
print "$fileexp matches $outfile -> setting \"$amble\"\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
print INS $amble;
|
||||||
|
|
||||||
|
$ambleset = 1;
|
||||||
|
|
||||||
|
if ($amble =~ m/\\nopreamble/)
|
||||||
|
{
|
||||||
|
$noamble = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!$ambleset)
|
||||||
|
{
|
||||||
|
print INS "\\usepreamble\\defaultpreamble\n\\usepostamble\\defaultpostamble";
|
||||||
|
}
|
||||||
|
|
||||||
|
print INS "\\from{$basename.dtx}{$outfile";
|
||||||
|
|
||||||
|
if ($noamble == 0)
|
||||||
|
{
|
||||||
|
# this will add the character table to all files except those that use \nopreamble
|
||||||
|
|
||||||
|
print INS ",package";
|
||||||
|
}
|
||||||
|
|
||||||
|
print INS "}}\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
print INS "}\n\n";
|
||||||
|
|
||||||
|
print INS "\\endbatchfile\n";
|
||||||
|
|
||||||
|
close INS;
|
||||||
|
}
|
||||||
|
|
||||||
|
sub syntaxerror
|
||||||
|
{
|
||||||
|
die "Syntax : makedtx [options] <basename>\nUse -h for help\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
sub help
|
||||||
|
{
|
||||||
|
print "makedtx Help\n\n";
|
||||||
|
|
||||||
|
print "Current Version : $version\n\n";
|
||||||
|
|
||||||
|
print "usage : makedtx [options] -src \"<expr>=><expr>\" -doc <filename> <basename>\n\n";
|
||||||
|
|
||||||
|
print "makedtx can be used to construct a LaTeX2e dtx and ins file from\n";
|
||||||
|
print "the specified source code. The final command line argument\n";
|
||||||
|
print "<basename> should be used to specify the basename of the dtx\n";
|
||||||
|
print "and ins files.\n\n";
|
||||||
|
|
||||||
|
print "-src \"<expr1>=><expr2>\"\n";
|
||||||
|
print "The command line switch -src identifies the original source code and the name\n";
|
||||||
|
print "of the file to which it will utimately be extracted on latexing the ins file\n";
|
||||||
|
print "<expr1> can be a Perl expression, such as (foo)src.(sty), and <expr2> can\n";
|
||||||
|
print "a Perl substitution style expression, such as $1.$2\n";
|
||||||
|
print "Note that double quotes must be used to prevent shell expansion\n";
|
||||||
|
print "Multiple invocations of -src are permitted\n";
|
||||||
|
print "See examples below.\n\n";
|
||||||
|
|
||||||
|
print "-doc <filename>\n";
|
||||||
|
print "The name of the documentation source code. This should be a LaTeX2e document\n\n";
|
||||||
|
|
||||||
|
print "Optional Arguments:\n\n";
|
||||||
|
|
||||||
|
print "-dir <directory> : search for source files in <directory>\n";
|
||||||
|
print "-op <character> : set the pattern matching operator (default '$patternop')\n";
|
||||||
|
print "-askforoverwrite : set askforoverwrite switch in INS file to true\n";
|
||||||
|
print "-noaskforoverwrite : set askforoverwrite switch in INS file to false (default)\n";
|
||||||
|
print "-preamble <text> : set the preamble. Standard one inserted if omitted\n";
|
||||||
|
print "-postamble <text> : set the postamble.\n";
|
||||||
|
print "-setambles \"<pattern>=><text>\" : set pre- and postambles to <text> if file matches pattern\n";
|
||||||
|
print "-author <text> : name of author (inserted into standard preamble. User name inserted if omitted)\n";
|
||||||
|
print "-date <text> : copyright date\n";
|
||||||
|
print "-ins : create the ins file (default)\n";
|
||||||
|
print "-noins : don't create the ins file\n";
|
||||||
|
print "-prefinale <text> : add <text> immediately prior to \\Finale\n";
|
||||||
|
print "-macrocode <expr> : surround any file which matches <expr> in a macrocode environment\n";
|
||||||
|
print "-comment <expr> : surround any file which matches <expr> with \\iffalse \\fi pair\n";
|
||||||
|
print "-codetitle <text> : The title for the documented code section (default: The Code)\n";
|
||||||
|
print "-license <license> : use the given license for the preamble.\n";
|
||||||
|
print " Known licenses: lppl (default), bsd, gpl.\n";
|
||||||
|
print "-h : help message\n";
|
||||||
|
print "-v : verbose\n\n";
|
||||||
|
|
||||||
|
print "Examples:\n\n";
|
||||||
|
|
||||||
|
print "Example 1:\n";
|
||||||
|
print "Documenation is in foodoc.tex\n";
|
||||||
|
print "Source code is in foosrc.sty. The final extracted version should be \n";
|
||||||
|
print "called foo.sty. The dtx file should be called foo.dtx and the ins file\n";
|
||||||
|
print " should be called foo.ins\n\n";
|
||||||
|
|
||||||
|
print "makedtx -src \"foosrc\\.sty=>foo.sty\" -doc foodoc.tex foo\n\n";
|
||||||
|
|
||||||
|
print "Example 2:\n";
|
||||||
|
print "Documenation is in bardoc.tex\n";
|
||||||
|
print "Source code is in barsrc.sty. The final extracted version should be\n";
|
||||||
|
print "called bar.sty. Source code is also in barsrc.bst. The final extracted\n";
|
||||||
|
print "version should be called bar.bst. The dtx file should be called bar.dtx and\n";
|
||||||
|
print "the ins file should be called bar.ins\n\n";
|
||||||
|
|
||||||
|
print "makedtx -src \"barsrc\\.sty=>bar.sty\" -src \"barsrc\\.bst=>bar.bst\" -doc bardoc.tex bar\n\n";
|
||||||
|
|
||||||
|
print "Or\n\n";
|
||||||
|
|
||||||
|
print "makedtx -src \"barsrc\\.(bst|sty)=>bar.\$1\" -doc bardoc.tex bar\n\n";
|
||||||
|
|
||||||
|
die;
|
||||||
|
}
|
||||||
|
|
||||||
|
sub eatinitialspaces
|
||||||
|
{
|
||||||
|
my ($STR) = @_;
|
||||||
|
|
||||||
|
while (substr($STR,0,1) eq "\s")
|
||||||
|
{
|
||||||
|
$STR = substr($STR,1);
|
||||||
|
}
|
||||||
|
|
||||||
|
return $STR;
|
||||||
|
}
|
||||||
|
|
||||||
|
sub getnextgroup
|
||||||
|
{
|
||||||
|
my($curline) = @_;
|
||||||
|
|
||||||
|
$curline = &eatinitialspaces($curline);
|
||||||
|
|
||||||
|
# check to see if current string is blank
|
||||||
|
|
||||||
|
if ($curline!~/[^\s]+/m)
|
||||||
|
{
|
||||||
|
return ("","",0);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (($group = substr($curline,0,1)) ne "{")
|
||||||
|
{
|
||||||
|
# next group hasn't been delimited with braces
|
||||||
|
# return first non-whitespace character
|
||||||
|
|
||||||
|
$curline = substr($curline,1);
|
||||||
|
|
||||||
|
# unless it's a backslash, in which case get command name
|
||||||
|
|
||||||
|
if ($group eq "\\")
|
||||||
|
{
|
||||||
|
if ($curline=~/([a-zA-Z]+)(^[a-zA-Z].*)/m)
|
||||||
|
{
|
||||||
|
$group = $1;
|
||||||
|
|
||||||
|
$curline = $2;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
# command is made up of backslash followed by symbol
|
||||||
|
|
||||||
|
$curline=~/([\W_0-9\s\\])(.*)/m;
|
||||||
|
|
||||||
|
$group = $1;
|
||||||
|
|
||||||
|
$curline = $2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return ($group,$curline,1);
|
||||||
|
}
|
||||||
|
|
||||||
|
my $pos=index($curline, "{");
|
||||||
|
my $startpos=$pos;
|
||||||
|
my $posopen=0;
|
||||||
|
my $posclose=0;
|
||||||
|
|
||||||
|
my $bracelevel = 1;
|
||||||
|
|
||||||
|
my $done=0;
|
||||||
|
|
||||||
|
while (!$done)
|
||||||
|
{
|
||||||
|
$pos++;
|
||||||
|
|
||||||
|
$posopen = index($curline, "{", $pos);
|
||||||
|
|
||||||
|
# check to make sure it's not a \{
|
||||||
|
|
||||||
|
while ((substr($curline, $posopen-1,1) eq "\\") and ($posopen > 0))
|
||||||
|
{
|
||||||
|
# count how many backlashes come before it.
|
||||||
|
|
||||||
|
$i = $posopen-1;
|
||||||
|
|
||||||
|
$numbs = 1;
|
||||||
|
|
||||||
|
while ((substr($curline, $i-1,1) eq "\\") and ($i > 0))
|
||||||
|
{
|
||||||
|
$numbs++;
|
||||||
|
$i--;
|
||||||
|
}
|
||||||
|
|
||||||
|
# is $numbs is odd, we have a \{, otherwise we have \\{
|
||||||
|
|
||||||
|
if ($numbs%2 == 0)
|
||||||
|
{
|
||||||
|
last;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$posopen = index($curline, "{", $posopen+1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$posclose= index($curline, "}", $pos);
|
||||||
|
|
||||||
|
# check to make sure it's not a \}
|
||||||
|
|
||||||
|
while ((substr($curline, $posclose-1,1) eq "\\") and ($posclose > 0))
|
||||||
|
{
|
||||||
|
# count how many backlashes come before it.
|
||||||
|
|
||||||
|
$i = $posclose-1;
|
||||||
|
|
||||||
|
$numbs = 1;
|
||||||
|
|
||||||
|
while ((substr($curline, $i-1,1) eq "\\") and ($i > 0))
|
||||||
|
{
|
||||||
|
$numbs++;
|
||||||
|
$i--;
|
||||||
|
}
|
||||||
|
|
||||||
|
# is $numbs is odd, we have a \}, otherwise we have \\}
|
||||||
|
|
||||||
|
if ($numbs%2 == 0)
|
||||||
|
{
|
||||||
|
last;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$posclose = index($curline, "}", $posclose+1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (($posopen==-1) and ($posclose==-1))
|
||||||
|
{
|
||||||
|
$done=1;
|
||||||
|
}
|
||||||
|
elsif ($posopen==-1)
|
||||||
|
{
|
||||||
|
$pos=$posclose;
|
||||||
|
|
||||||
|
$bracelevel--;
|
||||||
|
|
||||||
|
if ($bracelevel==0)
|
||||||
|
{
|
||||||
|
$group = substr($curline, $startpos+1, $pos-$startpos-1);
|
||||||
|
|
||||||
|
$curline = substr($curline, $pos+1);
|
||||||
|
|
||||||
|
return ($group,$curline,1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
elsif ($posclose==-1)
|
||||||
|
{
|
||||||
|
$pos=$posopen;
|
||||||
|
|
||||||
|
$bracelevel++;
|
||||||
|
}
|
||||||
|
elsif ($posopen<$posclose)
|
||||||
|
{
|
||||||
|
$pos=$posopen;
|
||||||
|
|
||||||
|
$bracelevel++;
|
||||||
|
}
|
||||||
|
elsif ($posclose<$posopen)
|
||||||
|
{
|
||||||
|
$pos=$posclose;
|
||||||
|
|
||||||
|
$bracelevel--;
|
||||||
|
|
||||||
|
if ($bracelevel==0)
|
||||||
|
{
|
||||||
|
$group = substr($curline, $startpos+1, $pos-$startpos-1);
|
||||||
|
|
||||||
|
$curline = substr($curline, $pos+1);
|
||||||
|
|
||||||
|
return ($group,$curline,1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# closing brace must be on another line
|
||||||
|
|
||||||
|
return ("", $curline, 0);
|
||||||
|
}
|
||||||
|
1;
|
10
bewerbung/neueBewerbung.sh
Normal file
10
bewerbung/neueBewerbung.sh
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
mkdir -v $1
|
||||||
|
cp -v bewerbung.tex $1/bewerbung-$1.tex
|
||||||
|
cp -v config.inc $1
|
||||||
|
cd $1
|
||||||
|
ln -sv ../Anhang ./Anhang
|
||||||
|
ln -sv ../Foto.jpg ./Foto.jpg
|
||||||
|
ln -sv ../Foto.pdf ./Foto.pdf
|
||||||
|
ln -sv ../anschrift.csv ./anschrift.csv
|
||||||
|
cd ..
|
64
bewerbung/titlepage.inc
Normal file
64
bewerbung/titlepage.inc
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
% \begin{macrocode}
|
||||||
|
\begin{titlepage}
|
||||||
|
\begin{comment}
|
||||||
|
\applyCSVfile{../anschrift.csv}{
|
||||||
|
\ifthenelse{\equal{\insertbyname{ID}}{\id}}{
|
||||||
|
\renewcommand{\firma}{\insertbyname{Firma}}
|
||||||
|
\renewcommand{\firmaAnrede}{\insertbyname{FirmaAnrede}}
|
||||||
|
\renewcommand{\firmaName}{\insertbyname{FirmaName}}
|
||||||
|
\renewcommand{\firmaStreet}{\insertbyname{Str}}
|
||||||
|
\renewcommand{\firmaPlz}{\insertbyname{PLZ}}
|
||||||
|
\renewcommand{\firmaStadt}{\insertbyname{Ort}}
|
||||||
|
\renewcommand{\beruf}{\insertbyname{Stelle}}
|
||||||
|
% \end{macrocode}
|
||||||
|
%\iffalse
|
||||||
|
%% \hrule
|
||||||
|
%\fi
|
||||||
|
% \begin{macrocode}
|
||||||
|
\end{comment}
|
||||||
|
\begin{multicols*}{2}[][0cm]
|
||||||
|
\setlength{\columnseprule}{1pt}
|
||||||
|
|
||||||
|
\textbf{\fullname}\\
|
||||||
|
\textbf{\meinBeruf} \\ \ \\
|
||||||
|
\street\\
|
||||||
|
\plz\ \stadt\\
|
||||||
|
\Letter\enskip \email\\
|
||||||
|
\Telefon\enskip \tel\\
|
||||||
|
\Mobilefone\enskip \mobile
|
||||||
|
|
||||||
|
\vfill
|
||||||
|
\textbf{Inhalt}
|
||||||
|
\renewcommand{\labelitemi}{}
|
||||||
|
\begin{itemize}
|
||||||
|
\anhang[title]
|
||||||
|
\end{itemize}
|
||||||
|
\columnbreak
|
||||||
|
\vspace*{1.8cm}
|
||||||
|
\hspace*{0.5cm}\textsc{\Huge{\textbf{Bewerbung}}}
|
||||||
|
\vspace*{2cm}
|
||||||
|
\begin{flushleft}
|
||||||
|
\setlength{\parindent}{-0.1cm}
|
||||||
|
\leftskip=0.3cm
|
||||||
|
\hspace*{0.1cm}\textit{bei}\\ % hier gehört bei rein
|
||||||
|
\textbf{\bewerbungFirma}\\
|
||||||
|
\bewerbungFirmaAnrede\
|
||||||
|
\bewerbungFirmaName\\
|
||||||
|
\bewerbungFirmaStr\\
|
||||||
|
\bewerbungFirmaPlz\ \bewerbungFirmaOrt
|
||||||
|
% \end{macrocode}
|
||||||
|
% hier kann der Abstand zwischen Anschrift und Berufsbezeichnung eingestellt werden
|
||||||
|
% \begin{macrocode}
|
||||||
|
\vspace*{1.5cm}
|
||||||
|
\hspace*{0.1cm}\textit{als}\\
|
||||||
|
\textbf{\bewerbungStelle}\\
|
||||||
|
\end{flushleft}
|
||||||
|
\vfill
|
||||||
|
%\vfill
|
||||||
|
\hspace*{0.2cm}\includegraphics[width=5cm]{Foto.pdf} %\\
|
||||||
|
% \end{macrocode}
|
||||||
|
% \ \\
|
||||||
|
% \begin{macrocode}
|
||||||
|
\end{multicols*}
|
||||||
|
\end{titlepage}
|
||||||
|
% \end{macrocode}
|
BIN
bewerbung_latest.zip
Normal file
BIN
bewerbung_latest.zip
Normal file
Binary file not shown.
53
build
Normal file
53
build
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
echo "===================================================================" >> build.log
|
||||||
|
echo "=+-Lauf vom `date +%Y-%m-%d:%H:%M:%S`----------------------------------+=" >> build.log
|
||||||
|
sty2dtx -O -c bewerbung.sty -o bewerbung/bewerbung.sty >> build.log
|
||||||
|
sty2dtx -O -c bewerbung.cls -o bewerbung/bewerbung.cls >> build.log
|
||||||
|
sty2dtx -O -c argetabelle.cls -o bewerbung/argetabelle.cls >> build.log
|
||||||
|
sty2dtx -O -c bewerbung-cv.sty -o bewerbung/bewerbung-cv.sty >> build.log
|
||||||
|
sty2dtx -O -c bewerbung-cv-casual.sty -o bewerbung/bewerbung-cv-casual.sty >> build.log
|
||||||
|
sty2dtx -O -c bewerbung-cv-classic.sty -o bewerbung/bewerbung-cv-classic.sty >> build.log
|
||||||
|
sty2dtx -O -c bewerbung-cv-oldstyle.sty -o bewerbung/bewerbung-cv-oldstyle.sty >> build.log
|
||||||
|
sty2dtx -O -c config.inc -o bewerbung/config.inc >> build.log
|
||||||
|
sty2dtx -O -c titlepage.inc -o bewerbung/titlepage.inc >> build.log
|
||||||
|
echo "=+-sty2dtx abgeschlossen-----------------------------------------+=" >> build.log
|
||||||
|
cp -v argetabelle-example.tex bewerbung/
|
||||||
|
cp -v bewerbung-example.tex bewerbung/
|
||||||
|
cp -v anschrift.csv bewerbung/
|
||||||
|
cp -v neueBewerbung.sh bewerbung/
|
||||||
|
sed -e s/\\date\{[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]\}/\\date\{`date +%Y-%m-%d`\}/1 dokumentation.tex > output.tex
|
||||||
|
rm dokumentation.tex
|
||||||
|
mv output.tex dokumentation.tex
|
||||||
|
sed "s/Version: [0-9].[0-9]*/Version: $1/1" README > /tmp/output.readme
|
||||||
|
sed "s/Last Change: [0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]/Last Change: `date +%Y-%m-%d`/1" /tmp/output.readme > output.readme
|
||||||
|
mv -v output.readme bewerbung/README
|
||||||
|
sed "s/Version: [0-9].[0-9]*/Version: $1/1" README_DE > /tmp/output.readme
|
||||||
|
sed "s/Last Change: [0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]/Last Change `date +%Y-%m-%d`/1" /tmp/output.readme > output_de.readme
|
||||||
|
mv -v output_de.readme bewerbung/README_DE
|
||||||
|
echo "=+-Kopieren und Anpassen abgeschlossen---------------------------+=" >> build.log
|
||||||
|
cd bewerbung
|
||||||
|
echo "=+-setze Beispiele-----------------------------------------------+=" >> build.log
|
||||||
|
latexmk -pdf argetabelle-example.tex
|
||||||
|
latexmk -pdf bewerbung-example.tex
|
||||||
|
echo "=+-Packe DTX-----------------------------------------------------+=" >> build.log
|
||||||
|
./makedtx.pl -src "(.*)\.sty=>\1.sty" -src "(.*)\.cls=>\1.cls" -doc ../dokumentation.tex \
|
||||||
|
-src "neueBewerbung.sh=>neueBewerbung.sh" -src "(.*)\.inc=>\1.inc" \
|
||||||
|
-macrocode "neueBewerbung.sh" -comment "neueBewerbung.sh"\
|
||||||
|
-setambles "neueBewerbung.sh=>\\nopreamble\\nopostamble"\
|
||||||
|
-comment "config.inc=>config.inc" \
|
||||||
|
-date "`date +%Y-%m-%d:%H:%M:%S` -- Version $1" \
|
||||||
|
-author "André Hilbig, mail@andrehilbig.de" -codetitle "Implementation" bewerbung
|
||||||
|
pdflatex bewerbung.dtx
|
||||||
|
CHECKSUM=$(grep "The checksum should be" bewerbung.log | grep -o "[0-9]*")
|
||||||
|
echo "The checksum is: $CHECKSUM"
|
||||||
|
sed -e s/CheckSum\{[0-9]*\}/CheckSum\{$CHECKSUM\}/1 bewerbung.dtx > output.dtx
|
||||||
|
rm bewerbung.dtx
|
||||||
|
mv output.dtx bewerbung.dtx
|
||||||
|
latexmk -pdf bewerbung.dtx
|
||||||
|
cd ..
|
||||||
|
#rm bewerbung_latest.zip
|
||||||
|
zip -r bewerbung_latest.zip bewerbung/bewerbung.dtx bewerbung/bewerbung.ins bewerbung/anschrift.csv \
|
||||||
|
bewerbung/argetabelle-example.tex bewerbung/argetabelle-example.pdf bewerbung/bewerbung.pdf \
|
||||||
|
bewerbung/bewerbung-example.tex bewerbung/bewerbung-example.pdf bewerbung/Foto.pdf \
|
||||||
|
bewerbung/README bewerbung/README_DE
|
||||||
|
|
41
config.inc
Normal file
41
config.inc
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
%\iffalse
|
||||||
|
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
|
||||||
|
%% +
|
||||||
|
%% Konfiguration der eigenen Daten +
|
||||||
|
%% +
|
||||||
|
%\fi
|
||||||
|
\Name{Musterfrau}
|
||||||
|
\Vorname{Maja}
|
||||||
|
\Street{Musterstraße 9}
|
||||||
|
\Plz{45878}
|
||||||
|
\Stadt{Musterstadt}
|
||||||
|
\MeinBeruf{Dipl.-Pädagogin (Univ.)}
|
||||||
|
\EMail{mail@email.com}
|
||||||
|
\Tel{03131~465488}
|
||||||
|
\Mobile{01534~6324524353}
|
||||||
|
\Sta{deutsch}
|
||||||
|
\GebDatum{31.02.1990}
|
||||||
|
%\iffalse
|
||||||
|
%% +
|
||||||
|
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
|
||||||
|
%% +
|
||||||
|
%% +----Achtung--------------------------------------+
|
||||||
|
%% + ID meint (Zeilennummer-1) und nicht das Feld id +
|
||||||
|
%% + Bsp: Eintrag in Zeile 48: ID 47 +
|
||||||
|
%% + +
|
||||||
|
%% + Außer der Klasse ahilbig-bewerbung wird die +
|
||||||
|
%% + Option idPlain mitgegeben. Dann wird nach dem +
|
||||||
|
%% + exakten Match im Feld id gesucht. +
|
||||||
|
%\fi
|
||||||
|
\ID{1}
|
||||||
|
%\iffalse
|
||||||
|
%% +-------------------------------------------------+
|
||||||
|
%\fi
|
||||||
|
\Anhang{Abiturzeugnis.\newline Diplomzeugnis.}{%
|
||||||
|
\item Abiturzeugnis
|
||||||
|
\item Diplomzeugnis
|
||||||
|
}
|
||||||
|
%\iffalse
|
||||||
|
%% +
|
||||||
|
%% - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
|
||||||
|
%\fi
|
BIN
dokumentation.pdf
Normal file
BIN
dokumentation.pdf
Normal file
Binary file not shown.
BIN
dokumentation.synctex.gz
Normal file
BIN
dokumentation.synctex.gz
Normal file
Binary file not shown.
987
dokumentation.tex
Normal file
987
dokumentation.tex
Normal file
@ -0,0 +1,987 @@
|
|||||||
|
\documentclass[a4paper]{ltxdoc}
|
||||||
|
\usepackage[utf8]{inputenc}
|
||||||
|
\usepackage[T1]{fontenc}
|
||||||
|
\usepackage[english,ngerman]{babel}
|
||||||
|
\usepackage{xparse,xargs}
|
||||||
|
\usepackage{newfloat}
|
||||||
|
\usepackage[usenames,dvipsnames,svgnames,table]{xcolor}
|
||||||
|
\definecolor{blau}{rgb}{0,0,0.75}
|
||||||
|
\definecolor{orange}{rgb}{0.8,0.3,0}
|
||||||
|
\usepackage{filecontents}
|
||||||
|
\begin{filecontents}{bewerbung.bib}
|
||||||
|
@electronic{komacv,
|
||||||
|
author = "Salome Södergan",
|
||||||
|
month = {Aug},
|
||||||
|
year = "2014",
|
||||||
|
title = "komacv",
|
||||||
|
subtitle = "Typesetting a beuatiful CV with various style options",
|
||||||
|
url = {http://www.ctan.org/pkg/komacv},
|
||||||
|
urldate = {2015-07-09},
|
||||||
|
}
|
||||||
|
|
||||||
|
@electronic{scrlttr2,
|
||||||
|
author = "Markus Kohm",
|
||||||
|
month = {Jul},
|
||||||
|
year = "2015",
|
||||||
|
title = "scrlttr2",
|
||||||
|
subtitle = "Koma-Script ‘letter’ class",
|
||||||
|
url = {http://www.ctan.org/pkg/scrlttr2},
|
||||||
|
urldate = {2015-07-09},
|
||||||
|
}
|
||||||
|
|
||||||
|
@electronic{datatool,
|
||||||
|
author = "Nicola Talbot",
|
||||||
|
year = "2014",
|
||||||
|
title = "datatool",
|
||||||
|
subtitle = "Tools to load and manipulate data",
|
||||||
|
url = {http://www.ctan.org/pkg/datatool},
|
||||||
|
urldate = {2015-07-09},
|
||||||
|
}
|
||||||
|
|
||||||
|
@electronic{pdfpages,
|
||||||
|
author = "Andreas Matthias",
|
||||||
|
year = "2015",
|
||||||
|
title = "pdfpages",
|
||||||
|
subtitle = "Include PDF documents in LaTeX",
|
||||||
|
url = {http://www.ctan.org/pkg/pdfpages},
|
||||||
|
urldate = {2015-07-09},
|
||||||
|
}
|
||||||
|
\end{filecontents}
|
||||||
|
\usepackage[%
|
||||||
|
backend=biber,
|
||||||
|
sortlocale=de_DE,
|
||||||
|
style=authoryear,
|
||||||
|
bibencoding=UTF8,
|
||||||
|
block=space,
|
||||||
|
autocite=inline,
|
||||||
|
language=ngerman,
|
||||||
|
]{biblatex}
|
||||||
|
\addglobalbib{bewerbung.bib}
|
||||||
|
\renewcommand*{\mkbibnamelast}{\textsc}
|
||||||
|
|
||||||
|
\DeclareCiteCommand{\citeauthorfull}
|
||||||
|
{%
|
||||||
|
\boolfalse{citetracker}%
|
||||||
|
\boolfalse{pagetracker}%
|
||||||
|
\usebibmacro{prenote}}
|
||||||
|
{\ifciteindex%
|
||||||
|
{\indexnames{labelname}}
|
||||||
|
{}%
|
||||||
|
\printnames[first-last]{author}}
|
||||||
|
{\multicitedelim}
|
||||||
|
{\usebibmacro{postnote}}
|
||||||
|
|
||||||
|
|
||||||
|
\usepackage{hyperref}
|
||||||
|
\hypersetup{%
|
||||||
|
pdftitle = {\LaTeX-classes and -packages for typesetting nice applications and %
|
||||||
|
tables of applications - \LaTeX-Klassen und -Pakete zum Setzen schöner %
|
||||||
|
Bewerbungsmappen und einer Übersichtstabelle zur Dokumentation der %
|
||||||
|
Bewerbungsversuche}, %
|
||||||
|
pdfsubject = {}, %
|
||||||
|
pdfkeywords = {LaTeX,CTAN,applications,bewerbungen,cv,lebenslauf,arge,Agentur für Arbeit}, %
|
||||||
|
pdfauthor = {Andr\'e Hilbig}, %
|
||||||
|
colorlinks = true, %
|
||||||
|
hypertexnames = true, %
|
||||||
|
linkcolor=blau, %
|
||||||
|
filecolor=orange, %
|
||||||
|
citecolor=blau, %
|
||||||
|
menucolor=orange, %
|
||||||
|
urlcolor=orange, %
|
||||||
|
breaklinks=true %
|
||||||
|
}
|
||||||
|
|
||||||
|
\usepackage{graphics,graphicx,textcomp}
|
||||||
|
\usepackage{placeins,float,caption,prettyref}
|
||||||
|
\usepackage{pdfpages,listings,xspace}
|
||||||
|
\usepackage{amssymb,multicol,pdflscape}
|
||||||
|
\usepackage[german=guillemets]{csquotes}
|
||||||
|
\newrefformat{sec}{Abschnitt\,\ref{#1}, S.\,\pageref{#1}}
|
||||||
|
\newrefformat{paket}{Paket~\ref{#1}, S.\,\pageref{#1}}
|
||||||
|
\newrefformat{klasse}{Klasse~\ref{#1}, S.\,\pageref{#1}}
|
||||||
|
\newrefformat{fig}{Abb.\,\ref{#1}}
|
||||||
|
\newrefformat{tab}{Tab.\,\ref{#1}}
|
||||||
|
\newrefformat{bsp}{Bsp.\,\ref{#1}, S.\,\pageref{#1}}
|
||||||
|
\newcommand{\refMacro}[1]{Makro \texttt{\textbackslash#1}, S.\,\pageref{#1}}
|
||||||
|
\DeclareFloatingEnvironment[name={Bsp.},
|
||||||
|
listname={Beispielverzeichnis}, within=section]{example}
|
||||||
|
\floatstyle{ruled}
|
||||||
|
\restylefloat{example}
|
||||||
|
\NewDocumentEnvironment{beispiel}{o o m}{
|
||||||
|
\begin{example}[ht!]
|
||||||
|
\centering
|
||||||
|
\vspace{0.2cm}
|
||||||
|
\IfNoValueTF{#2}{
|
||||||
|
\caption{#3}
|
||||||
|
}{
|
||||||
|
\caption[#2]{#3}
|
||||||
|
}
|
||||||
|
}{
|
||||||
|
\IfNoValueTF{#1}{
|
||||||
|
\label{\theexample}
|
||||||
|
}{
|
||||||
|
\label{#1}
|
||||||
|
}
|
||||||
|
\vspace{0.2cm}
|
||||||
|
\end{example}
|
||||||
|
}
|
||||||
|
\DisableCrossrefs
|
||||||
|
\makeatletter
|
||||||
|
\makeatother
|
||||||
|
\lstset{ %
|
||||||
|
language=[LaTeX]TeX,
|
||||||
|
basicstyle=\small,
|
||||||
|
numbers=left,
|
||||||
|
numberstyle=\footnotesize,
|
||||||
|
stepnumber=1,
|
||||||
|
numbersep=5pt,
|
||||||
|
backgroundcolor=\color{Peach!30!white},
|
||||||
|
showspaces=false,
|
||||||
|
showstringspaces=false,
|
||||||
|
showtabs=false,
|
||||||
|
frame=single,
|
||||||
|
tabsize=2,
|
||||||
|
resetmargins=true,
|
||||||
|
captionpos=b,
|
||||||
|
title={},
|
||||||
|
caption={},
|
||||||
|
breaklines=true,
|
||||||
|
breakautoindent=true,
|
||||||
|
prebreak=\mbox{ $\curvearrowright$},
|
||||||
|
postbreak=\mbox{$\rightsquigarrow$ },
|
||||||
|
linewidth=\columnwidth,
|
||||||
|
breakatwhitespace=true,
|
||||||
|
numberstyle=\tiny\color{gray},
|
||||||
|
keywordstyle=\color{OliveGreen}\textbf,
|
||||||
|
commentstyle=\color{gray}\itshape,
|
||||||
|
stringstyle=\color{mauve},
|
||||||
|
morekeywords={
|
||||||
|
minisec, subsection, glqq, grqq, euro, Name, Vorname, Street,
|
||||||
|
Plz, Stadt, MeinBeruf, EMail, Tel, Mobile, Sta, GebDatum, ID,
|
||||||
|
Anhang, includepdf, includepdfmerge, cventry, cvlistitem,
|
||||||
|
cvlanguage, definecolor, maketitle, makePerson, cp, ln, mkdir,
|
||||||
|
todayOrt, todayDatum,
|
||||||
|
},
|
||||||
|
literate=%
|
||||||
|
{Ö}{{\"O}}1
|
||||||
|
{Ä}{{\"A}}1
|
||||||
|
{Ü}{{\"U}}1
|
||||||
|
{ß}{\ss}2
|
||||||
|
{ü}{{\"u}}1
|
||||||
|
{ä}{{\"a}}1
|
||||||
|
{ö}{{\"o}}1
|
||||||
|
{»}{{\frqq}}4
|
||||||
|
{«}{{\flqq}}4
|
||||||
|
{~}{$\sim$}1
|
||||||
|
}
|
||||||
|
|
||||||
|
\xspaceaddexceptions{\guillemotright,\guillemotleft}
|
||||||
|
|
||||||
|
\CheckSum{0}
|
||||||
|
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
\title{\LaTeX-classes and -packages for typesetting nice applications and
|
||||||
|
tables of applications\newline\ \newline
|
||||||
|
\LaTeX-Klassen und -Pakete zum Setzen schöner Bewerbungsmappen und einer
|
||||||
|
Übersichtstabelle zur Dokumentation der Bewerbungsversuche}
|
||||||
|
\author{Andr\'e Hilbig \\ \texttt{mail@andrehilbig.de} \\
|
||||||
|
\url{https://git.andrehilbig.de/ahilbig/vorlagebewerbung}}
|
||||||
|
\date{2022-01-17}
|
||||||
|
\maketitle
|
||||||
|
\begin{abstract}
|
||||||
|
\foreignlanguage{english}{
|
||||||
|
This project has the aim to provide packages and classes for
|
||||||
|
typesetting an application with titlepage, letter, cv and
|
||||||
|
additional documents in just one document. Also there is a class
|
||||||
|
for printing a table with the latest applications that can be
|
||||||
|
shown to the german authorities. The data of the applications can
|
||||||
|
be edited in a simple csv file.
|
||||||
|
}
|
||||||
|
|
||||||
|
Dieses Projekt hat das Ziel, Pakete und Klassen zum Setzen von
|
||||||
|
Bewerbungsmappen mit Titelseite, Brief, Lebenslauf und
|
||||||
|
zusätzlichen Dokumenten bereitzustellen. Außerdem gibt es eine
|
||||||
|
Klasse zum Setzen einer Tabelle mit den aktuellen
|
||||||
|
Bewerbungsversuchen, die der Agentur für Arbeit vorgelegt werden kann. Die
|
||||||
|
Daten der Bewerbungsversuche werden in einer simplen csv-Datei
|
||||||
|
verwaltet.
|
||||||
|
\end{abstract}
|
||||||
|
\begin{multicols}{2}
|
||||||
|
\tableofcontents
|
||||||
|
\end{multicols}
|
||||||
|
\vrule
|
||||||
|
\begin{multicols}{2}
|
||||||
|
\listofexample
|
||||||
|
\end{multicols}
|
||||||
|
\clearpage
|
||||||
|
\begingroup
|
||||||
|
\selectlanguage{english}
|
||||||
|
\section{Introduction}
|
||||||
|
There are a lot of great projects for writing documents of an application in \LaTeX. But they
|
||||||
|
all got two problems you will have to find a workaround for. A normal application has a
|
||||||
|
titlepage, a letter, a cv and some additional documents like your diploma. There is a package
|
||||||
|
or class in \LaTeX\ for every part -- but in the end your application is split up in at least
|
||||||
|
three documents you'll have to merge. Also you'll have to put the data of yourself and the
|
||||||
|
company you're writing to in every document in a different way.
|
||||||
|
|
||||||
|
It's a little bit complicated to merge the functionality of all the different projects into one
|
||||||
|
document on \TeX-level, because you can not load different classes at one time. So I thought
|
||||||
|
of rewriting some of the packages. Mainly I want to thank \citeauthorfull{komacv} for his great
|
||||||
|
work. I simply copied his class and packages and rewrote the class to use it as a package. So
|
||||||
|
all the credit for the cv belongs to him.
|
||||||
|
|
||||||
|
If you loose your job in germany, you'll have to report to the authorities every application you
|
||||||
|
wrote to get the small charity. Otherwise the charity gets smaller. I wanted to have a
|
||||||
|
document that \enquote{knows} all your latest applications and throws out a table for that
|
||||||
|
issue. Of course that is a job for the great \citetitle{datatool} project of
|
||||||
|
\citeauthorfull{datatool}.
|
||||||
|
|
||||||
|
Last but not least there is the great \citetitle{scrlttr2} class for writing letters by
|
||||||
|
\citeauthorfull{scrlttr2}. I use it to print the letter within the document and added the
|
||||||
|
possibility to show a titlepage.
|
||||||
|
|
||||||
|
\subsection{Thanks}
|
||||||
|
Of course without the \verb|CTAN|-project none of this could have happened.
|
||||||
|
|
||||||
|
Special thanks goes to these three people for their awesome work:
|
||||||
|
\begin{itemize}
|
||||||
|
\item \citeauthorfull{scrlttr2} \autocite{scrlttr2},
|
||||||
|
\item \citeauthorfull{komacv} \autocite{komacv} and
|
||||||
|
\item \citeauthorfull{datatool} \autocite{datatool}.
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
\subsection{Hint}
|
||||||
|
This documentation is mainly written in german, because the package itself provides only
|
||||||
|
german macros. Aside from that it was designed to get applications and documentation for the
|
||||||
|
german authorities working together. Maybe the work could be usefull for non german too. Then
|
||||||
|
someone should write a wrapper for my macros -- in fact I did not touch so much of the
|
||||||
|
koma-internals of \verb|scrlttr2| or \verb|komacv|, perhaps it is not that bigger work.
|
||||||
|
|
||||||
|
I think the authorities in Germany demand very much work of a person potentially not
|
||||||
|
responsible for her/his situation. You get only a very small charity. So you have to write a
|
||||||
|
huge amount of applications -- even to jobs you and the companies don't care about you applying
|
||||||
|
for. And of course you can not be trusted to really write applications like hell. Because of
|
||||||
|
that you'll have to show a documentation of all your applications to get your money. I thought
|
||||||
|
we'd need a \LaTeX-package to automate this stuff and so I made it.
|
||||||
|
\endgroup
|
||||||
|
\selectlanguage{ngerman}
|
||||||
|
|
||||||
|
\section{Änderungen}
|
||||||
|
\begin{description}
|
||||||
|
\item[v1.0] Veröffentlichung
|
||||||
|
\item[v1.1]
|
||||||
|
\begin{itemize}
|
||||||
|
\item Leerzeichen in Anrede hinzugefügt
|
||||||
|
\item Kodierungs- und Spracheinstellungen aus der Klasse entfernt
|
||||||
|
\item Leerzeichenproblematiken entfernt
|
||||||
|
\item Satz in der Dokumentation überarbeitet
|
||||||
|
\item Kontaktdaten in den READMEs korrigiert
|
||||||
|
\end{itemize}
|
||||||
|
\end{description}
|
||||||
|
|
||||||
|
\section{Installation}
|
||||||
|
\subsection{Automatische Installation}
|
||||||
|
Die Pakete sind über \verb|CTAN| verfügbar und können so über den \verb|tlmgr| bzw. die
|
||||||
|
Paketverwaltung des Betriebssystems\footnote{Leider halten viele Distributionen ihre
|
||||||
|
\LaTeX-Installationen nicht aktuell. Daher wird empfohlen die direkten Quellen, etwa von
|
||||||
|
|texlive|, zu verwenden.} abgerufen werden.
|
||||||
|
|
||||||
|
\subsection{Manuelle Installation}
|
||||||
|
Falls eine automatisierte Installation nicht möglich ist, können die Pakete auch manuell
|
||||||
|
installiert werden. Es wird jedoch empfohlen, eine aktuelle Distribution zu verwenden, etwa
|
||||||
|
\verb|texlive2015|. Für Versionen davor kann keine Kompatibilität gewährleistet werden. Zur
|
||||||
|
Installation werden die Dateien \verb|bewerbung.ins| und \verb|bewerbung.dtx| benötigt.
|
||||||
|
Ergänzend können die Beispieldateien \verb|bewerbung.tex|, \verb|argetabelle.tex| und
|
||||||
|
\verb|Foto.pdf| sinnvoll sein.
|
||||||
|
|
||||||
|
\begin{itemize}
|
||||||
|
\item Erzeugung der Paket- und Klassendateien
|
||||||
|
|
||||||
|
\begin{lstlisting}[gobble=9,numbers=none,language=bash,%
|
||||||
|
linewidth=0.7\textwidth,resetmargins=false]
|
||||||
|
latex bewerbung.dtx
|
||||||
|
\end{lstlisting}
|
||||||
|
\item Die erzeugten Paket- (*.sty) und Klassendateien (*.cls) und die Datei
|
||||||
|
\verb|titlepage.inc| müssen in einem für \TeX\ lesbarem Verzeichnis platziert werden. Für
|
||||||
|
eine lokale Installation bietet sich dafür
|
||||||
|
|
||||||
|
\verb|~/texmf/tex/latex/bewerbung/|
|
||||||
|
|
||||||
|
an.
|
||||||
|
\item Außerdem wird die Datei \verb|config.inc| erzeugt. Diese Datei stellt die
|
||||||
|
Konfiguration der jeweiligen Bewerbung dar. Daher sollte diese Datei immer in das jeweils
|
||||||
|
aktuelle Verzeichnis kopiert werden (vgl. \prettyref{sec:struktur}).
|
||||||
|
\item Aktualisieren der \TeX-Distribution
|
||||||
|
|
||||||
|
\begin{lstlisting}[gobble=9,numbers=none,language=bash,%
|
||||||
|
linewidth=0.7\textwidth,resetmargins=false]
|
||||||
|
texhash
|
||||||
|
\end{lstlisting}
|
||||||
|
\item Erzeugen der Dokumentation
|
||||||
|
|
||||||
|
\begin{lstlisting}[gobble=9,numbers=none,language=bash,%
|
||||||
|
linewidth=0.7\textwidth,resetmargins=false]
|
||||||
|
latexmk -pdf bewerbung.dtx
|
||||||
|
\end{lstlisting}
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
\section{Benutzung}\label{sec:benutzung}
|
||||||
|
\subsection{Konfigurationen}\label{sec:konfiguration}
|
||||||
|
\subsubsection{Eigene Person}\label{sec:eigeneperson}
|
||||||
|
Bei der Erstellung wurde die Datei \verb|config.inc| erzeugt. In dieser Datei werden die
|
||||||
|
persönlichen Informationen konfiguriert. Die Datei wird beim Erstellen einer
|
||||||
|
Bewerbungsmappe (vgl. \prettyref{sec:bewerbungsmappe}) automatisch eingebunden und ist
|
||||||
|
notwendig.
|
||||||
|
|
||||||
|
Die folgenden Makros definieren für eine \textit{konkrete} Bewerbung die persönlichen
|
||||||
|
Informationen. Als jeweils kleingeschriebenes Makro existiert ein Befehl, der im Dokument
|
||||||
|
verwendet werden kann, um diese Information zu drucken. Z.\,B. könnte |\name| zu
|
||||||
|
\enquote{Hilbig} führen.
|
||||||
|
|
||||||
|
\DescribeMacro{\Vorname}
|
||||||
|
\DescribeMacro{\Name}
|
||||||
|
\DescribeMacro{\fullname}
|
||||||
|
Durch |\Vorname|\marg{Vorname} und |\Name|\marg{Vorname} können Vor- und Nachname
|
||||||
|
festgelegt werden. Das Makro |\fullname|\oarg{Reihenfolge} wird aus |\Name| und
|
||||||
|
|\Vorname| erstellt und gibt bei Verwendung ohne Argument den vollen Namen inklusive des
|
||||||
|
Vornamens aus, z.\,B. \enquote{André Hilbig}. Soll die Reihenfolge von Vor- und Nachname
|
||||||
|
durch ein Komma getrennt ausgegeben werden, so sollte |\fullname[verkehrt]| gewählt
|
||||||
|
werden: \enquote{Hilbig, André}.
|
||||||
|
|
||||||
|
\DescribeMacro{\Street}
|
||||||
|
\DescribeMacro{\Plz}
|
||||||
|
\DescribeMacro{\Stadt}
|
||||||
|
Über |\Street|\marg{Straße Hnr.} kann die Straße mit Hausnummer festgelegt
|
||||||
|
werden.\footnote{Mit Absicht wurde hier aus Kompatibilitätsgründen die englische
|
||||||
|
Schreibweise für das Makro gewählt, da \textit{Straße} bzw. \textit{Strasse} zu
|
||||||
|
Kompatibilitätsproblemen führten.}
|
||||||
|
Mit |\Plz|\marg{Postleitzahl} und |\Stadt|\marg{Stadt} können Postleitzahl und Ort
|
||||||
|
festgelegt werden.
|
||||||
|
|
||||||
|
\DescribeMacro{\anschrift}
|
||||||
|
Aus |\Street|, |\Plz| und |\Stadt| wird die Anschrift zusammengesetzt und bei Angabe von
|
||||||
|
|\anschrift|\oarg{Umbruch} ohne optionalem Argument mit einem Umbruch nach der Straße
|
||||||
|
ausgegeben. Wird |\anschrift[none]| gewählt, wird die Straße durch ein Komma vom Ort
|
||||||
|
getrennt.
|
||||||
|
|
||||||
|
\DescribeMacro{\MeinBeruf}
|
||||||
|
Über |\MeinBeruf|\marg{Berufsbezeichnung} kann die eigene Berufsbezeichnung festgelegt
|
||||||
|
werden. Diese wird etwa im Lebenslauf und auf der Titelseite verwendet. Sie stellt jedoch
|
||||||
|
nicht die Bezeichnung der zu bewerbenden Stelle dar. Diese wird gesondert
|
||||||
|
(vgl. \prettyref{sec:bewerbung}) angegeben.
|
||||||
|
|
||||||
|
\DescribeMacro{\Tel}
|
||||||
|
\DescribeMacro{\Mobile}
|
||||||
|
\DescribeMacro{\EMail}
|
||||||
|
Über
|
||||||
|
|
||||||
|
\noindent|\Tel|\marg{Telefonnummer},
|
||||||
|
|
||||||
|
\noindent|\Mobile|\marg{Mobiltelefonnummer} und
|
||||||
|
|
||||||
|
\noindent|\EMail|\marg{E-Mail}
|
||||||
|
|
||||||
|
können Telefonnumer, zusätzliche Mobilnummer und eine E"~Mailadresse
|
||||||
|
angegeben werden.
|
||||||
|
|
||||||
|
\DescribeMacro{\Sta}
|
||||||
|
\DescribeMacro{\GebDatum}
|
||||||
|
Der Befehl |\Sta|\marg{Staatsangehörigkeit} legt die Staatsangehörigkeit fest und
|
||||||
|
|\GebDatum|\marg{Geburtsdatum} definiert das Geburtsdatum.
|
||||||
|
|
||||||
|
\DescribeMacro{\LebenslaufTitel}
|
||||||
|
Der Befehl |\LebenslaufTitel|\marg{Titel} ändert den Titel des Lebenslauf. Standardmäßig
|
||||||
|
wird \textit{Curriculum Vitae} verwendet. So kann bspw. auch \textit{Lebenslauf} als Titel
|
||||||
|
gesetzt werden.
|
||||||
|
|
||||||
|
\DescribeMacro{\ID}
|
||||||
|
Durch das Makro |\ID|\marg{Identifikation} wird die Nummer der aktuellen Bewerbung
|
||||||
|
angegeben. Damit werden die Daten der aktuellen Bewerbung aus einer Datei ausgelesen.
|
||||||
|
Diese Datei enthält pro Zeile eine Bewerbung, die durch einen Eintrag \textit{ID}
|
||||||
|
identifiziert wird. Die mit dem Makro eingegebene Identifikation stellt entweder die
|
||||||
|
gemeinte \textbf{Zeile} oder die Bewerbung mit der entsprechenden \textbf{ID} (vgl.
|
||||||
|
\prettyref{sec:bewerbung}) dar.
|
||||||
|
|
||||||
|
Der Klasse |bewerbung| kann die Option |idPlain| übergeben werden. Dann wird nach
|
||||||
|
der exakten Übereinstimmung der hier notierten Identifikation mit dem Feld ID gesucht.
|
||||||
|
Dies muss keine Zahl sein. Wird keine Option übergeben wird die notierte Zahl als
|
||||||
|
Zeilennummer startend bei 0 interpretiert.
|
||||||
|
|
||||||
|
\DescribeMacro{\Anhang}\label{Anhang}
|
||||||
|
An zwei Stellen in einer Bewerbung werden angehangene Dokumente ausgewiesen: Titelseite
|
||||||
|
und Anschreiben. Dabei handelt es sich um Anschreiben und Lebenslauf bzw. nur den
|
||||||
|
Lebenslauf. Werden zusätzliche Dokumente angehangen sollten diese mit
|
||||||
|
|\Anhang|\marg{Liste}\marg{Aufzählung} hinzugefügt werden. Allerdings müssen die Dokumente
|
||||||
|
im Makro doppelt angegeben werden. Zuerst werden sie in einer Liste mit einem Punkt endend
|
||||||
|
und getrennt durch |\newline| notiert. Danach als Aufzählung mit einem vorangestellten
|
||||||
|
|\item|. So wird die korrekte Darstellung in Titelseite und Anschreiben sichergestellt
|
||||||
|
(vgl. \prettyref{bsp:konfiguration}).
|
||||||
|
|
||||||
|
\textit{Hinweis:} Die hier angegebenen Dokumente werden nicht automatisch eingebunden,
|
||||||
|
sondern sollten manuell hinzugefügt werden. Es werden lediglich die angegebenen
|
||||||
|
Bezeichnungen als Text eingefügt.
|
||||||
|
|
||||||
|
\DescribeMacro{\todayOrt}
|
||||||
|
\DescribeMacro{\todayDatum}
|
||||||
|
Der Lebenslauf wird typischerweise unter Ausweisung eines Ortes und Datums unterschrieben.
|
||||||
|
Im Anschreiben wird ebenfalls das aktuelle Datum ausgewiesen. Um den Ort und dieses Datum
|
||||||
|
zu konfigurieren stehen die Makros |\todayOrt|\marg{Ort} und |\today|Datum\marg{Datum} zur
|
||||||
|
Verfügung.
|
||||||
|
|
||||||
|
Werden diese Werte nicht gesetzt, so wird automatisch |\stadt| als Ort und |\today| als
|
||||||
|
Datum verwendet.
|
||||||
|
|
||||||
|
\begin{beispiel}[bsp:konfiguration][Konfiguration der persönlichen Informationen]{%
|
||||||
|
Beispiel einer möglichen Konfiguration der persönlichen Informationen}
|
||||||
|
\begin{lstlisting}[gobble=15,caption={}]
|
||||||
|
\Name{Musterfrau}
|
||||||
|
\Vorname{Maja}
|
||||||
|
\Street{Musterstraße 9}
|
||||||
|
\Plz{45878}
|
||||||
|
\Stadt{Musterstadt}
|
||||||
|
\MeinBeruf{Dipl.-Pädagogin (Univ.)}
|
||||||
|
\EMail{mail@email.com}
|
||||||
|
\Tel{03131~465488}
|
||||||
|
\Mobile{01534~6324524353}
|
||||||
|
\Sta{deutsch}
|
||||||
|
\GebDatum{31.02.1990}
|
||||||
|
\todayOrt{Musterstadt}
|
||||||
|
\todayDatum{12.12.2012}
|
||||||
|
|
||||||
|
\ID{47}
|
||||||
|
\Anhang{Abiturzeugnis.\newline Diplomzeugnis.}{%
|
||||||
|
\item Abiturzeugnis
|
||||||
|
\item Diplomzeugnis
|
||||||
|
}
|
||||||
|
\end{lstlisting}
|
||||||
|
\end{beispiel}
|
||||||
|
|
||||||
|
\subsubsection[Bewerbungen]{Bewerbungsversuche}\label{sec:bewerbung}
|
||||||
|
Sämtliche zu verwaltenden Bewerbungen werden in einer csv-Datei abgespeichert. Vor allem die
|
||||||
|
Tabelle zur Dokumentation (vgl. \prettyref{sec:dokutabelle}) verwendet sämtliche Einträge.
|
||||||
|
Jedoch wird auch die jeweilige Anschrift etc. der Firma in der Bewerbungsmappe (vgl.
|
||||||
|
\prettyref{sec:bewerbungsmappe}) daraus ausgelesen. Die Syntax dieser Datei muss der im
|
||||||
|
folgenden beschriebenen entsprechen.
|
||||||
|
|
||||||
|
Die Datei enthält in der ersten Zeile die Bezeichner aller Spalten jeweils getrennt durch
|
||||||
|
ein Komma. Es ist die hier aufgeführte Schreibweise \textit{exakt} genauso zu
|
||||||
|
verwenden:
|
||||||
|
\begin{lstlisting}[%
|
||||||
|
numbers=none,gobble=11,%
|
||||||
|
language=bash,%
|
||||||
|
keywordstyle=\color{black},%
|
||||||
|
basicstyle={\tiny}%
|
||||||
|
]
|
||||||
|
ID,KW,Datum,Firma,FirmaAnrede,FirmaName,Str,PLZ,Ort,Stelle,Rueckmeldung,Sonstiges
|
||||||
|
\end{lstlisting}
|
||||||
|
|
||||||
|
\paragraph{Erläuterung der Spalten:}
|
||||||
|
\DescribeMacro{ID}
|
||||||
|
Jede Bewerbung wird in einer Zeile notiert. Dabei erhält jede Bewerbung zusätzlich einen
|
||||||
|
Identifikationsbezeichner, der jedoch leer gelassen werden kann. In der Bewerbungsmappe
|
||||||
|
erfolgt die Zuordnung einer konkreten Bewerbung entweder über die Zeile oder der hier
|
||||||
|
hinterlegten Identifikation.
|
||||||
|
|
||||||
|
\DescribeMacro{KW}
|
||||||
|
\DescribeMacro{Datum}
|
||||||
|
Die Kalendarwoche muss angegeben werden, um die Dokumentationstabelle zur Vorlage bei der
|
||||||
|
Agentur für Arbeit zu formatieren. Das Datum der Bewerbung wird sowohl in der Tabelle als
|
||||||
|
auch der Bewerbungsmappe benutzt.
|
||||||
|
|
||||||
|
\DescribeMacro{Firma}
|
||||||
|
\DescribeMacro{FirmaAnrede}
|
||||||
|
\DescribeMacro{FirmaName}
|
||||||
|
Im Anschreiben setzt sich die Anschrift und Anrede jeweils aus |FirmaAnrede| und |FirmaName|
|
||||||
|
zusammen. Dabei kann die Anrede mit Herr oder Frau erfolgen. Theoretisch sind auch beliebige
|
||||||
|
Werte möglich. Dann sollte jedoch die automatische Konfiguration der Anrede im Anschreiben
|
||||||
|
angepasst werden (vgl. \prettyref{sec:anschreiben}). Im Feld |Firma| kann die Bezeichnung
|
||||||
|
der Firma hinterlegt werden.
|
||||||
|
|
||||||
|
\DescribeMacro{Str}
|
||||||
|
\DescribeMacro{PLZ}
|
||||||
|
\DescribeMacro{Ort}
|
||||||
|
Die Postanschrift der Bewerbung kann über |Str|, |PLZ| und |Ort| konfiguriert werden.
|
||||||
|
|
||||||
|
\DescribeMacro{Stelle}
|
||||||
|
Die meisten Bewerbungen haben eine konkrete Stellenbezeichnung, die unter Umständen von der
|
||||||
|
eigenen Berufsbezeichnung abweicht. In |Stelle| kann die Bezeichnung angegeben werden.
|
||||||
|
|
||||||
|
\DescribeMacro{Rueckmeldung}
|
||||||
|
Für die Agentur für Arbeit muss ausgewiesen werden, welche Art von Rückmeldung auf die
|
||||||
|
geschriebene Bewerbung durch den Arbeitgeber erfolgt ist. Dies ist vor allem bei Stellen,
|
||||||
|
die von der Agentur für Arbeit vermittelt wurden, wichtig, da hier die Arbeitgeber teilweise
|
||||||
|
überprüft werden.
|
||||||
|
|
||||||
|
Sinnvolle Werte könnten \enquote{keine Rückmeldung}, \enquote{Absage}, \enquote{Einladung}
|
||||||
|
usw. sein.
|
||||||
|
|
||||||
|
\DescribeMacro{Sonstiges}
|
||||||
|
Ein zusätzliches Feld, das in der Dokumentationstabelle aufgeführt wird, kann hier mit
|
||||||
|
zusätzlichen Hinweisen an die Agentur für Arbeit gefüllt werden.
|
||||||
|
|
||||||
|
\begin{beispiel}[bsp:anschrift][Auflistung der Bewerbungsversuche]{%
|
||||||
|
Beispiel für eine mögliche Auflistung der Bewerbungsversuche}
|
||||||
|
\begin{lstlisting}[language=bash,gobble=13,caption={},stepnumber=1]
|
||||||
|
ID,KW,Datum,Firma,FirmaAnrede,FirmaName,Str,PLZ,Ort,Stelle, Rueckmeldung,Sonstiges
|
||||||
|
2,13,26.09.15,Packisbar GmbH,Frau,Nauti,Traumstraße 19,59888,Traumort,Traumberuf,n,n
|
||||||
|
1,12,14.09.15,Packbar GmbH,Herr,Nubil,Traumstraße 4,59888,Traumort,Traumberuf,n,n
|
||||||
|
\end{lstlisting}
|
||||||
|
\end{beispiel}
|
||||||
|
|
||||||
|
\paragraph{Zusätzliche Hinweise}
|
||||||
|
\begin{description}
|
||||||
|
\item[Datei] Die Datei sollte als |anschrift.csv| benannt werden. Wird ein anderer
|
||||||
|
Dateiname gewünscht, so kann dies über die Option |anschrift| der Klasse |bewerbung|
|
||||||
|
übergeben werden. Sie sollte im selben Verzeichnis wie die zu setzende Bewerbungsmappe
|
||||||
|
platziert werden. Hier kann ein entsprechender logischer Link nützlich sein.
|
||||||
|
\item[Kodierung] Die Datei sollte als |UTF-8| kodiert werden, um Umlaute usw. korrekt
|
||||||
|
darzustellen. Zusätzlich können einzelne Einträge mit doppelten Anführungszeichen
|
||||||
|
markiert werden.
|
||||||
|
\item[GUI] Selbstverständlich können graphische Programme, etwa |libreoffice|, zur
|
||||||
|
Verwaltung dieser Datei verwendet werden. Es zeigte sich jedoch, dass hierbei häufig
|
||||||
|
Kodierungsprobleme entstehen. Daher sollte bei Fehlern die Kodierung per Hand
|
||||||
|
kontrolliert werden.
|
||||||
|
\item[Feldtrenner] Die Spalten bzw. Felder werden standardmäßig über ein Komma getrennt.
|
||||||
|
Entsprechend den Befehlen aus \cite{datatool} ist es sicherlich möglich den Feldtrenner
|
||||||
|
manuell zu ändern. Hier sei auf die entsprechende Dokumentation verwiesen.
|
||||||
|
\end{description}
|
||||||
|
|
||||||
|
\subsubsection{Struktur}\label{sec:struktur}
|
||||||
|
Prinzipiell ist es nicht notwendig eine besondere Verzeichnisstruktur einzuhalten. Allerdings
|
||||||
|
erleichtert es die Arbeit deutlich, wenn einige Dateien und Verzeichnisse am selben Ort
|
||||||
|
liegen. Die folgenden Erläuterungen stellen eine beispielhafte Beschreibung einer sinnvollen
|
||||||
|
Struktur dar.
|
||||||
|
|
||||||
|
\begin{lstlisting}[numbers=none,gobble=9,language=bash]
|
||||||
|
Bewerbungen:
|
||||||
|
|
|
||||||
|
+-----Anhang:
|
||||||
|
|-diplom.pdf
|
||||||
|
|-zeugnis.pdf
|
||||||
|
|
|
||||||
|
+-----bewerbung-Traumjob:
|
||||||
|
|-Anhang -> ../Anhang
|
||||||
|
|-Foto.pdf -> ../Foto.pdf
|
||||||
|
|-anschrift.csv -> ../anschrift.csv
|
||||||
|
|-bewerbung-Traumjob.tex
|
||||||
|
|-config.inc
|
||||||
|
|-Foto.pdf
|
||||||
|
|-anschrift.csv
|
||||||
|
|-argetabelle.tex
|
||||||
|
|-bewerbung.tex
|
||||||
|
|-config.inc
|
||||||
|
\end{lstlisting}
|
||||||
|
|
||||||
|
Durch die symbolischen Links ist es möglich, die globalen Dateien |Foto.pdf| und
|
||||||
|
|anschrift.csv| sowie die Dateien im |Anhang/| praktisch vorzuhalten und Änderungen
|
||||||
|
entsprechend global vornehmen zu können. So kann beispielsweise |argetabelle.tex| immer
|
||||||
|
aktuell gesetzt werden -- dennoch blähen nicht viele einzelne Bewerbungen mit zugehörigen
|
||||||
|
Konfigurationsdateien das Verzeichnis auf.
|
||||||
|
|
||||||
|
\paragraph{Anlegen einer neuen Bewerbung}
|
||||||
|
Sofern exakt diese Struktur gewählt wird, kann ein einfaches Script das Anlegen erleichtern.
|
||||||
|
\begin{lstlisting}[gobble=9,language=bash,title={Datei: \texttt{neueBewerbung.sh}}]
|
||||||
|
#!/bin/bash
|
||||||
|
mkdir -v $1
|
||||||
|
cp -v bewerbung.tex $1/bewerbung-$1.tex
|
||||||
|
cp -v config.inc $1
|
||||||
|
cd $1
|
||||||
|
ln -sv ../Anhang ./Anhang
|
||||||
|
ln -sv ../Foto.jpg ./Foto.jpg
|
||||||
|
ln -sv ../Foto.pdf ./Foto.pdf
|
||||||
|
ln -sv ../anschrift.csv ./anschrift.csv
|
||||||
|
cd ..
|
||||||
|
\end{lstlisting}
|
||||||
|
Das Script erwartet als Argument einen eindeutigen Bezeichner für die neue Bewerbung.
|
||||||
|
\textit{Vorsicht:} Bereits existierende Dateien werden überschrieben.
|
||||||
|
|
||||||
|
\begin{lstlisting}[gobble=9,language=bash,numbers=none]
|
||||||
|
./neueBewerbung bewerbung-LatexCompany
|
||||||
|
\end{lstlisting}
|
||||||
|
|
||||||
|
\noindent So würde automatisch ein neues Verzeichnis |bewerbung-LatexCompany| mit allen
|
||||||
|
notwendigen Links angelegt. Außerdem werden aus dem Stammverzeichnis die Dateien
|
||||||
|
|bewerbung.tex| und |config.inc| kopiert und entsprechend umbenannt. Somit können diese im
|
||||||
|
Stammverzeichnis als eine Art Vorlage verwendet werden. In der Konfiguration müssen nun nur
|
||||||
|
noch die |ID| der aktuellen Bewerbung und in der |anschrift.csv| der entsprechende Eintrag
|
||||||
|
eingetragen werden.
|
||||||
|
|
||||||
|
Das Script gehört zum Umfang dieses Pakets und kann somit auch über |CTAN| bezogen werden.
|
||||||
|
|
||||||
|
\subsection[Bewerbungsmappe]{Erstellung einer Bewerbungsmappe}\label{sec:bewerbungsmappe}
|
||||||
|
Um eine neue Bewerbungsmappe anzulegen, wird eine \TeX-Datei mit der Klasse |bewerbung|
|
||||||
|
angelegt. Der Klasse können folgende Optionen übergeben werden:
|
||||||
|
\begin{description}
|
||||||
|
\item{|anschrift|} Hier kann eine alternative Datei zur Angabe der Bewerbungsversuche
|
||||||
|
|anschrift.csv| (vgl. \prettyref{sec:bewerbung}) angegeben werden, z.\,B.
|
||||||
|
|anschrift=versuche.csv|.
|
||||||
|
\item{|lebenslaufColor|} Hier wird das Farbthema des Lebenslaufs festgesetzt. Die
|
||||||
|
verfügbaren Themen entsprechen denen der |komacv|-Klasse \autocite{komacv}. Der Lebenslauf
|
||||||
|
wurde für |light-gray| optimiert.
|
||||||
|
\item{|lebenslaufStyle|} Hier kann der Stil des Lebenslaufs angegeben werde. Standardmäßig
|
||||||
|
wird |classic| verwendet. Dieser Stil wurde leicht an den aus |komacv| angepasst. Außerdem
|
||||||
|
wurden die Stile |casual| und |old-style| aus |komacv| ohne Bearbeitung importiert
|
||||||
|
\autocite[vgl.][]{komacv}.
|
||||||
|
\item{|idPlain|} In der Datei |anschrift| müssen bereits die aktuellen Daten zu
|
||||||
|
dieser Bewerbung vorliegen. Über den Befehl |\ID|\marg{Identifikation} kann die zu
|
||||||
|
verwendende Bewerbung angegeben werden (vgl. \prettyref{sec:konfiguration}). Durch die
|
||||||
|
Angabe der Option |idPlain| kann erzwungen werden, dass nach dem exakten Eintrag in
|
||||||
|
\textbf{ID} zur Verknüpfung gesucht werden soll (vgl. \prettyref{sec:bewerbung}).
|
||||||
|
Ansonsten wird die angegebene Nummer als Zeilennummer interpretiert. Dabei wird die erste
|
||||||
|
Zeile als 0 gewertet.
|
||||||
|
\end{description}
|
||||||
|
|
||||||
|
\begin{beispiel}[bsp:documentclass][Laden der Klasse \texttt{bewerbung}]{%
|
||||||
|
Beispiel für die Angabe der Klasse bewerbung}
|
||||||
|
\begin{lstlisting}[gobble=11]
|
||||||
|
\documentclass[%
|
||||||
|
lebenslaufColor=light-gray,%
|
||||||
|
lebenslaufStyle=classic,%
|
||||||
|
idPlain%
|
||||||
|
]{bewerbung}
|
||||||
|
\end{lstlisting}
|
||||||
|
|
||||||
|
\begin{minipage}{\textwidth}
|
||||||
|
Sinnvoll sind gerade für den Einsatz im deutschen Sprachraum folgende Pakete, die in Version
|
||||||
|
v1.1 aus der Klasse entfernt wurden, um eine breitere Unterstützung bzgl. Sprach- und
|
||||||
|
Kodierungswahl zu ermöglichen (Dank an \textsc{Kohm} für die Hinweise).
|
||||||
|
\end{minipage}
|
||||||
|
|
||||||
|
\begin{lstlisting}[gobble=11]
|
||||||
|
\usepackage[utf8]{inputenc}
|
||||||
|
\usepackage[T1]{fontenc}
|
||||||
|
\usepackage[ngerman]{babel}
|
||||||
|
\end{lstlisting}
|
||||||
|
\end{beispiel}
|
||||||
|
|
||||||
|
Im selben Verzeichnis sollten eine |config.inc| (vgl. \prettyref{sec:eigeneperson}) und eine
|
||||||
|
|anschrift.csv| (vgl. \prettyref{sec:bewerbung}) platziert werden -- ggfs. als Link. Außerdem
|
||||||
|
wird die Datei |Foto.pdf| als einzubindendes Bild in der Titelseite verwendet. Entsprechende
|
||||||
|
Bilder in anderen Formaten müssen demnach umgewandelt werden, z.\,B. mit dem Tool
|
||||||
|
ImageMagick\footnote{\url{http://imagemagick.org/script/index.php} [zuletzt besucht
|
||||||
|
2015-07-09]}:
|
||||||
|
|
||||||
|
\begin{lstlisting}[numbers=none,gobble=9,language=bash]
|
||||||
|
convert Bild.jpg Foto.pdf
|
||||||
|
\end{lstlisting}
|
||||||
|
|
||||||
|
\subsubsection{Titelseite}\label{sec:titelseite}
|
||||||
|
Die Titelseite wird automatisch konfiguriert und eingefügt. Sämtliche notwendigen Definitionen
|
||||||
|
werden geladen.
|
||||||
|
\begin{beispiel}[bsp:titelseite]{Beispiel für eine Titelseite}
|
||||||
|
\fbox{\includegraphics[page=1,scale=0.35]{bewerbung-example.pdf}}
|
||||||
|
\end{beispiel}
|
||||||
|
|
||||||
|
\subsubsection{Anschreiben}\label{sec:anschreiben}
|
||||||
|
Das Anschreiben einer Bewerbung stellt einen Brief an den potentiellen Arbeitgeber dar. Je
|
||||||
|
ordentlicher dieser Brief gesetzt ist, desto angenehmer fällt der Personalchefin das Lesen und
|
||||||
|
desto eher fallen wichtige Inhalte auf.
|
||||||
|
|
||||||
|
\DescribeEnv{anschreiben}
|
||||||
|
Innerhalb der Umgebung |{anschreiben}|\oarg{Anrede}\oarg{Enlarge} wird das Anschreiben
|
||||||
|
notiert. Die gedruckte Anrede wird automatisch aus den Inhalten der Felder |firmaAnrede|
|
||||||
|
|firmaName| generiert. Die Anpassung an den Genus der Anrede erfolgt über die Wahl von
|
||||||
|
\enquote{Frau} oder \enquote{Mann} in |firmaAnrede|. Alternativ kann das erste optionale
|
||||||
|
Argument mit dem richtigen Terminus von \enquote{geehrt} gesetzt werden. Dies kann hilfreich
|
||||||
|
sein, wenn die Anrede beispielsweise aus \enquote{Herr Dr.} besteht.
|
||||||
|
|
||||||
|
Als Faustregel für ein gutes Anschreiben wird häufig genannt, dass nicht mehr als eine DinA4
|
||||||
|
Seite verwendet werden sollte. Manchmal wird für einen einzelnen Satz eine neue Seite
|
||||||
|
angefangen, obwohl noch genügend leerer Platz zur Verfügung stünde. Hier versucht \LaTeX\
|
||||||
|
einen Fließtext zu optimieren. Um dem entgegenzuwirken kann als zweites optionales Argument
|
||||||
|
eine Größeneinheit, z.\,B. |2em|, angegeben werden. Dann wird \LaTeX\ versuchen das
|
||||||
|
Anschreiben um die angegebene Länge zu strecken.
|
||||||
|
|
||||||
|
Alle Optionen an |\documentclass{bewerbung}|, die nicht an diese Klasse gerichtet sind, werden
|
||||||
|
automatisch an |scrlttr2| \autocite[vgl.][]{scrlttr2} weitergereicht. Ansonsten werden
|
||||||
|
standardmäßig folgende Optionen geladen:
|
||||||
|
\begin{lstlisting}[gobble=9]
|
||||||
|
DIN, pagenumber=botright, backaddress=true, parskip=half,
|
||||||
|
fromalign=left, fromemail=true, fromfax=true,
|
||||||
|
fromphone=true, fromurl=false, fromalign=right,
|
||||||
|
fromlogo=false, fromrule=true, foldmarks=true,
|
||||||
|
paper=a4, fontsize=10pt,enlargefirstpage=true, firstfoot=false
|
||||||
|
\end{lstlisting}
|
||||||
|
Dadurch werden automatisch die deutschen DIN-Normen inklusive Schnittkanten gewählt. Als
|
||||||
|
Betreff wird »Bewerbung als |\meinBeruf|« gewählt. Über das Makro
|
||||||
|
|\setkomavar{subject}|\marg{Betreffstext} kann die Betreffszeile geändert werden, sofern hier
|
||||||
|
ein anderer Betreff gewünscht wird.
|
||||||
|
|
||||||
|
Sollten zusätzlich zum Lebenslauf weitere Anhänge angehangen werden, können diese mit dem
|
||||||
|
\refMacro{Anhang} in |config.inc| ausgewiesen werden.
|
||||||
|
|
||||||
|
\begin{beispiel}[bsp:anschreiben][Anschreiben]{Beispiel für ein Anschreiben}
|
||||||
|
\begin{lstlisting}[gobble=11]
|
||||||
|
\begin{anschreiben}
|
||||||
|
Hier kommt das Anschreiben hin
|
||||||
|
\end{anschreiben}
|
||||||
|
\end{lstlisting}
|
||||||
|
\fbox{\includegraphics[page=2,scale=0.4]{bewerbung-example.pdf}}
|
||||||
|
\end{beispiel}
|
||||||
|
\FloatBarrier
|
||||||
|
|
||||||
|
\subsubsection{Lebenslauf}\label{sec:lebenslauf}
|
||||||
|
Jedem guten Bewerbungsschreiben sollte ein tabellarischer Lebenslauf angefügt werden.
|
||||||
|
Innerhalb dieses Dokuments wird nicht erläutert, welche Inhalte dort hinein gehören. Die
|
||||||
|
technische Realisierung basiert nahezu vollkommen auf der Arbeit von \citeauthorfull{komacv}
|
||||||
|
in \citetitle{komacv}. Einige Anpassungen und Ergänzungen wurden allerdings vor allem für das
|
||||||
|
Thema |classic| vorgenommen. Die hier aufgeführten Erklärungen beziehen sich nur auf einen
|
||||||
|
kleinen Teil der Möglichkeiten von |komacv|. Alle Makros und Umgebungen wurden vollständig
|
||||||
|
portiert und sind verfügbar. Damit ist das Importieren eines Dokumentes mit der Klasse
|
||||||
|
|komacv| (evtl. unter Verwendung von |standalone|) möglich. In jedem Fall sollte bei
|
||||||
|
tiefergehenden Fragen die entsprechende Dokumentation konsultiert werden
|
||||||
|
\autocite[vgl.][]{komacv}.
|
||||||
|
|
||||||
|
\DescribeEnv{lebenslauf}
|
||||||
|
Die Umgebung |{lebenslauf}|\oarg{Listensymbol}\oarg{Addendum} erstellt einen Bereich in dem
|
||||||
|
sämtliche Befehle aus der Klasse |komacv| benutzt werden können. Über das erste optionale
|
||||||
|
Argument kann bei Bedarf das Listensymbol bei der Aufzählung von Einträgen durch Angabe von
|
||||||
|
|none| ausgeschaltet werden. Im zweiten optionalen Argument kann ein Addendum nach der
|
||||||
|
Unterschrift auf einer neuen Seite dem Lebenslauf angehangen werden. \textit{Achtung:} Um die
|
||||||
|
Register von \TeX\ nicht zu sprengen, dürfen hier zwar Sektionen und alle Befehle aus |komacv|
|
||||||
|
benutzt werden, jedoch dürfen keine Leerzeilen (im Zweifel auskommentieren) und erzwungene
|
||||||
|
Umbrüche mit |\\| (im Zweifel |\newline| verwenden) angegeben werden.
|
||||||
|
|
||||||
|
\DescribeMacro{\maktitle}
|
||||||
|
Das Makro |\maketitle| wurde angepasst und sollte zu Beginn des Lebenslaufs aufgerufen werden,
|
||||||
|
um den Titelkopf aus |komacv| aufzurufen.
|
||||||
|
|
||||||
|
\DescribeMacro{\makePerson}
|
||||||
|
Aus der Konfigurationsdatei werden die notwendigen Daten herausgelesen und ein passender
|
||||||
|
Eintrag für die eigene Person über |\makePerson| erzeugt. Dazu wird die Sektion
|
||||||
|
\enquote{Persönliche Angaben} mit |cvitem|s zu Name, Anschrift, Staatsangehörigkeit,
|
||||||
|
Geburtstdatum und eigenem Beruf angelegt.
|
||||||
|
|
||||||
|
Der Befehl führt zu keinem erzwungenen Umbruch. Somit kann die Sektion beliebig erweitert
|
||||||
|
werden.
|
||||||
|
|
||||||
|
\DescribeMacro{\cventry}
|
||||||
|
Mit |\cventry|\marg{Monat/Jahr}\marg{Bezeichnung}\marg{Ergänzung}\marg{Inhalt} kann
|
||||||
|
ein zeitlicher Eintrag nach |komacv| angelegt werden.
|
||||||
|
|
||||||
|
\DescribeMacro{\cvlistitem}
|
||||||
|
Um in einer Sektion eine Aufzählung zu führen, kann |\cvlistitem|\marg{Eintrag} verwendet
|
||||||
|
werden. Die letzten beiden Beschreibungen sollten ausführlicher den entsprechenden
|
||||||
|
Dokumentationen zu |komacv| entnommen werden.
|
||||||
|
|
||||||
|
\DescribeMacro{\cvlanguage}
|
||||||
|
\DescribeMacro{\cvitemwithcomment}
|
||||||
|
Der normalen |komacv|-Klasse fehlt eine Möglichkeit Sprachkenntnisse anzugeben. Mit dem
|
||||||
|
Wrapper |\cvlanguage|\marg{Sprache}\marg{Kenntnisse}\marg{Kommentar} kann dies erledigt
|
||||||
|
werden. Letztlich wird dadurch ein |\cvitemwithcomment| nach selber Syntax erzeugt, der auch
|
||||||
|
für andere kommentierte Aufzählungen bzw. Einträge verwendet werden kann.
|
||||||
|
|
||||||
|
\begin{beispiel}[bsp:lebenslauf][Lebenslauf]{Beispiel für einen Lebenslauf}
|
||||||
|
\begin{lstlisting}[gobble=11]
|
||||||
|
\begin{lebenslauf}[none][]
|
||||||
|
\maketitle
|
||||||
|
\makePerson
|
||||||
|
|
||||||
|
\section{Studium}
|
||||||
|
\cventry{03/13}{Abschluss: Dipl.-Pädagogin (Univ.)}{}{}{}{}
|
||||||
|
|
||||||
|
\section{Führerschein}
|
||||||
|
\cvlistitem{Klasse B (eigener PKW)}
|
||||||
|
|
||||||
|
\section{Sprachen}
|
||||||
|
\cvlanguage{Deutsch}{Muttersprache}{}
|
||||||
|
\cvlanguage{Englisch}{gut}{}
|
||||||
|
\end{lebenslauf}
|
||||||
|
\end{lstlisting}
|
||||||
|
\fbox{\includegraphics[page=3,scale=0.4]{bewerbung-example.pdf}}
|
||||||
|
\end{beispiel}
|
||||||
|
\FloatBarrier
|
||||||
|
|
||||||
|
\subsubsection{Anhang}\label{sec:anhang}
|
||||||
|
Gerade bei Bewerbungen per E"~Mail ist es häufig notwendig digitale Kopien von Zeugnissen,
|
||||||
|
Zertifikaten usw. mitzuschicken. In jedem Fall sollten entsprechende Anhänge bei einer
|
||||||
|
schriftlichen Einreichung als Anhang auf dem Deckblatt und dem Anschreiben ausgewiesen werden.
|
||||||
|
\DescribeMacro{\Anhang}
|
||||||
|
Dazu sollte das Makro |\Anhang| verwendet werden (vgl. \refMacro{Anhang}).
|
||||||
|
|
||||||
|
Um Anhänge nicht händisch an das PDF anzufügen, kann dies mit dem Paket \citetitle{pdfpages}
|
||||||
|
von \citeauthorfull{pdfpages} sehr elegant innerhalb des \TeX-Dokuments geschehen. Hier werden
|
||||||
|
dazu nur kleine Ausschnitte dieses mächtigen Werkzeugs dargestellt. Prinzipiell ist damit jede
|
||||||
|
nur erdenkliche Einbindung von Dateien im PDF"~Format möglich \autocite[vgl.][]{pdfpages}.
|
||||||
|
|
||||||
|
\DescribeMacro{\includepdf}
|
||||||
|
Mit dem Befehl |\includepdf|\oarg{Optionen}\marg{Dateien} können PDF-Dateien beliebigen
|
||||||
|
Formats und Länge eingebunden werden. Bei Angabe ohne Optionen wird automatisch die erste
|
||||||
|
Seite im \textit{Vollbildmodus} über eine gesamte Seite in die Bewerbungsmappe integriert.
|
||||||
|
|
||||||
|
Um etwa ein mehrseitiges Diplomzeugnis einzubinden, ist der Aufruf
|
||||||
|
\begin{lstlisting}[gobble=9,numbers=none]
|
||||||
|
\includepdf[pages=-]{diplomzeugnis.pdf}
|
||||||
|
\end{lstlisting}
|
||||||
|
sinnvoll. Die Option |pages=-|
|
||||||
|
weist |includepdf| dabei an, alle Seiten der Datei |diplomzeugnis.pdf| zu verwenden. Hier wäre
|
||||||
|
auch eine beliebige alphanumerische Angabe, etwa |2-9|, möglich. Das Format aller Seiten wird
|
||||||
|
automatisch auf das gewählte Format (DinA4) der Mappe skaliert. Über die Option |scale=0.5|
|
||||||
|
kann dies bei Bedarf angepasst werden.
|
||||||
|
|
||||||
|
\DescribeMacro{\includepdfmerge}
|
||||||
|
Sofern die anzuhängenden Seiten in einem Querformat vorliegen, kann über die Option
|
||||||
|
|landscape| automatisch gedreht werden. Zusätzlich kann über die Option |angle=270| auch die
|
||||||
|
Datei selbst vor dem Einbinden um einen beliebigen Winkel gedreht werden. Mehrere Dateien
|
||||||
|
können mit den selben Optionen in einem Aufruf über |\includepdfmerge| eingefügt werden:
|
||||||
|
|
||||||
|
\begin{lstlisting}[gobble=9,numbers=none]
|
||||||
|
\includepdfmerge[pages=-,landscape,angle=270]%
|
||||||
|
{Abiturzeugnis1.pdf,Abiturzeugnis2.pdf}
|
||||||
|
\end{lstlisting}
|
||||||
|
|
||||||
|
Eventuell kann auch die Option |nup=XxY| hilfreich sein. Dadurch werden jeweils mehrere
|
||||||
|
Seiten eines mehrseitigen Dokumentes zusammen auf einer Seite mit |X|"~Seiten pro Länge und
|
||||||
|
|Y|"~Seiten pro Höhe dargestellt. Für weitere Informationen sei auf die Paketdokumentation
|
||||||
|
verwiesen \autocite[vgl.][]{pdfpages}.
|
||||||
|
|
||||||
|
\begin{beispiel}[bsp:bewerbungsmappe][Vollständige Bewerbungsmappe]{%
|
||||||
|
Beispiel für den Quellcode einer vollständigen Bewerbungsmappe}
|
||||||
|
\begin{lstlisting}[gobble=11,multicols=2,title={Datei: \texttt{bewerbung.tex}},%
|
||||||
|
xleftmargin=5pt,linewidth=0.95\columnwidth]
|
||||||
|
\documentclass[%
|
||||||
|
lebenslaufColor=light-gray,%
|
||||||
|
%lebenslaufStyle=classic,
|
||||||
|
idPlain%
|
||||||
|
]{bewerbung}
|
||||||
|
\usepackage[utf8]{inputenc}
|
||||||
|
\usepackage[T1]{fontenc}
|
||||||
|
\usepackage[ngerman]{babel}
|
||||||
|
% zusätzliche
|
||||||
|
% Farbdefinitionen:
|
||||||
|
\definecolor{light-gray}%
|
||||||
|
{gray}{0.6}
|
||||||
|
\definecolor{titlecolor}%
|
||||||
|
{gray}{0.62}
|
||||||
|
\definecolor{addresscolor}%
|
||||||
|
{gray}{0.45}
|
||||||
|
|
||||||
|
\begin{document}
|
||||||
|
\begin{anschreiben}
|
||||||
|
Hier kommt das
|
||||||
|
Anschreiben hin
|
||||||
|
\end{anschreiben}
|
||||||
|
|
||||||
|
\begin{lebenslauf}[none][]
|
||||||
|
\maketitle
|
||||||
|
\makePerson
|
||||||
|
|
||||||
|
\section{Studium}
|
||||||
|
\cventry{03/13}{%
|
||||||
|
Abschluss: %
|
||||||
|
Dipl.-Pädagogin %
|
||||||
|
(Univ.)%
|
||||||
|
}{}{}{}{}
|
||||||
|
|
||||||
|
\section{Führerschein}
|
||||||
|
\cvlistitem{%
|
||||||
|
Klasse B %
|
||||||
|
(eigener PKW)}
|
||||||
|
|
||||||
|
\section{Sprachen}
|
||||||
|
\cvlanguage{Deutsch}{%
|
||||||
|
Muttersprache}{}
|
||||||
|
\cvlanguage{Englisch}{%
|
||||||
|
gut}{}
|
||||||
|
\end{lebenslauf}
|
||||||
|
\ end{document}
|
||||||
|
\end{lstlisting}
|
||||||
|
|
||||||
|
\begin{lstlisting}[gobble=11,multicols=2,title={Datei: \texttt{config.inc}},%
|
||||||
|
xleftmargin=5pt,linewidth=0.95\columnwidth]
|
||||||
|
\Name{Musterfrau}
|
||||||
|
\Vorname{Maja}
|
||||||
|
\Street{Musterstraße 9}
|
||||||
|
\Plz{45878}
|
||||||
|
\Stadt{Musterstadt}
|
||||||
|
\MeinBeruf{Dipl.-Pädagogin%
|
||||||
|
(Univ.)}
|
||||||
|
\EMail{mail@email.com}
|
||||||
|
\Tel{03131~465488}
|
||||||
|
\Mobile{01534~6324524353}
|
||||||
|
\Sta{deutsch}
|
||||||
|
\GebDatum{31.02.1990}
|
||||||
|
\ID{47}
|
||||||
|
\Anhang{%
|
||||||
|
Abiturzeugnis.\newline
|
||||||
|
Diplomzeugnis.
|
||||||
|
}{%
|
||||||
|
\item Abiturzeugnis
|
||||||
|
\item Diplomzeugnis
|
||||||
|
}
|
||||||
|
\end{lstlisting}
|
||||||
|
|
||||||
|
\begin{lstlisting}[gobble=11,language=bash,title={Datei: \texttt{anschrift.csv}}]
|
||||||
|
ID,KW,Datum,Firma,FirmaAnrede,FirmaName,Str,PLZ,Ort,Stelle, Rueckmeldung,Sonstiges
|
||||||
|
2,13,26.09.15,Packisbar GmbH,Frau,Nauti,Traumstraße 19,59888,Traumort,Traumberuf,n,n
|
||||||
|
1,12,14.09.15,Packbar GmbH,Herr,Nubil,Traumstraße 4,59888,Traumort,Traumberuf,n,n
|
||||||
|
\end{lstlisting}
|
||||||
|
\end{beispiel}
|
||||||
|
|
||||||
|
\begin{landscape}
|
||||||
|
\begin{beispiel}[bsp:bewerbungsmappepdf][Ergebnis einer vollständigen Mappe]{%
|
||||||
|
Ergebnis des Quellcodes aus \prettyref{bsp:bewerbungsmappe}}
|
||||||
|
\begin{minipage}{0.5\textwidth}
|
||||||
|
\fbox{\includegraphics[page=1,width=\textwidth]{bewerbung-example.pdf}}
|
||||||
|
\end{minipage}\quad\
|
||||||
|
\begin{minipage}{0.5\textwidth}
|
||||||
|
\fbox{\includegraphics[page=2,width=\textwidth]{bewerbung-example.pdf}}
|
||||||
|
\end{minipage}\quad\
|
||||||
|
\begin{minipage}{0.5\textwidth}
|
||||||
|
\fbox{\includegraphics[page=3,width=\textwidth]{bewerbung-example.pdf}}
|
||||||
|
\end{minipage}
|
||||||
|
\end{beispiel}
|
||||||
|
\end{landscape}
|
||||||
|
\FloatBarrier
|
||||||
|
\subsection[Dokumentationstabelle]{Erstellung einer Dokumentationstabelle}
|
||||||
|
\label{sec:dokutabelle}
|
||||||
|
Die Agentur für Arbeit verlangt von ihren \textit{Kunden} typischerweise den Nachweis über die
|
||||||
|
Vertragstreue. Im Klartext heißt dies, dass Menschen eine Vorgabe an Bewerbungen pro Woche oder
|
||||||
|
Monat und die Bindung an das Bewerben auf jede von der Agentur für Arbeit vorgeschlagene Stelle
|
||||||
|
unterschreiben müssen, um den Almosen Grundsicherung, auch HartzIV genannt, zu erhalten. Wird
|
||||||
|
gegen diese Auflagen verstoßen ist mit Abzügen der Grundsicherung zu rechnen. Da Kunden
|
||||||
|
typischerweise nicht zu trauen ist, müssen diese über ihre Bewerbungsversuche detailliert
|
||||||
|
Aufschluss geben.
|
||||||
|
|
||||||
|
Um sich bei dieser oftmals lästigen Dokumentationsarbeit Zeit zu sparen, entstand die Grundidee
|
||||||
|
zu dieser Zusammenstellung. Dafür wird eine Tabelle automatisiert erstellt, indem eine csv-Datei
|
||||||
|
(vgl. \prettyref{sec:bewerbung}) ausgewertet wird. Die Klasse |argetabelle| ermöglicht das Setzen
|
||||||
|
solch einer Tabelle auch über mehrere Seiten hinweg.
|
||||||
|
|
||||||
|
Der Klasse können dabei Optionen an |scrartcl| weiter gereicht werden. Allerdings ist es nicht
|
||||||
|
ratsam die Dimensionen inkl. Ausrichtung der Seite zu ändern, da die Skalierung der Tabelle
|
||||||
|
\DescribeMacro{\argetballe}
|
||||||
|
(noch) absolut ist. Die Tabelle wird über den Aufruf des Makros |\argetabelle|\oarg{Datei}
|
||||||
|
gesetzt. Sofern die Datei mit den Anschriften zu den Bewerbungen nicht als |anschrift.csv|
|
||||||
|
benannt wurde, kann diese im optionalen Argument angegeben werden.
|
||||||
|
|
||||||
|
\textit{Hinweis:} Die Tabelle wird immer in der Reihenfolge der Zeilen in der angegebenen
|
||||||
|
csv"~Datei gesetzt. Das Feld ID ist hierbei irrelevant.
|
||||||
|
|
||||||
|
\begin{beispiel}[bsp:dokutabelle]{Beispiel für das Setzen der Dokumentationstabelle}
|
||||||
|
\begin{lstlisting}[gobble=9,title={Datei: \texttt{argetabelle.tex}}]
|
||||||
|
\documentclass[11pt,a4paper]{argetabelle}
|
||||||
|
\usepackage[utf8]{inputenc}
|
||||||
|
\usepackage[T1]{fontenc}
|
||||||
|
\usepackage[ngerman]{babel}
|
||||||
|
\begin{document}
|
||||||
|
\argetabelle
|
||||||
|
\ end{document}
|
||||||
|
\end{lstlisting}
|
||||||
|
|
||||||
|
\begin{lstlisting}[gobble=9,language=bash,title={Datei: \texttt{anschrift.csv}}]
|
||||||
|
ID,KW,Datum,Firma,FirmaAnrede,FirmaName,Str,PLZ,Ort,Stelle, Rueckmeldung,Sonstiges
|
||||||
|
2,13,26.09.15,Packisbar GmbH,Frau,Nauti,Traumstraße 19,59888,Traumort,Traumberuf,n,n
|
||||||
|
1,12,14.09.15,Packbar GmbH,Herr,Nubil,Traumstraße 4,59888,Traumort,Traumberuf,n,n
|
||||||
|
\end{lstlisting}
|
||||||
|
|
||||||
|
\fbox{\includegraphics[width=0.95\textwidth,page=1,viewport=52.815022 610 542.460991
|
||||||
|
771.024000]{argetabelle-example.pdf}}
|
||||||
|
\vspace{1.4em}
|
||||||
|
\end{beispiel}
|
||||||
|
|
||||||
|
\clearpage
|
||||||
|
\addcontentsline{toc}{section}{Literatur}
|
||||||
|
\printbibliography
|
||||||
|
\end{document}
|
10
neueBewerbung.sh
Normal file
10
neueBewerbung.sh
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
mkdir -v $1
|
||||||
|
cp -v bewerbung.tex $1/bewerbung-$1.tex
|
||||||
|
cp -v config.inc $1
|
||||||
|
cd $1
|
||||||
|
ln -sv ../Anhang ./Anhang
|
||||||
|
ln -sv ../Foto.jpg ./Foto.jpg
|
||||||
|
ln -sv ../Foto.pdf ./Foto.pdf
|
||||||
|
ln -sv ../anschrift.csv ./anschrift.csv
|
||||||
|
cd ..
|
70
titlepage.inc
Normal file
70
titlepage.inc
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
\begin{titlepage}
|
||||||
|
\begin{comment}
|
||||||
|
\applyCSVfile{../anschrift.csv}{
|
||||||
|
\ifthenelse{\equal{\insertbyname{ID}}{\id}}{
|
||||||
|
\renewcommand{\firma}{\insertbyname{Firma}}
|
||||||
|
\renewcommand{\firmaAnrede}{\insertbyname{FirmaAnrede}}
|
||||||
|
\renewcommand{\firmaName}{\insertbyname{FirmaName}}
|
||||||
|
\renewcommand{\firmaStreet}{\insertbyname{Str}}
|
||||||
|
\renewcommand{\firmaPlz}{\insertbyname{PLZ}}
|
||||||
|
\renewcommand{\firmaStadt}{\insertbyname{Ort}}
|
||||||
|
|
||||||
|
\renewcommand{\beruf}{\insertbyname{Stelle}}
|
||||||
|
%\iffalse
|
||||||
|
%% \hrule
|
||||||
|
%\fi
|
||||||
|
\end{comment}
|
||||||
|
\begin{multicols*}{2}[][0cm]
|
||||||
|
\setlength{\columnseprule}{1pt}
|
||||||
|
|
||||||
|
\textbf{\fullname}\\
|
||||||
|
\textbf{\meinBeruf} \\ \ \\
|
||||||
|
\street\\
|
||||||
|
\plz\ \stadt\\
|
||||||
|
\Letter\enskip \email\\
|
||||||
|
\Telefon\enskip \tel\\
|
||||||
|
\Mobilefone\enskip \mobile
|
||||||
|
|
||||||
|
\vfill
|
||||||
|
\textbf{Inhalt}
|
||||||
|
\renewcommand{\labelitemi}{}
|
||||||
|
\begin{itemize}
|
||||||
|
\anhang[title]
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
\columnbreak
|
||||||
|
|
||||||
|
\vspace*{1.8cm}
|
||||||
|
\hspace*{0.5cm}\textsc{\Huge{\textbf{Bewerbung}}}
|
||||||
|
|
||||||
|
\vspace*{2cm}
|
||||||
|
\begin{flushleft}
|
||||||
|
\setlength{\parindent}{-0.1cm}
|
||||||
|
\leftskip=0.3cm
|
||||||
|
\hspace*{0.1cm}\textit{bei}\\ % hier gehört bei rein
|
||||||
|
\textbf{\bewerbungFirma}\\
|
||||||
|
\bewerbungFirmaAnrede\
|
||||||
|
\bewerbungFirmaName\\
|
||||||
|
\bewerbungFirmaStr\\
|
||||||
|
\bewerbungFirmaPlz\ \bewerbungFirmaOrt
|
||||||
|
|
||||||
|
% hier kann der Abstand zwischen Anschrift und Berufsbezeichnung eingestellt werden
|
||||||
|
\vspace*{1.5cm}
|
||||||
|
\hspace*{0.1cm}\textit{als}\\
|
||||||
|
\textbf{\bewerbungStelle}\\
|
||||||
|
\end{flushleft}
|
||||||
|
|
||||||
|
\vfill
|
||||||
|
%\vfill
|
||||||
|
\hspace*{0.2cm}\includegraphics[width=5cm]{Foto.pdf} %\\
|
||||||
|
% \ \\
|
||||||
|
\end{multicols*}
|
||||||
|
\end{titlepage}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user