summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2025-02-04 22:08:29 +0000
committerKarl Berry <karl@freefriends.org>2025-02-04 22:08:29 +0000
commitf292645fc15af1f53ddaa7ff466840d3216a8c6e (patch)
tree7509fec46c1200b4100aed894ebc59d24100205f /Master/texmf-dist/doc
parent23408450581bb937d774a7e9d74214ca2a74e0db (diff)
scaletextbullet (4feb25)
git-svn-id: svn://tug.org/texlive/trunk@73726 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc')
-rw-r--r--Master/texmf-dist/doc/latex/scaletextbullet/CHANGELOG.md11
-rw-r--r--Master/texmf-dist/doc/latex/scaletextbullet/beery.cls294
-rw-r--r--Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet-code.pdfbin0 -> 33920 bytes
-rw-r--r--Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet-code.tex29
-rw-r--r--Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet.pdfbin65824 -> 65605 bytes
-rw-r--r--Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet.tex12
6 files changed, 272 insertions, 74 deletions
diff --git a/Master/texmf-dist/doc/latex/scaletextbullet/CHANGELOG.md b/Master/texmf-dist/doc/latex/scaletextbullet/CHANGELOG.md
index d556b3f5824..ce851a07746 100644
--- a/Master/texmf-dist/doc/latex/scaletextbullet/CHANGELOG.md
+++ b/Master/texmf-dist/doc/latex/scaletextbullet/CHANGELOG.md
@@ -7,6 +7,17 @@ Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to
## [Unreleased]
+## [v1.1.0] - 2025-02-03
+
+### Added
+- `scaletextbullet-code.tex`
+- `scaletextbullet-code.pdf`
+
+### Changed
+- `\ScaleTextBullet`, `\ScaleTextBullets`, and `\scaletextbulletdebug` now
+ issue a package error if used in math mode. (`\textbullet` is invalid in math
+ mode.)
+
## [v1.0.4] - 2025-01-03
### Changed
diff --git a/Master/texmf-dist/doc/latex/scaletextbullet/beery.cls b/Master/texmf-dist/doc/latex/scaletextbullet/beery.cls
index b7e8eab98b6..eda2774218b 100644
--- a/Master/texmf-dist/doc/latex/scaletextbullet/beery.cls
+++ b/Master/texmf-dist/doc/latex/scaletextbullet/beery.cls
@@ -1,16 +1,43 @@
-% Note: This class is designed ONLY for 'scaletextbullet.tex'. Compiled with LuaTeX.
+% Note: This class is designed ONLY for 'scaletextbullet.tex'. Compiled with
+% LuaTeX.
+
+% LOADING THE CLASS
% LaTeX2e version 2023-11-01 added \IfExplAtLeastTF.
\NeedsTeXFormat{LaTeX2e}[2023-11-01]
\ProvidesExplClass
{beery}
- {2025-01-03}
- {}
+ {2025-02-03}
+ {0.0.0}
{}
+\prop_gput:Nnn \g_msg_module_type_prop { beery } { Class }
+
+% l3kernel version 2023-10-10 added many 'e'-variants.
+\IfExplAtLeastTF { 2023-10-10 } { }
+ {
+ \msg_new:nnn { beery } { expl3-out-of-date }
+ {
+ The~ beery~ class~ could~ not~ load.~
+ This~ class~ requires~
+ L3~ programming~ layer~ version~ 2023-10-10~ or~ newer.
+ }
+ \msg_critical:nn { beery } { expl3-out-of-date }
+ }
+
+\sys_if_engine_luatex:F
+ {
+ \msg_new:nnn { beery } { luatex-required }
+ { The~ beery~ class~ could~ not~ load.~ This~ class~ requires~ LuaTeX. }
+ \msg_critical:nn { beery } { luatex-required }
+ }
+
\LoadClass { article }
-\box_new:N \l__beery_tmp_box
+% MESSAGES
+
+\msg_new:nnn { beery } { math-mode-error }
+ { '#1'~ cannot~ be~ used~ in~ math~ mode~ \msg_line_context:. }
\RequirePackage { fontscale }
\fontscalesetup { musical }
@@ -39,59 +66,167 @@
, breakable
}
-% CUSTOM MACROS
+% SOME VARIABLES
+\fp_const:Nn \c_beery_golden_ratio_fp { 1.6180 3398 8749 8948 }
\tl_const:Nn \c_beery_alphabet_tl { abcdefghijklmnopqrstuvwxyz }
+\tl_const:Nn \c_beery_digits_tl { 0123456789 }
+
+\regex_const:Nn \c__beery_ends_in_letter_regex { ^.*[A-Za-z]$ }
+
+% Scratch variables
+\box_new:N \l__beery_tmp_box
+
+% CUSTOM MACROS
+
\NewExpandableDocumentCommand \alphabet { } { \c_beery_alphabet_tl }
+\NewExpandableDocumentCommand \digits { } { \c_beery_digits_tl }
+\NewExpandableDocumentCommand \pangram { }
+ { The~ quick~ brown~ fox~ jumps~ over~ the~ lazy~ dog. }
+
\NewDocumentCommand \Key
{ >{ \TrimSpaces } m >{ \TrimSpaces } o >{ \TrimSpaces } o }
{
\mode_leave_vertical:
+ \IfNoValueTF {#2}
+ { \__beery_print_key:n {#1} }
+ {
+ \IfNoValueTF {#3}
+ { \__beery_print_key:nn {#1} {#2} }
+ { \__beery_print_key:nnn {#1} {#2} {#3} }
+ }
+ }
+\cs_new_protected:Npn \__beery_print_key:n #1 { \texttt {#1} }
+\cs_new_protected:Npn \__beery_print_key:nn #1#2
+ { \texttt { #1 \ensuremath { \,=\, } \allowbreak #2 } }
+\cs_new_protected:Npn \__beery_print_key:nnn #1#2#3
+ {
\group_begin:
\ttfamily
- \IfNoValueTF {#3}
- {
- \IfNoValueTF {#2}
- {#1}
- { #1 $\,=\,$ \allowbreak #2 }
- }
- { #1 $\,=\,$ #2 \hspace* { \fill } \hbox:n { initial $\,=\,$ #3 } }
+ #1 \ensuremath { \,=\, } #2 \hspace* { \fill }
+ \hbox:n { initial \ensuremath { \,=\, } #3 }
\group_end:
}
-\NewDocumentCommand \Value { >{ \TrimSpaces } m } { \texttt {#1} }
-\NewDocumentCommand \cmd { >{ \TrimSpaces } m }
- { \texttt { \token_to_str:N #1 } \@ }
+\NewDocumentCommand \Value { >{ \TrimSpaces } m }
+ {
+ \mode_if_math:TF
+ {
+ \msg_error:nne { beery } { math-mode-error }
+ { \token_to_str:N \Value }
+ }
+ { \__beery_print_value:n {#1} }
+ }
+\cs_new_protected:Npn \__beery_print_value:n #1 { \texttt {#1} \@ }
\NewDocumentCommand \cs { >{ \TrimSpaces } m }
+ {
+ \mode_if_math:TF
+ { \msg_error:nne { beery } { math-mode-error } { \token_to_str:N \cs } }
+ { \__beery_print_cs:n {#1} }
+ }
+\cs_new_protected:Npn \__beery_print_cs:n #1
{ \texttt { \token_to_str:c {#1} } \@ }
\NewDocumentCommand \marg { >{ \TrimSpaces } m }
+ { \__beery_print_m_arg:n {#1} }
+\cs_new_protected:Npn \__beery_print_m_arg:n #1
{
\allowbreak
\texttt { \c_left_brace_str }
- $\langle$
- { \normalfont \itshape #1 }
- $\rangle$
+ \ensuremath \langle
+ \group_begin:
+ \normalfont \itshape #1
+ \group_end:
+ \ensuremath \rangle
\texttt { \c_right_brace_str }
}
\NewDocumentCommand \oarg { >{ \TrimSpaces } m }
+ { \__beery_print_o_arg:n {#1} }
+\cs_new_protected:Npn \__beery_print_o_arg:n #1
{
\allowbreak
\texttt { [ }
- $\langle$
- { \normalfont \itshape #1 }
- $\rangle$
+ \ensuremath \langle
+ \group_begin:
+ \normalfont \itshape #1
+ \group_end:
+ \ensuremath \rangle
\texttt { ] }
}
-\NewDocumentCommand \sarg { } { $\langle$ \texttt {*} $\rangle$ }
-\NewDocumentCommand \meta { >{ \TrimSpaces } m }
+\NewDocumentCommand \sarg { } { \__beery_print_s_arg: }
+\cs_new_protected:Npn \__beery_print_s_arg:
+ { \ensuremath \langle \texttt {*} \ensuremath \rangle }
+\NewDocumentCommand \meta { >{ \TrimSpaces } m } { \__beery_print_meta:n {#1} }
+\cs_new_protected:Npn \__beery_print_meta:n #1
+ {
+ \ensuremath \langle
+ \group_begin:
+ \normalfont \itshape #1
+ \group_end:
+ \ensuremath \rangle
+ }
+\NewDocumentCommand \cls { >{ \TrimSpaces } m }
{
- $\langle$
- { \normalfont \itshape #1 }
- $\rangle$
+ \mode_if_math:TF
+ { \msg_error:nne { beery } { math-mode-error } { \token_to_str:N \cls } }
+ { \__beery_print_cls:n {#1} }
}
-\NewDocumentCommand \cls { >{ \TrimSpaces } m } { \textsf {#1} }
-\NewDocumentCommand \env { >{ \TrimSpaces } m } { \texttt {#1} }
-\NewDocumentCommand \pkg { >{ \TrimSpaces } m } { \textsf {#1} }
-\NewDocumentCommand \latin { >{ \TrimSpaces } m } { \textit {#1} }
+\cs_new_protected:Npn \__beery_print_cls:n #1 { \textsf {#1} \@ }
+\NewDocumentCommand \env { >{ \TrimSpaces } m }
+ {
+ \mode_if_math:TF
+ { \msg_error:nne { beery } { math-mode-error } { \token_to_str:N \env } }
+ { \__beery_print_env:n {#1} }
+ }
+\cs_new_protected:Npn \__beery_print_env:n #1 { \texttt {#1} \@ }
+\NewDocumentCommand \pkg { >{ \TrimSpaces } m }
+ {
+ \mode_if_math:TF
+ { \msg_error:nne { beery } { math-mode-error } { \token_to_str:N \pkg } }
+ { \__beery_print_pkg:n {#1} }
+ }
+\cs_new_protected:Npn \__beery_print_pkg:n #1 { \textsf {#1} \@ }
+\NewDocumentCommand \latin { >{ \TrimSpaces } m }
+ {
+ \mode_if_math:TF
+ {
+ \msg_error:nne { beery } { math-mode-error }
+ { \token_to_to_str:N \latin }
+ }
+ { \__beery_print_latin:n {#1} }
+ }
+\cs_new_protected:Npn \__beery_print_latin:n #1 { \textit {#1} }
+
+\NewDocumentCommand \AllCaps { O { 50 } >{ \TrimSpaces } m }
+ {
+ \mode_if_math:TF
+ {
+ \msg_error:nne { beery } { math-mode-error }
+ { \token_to_str:N \AllCaps }
+ }
+ { \__beery_text_all_caps:nn {#1} {#2} }
+ }
+\cs_new_protected:Npn \__beery_text_all_caps:nn #1#2
+ {
+ \textls [ \int_eval:n {#1} ] { \text_uppercase:n {#2} }
+ \regex_match:NnT \c__beery_ends_in_letter_regex {#2} { \@ }
+ }
+\NewDocumentCommand \AllSmallCaps
+ { >{ \ReverseBoolean } s O { 50 } >{ \TrimSpaces } m }
+ {
+ \mode_if_math:TF
+ {
+ \msg_error:nne { beery } { math-mode-error }
+ { \token_to_str:N \AllSmallCaps }
+ }
+ {
+ \IfBooleanTF #1
+ { \__beery_text_small_caps:nn {#2} {#3} }
+ { \__beery_text_lowercase_small_caps:nn {#2} {#3} }
+ }
+ }
+\cs_new_protected:Npn \__beery_text_small_caps:nn #1#2
+ { \textls [ \int_eval:n {#1} ] { \scshape #2 } }
+\cs_new_protected:Npn \__beery_text_lowercase_small_caps:nn #1#2
+ { \textls [ \int_eval:n {#1} ] { \scshape \text_lowercase:n {#2} } }
% PAGE STYLE
@@ -123,33 +258,39 @@
\skip_log:N \c_beery_medium_skip
\skip_log:N \c_beery_small_skip
+% \flushbottom
\raggedbottom
\int_set:Nn \vbadness { 100 }
\skip_set:Nn \topskip { \l_fontscale_normalsize_size_dim }
\skip_set_eq:NN \splittopskip \topskip
+
\RequirePackage { geometry }
+\dim_const:Nn \c_beery_textwidth_dim
+ { \fp_to_dim:n { \c_e_fp * \dim_to_fp:n { \c_beery_alphabet_dim } } }
+\dim_const:Nn \c_beery_textheight_dim
+ {
+ \fp_to_dim:n
+ { \c_beery_golden_ratio_fp * \dim_to_fp:n { \c_beery_textwidth_dim } }
+ }
+\dim_const:Nn \c_beery_footskip_dim
+ { \c_beery_big_dim + \l_fontscale_footnotesize_baselineskip_skip }
\geometry
{
a4paper
- , textwidth =
- \fp_to_dim:n { \c_e_fp * \dim_to_fp:n { \c_beery_alphabet_dim } }
- , textheight =
- \fp_to_dim:n
- { 1.6180 * \c_e_fp * \dim_to_fp:n { \c_beery_alphabet_dim } }
+ , textwidth = \c_beery_textwidth_dim
+ , textheight = \c_beery_textheight_dim
, heightrounded
, centering
, headheight = \l_fontscale_footnotesize_baselineskip_skip
, headsep = \c_beery_big_dim
- , footskip =
- \dim_eval:n
- { \c_beery_big_dim + \l_fontscale_footnotesize_baselineskip_skip }
+ , footskip = \c_beery_footskip_dim
}
\RequirePackage { fancyhdr }
\pagestyle { fancy }
\fancyhf { }
-\renewcommand \headrulewidth { 0pt }
+\cs_set:Npn \headrulewidth { 0pt }
\fancyfoot [ C ]
{ \footnotesize \thepage \c_space_tl of~ \pageref { LastPage } }
@@ -159,16 +300,20 @@
\linespread { 1 }
\RequirePackage [ skip = \c_beery_medium_skip ] { parskip }
\RequirePackage [ raggedrightboxes ] { ragged2e }
-\skip_set:Nn \RaggedRightRightskip { 0pt plus 0.5 \linewidth }
+\skip_set:Nn \RaggedRightRightskip { \c_zero_dim plus \c_beery_alphabet_dim }
\dim_zero:N \RaggedRightParindent
\dim_set_eq:NN \JustifyingParindent \RaggedRightParindent
\RaggedRight
+% \justifying
+\RequirePackage { microtype }
+\microtypesetup { protrusion = false , expansion = false }
\int_set:Nn \pretolerance { -1 }
\int_set:Nn \tolerance { 200 }
\dim_zero:N \emergencystretch
\int_set:Nn \widowpenalty { 10000 }
\int_set_eq:NN \clubpenalty \widowpenalty
\int_set_eq:NN \displaywidowpenalty \widowpenalty
+% hyphenation
\int_set:Nn \hyphenpenalty { 99 }
\int_set_eq:NN \exhyphenpenalty \hyphenpenalty
@@ -179,7 +324,7 @@
\setcounter { tocdepth } { 2 }
\titlespacing* \section % section
- { 0pt } % indent
+ { \c_zero_dim } % indent
{
\c_beery_big_dim
plus \fp_to_dim:n { 1 / 2 * 4 * \dim_to_fp:n { \c_beery_big_dim } }
@@ -187,7 +332,7 @@
} % before
{ \c_beery_medium_skip } % after
\titlespacing* \subsection
- { 0pt }
+ { \c_zero_dim }
{
\fp_to_dim:n { 4 / 3 * \dim_to_fp:n { \c_beery_medium_dim } }
plus \fp_to_dim:n { 1 / 2 * 4 * \dim_to_fp:n { \c_beery_medium_dim } }
@@ -219,58 +364,69 @@
leftmargin = *
, labelsep = 0.5em
% vertical spacing
- , topsep = 0pt
- , partopsep = 0pt
+ , topsep = \c_zero_skip
+ , partopsep = \c_zero_skip
, parsep = \c_beery_small_skip
- , itemsep = 0pt
+ , itemsep = \c_zero_skip
}
\setlist [ itemize , 1 ] { label = \textbullet }
\setlist [ itemize , 2 ] { label = \ScaleTextBullets { 2 } }
\setlist [ itemize , 3 ] { label = \ScaleTextBullets { 3 } }
+\setlist [ itemize , 4 ] { label = \ScaleTextBullets { 4 } }
\setlist [ enumerate , 1 ] { label = \arabic* . }
-\setlist [ enumerate , 2 ] { label = \theenumi \arabic* . }
-\setlist [ enumerate , 3 ] { label = \theenumii \arabic* . }
+\setlist [ enumerate , 2 ] { label = \theenumi \arabic* . }
+\setlist [ enumerate , 3 ] { label = \theenumii \arabic* . }
+\setlist [ enumerate , 4 ] { label = \theenumiii \arabic* . }
% list headings
% https://tex.stackexchange.com/questions/2644/how-to-prevent-a-page-break-before-an-itemize-list
-\NewDocumentCommand \KeepNextPar { s }
+\NewDocumentCommand \KeepNextPar { > { \ReverseBoolean } s }
{
- \par
- \IfBooleanTF #1
+ \mode_if_math:TF
+ {
+ \msg_error:nne { beery } { math-mode-error }
+ { \token_to_str:N \KeepNextPar }
+ }
{
- \int_compare:nNnT { \prevgraf } = { 1 }
- { \nobreak \@afterheading }
+ \IfBooleanTF #1
+ { \__beery_keep_next_par: }
+ { \__beery_keep_next_par_if_single_line: }
}
+ }
+\cs_new_protected:Npn \__beery_keep_next_par: { \nobreak \@afterheading }
+\cs_new_protected:Npn \__beery_keep_next_par_if_single_line:
+ {
+ \int_compare:nNnT \prevgraf = 1
{ \nobreak \@afterheading }
}
\NewDocumentCommand \listheading { m }
{
+ \mode_if_math:TF
+ {
+ \msg_error:nne { beery } { math-mode-error }
+ { \token_to_str:N \listheading }
+ }
+ { \__beery_typeset_list_heading:n {#1} }
+ }
+\cs_new_protected:Npn \__beery_typeset_list_heading:n #1
+ {
\par
#1
\par
- \int_compare:nNnT { \prevgraf } = { 1 }
+ \int_compare:nNnT \prevgraf = 1
{ \nobreak \@afterheading }
\vspace { \skip_eval:n { \c_beery_small_skip - \parskip } }
}
% TABLES
-\renewcommand \bottomfraction { 1 }
-\renewcommand \topfraction { 1 }
-\skip_set:Nn \textfloatsep
- {
- \c_beery_big_dim
- plus \c_beery_big_dim
- minus \fp_to_dim:n { \dim_to_fp:n { \c_beery_big_dim } / 3 }
- }
-
\RequirePackage { tabularray }
\UseTblrLibrary { booktabs , siunitx }
% FOOTNOTES
\RequirePackage [ bottom ] { footmisc }
-\renewcommand \footnoterule { }
+\cs_set_protected:Npn \footnoterule { }
% \setlength { \skip \footins } { \c_beery_big_skip }
\dim_set:Nn \footnotesep { \f@linespread \footnotesep }
\coffin_new:N \l__beery_footnote_coffin
@@ -280,11 +436,11 @@
{
\fp_to_dim:n
{
- ( 1.2 * \f@linespread - 1 )
- * \dim_to_fp:n { \l_fontscale_footnotesize_size_dim }
+ ( 1.2 * \f@linespread - 1 ) *
+ \dim_to_fp:n { \l_fontscale_footnotesize_size_dim }
}
}
-\RenewDocumentCommand \@makefntext { +m }
+\cs_set_protected:Npn \@makefntext #1
{
\vcoffin_set:Nnn \l__beery_footnote_coffin { \textwidth }
{
@@ -294,8 +450,8 @@
{
\fp_to_dim:n
{
- ( 1 - \l_fontscale_footnotesize_scale_fp ) / 2
- * \dim_to_fp:n { \textwidth }
+ ( 1 - \l_fontscale_footnotesize_scale_fp ) / 2 *
+ \dim_to_fp:n { \textwidth }
}
}
\dim_set_eq:NN \rightmargin \leftmargin
@@ -306,7 +462,7 @@
\item #1 \endlist
}
\coffin_typeset:Nnnnn \l__beery_footnote_coffin { l } { b }
- { 0pt } { - \c_beery_footnote_baselineheight_dim }
+ { \c_zero_dim } { - \c_beery_footnote_baselineheight_dim }
}
% REFERENCES
diff --git a/Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet-code.pdf b/Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet-code.pdf
new file mode 100644
index 00000000000..12892452e1b
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet-code.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet-code.tex b/Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet-code.tex
new file mode 100644
index 00000000000..92a5f656a7f
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet-code.tex
@@ -0,0 +1,29 @@
+\documentclass{article}
+
+
+\usepackage{parskip}
+\usepackage{geometry}
+\geometry{a4paper}
+\raggedbottom\raggedright
+
+\usepackage{codehigh}
+
+\usepackage{hyperref}
+\hypersetup{bookmarksnumbered}
+
+
+\begin{document}
+
+
+\section*{\Large The \textsf{scaletextbullet} package}
+
+Resize the \texttt{\textbackslash{}textbullet} without changing its vertical center
+
+Oliver Beery
+
+Version 1.1.0\quad{}3 February 2025
+
+\dochighinput[language=latex/latex3]{scaletextbullet.sty}%
+
+
+\end{document} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet.pdf b/Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet.pdf
index 9cfad1740d3..67a26d6d1e1 100644
--- a/Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet.pdf
+++ b/Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet.tex b/Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet.tex
index cf98c28096c..b95e4c69be3 100644
--- a/Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet.tex
+++ b/Master/texmf-dist/doc/latex/scaletextbullet/scaletextbullet.tex
@@ -16,7 +16,7 @@ Resize the \cs{textbullet} without changing its vertical center
Oliver Beery
-Version 1.0.4\quad{}3 January 2025
+Version 1.1.0\quad{}3 February 2025
\section{Introduction}
@@ -29,7 +29,7 @@ This process is not fully automated\---the user must use \cs{SetTextBulletFactor
The \textbulletfactor{} is the ratio of the width of the \cs{textbullet}, excluding its empty space, to its width, including its empty space.
One way of estimating the \textbulletfactor{} is by using \cs{scaletextbulletdebug}.
-This package provides a solution that works in text mode.
+This package provides a solution that works only in text mode.
For a solution that works only in math mode, see the linked \TeX{} Stack Exchange thread.%
\footnote{\url{https://tex.stackexchange.com/questions/119319/how-to-correctly-shrink-the-bullets-of-itemize}}
@@ -48,8 +48,7 @@ You may need to ensure that your \LaTeX{} installation is up\-/to\-/date before
\label{sec:commands}
This package defines some commands whose argument takes a \meta{floating point expression} or \meta{integer expression}.
-This syntax has the same representation as the arguments to \cs{fpeval} and \cs{inteval}, documented in \pkg{usrguide}.%
-\footnote{\url{https://ctan.org/pkg/usrguide}}
+This syntax has the same representation as the arguments to \cs{fpeval} and \cs{inteval}, documented in \pkg{usrguide}.
\begin{mydisplaycode}
\cs{SetTextBulletFactor} \marg{floating point expression}
@@ -57,7 +56,7 @@ This syntax has the same representation as the arguments to \cs{fpeval} and \cs{
Sets the \textbulletfactor{} to the result of computing the \meta{floating point expression}.
The \textbulletfactor{} is the ratio of the width of the \cs{textbullet}, excluding its empty space, to its width, including its empty space.
-This change is local to the current group.
+The scope of the effect is local to the current group.
The initial \textbulletfactor{} is \num{0.4}\---this matches the dimensions of the \cs{textbullet} of the Latin Modern font at size \qty{10}{pt}.
\pagebreak%manual
@@ -67,6 +66,7 @@ The initial \textbulletfactor{} is \num{0.4}\---this matches the dimensions of t
Prints a \cs{textbullet} with its size scaled by the result of computing the \meta{floating point expression}.
The new \cs{textbullet} will be printed with the same vertical center only if the \textbulletfactor{} is set to the correct value.
+Cannot be used in math mode.
\begin{mydisplaycode}
\cs{ScaleTextBullets} \oarg{floating point expression} \marg{integer expression}
@@ -79,6 +79,7 @@ Prints a number of \cs{textbullet}s equal to the value of \meta{integer expressi
}
If the optional argument is used, the size of each \cs{textbullet} is instead scaled by the result of computing the \meta{floating point expression}.
The new \cs{textbullet} will be printed with the same vertical center only if the \textbulletfactor{} is set to the correct value.
+Cannot be used in math mode.
\begin{mydisplaycode}
\cs{scaletextbulletdebug}
@@ -89,6 +90,7 @@ Prints \num{15} consecutive \cs{textbullet}s with decreasing sizes.
The \cs{textbullet}s are followed by the original \cs{textbullet} inside a framed box.
The framed box has width equal to the \textbulletfactor{} \texttimes{} the total width of the \cs{textbullet} (this includes its empty space).
The \textbulletfactor{} is set to the correct value when the \num{15} consecutive \cs{textbullet}s have the same vertical center and the \cs{textbullet} fits nicely inside the framed box.
+Cannot be used in math mode.
\section{Application}