Match size of brakets
Thanks for the nice package.
If I write
$ braket(f, D^dagger , n) braket(n, D, i) $
The left and right brakets don't match
I failed to work out how to add a hidden superscript, which seems like the natural way to address this?
Hi, I'm glad that you find the package useful!
This issue is actually part of Typst itself: a symbol's attachment (superscript, subscript) can affect the symbol frame's overall height, and the bracket's height is too sensitive on the content's height - though we certainly want the bracket to be taller if the contained symbol is very tall, e.g. an integration symbol. Maybe you could consider filing an issue on https://github.com/typst/typst.
Besides, the height of lr is settable. Maybe we can add a size argument to braket?
https://github.com/Leedehai/typst-physics/blob/e36043094294557da4493a1ed62c54fa2ab75d4a/physica.typ#L471-L476
// This is NOT a full solution.
#set math.lr(size: 500%)
$ lr(angle.l D angle.r) $
Maybe we can add a size argument to braket?
Hi - that's a great idea. Feel free to open a PR:) However, I noticed Typst's lr() doesn't handle mid() well with the size parameter. I think that'd be a blocking issue:
#set math.lr(size: 500%)
$ lr(angle.l A mid(|) B angle.r), lr(angle.l A B angle.r) $
https://github.com/typst/typst/issues/3186
Maybe we can add a size argument to braket?
Hi - that's a great idea. Feel free to open a PR:) However, I noticed Typst's
lr()doesn't handlemid()well with thesizeparameter. I think that'd be a blocking issue:#set math.lr(size: 500%) $ lr(angle.l A mid(|) B angle.r), lr(angle.l A B angle.r) $![]()
This isn't an issue with Typst, but with the font I believe. The font doesn't have constructable angle brackets, and so only has the fixed preconstructed sizes which stop at approx. 300% (33pt).
These are the 8 variants it has (sizes aren't exact, I just picked percentages that work to show the variants):
$
stretch(|, size: #500%)
stretch(angle.r, size: #100%)
stretch(angle.r, size: #107%)
stretch(angle.r, size: #112.5%)
stretch(angle.r, size: #125%)
stretch(angle.r, size: #150%)
stretch(angle.r, size: #200%)
stretch(angle.r, size: #225%)
stretch(angle.r, size: #250%)
$