Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
S
stratum0-latex
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
rohieb
stratum0-latex
Commits
35b40058
Commit
35b40058
authored
8 years ago
by
rohieb
Browse files
Options
Downloads
Patches
Plain Diff
s0minutes: new package for meeting minutes
parent
bd1f9363
Branches
Branches containing commit
Tags
v1.0
Tags containing commit
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
s0minutes.cls
+144
-0
144 additions, 0 deletions
s0minutes.cls
with
144 additions
and
0 deletions
s0minutes.cls
0 → 100644
+
144
−
0
View file @
35b40058
% s0minutes.cls
% Stratum 0 CI -- meeting minutes
% 2016-Dec-15 Roland Hieber <rohieb+stratum0-latex-qua1aiMe@rohieb.name>
%
% Heavily inspired by Jim Hefferon's "Minutes in Less Than Hours":
% http://tutex.tug.org/pracjourn/2005-4/hefferon/hefferon.pdf
% --- Class structure: identification part
% ---
\ProvidesClass
{
s0minutes
}
[2016/12/15 version 1.00 Stratum 0 Corporate Identity -- Meeting Minutes]
\NeedsTeXFormat
{
LaTeX2e
}
% --- Class structure: declaration of options part
% ---
% This class extends the article class
% Read all the documentclass options; pass them to article,
% unless the file "<currentoption>.s0c" exists, then it is loaded
\DeclareOption*
{
\InputIfFileExists
{
\CurrentOption
.s0c
}{}{
%
\PassOptionsToClass
{
\CurrentOption
}{
s0artcl
}}}
% --- Class structure: execution of options part
% ---
\ProcessOptions
\relax
% --- Class structure: declaration of options part
% ---
\LoadClass
{
s0artcl
}
% -- Helper packages
% --
\RequirePackage
{
ifthen
}
\RequirePackage
{
framed
}
% leftbar environment etc.
\RequirePackage
[svgnames,table]
{
xcolor
}
% -- Tweak section numbering
% set table of contents number field to max width of section numbers
\let\theoldsection\thesection
\renewcommand*
{
\thesection
}{
TOP
\theoldsection
}
\setcounter
{
section
}{
-1
}
% Real hackers start counting at 0
\settowidth
{
\cftsecnumwidth
}{
TOP 10
}
\settowidth
{
\cftsubsecnumwidth
}{
TOP 1.10
}
% -- User Commands and Environments
% --
% Meeting information, to be used in the preamble:
% 1. Type of the meeting (e.g., board meeting, general meeting, etc.)
% 2. Date of the meeting
% 3. Starting time,
% 4. Place of the meeting
% 5. (List of) attending people
% 6. (List of) absent people, if any
% 7. Name of minute taker
\makeatletter
\newcommand*
{
\meetingminutes
}
[7]
{
%
\def\sn
@typeofmeeting
{
#1
}
%
\def\sn
@date
{
#2
}
%
\def\sn
@startingtime
{
#3
}
%
\def\sn
@place
{
#4
}
%
\def\sn
@attendants
{
#5
}
%
\def\sn
@absentees
{
#6
}
%
\def\sn
@minutetaker
{
#7
}
%
\AtBeginDocument
{
%
\title
{
\sn
@typeofmeeting
{}
\sn
@date
}
%
\date
{}
\subject
{
Stratum~0~e.
\,
V.
}
}
%
}
\def\boardmeeting
{
Vorstandssitzung
}
\def\generalassembly
{
Mitgliederversammlung
}
\newcommand*
{
\sn
@meetinginfo
}{
%
\begin{tabular}
{
rl
}
Ort:
&
\sn
@place
\\
Zeit:
&
\sn
@date,
\sn
@startingtime
\\
Anwesend:
&
\sn
@attendants
\\
\ifx\sn
@absentees
\empty
\empty
\else
Abwesend:
&
\sn
@absentees
\\
\fi
Protokoll:
&
\sn
@minutetaker
\\
\end{tabular}
}
\def\@
author
{
\sn
@meetinginfo
}
%% This is just a dirty hack to get it into \maketitle
\newcommand
{
\meetingpreamble
}{
\sn
@meetinginfo
}
% Signals the end of the meeting.
% 1. Closing time of the meeting
\newcommand*
{
\meetingend
}
[1]
{
%
\begin{description}
\item
[Ende:]
#1
\end{description}
}
% Resolutions
% 1. Reference number,
% 2. Vote information, use \vote, \consensus
% 3. Short text of the resolution,
% 4. Allocated money, if any (optional)
% 5. (only in resolution environment) Additional text
\newcommand*
{
\sn
@resolution
}
[4]
{
%
\textbf
{
#1: #3
}
\ifthenelse
{
\equal
{
#4
}{}}{}{
(#4)
}
%
\hfill
% when breaking, prevent stretching the line to be justified
\allowbreak
% prefer breaking here
\hspace*
{
.1em
}
\hfill
\mbox
{
#2
}
% keep this together. when breaking, fill to flush-right
}
% our own little frame environment for resolutions
\def\sn
@flushleftbarwidth
{
5pt
}
\def\sn
@flushleftbarspace
{
10pt
}
\newenvironment
{
sn@flushleftbar
}{
%
\def\FrameCommand
{
%
\hskip
-
\sn
@flushleftbarwidth
\hskip
-
\sn
@flushleftbarspace
%
\textcolor
{
darkgray
}{
\vrule
width
\sn
@flushleftbarwidth
\hspace
{
\sn
@flushleftbarspace
}}}
\MakeFramed
{
\advance\hsize
-
\width
\FrameRestore
}}
%
{
\endMakeFramed
}
\newcommand*
{
\shortresolution
}
[4]
{
%
\begin{sn@flushleftbar}
\raggedright
\sn
@resolution
{
#1
}{
#2
}{
#3
}{
#4
}
\end{sn@flushleftbar}
}
\newenvironment
{
resolution
}
[4]
{
%
\begin{sn@flushleftbar}
\sn
@resolution
{
#1
}{
#2
}{
#3
}{
#4
}
\par
}{
%
\end{sn@flushleftbar}
}
% Adoption, rejection, votes, consensus
\newcommand
{
\adopted
}{
Angenommen
}
\newcommand
{
\rejected
}{
Abgelehnt
}
\newcommand
{
\vote
}
[4]
{
#1 (#2/#3/#4)
}
\newcommand
{
\consensus
}
[1]
{
#1 (Konsens)
}
% Break of a specified time (first parameter)
\newcommand
{
\meetingbreak
}
[1]
{
\begin{center}
\emph
{
(Pause von #1)
}
\end{center}
}
\makeatother
% vim: set tw=100 noet sw=2 ts=2 sts=2:
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment