Three ways to reverse text
"Reverse all characters" flips the entire string back to front, which is the classic mirror-writing effect ("hello" becomes "olleh"). "Reverse word order" keeps each word spelled normally but flips the order they appear in, which is handy for checking palindrome-style wordplay or just rearranging a sentence. "Reverse line order" keeps every line intact but flips which comes first, useful for flipping a chronological list (like a changelog or chat log pasted newest-first) into the opposite order.
Why character reversal handles emoji and accents correctly
Character reversal works on whole grapheme clusters (what a reader perceives as one visual character) rather than raw bytes or even individual Unicode code points. That distinction matters for compound emoji specifically: a flag, a skin-tone-modified emoji, or a family emoji made of several people is actually built from multiple code points joined together - reversing at the code-point level (as many simpler tools do) would scramble those internal parts and can even turn a flag into the wrong country's flag. Reversing by grapheme cluster keeps each of those compound emoji intact as one unit instead.
Why word-order reversal keeps whitespace in place
Reversing word order specifically preserves the original spacing between words rather than just reversing a simple split-and-rejoin on single spaces - this matters for text with multiple spaces, tabs, or other whitespace patterns between words, keeping the result closer to the original formatting rather than normalizing every gap to a single space.
A practical use for line reversal
Many logs, changelogs, and chat exports list entries newest-first by default - reversing line order turns that into oldest-first chronological reading order (or vice versa) without needing to manually cut and reorder each line by hand.