From 62d489811261e699b63c3e6a0369cdb1c8367015 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 14 Aug 2024 19:49:12 +0000 Subject: hebdomon (14aug24) git-svn-id: svn://tug.org/texlive/trunk@72033 c570f23f-e606-0410-a88d-b1316a301751 --- .../doc/latex/hebdomon/HebdomonGuide.pdf | Bin 0 -> 544450 bytes .../doc/latex/hebdomon/HebdomonGuide.tex | 461 +++++++++++++++++++++ Master/texmf-dist/doc/latex/hebdomon/README.md | 18 + .../doc/latex/hebdomon/figures/innsbruck.jpg | Bin 0 -> 421584 bytes Master/texmf-dist/tex/latex/hebdomon/hebdomon.cls | 412 ++++++++++++++++++ Master/tlpkg/bin/tlpkg-ctan-check | 3 +- Master/tlpkg/libexec/ctan2tds | 1 + Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc | 1 + Master/tlpkg/tlpsrc/hebdomon.tlpsrc | 0 9 files changed, 895 insertions(+), 1 deletion(-) create mode 100644 Master/texmf-dist/doc/latex/hebdomon/HebdomonGuide.pdf create mode 100644 Master/texmf-dist/doc/latex/hebdomon/HebdomonGuide.tex create mode 100644 Master/texmf-dist/doc/latex/hebdomon/README.md create mode 100644 Master/texmf-dist/doc/latex/hebdomon/figures/innsbruck.jpg create mode 100644 Master/texmf-dist/tex/latex/hebdomon/hebdomon.cls create mode 100644 Master/tlpkg/tlpsrc/hebdomon.tlpsrc diff --git a/Master/texmf-dist/doc/latex/hebdomon/HebdomonGuide.pdf b/Master/texmf-dist/doc/latex/hebdomon/HebdomonGuide.pdf new file mode 100644 index 00000000000..f458c73d8ed Binary files /dev/null and b/Master/texmf-dist/doc/latex/hebdomon/HebdomonGuide.pdf differ diff --git a/Master/texmf-dist/doc/latex/hebdomon/HebdomonGuide.tex b/Master/texmf-dist/doc/latex/hebdomon/HebdomonGuide.tex new file mode 100644 index 00000000000..714857cf405 --- /dev/null +++ b/Master/texmf-dist/doc/latex/hebdomon/HebdomonGuide.tex @@ -0,0 +1,461 @@ +% Load the base class +\documentclass[minted, draw]{../tex/hebdomon} + +\begin{document} + +\title{Hebdomon \\ Report and Documentation Standard} +\author{v0.1 - Angry Avocado} +\StudentName{D. T. McGuiness} +\date{dtm@mci4me.at} + +\publishers{ + \begin{tabular}[!b]{rl} + \textbf{Student Name} & xxxxx \\[3pt] + \textbf{Student Number} & xxxxx \\[3pt] + \textbf{Module Name} & xxxxx + \end{tabular}\\[20pt] + } + +\maketitle +\dominitoc +\tableofcontents +\newpage + +\Chapter{The Hebdomon Template} +\Section{Introduction} + +This document is designed to abstract a significant portion of the +commands and MACROs to hide away the programming aspect and ease into +LaTeX programming. While some commands are have been changed \hlight{NO} +command has been overwritten so feel free to use the original ones +if you wish. + +\begin{warning} + As to the best of the authors knowledge, the original commands should work + but the aesthetics may be compromised. +\end{warning} + +\Section{Title Formatting} + +To begin a new content, always start the content with a chapter heading. To +insert the chapter with an additional \lstinline[columns=fixed]{minitoc} +use \lstinline[columns=fixed]{\Chapter}, which produces an heading as +you see at the beginning of this page, to have a heading without +a \lstinline[columns=fixed]{minitoc} use the standard +\lstinline[columns=fixed]{\chapter}. + +The document relies on the user to use the \hlight{correct} title commands to +keep the formatting consistent. The commands that starting with a +capital letter are the overloaded commands of the standard ones. +The following are the current ones: +% +\begin{code}{python} +\Chapter{...} +\Section{...} +\Subsection{...} +\Subsubsection{...} +\end{code} +% +\begin{warning} + Unless there is a specific reason, it is suggested to use the aforementioned + commands. However, original LaTeX command should work as well if you want to use. +\end{warning} + +\Subsection{Page Geometry} + +The page geometry is set to the following settings. This is done using the +standard package \pcode{\usepackage{geometry}} which is defined in the +\pcode{Hebdomon.cls}. +% +\begin{itemize}[leftmargin=!,labelindent=-29.2pt] + \item[\textbf{top}] 2.5cm, + \item[\textbf{right}] 2.0cm, + \item[\textbf{bottom}] 2.5cm, + \item[\textbf{left}] 3.0cm. +\end{itemize} +% +\Section{Image Positioning} +% +The image positioning could be done with the following code snippet: +% +\begin{code}{latex} +\begin{figure}[ht] + \centering + \includegraphics[options]{figures/path.pdf} + \caption{\label{fig:label} } +\end{figure} +\end{code} +% +Here there are a few options worth mentioning: +% +\begin{hgitemize} + \item[\pcode{figures/path}] The place where the image is kept. If the + image is in the same folder where the main.tex file resides, it is as + simple as writing the files name. If the file is in a folder called + image, just write \pcode{image/innsbruck.jpg}. Finally if the image is + in a higher directory (i.e., image is in folderA/innsbruck.jpg and the + main tex is in folderA/document/main.tex then the path becomes \pcode{../innsbruck.jpg} + \item[\pcode{\caption{..}}] Where you write the caption of the image. + For consistency make sure every image has a caption as if the image does not + need a caption, maybe it not be present to begin with. + \item[\pcode{label{}}] This is an identifier for you to use when you need + to cite this Figure in a place somewhere. For example if you were to have + and image with the following: +\end{hgitemize} +% +\begin{code}{latex} +\begin{figure}[ht] + \centering + \includegraphics[width=\textwidth]{figures/path.pdf} + \caption{A photo I found on the web.}\label{fig:innsbruck} +\end{figure} +\end{code} +% +\begin{hgitemize} + \item[] Now this image is referenced as \pcode{fig:innsbruck}, which + means if we write the following: +\end{hgitemize} +% +\begin{code}{text} +To see the image, have a look at Figure \ref{fig:innsbruck} +\end{code} +% +This line of command will be presented as +% +\begin{excerpt} + To see the image, have a look at Figure 1.1. +\end{excerpt} +% +Finally you can see the image here as well. +% +\begin{figure}[ht] + \centering + \includegraphics[width=\linewidth]{figures/innsbruck.jpg} + \caption{The famous Innsbruck houses near the river Inn. This image is + placed with a width value of \pcode{width=\linewidth}. This is also + a good opportunity to showcase the hanging behaviour of the figure + caption.} +\end{figure} +% +\Section{Defined Environments} +% +\begin{hgitemize} + \item[\pcode{excerpt}] The template relies on the excellent \lstinline[columns=fixed]{tcolorbox} + package for formatting the boxes within the document and for that end different styles were created. + \item[] Sometimes one needs to quote either a proverb or to create drama, for this use + the \lstinline[columns=fixed]{excerpt} environment with the following notation and effect. +\end{hgitemize} +% +\begin{code}{latex} +\begin{excerpt} + To be, or not to be... +\end{excerpt} +\end{code} +% +\begin{hgitemize} + \item[] Compiling this code snippet would show as in the document +\end{hgitemize} +% +\begin{excerpt} + To be, or not to be... +\end{excerpt} +% +\begin{itemize}[leftmargin=!,labelindent=-29.2pt] + \item[\pcode{code}] During the preparation of your document, it is useful to showcase + some code either in the shape of all the document or a snippet of it. + There are two (\hlight{2}) ways of doing this where the first one will be discussed here. + \item[] For example to print out a hello world in python, please use the following environment +\end{itemize} +% +\begin{verbatim} +\begin{code}{python} +print("Hello, World!") +\end{code} +\end{verbatim} +% +Producing the following: +% +\begin{code}{python} +print("Hello, World!") +\end{code} +% +The class also come with some predefined environments to modify the behaviour/aesthetics of the document. +% +Highlighting text is \hlight{very easy}, here is an example on how to write one. + +\begin{code}{latex} +Highlighting text is \hlight{very easy}, here is an example: +\end{code} + +\begin{itemize}[leftmargin=!,labelindent=-29.2pt] + \item[\pcode{example}] Sometimes you need to showcase an example or + need to highlight a certain idea. + For these things the environment Example could be useful. + \item[] For example to show as simple example or give a slight attention to a topic you can do the following. +\end{itemize} + +\begin{example} + This is an example. This could be anything which you would like to have a certain amount of + attention but not too much as to distract from the flow of the document. +\end{example} + +\begin{itemize}[leftmargin=!,labelindent=-29.2pt] + \item[\pcode{highlight}] Or sometimes you need to give a clear break to the flow of the + document and ask the reader to look at your banner. For that use highlight. +\end{itemize} + +\begin{highlight} + Hey! Pay attention as this is a highlight box. +\end{highlight} + +\Subsection{Writing Equations} +% +One of the strong suits of LaTeX compared to other editors and programs is +it simplicity and ease of use methods of writing equations. Consider the +following equation: +% +\begin{equation*} + f(x) = x^2 + 2x + 1 +\end{equation*} +% +In code form this would be written as: +% +\begin{code}{latex} + \begin{equation*} + f(x) = x^2 + 2x + 1 + \end{equation*} +\end{code} +% +All equations that has their newline and centre staged are mostly written +in an environment where it has a \pcode{begin} and an \pcode{end}. You may +have noticed the asterisks sign just after the equation. This implies the +environment is \hlight{not numbered}, meaning you won't be able to +reference it. This is used to limit the numbering of equations to just the +essential parts in the document and not reach 3 digits by the time you are +in page 8. For a numbered equation like the following +% +\begin{equation} + f(x) = x^2 + 2x + 1 +\end{equation} +% +You only need to do: +% +\begin{code}{latex} + \begin{equation}\label{eq:quad} + f(x) = x^2 + 2x + 1 + \end{equation} +\end{code} +% +where \pcode{\label{eq:quad}} is the equation reference label. +% +You could also make matrices as well as \pcode{amsmath} is preloaded into this template. +% +\Subsection{Designing a Table} +% +Finally, no template is done without someone telling you how a table should be designed. +% +Below is a standard table +% +\begin{table}[!ht] + \begin{NiceTabular}{rX}[rules/color=[gray]{0.9},rules/width=1pt] + \CodeBefore + \rowcolors{1}{black!5}{} + \rowcolors{3}{blue!5}{} + \Body + \toprule + \textbf{Section} & \textbf{Scientific Method Step} \\ + \midrule + \textbf{Introduction} & states your hypothesis \\ + \textbf{Methods} & details how you tested your hypothesis \\ + \textbf{Results} & provides raw (i.e., uninterpreted) data collected \\ + \textbf{Discussion} & considers whether the data you obtained support the hypothesis \\ + \bottomrule + \end{NiceTabular} + \caption{A Detailed look into the scientific method.} +\end{table} +% +And the code used to generate it: +% +\begin{code}{latex} +\begin{table}[!ht] + \begin{NiceTabular}{rX}[rules/color=[gray]{0.9},rules/width=1pt] + \CodeBefore + \rowcolors{1}{black!5}{} + \rowcolors{3}{blue!5}{} + \Body + \toprule + \textbf{Section} & \textbf{Scientific Method Step} \\ + \midrule + \textbf{Introduction} & states hypothesis \\ + \textbf{Methods} & how you tested hypothesis \\ + \textbf{Results} & provides raw data collected \\ + \textbf{Discussion} & whether it support the hypothesis \\ + \bottomrule + \end{NiceTabular} + \caption{A Detailed look into the scientific method.} +\end{table} +\end{code} + +\Chapter{Plotting your data using PGF/TikZ} + +\Section{Introduction} + +PGFplots and Tikz are powerful scripting languages allowing you to draw high-quality diagrams +using only a programming language. PGFplots are generally used for plotting data from a wide +variety of representations from simple 2D plots to complex 3D geometries. +\\ +But wikipedia description put it best: + +\begin{excerpt} + PGF/TikZ is a pair of languages for producing vector graphics + (e.g., technical illustrations and drawings) from a geometric/algebraic description, with + standard features including the drawing of points, lines, arrows, paths, circles, + ellipses and polygons. PGF is a lower-level language, while TikZ is a set of higher-level + macros that use PGF. The top-level PGF and TikZ commands are invoked as TeX macros, + but in contrast with PSTricks, the PGF/TikZ graphics themselves are described in a + language that resembles MetaPost. +\end{excerpt} + +For more info please look at the documentation \href{https://tikz.dev/pgfplots/}{here}. +It is of course up to the user to select which graphical software to produce the necessary +visual components but unless it requires complex functions/processing, it would be be easier +to have it in PGF/TikZ format for easy editing/maintenance. + +For this manual we will be looking at the three (\hlight{3}) plot types you may +encounter in your studies. +% +\Subsection{A Simple 2D Plot} +% +2D plots are simple yet powerful to show the relation of a single parameters +and its related function. +Below is an example of a simple comparison of two (\hlight{2}) functions. +% +\begin{figure}[!ht] + \centering + \begin{tikzpicture} + \begin{axis}[hebdomon, xlabel = \(x\), ylabel = {\(f(x)\)}] + % + \addplot [domain=-10:10, samples=100,red]{x^3 - 7*x - 1}; + \addlegendentry{\(x^2 - 2x - 1\)} + % + \addplot [domain=-10:10, samples=100, blue]{x^2 + 6*x + 8}; + % + \addlegendentry{\(x^2 + 2x + 1\)} + % + \end{axis} + \end{tikzpicture} + \caption{This is an example of a 2D PGF plot comparing + two functions where these functions are calculated using + PGF itself rather than entering/reading from data.} +\end{figure} +% +The image above is generated using the following code: + +\begin{code}{latex} +\begin{figure}[!ht] + \centering + \begin{tikzpicture} + \begin{axis}[hebdomon, xlabel = \(x\), ylabel = {\(f(x)\)}] + % + \addplot [domain=-10:10, samples=100,red]{x^3 - 7*x - 1}; + \addlegendentry{\(x^2 - 2x - 1\)} + % + \addplot [domain=-10:10, samples=100, blue]{x^2 + 6*x + 8}; + % + \addlegendentry{\(x^2 + 2x + 1\)} + % + \end{axis} + \end{tikzpicture} + \caption{This is an example of a 2D PGF plot comparing + two functions where these functions are calculated using + PGF itself rather than entering/reading from data.} +\end{figure} +\end{code} + +As can be seen it is relatively standard to create plots. Some aspect +which need mentioning. + +\begin{hgitemize} + \item[\pcode{\addplot}] You invoke this command when you want to + create a plot. In the square brackets (i.e., []) you insert your + \hlight{configuration} of your plot. The most important ones are + \begin{itemize} + \item[\pcode{domain}] the range in which the function will be + calculated + \item[\pcode{sample}] the number of calculations will be done + within the defined domain. + \end{itemize} +\end{hgitemize} + +\Subsection{Plotting 3D plots} + +Plotting data with PGFplots is also quite possible and will generate +great plot (as long as it is not massively complicated). For more +information on the precautions on designing 3D plots, please have a look +at \href{https://tikz.dev/pgfplots/reference-3dplots}{here}. + +Below is the prototypical plot to showcase the 3D capabilities of PGF: + +\begin{figure}[!ht] + \centering + \begin{tikzpicture} + \begin{axis}[view={25}{30},mark layer=like plot] + \addplot3 [ + surf, + shader=faceted, + fill opacity=0.75, + samples=25, + domain=-4:4, + y domain=-4:4, + on layer=main, + ] {x^2-y^2}; + \end{axis} + \end{tikzpicture} + \caption{An example 3D plot done wit PGFplots.} +\end{figure} + +And, of course the code for generating the plot is given as follows: + +\begin{code}{latex} +\begin{figure}[!ht] + \centering + \begin{tikzpicture} + \begin{axis}[view={25}{30},mark layer=like plot] + \addplot3 [ + surf, + shader=faceted, + fill opacity=0.75, + samples=25, + domain=-4:4, + y domain=-4:4, + on layer=main, + ] {x^2-y^2}; + \end{axis} + \end{tikzpicture} + \caption{An example 3D plot done wit PGFplots.} +\end{figure} +\end{code} + +Some options worth mentioning are as follows: + +\begin{hgitemize} + \item[\pcode{surf}] Generates a \hlight{surface} based on the 2D + data it was given (in this case these are $x$ and $y$. + \item[\pcode{shader}] Describes, basically how each segment should be + filled. + \item[\pcode{samples}] Similar to 2D plots, tells how many data points will + be measured. However, make a note that 3D is significantly more taxing + on the TeX memory than 2D and making this sampling high may result in + exceeding the memory limit. +\end{hgitemize} + +\end{document} + +%%% Local Variables: +%%% coding: utf-8 +%%% mode: latex +%%% TeX-command-extra-options: "-shell-escape" +%%% TeX-master: t +%%% TeX-engine: luatex +%%% End: + diff --git a/Master/texmf-dist/doc/latex/hebdomon/README.md b/Master/texmf-dist/doc/latex/hebdomon/README.md new file mode 100644 index 00000000000..cb581a6ab03 --- /dev/null +++ b/Master/texmf-dist/doc/latex/hebdomon/README.md @@ -0,0 +1,18 @@ +# Hebdomon - A Documentclass for Assignment Preparation + +## Description + +Hebdomon is a latex documentclass for streamlining document creation in latex. This +package does not ovewrite any TeX or LaTeX commands so the user could use their own +macros or other commands as they wish. + +A manual is written which can be seen in HebdomonGuide which showcases some commands written for the class. + +## Author + +This package is maintained by D. T. McGuiness: dtm@mci4me.at + +## Licence + +Released under the LaTeX Project Public License v1.3c or later. +See https://www.latex-project.org/lppl.txt diff --git a/Master/texmf-dist/doc/latex/hebdomon/figures/innsbruck.jpg b/Master/texmf-dist/doc/latex/hebdomon/figures/innsbruck.jpg new file mode 100644 index 00000000000..c42a2a0580a Binary files /dev/null and b/Master/texmf-dist/doc/latex/hebdomon/figures/innsbruck.jpg differ diff --git a/Master/texmf-dist/tex/latex/hebdomon/hebdomon.cls b/Master/texmf-dist/tex/latex/hebdomon/hebdomon.cls new file mode 100644 index 00000000000..33277f76c3a --- /dev/null +++ b/Master/texmf-dist/tex/latex/hebdomon/hebdomon.cls @@ -0,0 +1,412 @@ +% Hebdomon document class for use in report and assessment writing +% Written by D. T. McGuiness: dtm@mci4me.at + +% v0.1 - Angry Avocado [WS2024] + +\NeedsTeXFormat{LaTeX2e}[1994/06/01] +\ProvidesClass{hebdomon}[2024/08/08 v0.1 Report and Documentation standard] + +% This document is based on the excellent KOMA Script scrreprt class +% The following options are declared beforehand. + +\RequirePackage{ifthen} % require an if-else loop to +% choose depending on the field + +% Allows students to choose which package for code printing. + +\newboolean{mnt} % set bool operator for minted +\newboolean{lst} % set bool operator for lstlisting +\newboolean{drw} % set bool operator for PGF/TikZ + +%-OPTION: set option to choose minted code printing package +\DeclareOption{minted}{ + \setboolean{mnt}{true} +} + +%-OPTION: set option to choose lstlisting code printing package +\DeclareOption{lstlisting}{ + \setboolean{lst}{true} +} + +%-OPTION: set option to choose PGF/TikZ plotting packages +\DeclareOption{draw}{ + \setboolean{drw}{true} +} + +\DeclareOption*{ + \PassOptionsToClass{\CurrentOption}{scrreprt} +} +\ExecuteOptions{} +\ProcessOptions \relax + +% Load the base class to create the custom template +\LoadClass[ + bibliography = totoc, + headings = big, + captions = tableheading, + chapterprefix = true, +]{scrreprt} + +% Page Geometry ----------------------------------------------------------- +% Define the default page geometry +\RequirePackage[ + left = 3.0cm, + right = 2.0cm, + top = 2.5cm, + bottom = 2.5cm]{geometry} + +% Required Packages ------------------------------------------------------- +\RequirePackage{nicematrix} % For modern table design +\RequirePackage{booktabs} % To access \midrule \toprule \bottomrule + +% For use in referencing purposes +\RequirePackage[ + backend=bibtex]{biblatex} + +\RequirePackage{graphicx} % To enable image insertion +\RequirePackage{environ} % To allow new environments with Environ + + +\RequirePackage{lmodern} +\RequirePackage[sfdefault]{FiraSans} + +\RequirePackage{minitoc} +\RequirePackage{setspace} + +\RequirePackage{hyperref} % Allow the use of hyperlink within document + +\RequirePackage{enumitem} + +\RequirePackage{amsmath} + +\usepackage[labelfont=bf]{caption} % Set the caption style to bold + +\RequirePackage{titlesec} + +% %%%%% ----- Colour Definitions ------ %%%%% +\RequirePackage{xcolor} + +% Define the MCI colours. +\definecolor{mciRed}{HTML}{821131} +\definecolor{mciBlue}{HTML}{004983} +\definecolor{mciOrange}{HTML}{fe640b} +\definecolor{quoteColour}{HTML}{CBA6F7} +\definecolor{nord7}{HTML}{81a1c1} +\definecolor{norda}{HTML}{bf616a} +\definecolor{nord9}{HTML}{5e81ac} +\definecolor{nord13}{HTML}{ebcb8b} +\definecolor{nord14}{HTML}{a3be8c} + +% %%%%% ----- Code Presentation ----- %%%%% +% To make this class more compatible and avoid questions about pygments, +% the author has decided to use listings for code presentation, instead of +% minted. +\RequirePackage{listings} + +\lstset{ + aboveskip={1.3\baselineskip}, + basicstyle=\small\ttfamily\linespread{4}, + breaklines=false, + backgroundcolor = \color[HTML]{eff1f5}, + columns=flexible, + commentstyle=\color[HTML]{6c6f85}\ttfamily, + escapechar=@, + extendedchars=true, + identifierstyle=\color{black}, + inputencoding=latin1, + keywordstyle=\color[HTML]{fe640b}, + language=Python, + ndkeywordstyle=\color[HTML]{228B22}, + numbers=left, + numberstyle=\tiny, + prebreak = \raisebox{0ex}[0ex][0ex]{\ensuremath{\hookleftarrow}}, + showstringspaces=false, + stringstyle=\color[HTML]{40a02b}\ttfamily, + upquote=true, + emph={None}, + emphstyle={\color[HTML]{FE640B}}, + % keywordstyle=[1]{\color[HTML]{8839ef}}, + % morekeywords={(,)}, + keywordstyle=[2]\color[HTML]{D20F39}, + keywordstyle={[3]\color[HTML]{8839ef}}, + keywords=[3]{x}, +} + +% \lstset{style=mystyle} + +% New Environment Definitions --------------------------------------------- +% To create environments tcolorbox package is required to make them +% aesthetically pleasing. +\RequirePackage{tcolorbox} +\tcbuselibrary{breakable, minted, skins,theorems, hooks, most} + +% %%%%% ----- tcolorbox Templates ----- %%%%% + +% Define the excerpt environment style. +\tcbset{% + quoteTemplate/.style={% + enhanced, + breakable, + arc=0pt, + outer arc=0pt, + toprule=0pt, + rightrule=0pt, + bottomrule=0pt, + leftrule=1mm, + colback=white, + colframe=mciRed, + detach title + }% +}% + +\tcbset{% + blockTemplate/.style={% + enhanced, + breakable, + arc=0pt, + outer arc=0pt, + toprule=0pt, + rightrule=0pt, + bottomrule=0pt, + leftrule=1mm, + colback=#1!25, + colframe=#1, + coltitle=black, + detach title + }% +}% + +% %%%%% --------------------------------%%%%% + +% Environment used to insert quotations. +\NewEnviron{excerpt}[1][]{% + \begin{tcolorbox}[blockTemplate=nord7] + \BODY + \end{tcolorbox} +}% + +\NewEnviron{example}[1][]{% + \begin{tcolorbox}[blockTemplate=nord14] + \BODY + \end{tcolorbox} +}% + +\NewEnviron{highlight}[1][]{% + \begin{tcolorbox}[blockTemplate=nord13] + \BODY + \end{tcolorbox} +}% + +\NewEnviron{theory}[1][]{% + \begin{tcolorbox}[blockTemplate=black] + \BODY + \end{tcolorbox} +}% + +\NewEnviron{warning}[1][]{% + \begin{tcolorbox}[blockTemplate=norda] + \BODY + \end{tcolorbox} +}% + +\NewEnviron{hgitemize}[1][]{% + \begin{itemize}[leftmargin=!,labelindent=-29.2pt] + \BODY + \end{itemize} +}% + + + + + +% KOMA-Script Configuration ----------------------------------------------- + +\addtokomafont{chapterprefix}{\raggedleft} +\addtokomafont{chapter}{\fontsize{30}{38}\selectfont} +\addtokomafont{section}{\huge} +\addtokomafont{subsection}{\Large} +\addtokomafont{subsubsection}{\large} + +% Set the fontstyle of minitoc to that of the document +\renewcommand{\mtifont}{\large\sffamily} +\renewcommand{\mtcfont}{\small\sffamily} +\renewcommand{\mtcSfont}{\small\sffamily} +\renewcommand{\mtcSSfont}{\small\sffamily} +\renewcommand{\mtcSSSfont}{\small\sffamily} + +\newcommand{\StudentName}[1]{\author{#1}} + +% Set the depth of TOC +\setcounter{secnumdepth}{3} % number subsubsections +\setcounter{tocdepth}{3} % list subsubsections + +% Configure the document titles +\newcommand{\Chapter}[1]{\chapter{\textcolor{mciBlue}{#1}}\minitoc} +\newcommand{\Section}[1]{\section{\textcolor{mciBlue}{#1}}} +\newcommand{\Subsection}[1]{\subsection{\textcolor{mciBlue}{#1}}} +\newcommand{\Subsubsection}[1]{\subsubsection{\textcolor{mciBlue}{#1}}} + +\newcommand{\hlight}[1]{\textcolor{mciOrange}{#1}} + + +% Configure the baseline of the document +\renewcommand{\baselinestretch}{1.2} + +\renewcommand*{\chapterformat}{% + \mbox{\scalebox{1.5}{\chapappifchapterprefix{\nobreakspace}}% + \scalebox{4}{\color{mciRed}\thechapter\autodot}\enskip}} + +\newcommand{\heading}[1]{\subsubsection*{$\blacksquare$ #1}} +\newcommand{\marginsecnumber}[1]{% + \makebox[0pt][r]{#1\hspace{6pt}}% +} + +\titleformat{\section} {\normalfont\Large\bfseries} +{\marginsecnumber\thesection} {0pt} {} +\titleformat{\subsection} {\normalfont\large\bfseries} +{\marginsecnumber\thesubsection} {0pt} {} +\titleformat{\subsubsection} +{\normalfont\normalsize\bfseries} +{\marginsecnumber\thesubsubsection} +{0pt} {} +\titleformat{\paragraph}[runin] +{\normalfont\normalsize\bfseries} +{\marginsecnumber\theparagraph} +{0pt} {} +\titleformat{\subparagraph}[runin] +{\normalfont\normalsize\bfseries} +{\marginsecnumber\thesubparagraph} +{0pt} +{} + +\titlespacing*{\subsection}{0pt}{*3.25}{*1.5}% + +\setlength\parindent{0pt} % set no indent for the entire file + +\ifthenelse{\boolean{mnt}}{% + \RequirePackage{minted} + + \newcommand{\pcode}[1]{% + {% + \colorbox{gray!10}{% + \mintinline[fontsize=\small]{text}{#1}% + }% + }% + }% + + %\usemintedstyle{catppuccin-latte} + + \definecolor{catback}{HTML}{585b70} + \definecolor{catground}{HTML}{eff1f5} + + % Set box and font rules for inputminted command for paper + \newtcbinputlisting{\codeinputpaper}[4][]{% + listing file={#3}, + minted language=#2, + minted options={ + fontsize=\small, + tabsize=4, + xleftmargin=-2.25mm, + numbersep=5mm, + breaklines=true, + highlightcolor=orange!50, + %formatcom=orange!50 + },% <-- put other minted options inside the brackets + overlay unbroken and first={% + \begin{tcbclipinterior} + \fill[catback] (frame.south west) rectangle + ([xshift=1mm]frame.north west); + \fill[catback] (frame.north east) rectangle + ([xshift=-4mm, yshift=-10mm]frame.north east); + \fill[catback] + ([xshift=-4mm, yshift=-10mm]frame.north east) -- + ([xshift=0mm, yshift=-10mm]frame.north east) -- + ([xshift=0mm, yshift=-12mm]frame.north east); + \end{tcbclipinterior} + \node[rotate=-90, minimum width=1cm, anchor=north, + font=\bfseries] at ([xshift=0mm, yshift=-4mm]frame.north + east) {\tiny \textcolor{white}{#2}}; }, + sharp corners, + leftrule=1mm, + toprule=0pt, + rightrule=0pt, + bottomrule=0pt, + colback=catground, + colframe=black, + breakable, + enhanced,% <-- put other tcolorbox options here + arc=0mm, + boxrule=0pt, + frame hidden, + listing only, + minted options app={#1}} + + \RequirePackage{xpatch} + + \newenvironment{code}[1] + {% + \VerbatimEnvironment + \begin{minted}{#1}% +} +{% + \end{minted}% + } + % + \xpatchcmd{\mintinline}{\begingroup}{\begingroup\let\itshape\relax}{}{} + \xpatchcmd{\minted}{\VerbatimEnvironment}{\VerbatimEnvironment\let\itshape\relax}{}{} + \xpatchcmd{\inputminted}{\begingroup}{\begingroup\let\itshape\relax}{}{} +}{} + +\ifthenelse{\boolean{lst}}{% + \RequirePackage{listings}% + \RequirePackage{xparse} + + \NewDocumentCommand{\pcode}{v}{% + #1% + } + + \newenvironment{code}[1] + {% + \VerbatimEnvironment + \begin{lstlisting}{language=#1}% +} +{% + \end{lstlisting}% + } +}{} + + +\ifthenelse{\boolean{drw}}{% + \RequirePackage{pgfplots} % Enable to draw plots in the documents + \usepackage{tikz} % Enable Tikz and its libraries + \pgfplotsset{compat=1.18} % Set the pgf compatibility. + % + \usepgfplotslibrary{polar} % To access polarplot + % + \pgfplotsset{ + hebdomon/.style={ + minor grid style={dotted, gray!50}, + major grid style={dotted, gray!50}, + % + grid = both, + minor tick num=2, + ytick align=outside, + xtick align=outside, + axis line style={draw=none}, + axis lines = left, + % + line width=2pt, + % + legend style = { + line width=0.5pt + }, + % + every non boxed x axis/.append style={x axis line style=-}, + every non boxed y axis/.append style={y axis line style=-}, + % + }, + } +}{} + + +\endinput diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check index c583f52d73c..e8cac61ae53 100755 --- a/Master/tlpkg/bin/tlpkg-ctan-check +++ b/Master/tlpkg/bin/tlpkg-ctan-check @@ -407,7 +407,8 @@ my @TLP_working = qw( happy4th har2nat haranoaji haranoaji-extra hardwrap harmony harnon-cv harpoon harvard harveyballs harvmac hatching hausarbeit-jura havannah - hc he-she hebrew-fonts hecthese helmholtz-ellis-ji-notation helvetic + hc he-she hebdomon hebrew-fonts hecthese + helmholtz-ellis-ji-notation helvetic hep hep-acronym hep-bibliography hep-float hep-font hep-float hep-graphic hep-math hep-math-font hep-paper hep-reference hep-text hep-title hepnames hepparticles hepthesis hepunits here hereapplies heria heros-otf hershey-mp diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds index 52d3daa934a..74a35b589e1 100755 --- a/Master/tlpkg/libexec/ctan2tds +++ b/Master/tlpkg/libexec/ctan2tds @@ -1768,6 +1768,7 @@ chomp (my $ctan_root = `tlpkginfo --ctan-root`); 'grverb' => '&POSTgrverb', 'guide-latex-fr' => '&POST_rmsymlink', 'haranoaji' => '&POST_preserve_postcode', + 'hebdomon' => '&POST_onelevel', 'highlightx' => '&POST_onelevel', 'hmtrump' => '&POSThmtrump', 'huffman' => '&POST_onelevel', diff --git a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc index 415546065bb..766485fd5ce 100644 --- a/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc +++ b/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc @@ -673,6 +673,7 @@ depend harnon-cv depend harpoon depend hc depend he-she +depend hebdomon depend hep-acronym depend hep-float depend hep-math diff --git a/Master/tlpkg/tlpsrc/hebdomon.tlpsrc b/Master/tlpkg/tlpsrc/hebdomon.tlpsrc new file mode 100644 index 00000000000..e69de29bb2d -- cgit v1.2.3