texlive[72152] Master: csthm (31aug24)

commits+karl at tug.org commits+karl at tug.org
Sat Aug 31 22:17:49 CEST 2024


Revision: 72152
          https://tug.org/svn/texlive?view=revision&revision=72152
Author:   karl
Date:     2024-08-31 22:17:48 +0200 (Sat, 31 Aug 2024)
Log Message:
-----------
csthm (31aug24)

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

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/latex/csthm/
    trunk/Master/texmf-dist/doc/latex/csthm/README.md
    trunk/Master/texmf-dist/doc/latex/csthm/csthm-example.pdf
    trunk/Master/texmf-dist/doc/latex/csthm/csthm-example.tex
    trunk/Master/texmf-dist/source/latex/csthm/
    trunk/Master/texmf-dist/source/latex/csthm/csthm.dtx
    trunk/Master/texmf-dist/source/latex/csthm/csthm.ins
    trunk/Master/texmf-dist/tex/latex/csthm/
    trunk/Master/texmf-dist/tex/latex/csthm/csthm.sty
    trunk/Master/tlpkg/tlpsrc/csthm.tlpsrc

Added: trunk/Master/texmf-dist/doc/latex/csthm/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/csthm/README.md	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/csthm/README.md	2024-08-31 20:17:48 UTC (rev 72152)
@@ -0,0 +1,89 @@
+---
+title: Theorem Environments for Computer Science (`csthm.sty`)
+linter-yaml-title-alias: Theorem Environments for Computer Science (`csthm.sty`)
+date created: Monday, March 25th 2024, 14:13:16
+date modified: Saturday, August 31st 2024, 11:32:48
+aliases: [Theorem Environments for Computer Science (`csthm.sty`)]
+---
+
+# Theorem Environments for Computer Science (`csthm.sty`)
+
+## Overview
+
+The `csthm` package provides customized theorem-like environments specifically designed for computer science documents. It offers a set of pre-defined theorem styles and environments to streamline the creation of theorems, definitions, remarks, and other common structures in computer science papers and documents.
+
+## Features
+
+- **Pre-defined theorem styles:** `thmstyle`, `defstyle`, `remarkstyle`, and `hltstyle`
+- **Theorem environments:** theorem, fact, assumption, claim, conjecture, corollary, lemma, property, proposition
+- **Definition environments:** definition, example, exercise, problem, question
+- **Remark environments:** note, remark, solution
+- **Highlight environments:** important, highlight, key-point
+- **Custom environments:** case, axiom
+- **Accent Colour:** Customizable accent colour
+- **Cleveref Support:** Optional integration with `cleveref` package
+
+## Installation
+
+1. Download the `csthm.sty` file.
+2. Place it in the same directory as your LaTeX document or in your local TeX tree.
+
+## Usage
+
+Load the package in your LaTeX document:
+
+```latex
+\usepackage{csthm}
+```
+
+To use the package with `cleveref` support:
+
+```latex
+\usepackage[cleveref]{csthm}
+```
+
+## Examples
+
+```latex
+\begin{theorem}
+  This is a theorem.
+\end{theorem}
+
+\begin{definition}
+  This is a definition.
+\end{definition}
+
+\begin{remark}
+  This is a remark.
+\end{remark}
+
+\begin{case}
+  \item This is case 1.
+  \item This is case 2.
+\end{case}
+
+\begin{axiom}
+  \item This is axiom A.
+  \item This is axiom B.
+\end{axiom}
+```
+
+## Customization
+
+To change the accent colour:
+
+```latex
+\setaccentcolor{blue}
+```
+
+## License
+
+This file may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c 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.3c or later is part of all distributions of LaTeX version 2008/05/04 or later.
+
+## Author
+
+Agni Datta <agnidatta.org at gmail.com>
+
+## Bug Reports and Feature Requests
+
+Please report any issues or feature requests on the package’s GitHub repository.


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

Index: trunk/Master/texmf-dist/doc/latex/csthm/csthm-example.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/csthm/csthm-example.pdf	2024-08-31 20:16:39 UTC (rev 72151)
+++ trunk/Master/texmf-dist/doc/latex/csthm/csthm-example.pdf	2024-08-31 20:17:48 UTC (rev 72152)

