4

Is there a way to create parentheses in math mode that have an extension between that of the commands \big (too small) and \Big (too big)? The amsmath package documentation defines the delimiters in this way:

\renewcommand{\big}{\bBigg@\@ne}
\renewcommand{\Big}{\bBigg@{1.5}}
\renewcommand{\bigg}{\bBigg@\tw@}
\renewcommand{\Bigg}{\bBigg@{2.5}}

but if I try with something like

\makeatletter
\renewcommand{\Pbig}{\bBigg@{1.25}}
\makeatother

in the preamble and then I write $\Pbig($ in the code, it doesn't work; it only produces the same results as \big or \Big.

  • 3
    a font only offers a fixed set of designed delimiters then for larger sizes constructs arbitrary size by inserting a straight extender segment. So for the smaller sizes the only option is to load the font at a different size if the supplied sizes are not as required. – David Carlisle Apr 9 at 14:23
  • Depending on the application, the scalerel package might help. Please give a more firm example of desired usage. – Steven B. Segletes Apr 9 at 14:25
  • I simply have to put a mathematical expression in brackets; like, for instance $[a + bx]$. The problem is that \bigl[ is too short to include all the mathematical text, whereas \Bigl[ results to long. – TFra6 Apr 9 at 21:51
4

Here I use scalerel package to create a delimiter that is 1.5pt larger above and below (3 pt total) than \big . I call it \pig. I limit the overall width to 5pt

While it will technically "work" with any delimiter, it is really intended for either ( or \{. Use with [ produces an undesirable line thickness. EDITED to minimize this issue and provide two alternatives.

In this manifestation (the intermediate size is a scaled up \big), the bracket line thickness is slightly too thick:

\documentclass{article}
\usepackage{scalerel,stackengine}
\newcommand\pig[1]{\scalerel*[5pt]{\big#1}{%
  \ensurestackMath{\addstackgap[1.5pt]{\big#1}}}}
\newcommand\pigl[1]{\mathopen{\pig{#1}}}
\newcommand\pigr[1]{\mathclose{\pig{#1}}}
\begin{document}
$ \bigl( \pigl( \Bigl($

$ \bigl\{ \pigl\{ \Bigl\{$

$ \bigl[ \pigl[  \Bigl[$ $<$---BAD!
\end{document}

enter image description here

In this second manifestation, one \big is changed to \Big in the \pig definition (so that the intermediate size is a scaled down \Big), and the maximum width was increased to 5.5pt. Now, the bracket line thickness is just slightly too thin:

\documentclass{article}
\usepackage{scalerel,stackengine}
\newcommand\pig[1]{\scalerel*[5.5pt]{\Big#1}{%
  \ensurestackMath{\addstackgap[1.5pt]{\big#1}}}}
\newcommand\pigl[1]{\mathopen{\pig{#1}}}
\newcommand\pigr[1]{\mathclose{\pig{#1}}}
\begin{document}
$ \bigl( \pigl( \Bigl($

$ \bigl\{ \pigl\{ \Bigl\{$

$ \bigl[ \pigl[  \Bigl[$ $<$---BAD!
\end{document}

enter image description here

Perhaps one of the versions is [almost] suitable.

  • 1
    +1 for \pig. :-) – Mico Apr 9 at 14:54
  • 1
    @Mico My original implementation had \cig, but I started thinking, "\pig seems much more appropriate in so many ways!" – Steven B. Segletes Apr 9 at 14:55
  • The code works fine, but the problem is that a I really need the square bracket. ;) – TFra6 Apr 9 at 21:52
  • @TFra6 Please see my edit to minimize the issue. Two alternatives provided. – Steven B. Segletes Apr 9 at 22:58
  • Sorry I didn't see the second example. Let's say that until now it's the best solution I've found, so I'll take this one. However, the best idea to avoid these small subtleties would be to know how the \big, \Big, etc. delimiters are defined in LaTeX and from there define an 'equal' one simply by changing the numbers (if possible). But I do not know how I can do it. – TFra6 Apr 10 at 9:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.