% \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