Property changes on: trunk/Master/texmf-dist/doc/latex/csthm/csthm-example.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/csthm/csthm-example.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/csthm/csthm-example.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/csthm/csthm-example.tex	2024-08-31 20:17:48 UTC (rev 72152)
@@ -0,0 +1,407 @@
+\documentclass{ltxdoc}
+
+% Encoding and Fonts
+\usepackage[utf8]{inputenc}
+\usepackage[T1]{fontenc}
+\usepackage{amsfonts}
+\usepackage{amsmath}
+\usepackage{amssymb}
+\usepackage{lmodern}
+
+% Geometry and Layout
+\usepackage{csquotes}
+\usepackage[a4paper, margin=3.5cm]{geometry}
+\usepackage{microtype}
+\usepackage{parskip}
+\usepackage[onehalfspacing]{setspace}
+
+% Code Listings
+\usepackage{listings}
+\lstset{%
+    basicstyle=\scriptsize\ttfamily,
+    breaklines=true,
+    frame=single,
+    columns=fullflexible,
+    numbers=left,
+    numberstyle=\tiny\ttfamily\color{gray},
+    breakindent=0pt
+}
+
+% Colors and Hyperlinks
+\usepackage{xcolor}
+\usepackage[pdfusetitle, colorlinks=true, linkcolor=blue, urlcolor=violet]{hyperref}
+\usepackage{xurl}
+
+% Theorem-like Environments
+\usepackage{csthm}
+
+\definecolor{darkgreen}{rgb}{0,0.5,0}
+
+\newcommand{\pkg}[1]{\textsf{#1}}
+\newcommand{\opt}[1]{\texttt{#1}}
+\newcommand{\env}[1]{\texttt{#1}}
+\newcommand{\cmnd}[1]{\texttt{\textbackslash#1}}
+
+\title{The \pkg{csthm} Package}
+\author{Agni Datta \\ \texttt{agnidatta.org at gmail.com}}
+\date{Version 1.2 (August 31, 2024)}
+
+\begin{document}
+
+\maketitle
+
+\tableofcontents
+
+\section{Introduction}
+
+The \pkg{csthm} package provides a set of customised theorem-like environments specifically designed for computer science documents. It offers pre-defined theorem styles and environments to streamline the creation of theorems, definitions, remarks, and other common structures in computer science papers and documents.
+
+\section{Package Options}
+
+The \pkg{csthm} package supports the following option:
+
+\begin{description}
+	\item[\opt{cleveref}] Loads the \pkg{cleveref} package for enhanced cross-referencing capabilities. This option requires the \pkg{hyperref} package to be loaded before \pkg{csthm}.
+\end{description}
+
+\section{Usage}
+
+To use the package with default settings:
+
+\begin{verbatim}
+\usepackage{csthm}
+\end{verbatim}
+
+To use the package with \pkg{cleveref} support:
+
+\begin{verbatim}
+\usepackage{hyperref}
+\usepackage[cleveref]{csthm}
+\end{verbatim}
+
+\section{Theorem Styles}
+
+The package defines four theorem styles:
+
+\begin{description}
+	\item[thmstyle] Used for theorems, lemmas, corollaries, etc.
+	\item[defstyle] Used for definitions, examples, problems, etc.
+	\item[remarkstyle] Used for remarks, notes, solutions, etc.
+	\item[hltstyle] Used for highlighted content like important points.
+\end{description}
+
+\section{Predefined Environments}
+
+\subsection{Theorem-like Environments}
+
+\begin{itemize}
+	\item \env{theorem}
+	\item \env{fact}
+	\item \env{assumption}
+	\item \env{claim}
+	\item \env{conjecture}
+	\item \env{corollary}
+	\item \env{lemma}
+	\item \env{property}
+	\item \env{proposition}
+\end{itemize}
+
+Usage:
+\begin{verbatim}
+\begin{theorem}[Optional Title]
+    Theorem content...
+\end{theorem}
+\end{verbatim}
+
+\subsection{Definition-like Environments}
+
+\begin{itemize}
+	\item \env{definition}
+	\item \env{example}
+	\item \env{exercise}
+	\item \env{problem}
+	\item \env{question}
+\end{itemize}
+
+Usage:
+\begin{verbatim}
+\begin{definition}[Optional Title]
+    Definition content...
+\end{definition}
+\end{verbatim}
+
+\subsection{Remark-like Environments}
+
+\begin{itemize}
+	\item \env{note}
+	\item \env{remark}
+	\item \env{solution}
+\end{itemize}
+
+Usage:
+\begin{verbatim}
+\begin{remark}[Optional Title]
+    Remark content...
+\end{remark}
+\end{verbatim}
+
+\subsection{Highlight Environments}
+
+\begin{itemize}
+	\item \env{important}
+	\item \env{highlight}
+	\item \env{keypoint}
+\end{itemize}
+
+Usage:
+\begin{verbatim}
+\begin{important}[Optional Title]
+    Important content...
+\end{important}
+\end{verbatim}
+
+\subsection{Special Environments}
+
+\subsubsection{Case Environment}
+
+The \env{case} environment provides an enumerated list for describing different cases in a proof or analysis.
+
+Usage:
+\begin{verbatim}
+\begin{case}[Optional arguments for enumerate]
+    \item Case 1: ...
+    \item Case 2: ...
+\end{case}
+\end{verbatim}
+
+\subsubsection{Axiom Environment}
+
+The \env{axiom} environment provides an enumerated list for stating axioms.
+
+Usage:
+\begin{verbatim}
+\begin{axiom}[Optional arguments for enumerate]
+    \item Axiom 1: ...
+    \item Axiom 2: ...
+\end{axiom}
+\end{verbatim}
+
+\section{Customization}
+
+\subsection{Accent Color}
+
+You can customise the accent colour used in the package by redefining the \cmnd{accentcolor} command:
+
+\begin{verbatim}
+\renewcommand{\accentcolor}{blue}
+\end{verbatim}
+
+Or use the provided command:
+
+\begin{verbatim}
+\setaccentcolor{blue}
+\end{verbatim}
+
+\subsection{QED Symbol}
+
+The package redefines the QED symbol to a filled black square. You can customise this by redefining the \cmnd{qedsymbol} command:
+
+\begin{verbatim}
+\renewcommand\qedsymbol{$\square$}
+\end{verbatim}
+
+\section{Examples}
+
+Here are some examples demonstrating the usage of various environments:
+
+\begin{theorem}[Complexity of Bubble Sort]
+	The time complexity of the Bubble Sort algorithm is $\mathcal{O}(n^2)$ in the worst and average cases, where $n$ is the number of elements to be sorted.
+\end{theorem}
+
+\begin{proof}
+	Bubble Sort uses two nested loops to compare and swap adjacent elements. The outer loop runs $n-1$ times, and the inner loop runs $n-i-1$ times for each iteration $i$ of the outer loop. This results in approximately $n^2/2$ comparisons, leading to a time complexity of $\mathcal{O}(n^2)$.
+\end{proof}
+
+\begin{definition}[Big O Notation]
+	For functions $f(n)$ and $g(n)$, we say $f(n) = \mathcal{O}(g(n))$ if there exist positive constants $c$ and $n_0$ such that $0 \leq f(n) \leq cg(n)$ for all $n \geq n_0$.
+\end{definition}
+
+\begin{remark}
+	While Bubble Sort has a worst-case time complexity of $\mathcal{O}(n^2)$, it can be useful for small datasets or nearly sorted arrays due to its simplicity and in-place sorting nature.
+\end{remark}
+
+\begin{important}
+	Understanding time and space complexity is crucial for designing efficient algorithms and selecting appropriate data structures.
+\end{important}
+
+\begin{case}
+	\item Best Case: The time complexity is $\mathcal{O}(n \log n)$ when the pivot always divides the array into two halves.
+	\item Average Case: The expected time complexity is $\mathcal{O}(n \log n)$ with random pivot selection.
+	\item Worst Case: The time complexity is $\mathcal{O}(n^2)$ when the pivot is always the smallest or largest element.
+\end{case}
+
+\begin{axiom}
+	\item Axiom of Extensionality: Two sets are equal if and only if they have the same elements.
+	\item Axiom of Pairing: For any two sets $a$ and $b$, there exists a set $\{a, b\}$ that contains exactly $a$ and $b$ as its elements.
+\end{axiom}
+
+\section{Requirements}
+
+The \pkg{csthm} package requires the following packages:
+
+\begin{itemize}
+	\item \pkg{amsmath}
+	\item \pkg{amssymb}
+	\item \pkg{amsthm}
+	\item \pkg{enumitem}
+	\item \pkg{thmtools}
+\end{itemize}
+
+If the \opt{cleveref} option is used, the \pkg{hyperref} package must be loaded before \pkg{csthm}.
+
+\section{Version History}
+
+\begin{description}
+	\item[v1.0 (2024/08/31)] Initial version
+	\item[v1.1 (2024/08/31)] Added \opt{cleveref} support
+	\item[v1.2 (2024/08/31)] Improved documentation, code structure, and added to CTAN
+\end{description}
+
+\section{License}
+
+This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c of this license or (at your option) any later version. The latest version of this license is in:
+
+\url{http://www.latex-project.org/lppl.txt}
+
+and version 1.3c or later is part of all distributions of LaTeX version 2008/05/04 or later.
+
+\section{Feedback and Contributions}
+
+For bug reports, feature requests, or general feedback, please contact the package maintainer, Agni Datta, at \texttt{\hyperlink{mailto:agnidatta.org at gmail.com}{agnidatta.org at gmail.com}}.
+
+Contributions to the package are welcome. Please submit pull requests or issues to the package's GitHub repository.
+
+\section{Package Source Code}
+
+The following listing shows the source code of the \texttt{csthm.sty} file:
+
+\lstinputlisting{csthm.sty}
+
+\appendix
+
+\section{Real-Life Usage Examples}
+
+\subsection{Theorem Environments}
+
+The \pkg{csthm} package provides several theorem-like environments commonly used in computer science literature:
+
+\begin{theorem}[Graph Colouring]
+	For any graph $G$, the chromatic number $\chi(G)$ is the minimum number of colours needed to colour the vertices of $G$ such that no two adjacent vertices share the same colour.
+\end{theorem}
+
+\begin{lemma}[Sum of Odd Numbers]
+	For every positive integer $n$, the sum of the first $n$ odd numbers is equal to $n^2$.
+\end{lemma}
+
+\begin{proof}
+	We can prove this by induction on $n$:
+	
+	\begin{case}
+		\item \textbf{Base case:} For $n=1$, the first odd number is 1, and $1^2 = 1$. The statement holds.
+		    
+		\item \textbf{Inductive step:} Assume the statement holds for some $k \geq 1$. We need to prove it for $k+1$.
+		    
+		The $(k+1)$-th odd number is $2k+1$. So, we have:
+		    
+		$\sum_{i=1}^{k+1} (2i-1) = \sum_{i=1}^k (2i-1) + (2k+1)$
+		    
+		$= k^2 + (2k+1)$ (by induction hypothesis)
+		    
+		$= k^2 + 2k + 1$
+		    
+		$= (k+1)^2$
+		    
+		Thus, the statement holds for $k+1$, completing the proof.    
+	\end{case}
+\end{proof}
+
+\begin{corollary}[Sum of Integers]
+	The sum of the first $n$ positive integers is given by $\frac{n(n+1)}{2}$.
+\end{corollary}
+
+\begin{proposition}[Even Sum Property]
+	The sum of two even integers is always even.
+\end{proposition}
+
+\begin{conjecture}[Goldbach's Conjecture]
+	Every even integer greater than 2 can be expressed as the sum of two prime numbers.
+\end{conjecture}
+
+\subsection{Definition and Example Environments}
+
+To introduce key definitions and illustrative examples:
+
+\begin{definition}[Tree]
+	A \emph{tree} is a connected, undirected graph with no cycles.
+\end{definition}
+
+\begin{example}[Binary Tree]
+	Consider a binary tree with 7 nodes labelled from 1 to 7:
+	\begin{verbatim}
+         1
+       /   \
+      2     3
+     / \   / \
+    4   5 6   7
+	\end{verbatim}    
+	This tree has 3 levels, and each parent node has at most 2 children.
+\end{example}
+
+\subsection{Remark Environments}
+
+To include remarks and notes that highlight important observations:
+
+\begin{remark}
+	While all trees are graphs, not all graphs are trees. A graph must be acyclic and connected to be classified as a tree.
+\end{remark}
+
+\begin{note}
+	Many conjectures, like Goldbach's Conjecture, remain unproven for centuries despite numerous verified instances. This highlights the complexity of certain mathematical problems.
+\end{note}
+
+\subsection{Highlight Environments}
+
+To emphasise crucial points within the document:
+
+\begin{important}
+	Algorithm efficiency is critical in computer science. Always consider time and space complexity when designing and analysing algorithms.
+\end{important}
+
+\begin{keypoint}
+	Understanding the P vs NP problem is fundamental in computational complexity theory and has significant implications for algorithm design and cryptography.
+\end{keypoint}
+
+\subsection{Case Environment}
+
+Used to present distinct cases in an argument or proof:
+
+\begin{theorem}[Factorial Definition]
+	The factorial of a non-negative integer $n$, denoted as $n!$, is defined as follows:
+\end{theorem}
+
+\begin{case}
+	\item When $n = 0$, $0! = 1$ (by definition).
+	\item When $n > 0$, $n! = n \times (n-1) \times \cdots \times 2 \times 1$.
+\end{case}
+
+\subsection{Axiom Environment}
+
+To enumerate foundational axioms in formal proofs:
+
+\begin{axiom}
+	\item For any sets $A$ and $B$, $A \cup B = B \cup A$ (Commutative Law of Union).
+	\item For any sets $A$, $B$, and $C$, $A \cap (B \cup C) = (A \cap B) \cup (A \cap C)$ (Distributive Law).
+	\item For any set $A$, $A \cup \emptyset = A$ (Identity Law of Union).
+\end{axiom}
+
+\end{document}
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/csthm/csthm-example.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/source/latex/csthm/csthm.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/csthm/csthm.dtx	                        (rev 0)
+++ trunk/Master/texmf-dist/source/latex/csthm/csthm.dtx	2024-08-31 20:17:48 UTC (rev 72152)
@@ -0,0 +1,238 @@
+% \iffalse meta-comment
+%
+% Copyright (C) 2024 by Agni Datta <agnidatta.org at gmail.com>
+%
+% This file may be distributed and/or modified under the conditions of
+% the LaTeX Project Public License, either version 1.3c 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.3c or later is part of all distributions of LaTeX
+% version 2008/05/04 or later.
+%
+%
+% This work has the LPPL maintenance status `maintained'.
+%
+% The Current Maintainer of this work is Agni Datta.
+%
+% This work consists of the files csthm.dtx and csthm.ins
+% and the derived file csthm.sty.
+%
+% \fi
+%
+% \iffalse
+%<*driver>
+\ProvidesFile{csthm.dtx}
+%</driver>
+%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
+%<package>\ProvidesPackage{csthm}
+%<*package>
+    [2024/08/31 v1.2 Theorem Environments for Computer Science]
+%</package>
+%
+%<*driver>
+\documentclass{ltxdoc}
+\usepackage{csthm}
+\EnableCrossrefs
+\CodelineIndex
+\RecordChanges
+\begin{document}
+\DocInput{csthm.dtx}
+\PrintChanges
+\PrintIndex
+\end{document}
+%</driver>
+% \fi
+%
+% \CheckSum{0}
+%
+% \CharacterTable
+%  {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
+%   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
+%   Digits        \0\1\2\3\4\5\6\7\8\9
+%   Exclamation   \!     Double quote  \"     Hash (number) \#
+%   Dollar        \$     Percent       \%     Ampersand     \&
+%   Acute accent  \'     Left paren    \(     Right paren   \)
+%   Asterisk      \*     Plus          \+     Comma         \,
+%   Minus         \-     Point         \.     Solidus       \/
+%   Colon         \:     Semicolon     \;     Less than     \<
+%   Equals        \=     Greater than  \>     Question mark \?
+%   Commercial at \@     Left bracket  \[     Backslash     \\
+%   Right bracket \]     Circumflex    \^     Underscore    \_
+%   Grave accent  \`     Left brace    \{     Vertical bar  \|
+%   Right brace   \}     Tilde         \~}
+%
+%
+% \changes{v1.0}{2024/08/31}{Initial version}
+% \changes{v1.1}{2024/08/31}{Added cleveref support}
+% \changes{v1.2}{2024/08/31}{Improved documentation and code structure}
+%
+% \DoNotIndex{\newcommand,\newenvironment}
+%
+% \providecommand*{\url}{\texttt}
+% \GetFileInfo{csthm.dtx}
+% \title{The \textsf{csthm} package}
+% \author{Agni Datta \\ \url{agnidatta.org at gmail.com}}
+% \date{\filedate}
+%
+% \maketitle
+%
+% \section{Introduction}
+%
+% This package provides customized theorem-like environments specifically designed for computer science documents. It offers a set of pre-defined theorem styles and environments to streamline the creation of theorems, definitions, remarks, and other common structures in computer science papers and documents.
+%
+% \section{Usage}
+%
+% Load the package with:
+% \begin{verbatim}
+% \usepackage{csthm}
+% \end{verbatim}
+%
+% To use the package with cleveref support:
+% \begin{verbatim}
+% \usepackage[cleveref]{csthm}
+% \end{verbatim}
+%
+% \section{Implementation}
+%
+%    \begin{macrocode}
+%<*package>
+% Package options
+\newif\if at csthm@loadcleveref
+\DeclareOption{cleveref}{\@csthm at loadclevereftrue}
+\ProcessOptions\relax
+
+% Required packages
+\RequirePackage{amsmath}
+\RequirePackage{amssymb}
+\RequirePackage{amsthm}
+\RequirePackage{enumitem}
+\RequirePackage{thmtools}
+
+% Conditionally load cleveref if the option is set and hyperref is loaded
+\if at csthm@loadcleveref
+\AtBeginDocument{%
+	\@ifpackageloaded{hyperref}{%
+		\RequirePackage{cleveref}
+		}{%
+		\PackageWarning{csthm}{The 'cleveref' option was set, but 'hyperref' is not loaded. Skipping 'cleveref' loading.}
+	}%
+}
+\fi
+
+% Define theorem styles
+\declaretheoremstyle[
+	spaceabove=\topsep,
+	spacebelow=\topsep,
+	headfont=\scshape,
+	notefont=\scshape,
+	bodyfont=\normalfont,
+	postheadspace=5pt,
+	numberwithin=section,
+	qed=$\scriptstyle\star$,
+	headpunct={.}
+]{thmstyle}
+
+\declaretheoremstyle[
+	spaceabove=\topsep,
+	spacebelow=\topsep,
+	headfont=\bfseries,
+	notefont=\bfseries,
+	bodyfont=\normalfont,
+	postheadspace=5pt,
+	numberwithin=section,
+	qed=$\scriptstyle\maltese$,
+	headpunct={.}
+]{defstyle}
+
+\declaretheoremstyle[
+	spaceabove=\topsep,
+	spacebelow=\topsep,
+	headfont=\itshape,
+	notefont=\itshape,
+	bodyfont=\normalfont,
+	postheadspace=5pt,
+	numberwithin=section,
+	qed=$\scriptstyle\maltese$,
+	headpunct={.}
+]{remarkstyle}
+
+\declaretheoremstyle[
+	spaceabove=\topsep,
+	spacebelow=\topsep,
+	headfont=\sffamily\scshape,
+	notefont=\sffamily\scshape,
+	bodyfont=\normalfont\sffamily,
+	postheadspace=5pt,
+	numberwithin=section,
+	qed=$\scriptstyle\maltese$,
+	headpunct={.}
+]{hltstyle}
+
+% Define theorem environments
+\declaretheorem[style=thmstyle,name=Theorem]{theorem}
+\declaretheorem[style=defstyle,sibling=theorem]{fact}
+\declaretheorem[style=thmstyle,sibling=theorem]{assumption}
+\declaretheorem[style=thmstyle,sibling=theorem]{claim}
+\declaretheorem[style=thmstyle,sibling=theorem]{conjecture}
+\declaretheorem[style=thmstyle,sibling=theorem]{corollary}
+\declaretheorem[style=thmstyle,sibling=theorem]{lemma}
+\declaretheorem[style=thmstyle,sibling=theorem]{property}
+\declaretheorem[style=thmstyle,sibling=theorem]{proposition}
+
+% Define definition environments
+\declaretheorem[style=defstyle,sibling=theorem]{definition}
+\declaretheorem[style=defstyle,sibling=theorem]{example}
+\declaretheorem[style=defstyle,sibling=theorem]{exercise}
+\declaretheorem[style=defstyle,sibling=theorem]{problem}
+\declaretheorem[style=defstyle,sibling=theorem]{question}
+
+% Define remark environments
+\declaretheorem[style=remarkstyle,sibling=theorem]{note}
+\declaretheorem[style=remarkstyle,sibling=theorem]{remark}
+\declaretheorem[style=remarkstyle,sibling=theorem]{solution}
+
+% Define highlight environments
+\declaretheorem[style=hltstyle,name=Important]{important}
+\declaretheorem[style=hltstyle]{highlight}
+\declaretheorem[style=hltstyle]{keypoint}
+
+% Define case environment
+\newlist{caseList}{enumerate}{1}
+\setlist[caseList]{label=\textbf{Case~\arabic*:},leftmargin=*}
+
+\NewDocumentEnvironment{case}{O{}}{%
+	\begin{caseList}[#1]%
+		}{%
+	\end{caseList}%
+}
+
+% Define axiom environment
+\newlist{axiomList}{enumerate}{1}
+\setlist[axiomList]{label=\textbf{Axiom~\Alph*:}, leftmargin=*}
+
+\NewDocumentEnvironment{axiom}{O{}}{%
+	\begin{axiomList}[#1]%
+		}{%
+	\end{axiomList}%
+}
+
+% Custom QED symbol
+\renewcommand\qedsymbol{$\scriptstyle\blacksquare$}
+
+% Define accent color (customizable by the user)
+\providecommand{\accentcolor}{black}
+
+% Package documentation commands
+\providecommand{\csthmpkg}{\textsf{csthm}}
+\providecommand{\email}[1]{\href{mailto:#1}{\texttt{#1}}}
+
+% User-level commands for customization
+\newcommand{\setaccentcolor}[1]{\renewcommand{\accentcolor}{#1}}
+%</package>
+%    \end{macrocode}
+%
+% \Finale
+\endinput
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/source/latex/csthm/csthm.dtx
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/source/latex/csthm/csthm.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/csthm/csthm.ins	                        (rev 0)
+++ trunk/Master/texmf-dist/source/latex/csthm/csthm.ins	2024-08-31 20:17:48 UTC (rev 72152)
@@ -0,0 +1,55 @@
+%%
+%% Copyright (C) 2024 by Agni Datta <agnidatta.org at gmail.com>
+%%
+%% This file may be distributed and/or modified under the conditions of
+%% the LaTeX Project Public License, either version 1.3c 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.3c or later is part of all distributions of LaTeX
+%% version 2008/05/04 or later.
+%%
+
+\input docstrip.tex
+\keepsilent
+
+\usedir{tex/latex/csthm}
+
+\preamble
+
+This is a generated file.
+
+Copyright (C) 2024 by Agni Datta <agnidatta.org at gmail.com>
+
+This file may be distributed and/or modified under the conditions of
+the LaTeX Project Public License, either version 1.3c 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.3c or later is part of all distributions of LaTeX
+version 2008/05/04 or later.
+
+\endpreamble
+
+\generate{\file{csthm.sty}{\from{csthm.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{*     csthm.sty                                                        *}
+\Msg{*                                                                      *}
+\Msg{* To produce the documentation run the file csthm.dtx                  *}
+\Msg{* through LaTeX.                                                       *}
+\Msg{*                                                                      *}
+\Msg{* Happy TeXing!                                                        *}
+\Msg{*                                                                      *}
+\Msg{************************************************************************}
+
+\endbatchfile
\ No newline at end of file

Added: trunk/Master/texmf-dist/tex/latex/csthm/csthm.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/csthm/csthm.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/csthm/csthm.sty	2024-08-31 20:17:48 UTC (rev 72152)
@@ -0,0 +1,146 @@
+%%
+%% This is file `csthm.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% csthm.dtx  (with options: `package')
+%% 
+%% This is a generated file.
+%% 
+%% Copyright (C) 2024 by Agni Datta <agnidatta.org at gmail.com>
+%% 
+%% This file may be distributed and/or modified under the conditions of
+%% the LaTeX Project Public License, either version 1.3c 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.3c or later is part of all distributions of LaTeX
+%% version 2008/05/04 or later.
+%% 
+\NeedsTeXFormat{LaTeX2e}[1999/12/01]
+\ProvidesPackage{csthm}
+    [2024/08/31 v1.2 Theorem Environments for Computer Science]
+\newif\if at csthm@loadcleveref
+\DeclareOption{cleveref}{\@csthm at loadclevereftrue}
+\ProcessOptions\relax
+
+\RequirePackage{amsmath}
+\RequirePackage{amssymb}
+\RequirePackage{amsthm}
+\RequirePackage{enumitem}
+\RequirePackage{thmtools}
+
+\if at csthm@loadcleveref
+\AtBeginDocument{%
+\@ifpackageloaded{hyperref}{%
+\RequirePackage{cleveref}
+}{%
+\PackageWarning{csthm}{The 'cleveref' option was set, but 'hyperref' is not loaded. Skipping 'cleveref' loading.}
+}%
+}
+\fi
+
+\declaretheoremstyle[
+spaceabove=\topsep,
+spacebelow=\topsep,
+headfont=\scshape,
+notefont=\scshape,
+bodyfont=\normalfont,
+postheadspace=5pt,
+numberwithin=section,
+qed=$\scriptstyle\star$,
+headpunct={.}
+]{thmstyle}
+
+\declaretheoremstyle[
+spaceabove=\topsep,
+spacebelow=\topsep,
+headfont=\bfseries,
+notefont=\bfseries,
+bodyfont=\normalfont,
+postheadspace=5pt,
+numberwithin=section,
+qed=$\scriptstyle\maltese$,
+headpunct={.}
+]{defstyle}
+
+\declaretheoremstyle[
+spaceabove=\topsep,
+spacebelow=\topsep,
+headfont=\itshape,
+notefont=\itshape,
+bodyfont=\normalfont,
+postheadspace=5pt,
+numberwithin=section,
+qed=$\scriptstyle\maltese$,
+headpunct={.}
+]{remarkstyle}
+
+\declaretheoremstyle[
+spaceabove=\topsep,
+spacebelow=\topsep,
+headfont=\sffamily\scshape,
+notefont=\sffamily\scshape,
+bodyfont=\normalfont\sffamily,
+postheadspace=5pt,
+numberwithin=section,
+qed=$\scriptstyle\maltese$,
+headpunct={.}
+]{hltstyle}
+
+\declaretheorem[style=thmstyle,name=Theorem]{theorem}
+\declaretheorem[style=defstyle,sibling=theorem]{fact}
+\declaretheorem[style=thmstyle,sibling=theorem]{assumption}
+\declaretheorem[style=thmstyle,sibling=theorem]{claim}
+\declaretheorem[style=thmstyle,sibling=theorem]{conjecture}
+\declaretheorem[style=thmstyle,sibling=theorem]{corollary}
+\declaretheorem[style=thmstyle,sibling=theorem]{lemma}
+\declaretheorem[style=thmstyle,sibling=theorem]{property}
+\declaretheorem[style=thmstyle,sibling=theorem]{proposition}
+
+\declaretheorem[style=defstyle,sibling=theorem]{definition}
+\declaretheorem[style=defstyle,sibling=theorem]{example}
+\declaretheorem[style=defstyle,sibling=theorem]{exercise}
+\declaretheorem[style=defstyle,sibling=theorem]{problem}
+\declaretheorem[style=defstyle,sibling=theorem]{question}
+
+\declaretheorem[style=remarkstyle,sibling=theorem]{note}
+\declaretheorem[style=remarkstyle,sibling=theorem]{remark}
+\declaretheorem[style=remarkstyle,sibling=theorem]{solution}
+
+\declaretheorem[style=hltstyle,name=Important]{important}
+\declaretheorem[style=hltstyle]{highlight}
+\declaretheorem[style=hltstyle]{keypoint}
+
+\newlist{caseList}{enumerate}{1}
+\setlist[caseList]{label=\textbf{Case~\arabic*:},leftmargin=*}
+
+\NewDocumentEnvironment{case}{O{}}{%
+\begin{caseList}[#1]%
+}{%
+\end{caseList}%
+}
+
+\newlist{axiomList}{enumerate}{1}
+\setlist[axiomList]{label=\textbf{Axiom~\Alph*:}, leftmargin=*}
+
+\NewDocumentEnvironment{axiom}{O{}}{%
+\begin{axiomList}[#1]%
+}{%
+\end{axiomList}%
+}
+
+\renewcommand\qedsymbol{$\scriptstyle\blacksquare$}
+
+\providecommand{\accentcolor}{black}
+
+\providecommand{\csthmpkg}{\textsf{csthm}}
+\providecommand{\email}[1]{\href{mailto:#1}{\texttt{#1}}}
+
+\newcommand{\setaccentcolor}[1]{\renewcommand{\accentcolor}{#1}}
+\endinput
+%%
+%% End of file `csthm.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/csthm/csthm.sty
___________________________________________________________________
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	2024-08-31 20:16:39 UTC (rev 72151)
+++ trunk/Master/tlpkg/bin/tlpkg-ctan-check	2024-08-31 20:17:48 UTC (rev 72152)
@@ -237,7 +237,7 @@
     crossreference crossreftools crossrefenum crossrefware crossword crosswrd
     crumbs cryptocode cryst
     cs cs-techrep csassignments csbulletin cslatex csplain csquotes csquotes-de
-    css-colors cstex cstypo csvmerge csvsimple
+    css-colors cstex csthm cstypo csvmerge csvsimple
     ctan-o-mat ctan_chk ctanbib ctanify ctanupload
     ctable ctablestack ctex ctex-faq
     culmus cuprum cursolatex cuisine

Modified: trunk/Master/tlpkg/tlpsrc/collection-mathscience.tlpsrc
===================================================================
--- trunk/Master/tlpkg/tlpsrc/collection-mathscience.tlpsrc	2024-08-31 20:16:39 UTC (rev 72151)
+++ trunk/Master/tlpkg/tlpsrc/collection-mathscience.tlpsrc	2024-08-31 20:17:48 UTC (rev 72152)
@@ -69,6 +69,7 @@
 depend cryptocode
 depend cs-techrep
 depend csassignments
+depend csthm
 depend cvss
 depend decision-table
 depend delim

Added: trunk/Master/tlpkg/tlpsrc/csthm.tlpsrc
===================================================================


More information about the tex-live-commits mailing list.