texlive[47891] Master: tlc-article (31may18)

commits+karl at tug.org commits+karl at tug.org
Thu May 31 23:51:18 CEST 2018


Revision: 47891
          http://tug.org/svn/texlive?view=revision&revision=47891
Author:   karl
Date:     2018-05-31 23:51:17 +0200 (Thu, 31 May 2018)
Log Message:
-----------
tlc-article (31may18)

Modified Paths:
--------------
    trunk/Master/tlpkg/bin/tlpkg-ctan-check
    trunk/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/latex/tlc-article/
    trunk/Master/texmf-dist/doc/latex/tlc-article/GettingStarted.tex
    trunk/Master/texmf-dist/doc/latex/tlc-article/GettingStarted.texx
    trunk/Master/texmf-dist/doc/latex/tlc-article/LICENSE
    trunk/Master/texmf-dist/doc/latex/tlc-article/README.md
    trunk/Master/texmf-dist/doc/latex/tlc-article/data/
    trunk/Master/texmf-dist/doc/latex/tlc-article/data/logo.png
    trunk/Master/texmf-dist/doc/latex/tlc-article/data/required-packages.csv
    trunk/Master/texmf-dist/doc/latex/tlc-article/data/version.csv
    trunk/Master/texmf-dist/doc/latex/tlc-article/doc/
    trunk/Master/texmf-dist/doc/latex/tlc-article/doc/sprint.md
    trunk/Master/texmf-dist/doc/latex/tlc-article/images/
    trunk/Master/texmf-dist/doc/latex/tlc-article/images/titlepage.png
    trunk/Master/texmf-dist/tex/latex/tlc-article/
    trunk/Master/texmf-dist/tex/latex/tlc-article/tlc-article.cls
    trunk/Master/tlpkg/tlpsrc/tlc-article.tlpsrc

