texlive[75976] Master/texmf-dist: rainbowbrackets (5aug25)
commits+karl at tug.org
commits+karl at tug.org
Tue Aug 5 22:35:12 CEST 2025
Revision: 75976
https://tug.org/svn/texlive?view=revision&revision=75976
Author: karl
Date: 2025-08-05 22:35:12 +0200 (Tue, 05 Aug 2025)
Log Message:
-----------
rainbowbrackets (5aug25)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/rainbowbrackets/README.md
trunk/Master/texmf-dist/doc/latex/rainbowbrackets/TODO.md
trunk/Master/texmf-dist/doc/latex/rainbowbrackets/rainbowbrackets_doc.pdf
trunk/Master/texmf-dist/doc/latex/rainbowbrackets/rainbowbrackets_doc.tex
trunk/Master/texmf-dist/tex/latex/rainbowbrackets/rainbowbrackets.sty
Modified: trunk/Master/texmf-dist/doc/latex/rainbowbrackets/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/rainbowbrackets/README.md 2025-08-05 20:35:01 UTC (rev 75975)
+++ trunk/Master/texmf-dist/doc/latex/rainbowbrackets/README.md 2025-08-05 20:35:12 UTC (rev 75976)
@@ -1,4 +1,4 @@
-# RainbowBrackets v. 1.2.1 \y 2025
+# RainbowBrackets v. 1.3.2 \y 2025
> Part of a collection of LaTeX commands used by the institute of linguistics - Goethe University Frankfurt
Provides automatic coloring of nested parentheses using a configurable color cycle.
@@ -18,6 +18,12 @@
## Version History
+* 1.3.2
+ * Add new style.
+ * Fix bug regarding \verb=\rbparenr= and \verb=\rbdisable= (thanks to Adelheid Bonnetsmüller).
+ * Fix bug that occured when passing an invalid max value as package argument.
+ * Fix wrong color in pastel style.
+ * Internal refactoring.
* 1.2.1
* Renamed some commands to get a cohesive command style (now all start with rb).
* Add optional package arguments to change bracket symbols.
Modified: trunk/Master/texmf-dist/doc/latex/rainbowbrackets/TODO.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/rainbowbrackets/TODO.md 2025-08-05 20:35:01 UTC (rev 75975)
+++ trunk/Master/texmf-dist/doc/latex/rainbowbrackets/TODO.md 2025-08-05 20:35:12 UTC (rev 75976)
@@ -1,4 +1,4 @@
-# rainbowbrackets v. 1.2.1 \y 2025 Todo
+# rainbowbrackets v. 1.3.2 \y 2025 Todo
> List of planned features
* Add support for different delimiters
Modified: trunk/Master/texmf-dist/doc/latex/rainbowbrackets/rainbowbrackets_doc.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/rainbowbrackets/rainbowbrackets_doc.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/rainbowbrackets/rainbowbrackets_doc.tex 2025-08-05 20:35:01 UTC (rev 75975)
+++ trunk/Master/texmf-dist/doc/latex/rainbowbrackets/rainbowbrackets_doc.tex 2025-08-05 20:35:12 UTC (rev 75976)
@@ -1,4 +1,4 @@
-% RainbowBrackets v. 1.2.1 y. 2025
+% RainbowBrackets v. 1.3.2 y. 2025
%
% Copyright (C) 2025 Paul Eduard Koenig
% pauleduardkoenig (at) gmail [dot] com
@@ -99,7 +99,7 @@
%---------------------------------------------------------------- START --------------------------------------------
\title{Rainbow Brackets\\Documentation for the \LaTeX\ package \texttt{'rainbowbrackets'}}
-\author{rainbowbrackets \textbackslash v 1.2.1\\Paul Eduard Koenig\\Goethe University Frankfurt,\\Institute of Linguistics\\\texttt{\href{mailto:pauleduardkoenig at gmail.com}{pauleduardkoenig at gmail.com}}}
+\author{rainbowbrackets \textbackslash v 1.3.2\\Paul Eduard Koenig\\Goethe University Frankfurt,\\Institute of Linguistics\\\texttt{\href{mailto:pauleduardkoenig at gmail.com}{pauleduardkoenig at gmail.com}}}
\begin{document}
@@ -158,6 +158,7 @@
\item[-] pastel \rbsetstyle{pastel}\begin{rb}((((((((((()))))))))))\end{rb}
\item[-] spectral \rbsetstyle{spectral}\begin{rb}((((((((((()))))))))))\end{rb}
\item[-] dualpolar \rbsetstyle{dualpolar}\begin{rb}((((((((((()))))))))))\end{rb}
+ \item[-] java \rbsetstyle{java}\begin{rb}((((((((((()))))))))))\end{rb}
\item[-] warning \rbsetstyle{warning}\begin{rb}((((((((((()))))))))))\end{rb}\rbresetstyle
\end{itemizeexample}
\subsubsection{max}
@@ -237,11 +238,13 @@
\xe
\pex\begin{itemizeexamplecommand}
\item[] \begin{lstlisting}[style=B]
- \rbsetbracketmax{value}
+ \rbsetbracketmax{value}[fallbackvalue][errorinfo]
\end{lstlisting}
{\scriptsize
\item[] Arguments:\begin{itemizeexamplecommand}
\item[] \texttt{value}: The maximal coloring level
+ \item[] \texttt{fallbackvalue}: The value to fall back if the first argument is invalid (for package internal usage)
+ \item[] \texttt{errorinfo}: Information regarding the fallbackvalue source (for package internal usage)
\end{itemizeexamplecommand}
\item[] Description: Changes the maximaal coloring level mid document. Allowed are integers from 2 to 10.}
\end{itemizeexamplecommand}
@@ -338,11 +341,18 @@
\item[-] No coloring when parentheses are generated via another macro within the \textit{rb} environment (getting the correct order of expansion to work as intended seems to be complicated... again a solution is welcome). \\Example:
\\\verb=\newcommand{\test}{(level2test)}=
\\\verb=\begin{rb}(level0(level1\test (level2)))\end{rb}=
- \\Will render as: \newcommand{\test}{(level2test)}
- \begin{rb}(level0(level1\test (level2)))\end{rb}
+ \\Will render as: \newcommand{\test}{(level2test)}\begin{rb}(level0(level1\test (level2)))\end{rb}
\end{enumerate}
\section{Changelog}
\begin{itemize}
+ \item[1.3.2]
+ \begin{enumerate}
+ \item[-] Add new style.
+ \item[-] Fix bug regarding \verb=\rbparenr= and \verb=\rbdisable= (thanks to Adelheid Bonnetsmüller).
+ \item[-] Fix bug that occured when passing an invalid max value as package argument.
+ \item[-] Fix wrong color in pastel style.
+ \item[-] Internal refactoring.
+ \end{enumerate}
\item[1.2.1]
\begin{enumerate}
\item[-] Renamed some commands to get a cohesive command style (now all start with rb).
@@ -354,7 +364,7 @@
\end{enumerate}
\item[1.1.1]
\begin{enumerate}
- \item[-] Add new styles
+ \item[-] Add new styles.
\item[-] Refactored style system.
\item[-] Fix typos.
\item[-] Added missing credits!
Modified: trunk/Master/texmf-dist/tex/latex/rainbowbrackets/rainbowbrackets.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/rainbowbrackets/rainbowbrackets.sty 2025-08-05 20:35:01 UTC (rev 75975)
+++ trunk/Master/texmf-dist/tex/latex/rainbowbrackets/rainbowbrackets.sty 2025-08-05 20:35:12 UTC (rev 75976)
@@ -1,4 +1,4 @@
-% RainbowBrackets v. 1.2.1 y. 2025
+% RainbowBrackets v. 1.3.2 y. 2025
%
% Copyright (C) 2025 Paul Eduard Koenig
% pauleduardkoenig (at) gmail [dot] com
@@ -28,9 +28,11 @@
% The groundwork of this package is based on workd by Ryan Reich, jub0bs, and Matthew Towers
%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{rainbowbrackets}[2025-07-20 v. 1.2.1 LaTeX package that colors parentheses on the same nesting level with a matching color.]
+\ProvidesPackage{rainbowbrackets}[2025-08-05 v. 1.3.2 LaTeX package that colors parentheses on the same nesting level with a matching color.]
\RequirePackage{xparse, xstring, xcolor, expl3, kvoptions}
+\def\@rbmaxfallbackvalue{10}
+
\SetupKeyvalOptions{
family=RB,
prefix=RB@
@@ -38,23 +40,27 @@
\DeclareStringOption[default]{style}
\DeclareStringOption[(]{lbracket}
\DeclareStringOption[)]{rbracket}
-\DeclareStringOption[10]{max}
+\DeclareStringOption[\@rbmaxfallbackvalue]{max}
\ProcessKeyvalOptions*
-\let\@rbmaxbackup\RB at max
-\NewDocumentCommand{\rbsetbracketmax}{m}{%
+\NewDocumentCommand{\rbsetbracketmax}{m O{\RB at max} O{default}}{%
\IfInteger{#1}{%
\ifnum#1<2%
- \PackageWarning{rainbowbrackets}{Color repearing maximum not in range [2-10], using default value!}%
+ \PackageWarning{rainbowbrackets}{Color repearing maximum not in range [2-10], using #3 value (#2)!}%
+ \gdef\RB at max{\@rbmaxfallbackvalue}
\else\ifnum#1>10%
- \PackageWarning{rainbowbrackets}{Color repearing maximum not in range [2-10], using default value!}%
+ \PackageWarning{rainbowbrackets}{Color repearing maximum not in range [2-10], using #3 value (#2)!}%
+ \gdef\RB at max{\@rbmaxfallbackvalue}
\else%
\def\RB at max{#1}%
\fi\fi%
}{%
- \PackageWarning{rainbowbrackets}{Passed argument '#1' is not an integer, using default value as color repeating maximum!}
+ \PackageWarning{rainbowbrackets}{Passed argument '#1' is not an integer, using #3 value (#2) as color repeating maximum!}
+ \gdef\RB at max{\@rbmaxfallbackvalue}
}%
}
+\expandafter\rbsetbracketmax\expandafter{\RB at max}[\@rbmaxfallbackvalue][fallback]
+\let\@rbmaxbackup\RB at max
\NewDocumentCommand{\rbresetbracketmax}{}{%
\def\RB at max{\@rbmaxbackup}%
}
@@ -106,7 +112,7 @@
\newcommand{\rbsetrbracket}[1]{\renewcommand{\@rb at argB}{#1}}
\let\rbparenl(
-\let\rbparenr(
+\let\rbparenr)
\newenvironment{rb}{%
\catcode`(\active%
@@ -171,16 +177,17 @@
\int_new:N \l_index_int
\cs_new_protected:Nn \rb_define_style_colors:n
- {
- \clist_set:Nx \l_colorcodes_clist { 000000 , b4611E , 3CB44B , 4363D8 , F58231 , 911EB4 , B41E2D , 7BB41E , B41E93 , FFE119 }
+ {% Level 9 0 1 2 3 4 5 6 7 8
+ \clist_set:Nx \l_colorcodes_clist { b4611E , 000000 , 3CB44B , 4363D8 , F58231 , 911EB4 , B41E2D , 7BB41E , B41E93 , FFE119 }
\str_case:nnF { #1 }
{
{ default } {}
- { neon } { \clist_set:Nx \l_colorcodes_clist { 000000, 001EFF , 39FF14 , FFFF00 , FF00FF, 00FFFF , FFA500 , FF0000 , FF6600 , 74EE15 } }
- { pastel } { \clist_set:Nx \l_colorcodes_clist { 000000 , 66c5cc , f6cf71 , dcb0f2 , f89c74 , 87c55f , 9eb9f3 , fe88b1 , c9db74 , 8be0a4 } }
- { spectral } { \clist_set:Nx \l_colorcodes_clist { 000000 , 9e0142 , 5e4fa2 , d53e4f , 3288bd , f46d43 , 66c2a5 , fee08b , abdda4 , e6f598 } }
- { dualpolar } { \clist_set:Nx \l_colorcodes_clist { 000000 , a55a22 , 41b764, 5aad4e, 6da33a, 7c9829, 898d1b, 938114, 9b7414, a1671a} }
- { warning } { \clist_set:Nx \l_colorcodes_clist { 000000 , 750000, ffb37d, ff9160, ff6e44, ff4928, ff1407, dd0000, b90000, 960000} }
+ { neon } { \clist_set:Nx \l_colorcodes_clist { 001EFF , 000000, 39FF14 , FFFF00 , FF00FF, 00FFFF , FFA500 , FF0000 , FF6600 , 74EE15 } }
+ { pastel } { \clist_set:Nx \l_colorcodes_clist { FF746C , 000000 , f6cf71 , dcb0f2 , f89c74 , 87c55f , 9eb9f3 , fe88b1 , c9db74 , 8be0a4 } }
+ { spectral } { \clist_set:Nx \l_colorcodes_clist { 9e0142 , 000000 , 5e4fa2 , d53e4f , 3288bd , f46d43 , 66c2a5 , fee08b , abdda4 , e6f598 } }
+ { dualpolar } { \clist_set:Nx \l_colorcodes_clist { a55a22 , 000000 , 41b764, 5aad4e, 6da33a, 7c9829, 898d1b, 938114, 9b7414, a1671a} }
+ { warning } { \clist_set:Nx \l_colorcodes_clist { 750000, 000000 , ffb37d, ff9160, ff6e44, ff4928, ff1407, dd0000, b90000, 960000} }
+ { java } { \clist_set:Nx \l_colorcodes_clist { 0DAA85, 000000 , 3F9101, 0E4A8E, BC0BA2, B4960A, AA0D25, 0D98AA, AA610D, 590DAA} }
{ disabled } { \clist_set:Nx \l_colorcodes_clist { 000000 , 000000, 000000, 000000, 000000, 000000, 000000, 000000, 000000, 000000} }
}
{\PackageWarning{rainbowbrackets}{Unknown~style~'#1',~using~default~style!}}
@@ -191,19 +198,7 @@
\int_incr:N \l_index_int%
}
}
-
- \NewDocumentCommand{\disablerb}{}
- {%
- \rb_define_style_colors:n { disabled }%
- }
-\NewDocumentCommand{\rbsetstyle}{m}
-{%
-\tl_set:Nn \@rbcurrentstyle { #1 }%
-\rb_define_style_colors:n { #1 }%
-}
-
-% Bracket coloring logic
\cs_new:Npn \RB_get_modulo_max: {
\int_eval:n { \RB at max }
}
@@ -210,34 +205,24 @@
\NewDocumentCommand{\@rbbrainbow}{m}
{%
-\modswitch_fixed_counter:n {#1}%
+\int_set:Nn \l_tmpa_int { \int_mod:nn { \value{@rbbparenscounter} } { \RB_get_modulo_max: } }%
+\textcolor{rbbcpcolor\int_use:N \l_tmpa_int}{#1}%
}
-\cs_new_protected:Npn \modswitch_fixed_counter:n #1
- {
- % Read value from counter
- \int_set:Nn \l_tmpa_int { \int_mod:nn { \value{@rbbparenscounter} } { \RB_get_modulo_max: } }
+\NewDocumentCommand{\rbdisable}{}
+{%
+\rb_define_style_colors:n { disabled }%
+}
- % Perform "switch-case" logic
- \int_case:nnF { \l_tmpa_int }
- {
- { 0 } {\textcolor{rbbcpcolor1}{#1}}
- { 1 } {\textcolor{rbbcpcolor0}{#1}}
- { 2 } {\textcolor{rbbcpcolor2}{#1}}
- { 3 } {\textcolor{rbbcpcolor3}{#1}}
- { 4 } {\textcolor{rbbcpcolor4}{#1}}
- { 5 } {\textcolor{rbbcpcolor5}{#1}}
- { 6 } {\textcolor{rbbcpcolor6}{#1}}
- { 7 } {\textcolor{rbbcpcolor7}{#1}}
- { 8 } {\textcolor{rbbcpcolor8}{#1}}
- { 9 } {\textcolor{rbbcpcolor9}{#1}}
- }
- {\textcolor{rbbcpcolor0}{#1}}
+\NewDocumentCommand{\rbsetstyle}{m}
+{%
+\tl_set:Nn \@rbcurrentstyle { #1 }%
+\rb_define_style_colors:n { #1 }%
}
+
\ExplSyntaxOff
\newcommand{\rbresetstyle}{\expandafter\rbsetstyle\expandafter{\RB at style}}%
\newcommand{\rbenable}{\expandafter\rbsetstyle\expandafter{\@rbcurrentstyle}}%
-\newcommand{\rbdisable}{\rbsetstyle{}}%
\expandafter\rbsetstyle\expandafter{\RB at style}%
\endinput
% End of file `rainbowbrackets.sty'.
\ No newline at end of file
More information about the tex-live-commits
mailing list.