summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/dynbrackets/dynbrackets.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/dynbrackets/dynbrackets.dtx')
-rw-r--r--macros/latex/contrib/dynbrackets/dynbrackets.dtx168
1 files changed, 168 insertions, 0 deletions
diff --git a/macros/latex/contrib/dynbrackets/dynbrackets.dtx b/macros/latex/contrib/dynbrackets/dynbrackets.dtx
new file mode 100644
index 0000000000..4b0b8dc006
--- /dev/null
+++ b/macros/latex/contrib/dynbrackets/dynbrackets.dtx
@@ -0,0 +1,168 @@
+% \iffalse meta-comment
+%
+% Copyright (C) 2021 by Miguel R. Clemente <miguel.clemente@dem.uc.pt>
+% ---------------------------------------------------------------------------
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% 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.3 or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This work has the LPPL maintenance status `maintained'.
+%
+% The Current Maintainer of this work is Miguel R. Clemente.
+%
+% This work consists of the files dynbrackets.dtx and dynbrackets.ins
+% and the derived filebase dynbrackets.sty.
+%
+% \fi
+%
+% \iffalse
+%<*driver>
+\ProvidesFile{dynbrackets.dtx}
+%</driver>
+%<package>\NeedsTeXFormat{LaTeX2e}[2005/12/01]
+%<package>\ProvidesPackage{dynbrackets}
+%<*package>
+ [2021/04/01 v1.0.0 Simplifies the syntax of calling dynamic math brackets]
+%</package>
+%
+%<*driver>
+\documentclass{ltxdoc}
+\usepackage{dynbrackets}[2021/04/01]
+\usepackage{amsmath}
+\usepackage{indentfirst}
+\usepackage{booktabs}
+\usepackage{caption}
+\EnableCrossrefs
+\CodelineIndex
+\RecordChanges
+\begin{document}
+ \DocInput{dynbrackets.dtx}
+ \PrintChanges
+\end{document}
+%</driver>
+% \fi
+%
+% \CheckSum{122}
+%
+% \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.0}{2021/04/01}{Public release}
+%
+% \DoNotIndex{\newcommand,\newenvironment}
+%
+% \providecommand*{\url}{\texttt}
+% \GetFileInfo{dynbrackets.dtx}
+% \title{The \textsf{dynbrackets} package}
+% \author{Miguel R. Clemente \\ \url{miguel.clemente@dem.uc.pt}}
+% \date{\fileversion~from \filedate}
+%
+% \maketitle
+%
+% \section{Introduction}
+%
+% This package simplifies the syntax of calling dynamic math brackets.
+
+% Dynamic math brackets builds on \verb!\left! and \verb!\right! syntax of deploying size sensible brackets in math mode.
+
+% \section{Usage}
+% \verb!dynbrackets! implements commands to the math braces and parentheses found in Table~\ref{Tab:MathBrackets}. Note that \LaTeX markup on the table doesn't correspond to dynamic brackets, just the brackets themselves.
+%
+% To have the brackets change size dynamically with the content one would have to use \verb!\left! and \verb!\right! on each bracket respectively. To simplify the syntax, \verb!dynbrackets! implements a command for each bracket pair. When calling a dynamic bracket, content inside the bracket will automatically be in math mode.
+%
+% \begin{table}[]
+% \centering
+% \captionsetup{justification=centering}
+% \caption{List of Math Brackets}
+% \label{Tab:MathBrackets}
+% \begin{tabular}{@{} l c c c @{}}
+% \toprule
+% \toprule
+% \textbf{Type} & \textbf{\LaTeX} & \verb!dynbrackets! & \textbf{Renders as} \\ \midrule
+% Parentheses; round brackets & \verb!( x+y )! & \verb!\dbr{}! & $( x+y )$ \\
+% Brackets; square brackets & \verb![ x+y ]! & \verb!\dbs{}! & $[ x+y ]$ \\
+% Braces; curly brackets & \verb!\{ x+y\}! & \verb!\dbc{}! & $\{ x+y \}$ \\
+% Angle brackets & \verb!\langle x+y \rangle! & \verb!\dba{}! & $\langle x+y \rangle$ \\
+% Pipes; vertical bars & \verb!| x+y |! & \verb!\dbp{}! & $| x+y |$ \\
+% Double pipes & \verb!\| x+y \|! & \verb!\dbdp{}! & $\| x+y \|$\\ \bottomrule
+% \bottomrule
+% \end{tabular}
+% \end{table}
+%
+% \StopEventually{}
+%
+% \section{Implementation}
+%
+% \iffalse
+%<*package>
+% \fi
+%
+% \begin{macrocode}
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{dynbrackets}
+[2021/04/01 v1.0.0 Simplifies the syntax of calling dynamic math brackets]
+% \end{macrocode}
+%
+% \begin{macro}{\dbr}
+% \begin{macrocode}
+\newcommand{\dbr}[1]{\ensuremath{\left(#1\right)}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\dbs}
+% \begin{macrocode}
+\newcommand{\dbs}[1]{\ensuremath{\left[#1\right]}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\dbc}
+% \begin{macrocode}
+\newcommand{\dbc}[1]{\ensuremath{\left\{#1\right\}}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\dba}
+% \begin{macrocode}
+\newcommand{\dba}[1]{\ensuremath{\left\langle#1\right\rangle}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\dbp}
+% \begin{macrocode}
+\newcommand{\dbp}[1]{\ensuremath{\left|#1\right|}}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\dbdp}
+% \begin{macrocode}
+\newcommand{\dbdp}[1]{\ensuremath{\left\|#1\right\|}}
+% \end{macrocode}
+% \end{macro}
+%
+\endinput
+% \end{macrocode}
+%
+% \iffalse
+%</package>
+% \fi
+%
+% \Finale
+\endinput