Added: trunk/Master/texmf-dist/doc/latex/tlc-article/GettingStarted.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tlc-article/GettingStarted.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tlc-article/GettingStarted.tex	2018-05-31 21:51:17 UTC (rev 47891)
@@ -0,0 +1,409 @@
+\documentclass[12pt]{tlc-article}
+
+% ------------------------------------------------------------------------------
+% \makeatletter is used so we can reference commands and definitions defined by
+% tlc-article, which are all prefaced with tlc at .
+\makeatletter
+
+% ------------------------------------------------------------------------------
+
+\def\tlcProduct{tlc-article}
+
+\def\tlcA{\tlcDarkblue{\tlcProduct}}
+
+\def\tlcAL{\tlcDarkblue{\tlc at additionalLayout}}
+\def\tlcBL{\tlcDarkblue{tlcBeginLandscape}}
+\def\tlcDB{\tlcDarkblue{tlcDarkblue}}
+\def\tlcEL{\tlcDarkblue{tlcEndLandScape}}
+\def\tlcHF{\tlcDarkblue{\tlc at headerFooter}}
+\def\tlcLG{\tlcDarkblue{\tlc at logoFile}}
+\def\tlcNCT{newcolumn type: \tlcDarkblue{L, C} \& \tlcDarkblue{R}}
+\def\tlcTOC{\tlcDarkblue{tlcTitlePageAndTableOfContents}}
+\def\tlcVE{\tlcDarkblue{\tlc at versionFile}}
+
+\def\tlcVC{\tlcDarkblue{tlc at version}}
+\def\tlcDC{\tlcDarkblue{tlc at date}}
+\def\tlcSC{\tlcDarkblue{tlc at status}}
+\def\tlcIC{\tlcDarkblue{tlc at instatution}}
+\def\tlcPC{\tlcDarkblue{tlc at permission}}
+
+\def\kpse{\$(kpsewhich -var-value TEXMFLOCAL)}
+\def\texDist{\kpse}
+\def\tlcDist{/tex/latex/\tlcProduct}
+\def\tlcGlobalDist{\texDist\tlcDist}
+
+\def\tlcHome{\$HOME}
+\def\tlcMyDoc{\tlcHome/mydoc}
+
+\def\gitHub{GitHub.com}
+\def\gitHubUrl{http://\gitHub}
+
+\def\tlcRepo{git@\gitHub:Traap/\tlcProduct.git}
+
+\def\tlcPkgFile{data/required-packages.csv}
+\def\tlcNote{\tlcDarkblue{Note}}
+
+% ------------------------------------------------------------------------------
+
+\begin{document}
+
+% ------------------------------------------------------------------------------
+
+\tlcTitlePageAndTableOfContents
+  {Getting Started}
+  {Gary Allan Howard}
+  {Getting Started guide covers how to install \tlcA\ both globally and
+    locally, describes the general use case, how to customize your \tlcA\
+    environment, describes the commands \tlcA\ implements, and reveals the
+    packages \tlcA\ depends upon.}
+
+% ------------------------------------------------------------------------------
+
+\section{Installation}
+This section describes how to install \tlcA\ either globally to make it
+available to your \LaTeX\ environment or locally to the document you are
+authoring.  And, this section identifies the prerequisites you must meet in
+order to clone a repository from GitHub.com and install software on your
+computer.
+
+\subsection{Prerequisites}
+The following prerequisites are needed.
+\begin{description}[style=nextline]
+  \item[Administrative privilege] You will need administrative privileges to
+    install \tlcA\ globally because `sudo' is used.
+
+  \item[SSH key] You will need your private key to access \gitHub.  Please refer
+    to \url{http://help.github.com/articles/generating-an-ssh-key} for
+    instructions on `Generating an SSH key'.
+
+  \item[Enable your SSH key] The following instructions enable your SSH key so
+    you to not have to enter the passphrase for each git command.
+
+    \begin{enumerate}
+      \item eval \$(ssh-agent -s)
+      \item ssh-add ~/.ssh/your-private-key
+      \item enter your passphrase
+    \end{enumerate}
+
+\end{description}
+
+\subsection{Local installation}
+A local installation is done by installing \tlcA\ into
+/the/path/to/your/document.  Assuming your document is located at \tlcMyDoc\ the
+following shell commands will make \tlcA\ available to your document.
+
+\begin{enumerate}
+  \item cd \tlcHome
+  \item git clone \tlcRepo\
+  \item cd \tlcProduct\
+  \item mkdir \tlcMyDoc
+  \item cp -v \tlcProduct.cls \tlcMyDoc/.
+\end{enumerate}
+
+\clearpage
+\subsection{Global installation}
+A global installation is done by installing \tlcA\ into your /path/to/your/texmf
+directory.  Assuming a TexLive installation exists at \texDist\ the following
+shell commands will make \tlcA\ available to your \LaTeX\ environment.
+
+\begin{enumerate}
+  \item cd \tlcHome
+  \item git clone \tlcRepo\
+  \item cd \tlcProduct\
+  \item sudo mkdir -p \tlcGlobalDist
+  \item sudo mv -v \tlcProduct.cls \tlcGlobalDist/.
+  \item sudo mktexlsr \texDist\
+\end{enumerate}
+
+\bigskip
+\tlcNote\ You may remove your local installation by removing \tlcA.
+
+% ------------------------------------------------------------------------------
+\clearpage
+\section{General Use Case}
+The goal of \tlcA\ is to simplify document layout.  \tlcA\ orchestrates a
+logical arrangement for document header, footer, author, abstract, table of
+contents, and margins.  The following sections outline the default
+implementation for each part \tlcA\ organizes. 
+
+\tlcNote\ This document was typeset using the instructions provided throughout
+this section.
+
+\subsection{Document Layout}
+\begin{figure}[h]
+  \centering
+  \includegraphics{images/titlepage.png}
+  \caption{Document Layout}
+  \label{fig:layout}
+\end{figure}
+\subsection{documentclass \tlcA}
+\tlcA\ extends the article document class.  \tlcA\ provide options directly to
+the article document class.  As an example, the Author can specify the font as
+follows:
+
+\begin{lstlisting}[basicstyle=\tiny]
+  \documentclass[12pt]{tlc-article}
+\end{lstlisting}
+
+\subsection{Title, Author \& Abstract} \label{sec:TAA}
+\tlcA\ has a macro \tlcTOC\ that can be used to set the document title, document
+author, document abstract, and establish the Table of Contents.  The sample
+below reveals how to use \tlcTOC.
+
+\begin{lstlisting}[basicstyle=\tiny]
+  \tlcTitlePageAndTableOfContents
+     {Document Title}
+     {Document Article}
+     {Document Abstract}
+\end{lstlisting}
+
+\subsection{Table of Contents}
+The Table of Contents immediately follows the document abstract on page 1, uses
+dark blue for content, dots separate table of contents sections and page number,
+and uses roman numerals.
+
+\subsection{Header \& Footer}
+fancyhdr is used to render the header and footer.  The Author can override the
+\tlcA\ by providing an implementation in \tlcHF\, or augment \tlcA\ 
+application by providing \tlcVE. The sections below show the placement \tlcA\
+uses when writing objects, and where the objects are defined.
+
+\tlcNote\ \tlcA\ ignors \tlcVE\ when \tlcHF\ is defined.
+
+\subsubsection*{Header}
+
+\begin{description}
+  \item[lhead] When \tlcLG\ is found, logo.
+  \item[chead] Document Title
+  \item[rhead] When \tlcVE\ is present, status, date, and version columns.
+\end{description}
+
+\subsubsection*{Footer}
+
+\begin{description}
+  \item[lfoot] When \tlcVE\ is present, instatution column. 
+  \item[cfoot] When \tlcVE\ is present, permission column. 
+  \item[rfoot] Page 1 of N.
+\end{description}
+
+\subsubsection*{Rule width}
+A 0.1pt rule witdh is placed below the document header and above the document
+footer.
+
+% ------------------------------------------------------------------------------
+
+\clearpage
+\section{Customization}
+This section describes how \tlcA\ can be customized by using the file-hooks
+\tlcA\ check for.  \tlcA\ default implementation will be used when the
+file-hooks are now found.
+
+% ------------------------------------------------------------------------------
+
+\subsection{\tlcAL}
+\tlcA\ will use whatever \LaTeX\ definitions are found in \tlcAL\ when it
+exists.  The file-check is shown
+below:
+
+\begin{lstlisting}[basicstyle=\tiny]
+  \IfFileExists{docstyle/additional-layout.tex}
+    {\input{docstyle/additional-layout.tex}}
+    {}
+\end{lstlisting}
+
+% ------------------------------------------------------------------------------
+
+\subsection{\tlcHF}
+In the absence of \tlcAL\, \tlcA\ has a builtin header and footer strategy that
+is base on \textit{fancyhdr}, \textit{titling}, and \textit{lastpage} \LaTeX\
+packages. The default implementation is show below:
+
+\begin{lstlisting}[basicstyle=\tiny]
+  \IfFileExists{\tlc at logoFile}
+  { % Typeset the logo in the left side of the document header.
+    \lhead{\includegraphics[width=3cm,height=1cm]{\tlc at logoFile}}
+  }
+  {% Else: no operation because tlc at logoFile does not exist.
+  }
+  % Typeset the title in the center of the document header.
+  \chead{\large{\thetitle}}
+  % Typeset version information in the right side of the document header.
+  \IfFileExists{\tlc at versionFile}
+  {
+    % document status, document date and document version.
+    \rhead{\tiny \tlc at status \\ \tlc at date \\ \tlc at version}
+    % document owner.  This maybe a person or company name.
+    \lfoot{\tiny \tlc at instatution}
+    % document license. This maybe a license or word like confidential.
+    \cfoot{\tiny \tlc at permission}
+  }
+  {% Else: no operation because tlc at versionFile does not exist.
+  }
+  \renewcommand{\headrulewidth}{0.1pt}
+  % eliminate head height too small warning, which is occurring because
+  % we are using multiple lines in our header.
+  \setlength\headheight{52pt}
+  % % footer applied to all pages.
+  \rfoot{\tiny{page \thepage~of~\pageref{LastPage}}}
+  \renewcommand{\footrulewidth}{0.1pt}
+  % we want our header and footer to remain consistent with a table of
+  % contents that span multiple pages.
+  \AtBeginDocument{\addtocontents{toc}{\protect\thispagestyle{fancy}}}
+\end{lstlisting}
+
+The default implementation can be overridden by defining \tlcHF. 
+
+\tlcNote\ When \tlcHF\ exists and is empty, your document will be typeset
+with the defaults from document-class \tlcDarkblue{article}.
+
+% ------------------------------------------------------------------------------
+
+\clearpage
+\subsection{\tlcVE} \label{sec:version}
+\tlcA\ will populate the builtin header and footer with information extracted
+from \tlcVE\ when it is present.  \tlcVE\ is a comma-separated-variable file
+that uses the pipe character as the field delimiter.  \tlcVE\ uses the following
+column names:
+
+\begin{description}[style=nextline]
+  \item[version] The version value is typeset in the rhead area.  This field is
+    used to convey the version the document was at the date it reached its
+    current state.
+
+  \item[date] The date value is typeset in the rhead area.  This field is used
+    to communicate when the document transitioned into its current state.
+
+  \item[status] The status value is typeset in the rhead area.  This field is
+    used to convey the document state such as Approved, Draft, Effective, or
+    Obsolete.
+
+  \item[instatution] The institution value is typeset in the lfoot area.  This
+    field is used to tell the reader the author name or company name.
+
+  \item[permission]  The permission value is typeset in the cfoot area.  This
+    field is used to identify confidentiality or a particular license. 
+
+\end{description}
+
+The extaction methods are shown below.
+\begin{lstlisting}[basicstyle=\tiny]
+  % Extract document status, document date and document version from
+  % \tlc at versionFile.
+  % Argument:
+  %   1 - the column name to extract from the data file.
+  \newcommand{\tlcVersionPart}[1]{
+    \csvreader[separator=pipe]
+    {\tlc at versionFile}{
+      1=\version,
+      2=\date,
+      3=\status,
+      4=\instatution,
+      5=\permission
+    }{#1}
+  }%
+
+  % Define extractions macros when \tlc at versionFile exists.
+  \IfFileExists{\tlc at versionFile}
+  { 
+    \def\tlc at version{\tlcVersionPart{\version}}
+    \def\tlc at date{\tlcVersionPart{\date}}
+    \def\tlc at status{\tlcVersionPart{\status}}
+    \def\tlc at instatution{\tlcVersionPart{\version}}
+    \def\tlc at permission{\tlcVersionPart{\version}}
+  }
+  {% Else: no operation because tlc at versionFile does not exist. 
+  }
+\end{lstlisting}
+
+% ------------------------------------------------------------------------------
+
+\subsection{\tlcLG}
+\tlcA\ will typeset the lhead area with \tlcLG\ when it is present. Make sure
+your logo's height is not larger than 34pt to avoid `Package Fancyhdr Warning:
+\\headheight is to small' warning.
+
+% ------------------------------------------------------------------------------
+
+\clearpage
+\section{Definitions \& Commands}
+\subsection{\tlcBL}
+Page layout is rotated 90\textdegree\ clockwise resulting in a landscape page
+orientation.  Landscape orientation remains active until \tlcEL.
+
+\subsection{\tlcEL}
+Page layout is returned to portrate orientation when \tlcEL\ is reached.
+
+\subsection{\tlcDB}
+\tlcDB\ is used throughout this document to render text using rbg\{0,0,0.5\}. 
+\tlcDB\ is safe to use within your document.
+
+\subsection{\tlcTOC}
+\tlcTOC\ creates the document layout showen in Figure \ref{fig:layout}.  Section
+\ref{sec:TAA} shows an example implementation.
+
+\subsection{\tlcNCT}
+New \tlcNCT\ are Left, Center, and Right, respectively are
+designed to use with longtable.  Data is wrapped within a table cell.   The
+parameter defines the column width.  As an example, L{2cm} yields a Left
+aligned, ragged right, wrapped text within a 2cm wide cell.  
+
+\begin{lstlisting}[basicstyle=\tiny]
+\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash}p{#1}}
+\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash}p{#1}}
+\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash}p{#1}}
+\end{lstlisting}
+
+\subsection{\tlcAL}
+\tlcAL\ is an architectural hook the Author should use when it becomes necessary
+to use packages not provided by \tlcA\, and to design commands that are specific
+to your document.
+
+\subsection{\tlcHF}
+\tlcHF\ is an architectural hook the Author should use to completely override
+the document layout \tlcA\ implements.
+
+\subsection{\tlcVE}
+\tlcVE\ is by used \tlcA\ to populate the document header \& footer.  Refer to
+section \ref{sec:version} for \tlcVE\ definitions. \tlcVE\ is not
+used by \tlcA\ when \tlcHF\ is define.  However, you might want to use the
+version hook by defining \tlcVE\ and using the commands below to extract data
+from \tlcVE in your \tlcHF.
+\begin{enumerate}
+  \item \tlcVC\
+  \item \tlcDC\
+  \item \tlcSC\
+  \item \tlcIC\
+  \item \tlcPC\
+\end{enumerate}
+
+\subsection{\tlcLG}
+\tlcLG\ is used to place your logo in the header created by \tlcA. 
+% ------------------------------------------------------------------------------
+
+\clearpage
+\section{Required Packages}
+This section documents the dependencies of the required package tlc-article has.
+Package names are listed in alphabetical order. A complete description of each
+package is found at \url{http://www.ctan.org/}. At this writing, you can type in the
+package name and press the search button to learn more about each package.
+
+% Define the column names used by csvreader when reading \packageFile.
+\csvnames{tlcPkgNames}{
+   1=\name
+  ,2=\description
+}
+
+% Define the table style used to report the required package names and
+% descriptions.
+\csvstyle{tlcPkgStyle}{
+  longtable=|L{3cm}|L{12cm}|
+  ,table head=\hline Name & Description\\\hline\hline\endhead
+  ,late after line=\\\hline
+  ,tlcPkgNames
+}
+
+% Render pckFile using pckStyle as a longtable.
+\csvreader[tlcPkgStyle, separator=pipe]{\tlcPkgFile}{}{\name & \description}
+% ------------------------------------------------------------------------------
+
+\end{document}


Property changes on: trunk/Master/texmf-dist/doc/latex/tlc-article/GettingStarted.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tlc-article/GettingStarted.texx
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tlc-article/GettingStarted.texx	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tlc-article/GettingStarted.texx	2018-05-31 21:51:17 UTC (rev 47891)
@@ -0,0 +1 @@
+\input{GettingStarted.tex}

Added: trunk/Master/texmf-dist/doc/latex/tlc-article/LICENSE
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tlc-article/LICENSE	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tlc-article/LICENSE	2018-05-31 21:51:17 UTC (rev 47891)
@@ -0,0 +1,29 @@
+BSD 3-Clause License
+
+Copyright (c) 2018, Gary Allan Howard
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+  list of conditions and the following disclaimer.
+
+* 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.
+
+* Neither the name of the copyright holder nor the names of its
+  contributors may be used to endorse or promote products derived from
+  this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 COPYRIGHT HOLDER OR CONTRIBUTORS 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.

Added: trunk/Master/texmf-dist/doc/latex/tlc-article/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tlc-article/README.md	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tlc-article/README.md	2018-05-31 21:51:17 UTC (rev 47891)
@@ -0,0 +1,27 @@
+#![](data/logo.png)
+The **tlc_article** repository uses a SCRUM framework adapted to standard GitHub
+tooling.  **tlc_article** is integrated with Travis-ci.org for continuous
+integration and AllanConsulting.slack.com for centralized notification.
+
+## Installation are done Locally or Globally
+### Local Installation
+```bash
+$ cd $HOME
+$ git clone git at github.com:Traap/tlc-article.git
+$ cd tlc-article
+$ cp -v tlc-article.cls $HOME/mydoc
+$ cp -v tlc-article.cls $HOME/mydoc/.
+```
+
+### Global Installation
+```bash
+$ cd $HOME
+$ git clone git at github.com:Traap/tlc-article.git
+$ cd tlc-article
+$ sudo mkdir -p $(kpsewhich -var-value TEXMFLOCAL)/tex/latex/tlc-article
+$ sudo mv -v tlc-article.cls $(kpsewhich -var-value TEXMFLOCAL)/tex/latex/tlc-article/.
+$ sudo mktexlsr $(kpsewhich -var-value TEXMFLOCAL)
+```
+# Project Management
+Please refer to my [Lightweight Project Mangement](https://github.com/Traap/lpm)
+for the project management strategy I use.


Property changes on: trunk/Master/texmf-dist/doc/latex/tlc-article/README.md
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tlc-article/data/logo.png
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/tlc-article/data/logo.png
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tlc-article/data/logo.png	2018-05-31 21:50:06 UTC (rev 47890)
+++ trunk/Master/texmf-dist/doc/latex/tlc-article/data/logo.png	2018-05-31 21:51:17 UTC (rev 47891)

Property changes on: trunk/Master/texmf-dist/doc/latex/tlc-article/data/logo.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tlc-article/data/required-packages.csv
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tlc-article/data/required-packages.csv	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tlc-article/data/required-packages.csv	2018-05-31 21:51:17 UTC (rev 47891)
@@ -0,0 +1,25 @@
+name       | description
+appendix   | The appendix package provides various ways of formatting the titles of appendices. Also (sub)appendices environments are provided that can be used, for example, for per chapter/section appendices.
+array      | An extended implementation of the array and tabular environments which extends the options for column formats, and provides `programmable' format specifications.
+csvsimple  | The package provides a simple \LaTeX\ interface for the processing of files with comma separated values (CSV); it relies on the key value syntax supported by pgfkeys to simplify usage.
+enumitem   | This package provides user control over the layout of the three basic list environments: enumerate, itemize and description.
+fancyhdr   | The package provides extensive facilities, both for constructing headers and footers, and for controlling their use (for example, at times when \LaTeX\ would automatically change the heading style in use).
+fontenc    | The package alows the user to select font encodings, and for each encoding provides an interface to `font-encoding specific' commands for each font.
+geometry   | The package provides an easy and flexible user interface to customize page layout, implementing autocentering and auto-balancing mechanisms so that the users have only to give the least description for the page layout.
+graphicx   | The package builds upon the graphics package, providing a key-value interface for optional arguments to the `includegraphics' command. This interface provides facilities that go far beyond what the graphics package offers on its own.
+hyperref   | The hyperref package is used to handle cross-referencing commands in \LaTeX\ to produce hypertext links in the document.
+lastpage   | Reference the number of pages in your \LaTeX\ document through the introduction of a new label which can be referenced like `gpageref{LastPage}' to give a reference to the last page of a document.
+listings   | The package enables the user to typeset programs (programming code) within \LaTeX; the source code is read directly by \TeX\ -- no frontend processor is needed.
+lmodern    | Latin modern fonts
+longtable  | Longtable allows you to write tables that continue to the next page. You can write captions within the table (typically at the start of the table), and headers and trailers for pages of table.
+makecell   | This package supports common layouts for tabular column heads in whole documents, based on one-column tabular environment.
+multicol   | Multicol defines a multicols environment which typesets text in multiple columns (up to a maximum of 10), and (by default) balances the end of each column at the end of the environment.
+parskip    | Simply changing `gparskip' and `parindent' leaves a layout that is untidy; this package (though it is no substitute for a properly-designed class) helps alleviate this untidiness.
+pdflscape  | The package adds PDF support to the landscape environment of package lscape, by setting the PDF /Rotate page attribute.
+pdfpages   | This package simplifies the inclusion of external multipage PDF documents in \LaTeX\ documents.
+spverbatim | The spverbatim package provides an `gspverb' macro that is analogous to 'verb' and an spverbatim environment that is analogous to verbatim with the difference being that `spverb' and spverbatim allow \LaTeX\ to break lines at space characters.
+tabularx   | The package defines an environment tabularx, an extension of tabular which has an additional column designator, X, which creates a paragraph-like column whose width automatically expands so that the declared width of the environment is filled.
+textcomp   | The package supports the Text Companion fonts, which provide many text symbols (such as baht, bullet, copyright, musicalnote, onequarter, section, and yen), in the TS1 encoding.
+titling    | The titling package provides control over the typesetting of the `gmaketitle' command and `thanks' commands, and makes the `title', `author' and `date' information permanently available.
+tocloft    | Provides control over the typography of the Table of Contents, List of Figures and List of Tables, and the ability to create new `List of ...'. The ToC `gparskip' may be changed.
+xcolor     | The package starts from the basic facilities of the color package, and provides easy driver-independent access to several kinds of color tints, shades, tones, and mixes of arbitrary colors.


Property changes on: trunk/Master/texmf-dist/doc/latex/tlc-article/data/required-packages.csv
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tlc-article/data/version.csv
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tlc-article/data/version.csv	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tlc-article/data/version.csv	2018-05-31 21:51:17 UTC (rev 47891)
@@ -0,0 +1,2 @@
+version | date           | status   | institution | permission
+v1.0.10 | May 30th, 2018 | Released | Traap       | BSD-3-Clause


Property changes on: trunk/Master/texmf-dist/doc/latex/tlc-article/data/version.csv
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tlc-article/doc/sprint.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tlc-article/doc/sprint.md	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/tlc-article/doc/sprint.md	2018-05-31 21:51:17 UTC (rev 47891)
@@ -0,0 +1,9 @@
+| Fcevag | Fgneg      | Raq        | Cbvagf  | Vffhrf  |
+| ------ | ---------- | ---------- | ------: | ------: |
+| i1.0.6 | 2018-01-01 | 2018-03-18 | 1       | 1       |
+| i1.0.5 | 2018-01-01 | 2018-03-17 | 5       | 5       |
+| i1.0.4 | 2017-01-17 | 2017-02-02 | 11      | 6       |
+| i1.0.3 | 2017-01-14 | 2017-01-16 | 9       | 5       |
+| i1.0.2 | 2017-01-11 | 2017-01-13 | 5       | 3       |
+| i1.0.1 | 2017-01-08 | 2017-01-10 | 9       | 8       |
+| i1.0.0 | 2017-01-05 | 2017-01-07 | 10      | 5       |


Property changes on: trunk/Master/texmf-dist/doc/latex/tlc-article/doc/sprint.md
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/tlc-article/images/titlepage.png
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/tlc-article/images/titlepage.png
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tlc-article/images/titlepage.png	2018-05-31 21:50:06 UTC (rev 47890)
+++ trunk/Master/texmf-dist/doc/latex/tlc-article/images/titlepage.png	2018-05-31 21:51:17 UTC (rev 47891)

Property changes on: trunk/Master/texmf-dist/doc/latex/tlc-article/images/titlepage.png
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/tlc-article/tlc-article.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tlc-article/tlc-article.cls	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/tlc-article/tlc-article.cls	2018-05-31 21:51:17 UTC (rev 47891)
@@ -0,0 +1,297 @@
+% ------------------------------------------------------------------------------
+% Class: tlc-article
+%
+% Purpose: This LaTeX class provides an article implementation that standardizes
+% a document layout intended for formal documents.
+% ------------------------------------------------------------------------------
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{tlc-article}[2018/05/30 v1.0.10 Traap LaTeX Class Article]
+
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
+\ProcessOptions
+
+\LoadClass{article}
+
+% ------------------------------------------------------------------------------
+% Page layout
+\RequirePackage{parskip}                   % Blank line after section break.
+\RequirePackage[a4paper,top=1.0in,bottom=1.0in,left=1.0in,right=1.0in]{geometry}
+\RequirePackage{multicol}
+\setlength{\parskip}{0.5em}
+
+% ------------------------------------------------------------------------------
+% Fonts etc.
+\RequirePackage{lmodern}
+\RequirePackage[T1]{fontenc}
+\RequirePackage{textcomp}
+
+% ------------------------------------------------------------------------------
+% Color, Graphics and links.
+\RequirePackage{graphicx}
+\RequirePackage[table]{xcolor}
+\definecolor{darkblue}{rgb}{0,0,0.5}
+
+% ------------------------------------------------------------------------------
+% Listings and verbatim
+\RequirePackage{listings}
+\RequirePackage{spverbatim}
+
+% ------------------------------------------------------------------------------
+% Arrays, list and tables
+\RequirePackage{array}
+\RequirePackage{csvsimple}
+\RequirePackage{enumitem}
+\RequirePackage{longtable}
+\RequirePackage{makecell}
+\RequirePackage{tabularx}
+\setlength{\parindent}{0pt}
+
+% ------------------------------------------------------------------------------
+% pdf
+\RequirePackage{pdflscape}
+\RequirePackage{pdfpages}
+
+% ------------------------------------------------------------------------------
+% Misc
+\RequirePackage[toc,page]{appendix}
+
+% ------------------------------------------------------------------------------
+% This function is used to simplify making textcolor darkblue.
+\newcommand{\tlcDarkblue}[1]{\textcolor{darkblue}{#1}}
+
+% ------------------------------------------------------------------------------
+% Define the optional input files.
+\def\tlc at location{data}
+\def\tlc at logoFile{\tlc at location/logo.png}
+\def\tlc at versionFile{\tlc at location/version.csv}
+\def\tlc at additionalLayout{\tlc at location/additional-layout.tex}
+\def\tlc at headerFooter{\tlc at location/header-footer.tex}
+
+% New column types: L, C, and R are Left, Center, and Right, respectively are
+% designed to use with longtable.  Data is wrapped within a table cell.   The
+% parameter defines the column width.  As an example, L{2cm} yields a Left
+% aligned, ragged right, wrapped text within a 2cm wide cell.
+\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash}p{#1}}
+\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash}p{#1}}
+\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash}p{#1}}
+
+% ------------------------------------------------------------------------------
+% We define colors that we would like to use throughout our documents.
+\definecolor{codegreen}{rgb}{0,0.6,0}
+\definecolor{codegray}{rgb}{0.5,0.5,0.5}
+\definecolor{codepurple}{rgb}{0.58,0,0.82}
+\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
+
+% ------------------------------------------------------------------------------
+% tlcBeginLandscape and tlcEndLandscape are two new commands used to simplify
+% setting page orientation to landscape and consistently setting margins.
+\newcommand{\tlcBeginLandscape}{%
+  \begin{landscape}%
+  \newgeometry{top=1in, bottom=1in,left=1in,right=1in}%
+}%
+\newcommand{\tlcEndLandscape}{%
+  \restoregeometry%
+  \end{landscape}%
+}
+
+% ------------------------------------------------------------------------------
+% We want our table of contents to use dots as a leader.
+\RequirePackage{tocloft}
+\renewcommand\cftsecleader{\cftdotfill{\cftdotsep}}
+
+% ------------------------------------------------------------------------------
+% We want to allow the calling document to setup additional layout.
+\IfFileExists{\tlc at additionalLayout}
+  {\input{\tlc at additionalLayout}}
+  {}
+
+% ------------------------------------------------------------------------------
+% Create a beautiful document header and document footer using the packages 
+% listed below.
+\RequirePackage{fancyhdr}   % Page layout in \LaTeX
+\RequirePackage{titling}    % Control over \maketitle & \thanks
+\RequirePackage{lastpage}   % Page n of m
+\pagestyle{fancy}           % fancy page style
+
+% ------------------------------------------------------------------------------
+% Extract document status, document date and document version from
+% \tlc at versionFile.
+% Argument:
+%   1 - the column name to extract from the data file.
+\newcommand{\tlcVersionPart}[1]{
+  \csvreader[separator=pipe]
+  {\tlc at versionFile}{
+    1=\version,
+    2=\date,
+    3=\status,
+    4=\institution,
+    5=\permission
+  }{#1}
+}%
+
+% ------------------------------------------------------------------------------
+% Define extractions macros when \tlc at versionFile exists.
+\IfFileExists{\tlc at versionFile}
+{ 
+  \def\tlc at version{\tlcVersionPart{\version}}
+  \def\tlc at date{\tlcVersionPart{\date}}
+  \def\tlc at status{\tlcVersionPart{\status}}
+  \def\tlc at institution{\tlcVersionPart{\institution}}
+  \def\tlc at permission{\tlcVersionPart{\permission}}
+}
+{% Else: no operation because tlc at versionFile does not exist. 
+}
+
+% ------------------------------------------------------------------------------
+% We want to allow the calling document to override the headers and footers that
+% we are defining.
+\IfFileExists{\tlc at headerFooter}
+{ % use the customer header and footer defined by \tlc at headerfooter
+ \input{\tlc at headerFooter}
+}  
+{ % Else : header and footer applied to all pages.
+  \IfFileExists{\tlc at logoFile}
+  { % Typeset the logo in the left side of the document header. 
+    \lhead{\includegraphics[width=3cm,height=1cm]{\tlc at logoFile}}
+  }
+  {% Else: no operation because tlc at logoFile does not exist.
+  }
+  % Typeset the title in the center of the document header.
+  \chead{\large{\thetitle}}
+  % Typeset version information in the right side of the document header. 
+  \IfFileExists{\tlc at versionFile}
+  { 
+    % document status, document date and document version.
+    \rhead{\tiny \tlc at status \\ \tlc at date \\ \tlc at version}
+    % document owner.  This maybe a person or company name.
+    \lfoot{\tiny \tlc at institution}
+    % document license. This maybe a license or word like confidential.
+    \cfoot{\tiny \tlc at permission}
+  }
+  {% Else: no operation because tlc at versionFile does not exist. 
+  }
+  \renewcommand{\headrulewidth}{0.1pt}
+  % eliminate head height too small warning, which is occurring because
+  % we are using multiple lines in our header.
+  \setlength\headheight{34.0pt}
+  % footer applied to all pages.
+  \rfoot{\tiny{Page \thepage~of~\pageref{LastPage}}}
+  \renewcommand{\footrulewidth}{0.1pt}
+  % we want our header and footer to remain consistent with a table of
+  % contents that span multiple pages.
+  \AtBeginDocument{\addtocontents{toc}{\protect\thispagestyle{fancy}}}
+}
+
+% ------------------------------------------------------------------------------
+% We define colors that are used throughout the document.
+\RequirePackage[colorlinks]{hyperref}
+\definecolor{darkblue}{rgb}{0,0,0.5}
+\hypersetup{
+  bookmarksopen   = true,
+  citebordercolor = white!100,
+  citecolor       = darkblue,
+  filebordercolor = white!100,
+  filecolor       = darkblue ,
+  linkbordercolor = white!100,
+  linkcolor       = darkblue,
+  linktoc         = all,
+  menubordercolor = white!100,
+  pdfauthor       = {},
+  pdfborder       = {0 0 0 [0 0]},
+  pdfkeywords     = {},
+  pdfstartview    = FitH,
+  pdfsubject      = {},
+  pdftitle        = {},
+  runbordercolor  = white!100,
+  urlbordercolor  = white!100,
+  urlcolor        = darkblue
+}
+
+% ------------------------------------------------------------------------------
+% We define colors that are used when includeing code files (software). 
+\lstdefinestyle{tlcStyle}{
+        backgroundcolor=\color{backcolour},
+        commentstyle=\color{codegreen},
+        keywordstyle=\color{magenta},
+        numberstyle=\tiny\color{codegray},
+        stringstyle=\color{codepurple},
+        basicstyle=\footnotesize,
+        breakatwhitespace=false,
+        breaklines=true,
+        captionpos=b,
+        keepspaces=true,
+        numbers=left,
+        numbersep=4pt,
+        showspaces=false,
+        showstringspaces=false,
+        showtabs=false,
+        tabsize=2
+}
+\lstset{style=tlcStyle}
+
+% ------------------------------------------------------------------------------
+% End Row : Generally applied to the end of a table row.
+\newcommand{\ER}{\\ \hline}%
+
+% ------------------------------------------------------------------------------
+% Macro to include a file if it exists.
+% 1 = the file path to input
+\newcommand{\inputIfExists}[1]{\IfFileExists{#1}{\input{#1}}{}}%
+
+% ------------------------------------------------------------------------------
+% Each document uses the same author name, title page and table of contents.
+% Arguments:
+%   1 - the title
+%   2 - the author
+%   3 - the abstract
+\newcommand{\tlcTitlePageAndTableOfContents}[3]{%
+  \title{#1}%
+  \author{#2}%
+  \maketitle%
+  \begin{abstract}#3\end{abstract}%
+  \tableofcontents%
+  \thispagestyle{fancy}%
+  \clearpage%
+}%
+
+% ------------------------------------------------------------------------------
+% We define tlcDebug to aid our users when they are debugging their document.
+% tlcDebug should be placed at the end of your document to allow LaTeX to 
+% fully expand all macros and definitions.
+\newcommand{\tlcIsDefined}[1]%
+{\IfFileExists{#1}%
+  {\textcolor{green}{DEFINED}}%
+  {\textcolor{red}{NOT DEFINED}}%
+}%
+\newcommand{\tlcDebug}{%
+  \clearpage
+  \section{tlc-article Debug}
+  \subsection{tlc-article default files}
+  \begin{description}[align=right,leftmargin=*,labelindent=5cm]
+    \item[tlc at location:]\tlc at location
+    \item[tlc at additionalLayout:]\tlc at additionalLayout
+    \item[tlc at headerFooter:]\tlc at headerFooter
+    \item[tlc at versionFile:]\tlc at versionFile
+    \item[tlc at logoFile:]\tlc at logoFile
+    \item[tlc at versionFile:]\tlc at versionFile
+  \end{description}
+  %
+  \subsection{tlc-article file hooks}
+  \begin{description}[align=right,leftmargin=*,labelindent=5cm]
+    \item [tlc at additionalLayout:]\tlcIsDefined{\tlc at additionalLayout}
+    \item [tlc at headerFooter:]\tlcIsDefined{\tlc at headerFooter}
+    \item [tlc at logoFile:]\tlcIsDefined{\tlc at logoFile}
+    \item [tlc at versionFile:]\tlcIsDefined{\tlc at versionFile}
+  \end{description}
+  %
+  \subsection{tlc-article header and footer hooks}
+  \begin{description}[align=right,leftmargin=*,labelindent=5cm]
+    \item[tlc at version:] \tlc at version
+    \item[tlc at date:] \tlc at date
+    \item[tlc at status:] \tlc at status
+    \item[tlc at institution:] \tlc at institution
+    \item[tlc at permission:] \tlc at permission
+  \end{description}
+}%
+% ------------------------------------------------------------------------------
+\endinput


Property changes on: trunk/Master/texmf-dist/tex/latex/tlc-article/tlc-article.cls
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/tlpkg/bin/tlpkg-ctan-check
===================================================================
--- trunk/Master/tlpkg/bin/tlpkg-ctan-check	2018-05-31 21:50:06 UTC (rev 47890)
+++ trunk/Master/tlpkg/bin/tlpkg-ctan-check	2018-05-31 21:51:17 UTC (rev 47891)
@@ -639,7 +639,7 @@
     titlecaps titlefoot titlepages titlepic titleref titlesec titling
     tkz-base tkz-berge tkz-doc tkz-euclide tkz-fct tkz-graph
     tkz-kiviat tkz-linknodes tkz-orm tikz-page tkz-tab
-    tlc2
+    tlc-article tlc2
     tocbibind tocdata tocloft tocvsec2 todo todonotes
     tokenizer toolbox tools topfloat totcount totpages toptesi
     tpslifonts tqft

Modified: trunk/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc
===================================================================
--- trunk/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc	2018-05-31 21:50:06 UTC (rev 47890)
+++ trunk/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc	2018-05-31 21:51:17 UTC (rev 47891)
@@ -156,6 +156,7 @@
 depend thucoursework
 depend thuthesis
 depend timbreicmc
+depend tlc-article
 depend toptesi
 depend tudscr
 depend tugboat

Added: trunk/Master/tlpkg/tlpsrc/tlc-article.tlpsrc
===================================================================


More information about the tex-live-commits mailing list