fribidi_shape_mirroring(3)
π fribidi_shape_mirroring(3) β the mirroring shaping glow-up
okay so bestie, welcome to the Programmer's Manual page for fribidi_shape_mirroring, and yes we are about to make mirroring characters in right-to-left text make so much sense. grab a boba, this one's cute and short π
β¨ SYNOPSIS β¨
#include <../fribidi/lib/fribidi.h>
void fribidi_shape_mirroring
(
const FriBidiLevel *embedding_levels,
const FriBidiStrIndex len,
FriBidiChar *str
);
π PARAMETERS π
const FriBidiLevel *embedding_levelsβ the input list of embedding levels, fr fr the exact one you got back fromfribidi_get_par_embedding_levels. this is how our function knows which bits of the string are RTL πconst FriBidiStrIndex lenβ the input string length, obviously, we gotta know how much string we're working with πΈFriBidiChar *strβ the string to shape. this is the queen being edited in place, main character energy π
π DESCRIPTION π
so what does it actually do? this function replaces mirroring characters on right-to-left embeddings in the string with their mirrored equivalent β and where do those equivalents come from? fribidi_get_mirror_char(), periodt. no cap, that's the whole vibe check.
and lore drop: this function implements rule L4 of the Unicode Bidirectional Algorithm, available at http://www.unicode.org/reports/tr9/#L4. iconic behavior honestly π
π¦ SEE ALSO π¦
the whole bestie squad, no one left behind:
fribidi_shape_arabic(3), fribidi_get_par_direction(3), fribidi_get_par_embedding_levels_ex(3), fribidi_reorder_line(3), fribidi_get_bidi_type(3), fribidi_get_bidi_types(3), fribidi_get_bidi_type_name(3), fribidi_charset_to_unicode(3), fribidi_unicode_to_charset(3), fribidi_parse_charset(3), fribidi_debug_status(3), fribidi_set_debug(3), fribidi_mirroring_status(3), fribidi_set_mirroring(3), fribidi_reorder_nsm_status(3), fribidi_set_reorder_nsm(3), fribidi_log2vis_get_embedding_levels(3), fribidi_get_type(3), fribidi_get_type_internal(3), fribidi_get_par_embedding_levels(3), fribidi_join_arabic(3), fribidi_get_joining_type(3), fribidi_get_joining_types(3), fribidi_get_joining_type_name(3), fribidi_get_mirror_char(3), fribidi_get_bracket(3), fribidi_get_bracket_types(3), fribidi_shape(3), fribidi_remove_bidi_marks(3), fribidi_log2vis(3) π«
ok that's the page!! mwah π this lil handbook was generated by c2man from fribidi-mirroring.h, dated 29 October 2026 β go off, mirroring icon, you ate π«Άβ¨
π¦ where this page comes from
- arch rolling: fribidi 1.0.18-1 Β· LGPL-2.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms