-
Notifications
You must be signed in to change notification settings - Fork 0
/
weeklyreports.sty
45 lines (40 loc) · 1.41 KB
/
weeklyreports.sty
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{polytech/weeklyreports}[\polytechfiledate\space\polytechfileversion\space Polytech document class sub package]
% the weekly report counter
\newcounter{polytech@weeklyreport@counter}
% Define a weekly report
% Usage : \weeklyreport{date}{text}
% Param date : the date of the weekly report
% Param text : the text of the report
\newcommand{\weeklyreport}[2]{%
\ifbool{polytech@hideweeklyreports}{}{
\csappto{polytech@output@weeklyreports}{
\begingroup
\setlength{\FrameSep}{0.1cm}
\begin{oframed}
\setlength{\linewidth}{\textwidth-40pt}
\refstepcounter{polytech@weeklyreport@counter}%
\textbf{%
\csuse{polytech@weeklyreports@reporttitle@\csuse{polytech@lang}}{\thepolytech@weeklyreport@counter}{#1}%
\nopagebreak[4]
}%
\nopagebreak[4]
\par\nopagebreak[4]
\hrule\nopagebreak[4]
\widowpenalty=10000 % change linebreaking penalty to reduce isolated body lines
\clubpenalty=10000
#2
\end{oframed}
\endgroup
}
}
}
% output the weekly report chapter
\csdef{polytech@output@weeklyreportspart}{
\ifbool{polytech@hideweeklyreports}{}{
\ifcsdef{polytech@output@weeklyreports}{
\chapter{\csuse{polytech@weeklyreports@title@\csuse{polytech@lang}}}
\csuse{polytech@output@weeklyreports}
}{}
}
}