Generator Grove

Cursive Text Generator

Type once, get both script alphabets, and see exactly which of your characters Unicode cannot make cursive — before you paste it into a bio and find out there.

Script

Bold script

Coverage

    The eleven holes, and why every other cursive tool falls into them

    The plain script alphabet lives at U+1D49C to U+1D4CF inside Unicode's Mathematical Alphanumeric Symbols block. It looks like a tidy run of fifty-two letters, so the obvious way to build a cursive generator is arithmetic: take the letter's position in the alphabet, add it to the base codepoint, emit the result. That works for forty-one letters and produces garbage for eleven.

    Eight capitals — B, E, F, H, I, L, M and R — and three lowercase letters — e, g and o — were already encoded years earlier in the Letterlike Symbols block, where mathematicians had been using them for Hamiltonians, Laplace transforms and power sets. Unicode does not encode the same character twice, so when the mathematical alphabets were added the eleven duplicate slots were left permanently unassigned. Arithmetic still happily computes them. The result is a codepoint no font has ever drawn, which your reader sees as a rectangle, a question mark, or nothing at all, depending on their device.

    This page shows you the damage instead of hiding it. The coverage list names every character it could not style and every one it patched, and the dropdown lets you pick the trade-off yourself. Patching is the sensible default, but it is not free: ℬ, ℰ, ℱ, ℋ, ℐ, ℒ, ℳ, ℛ, ℯ, ℊ and ℴ come from a different block with a different coverage story, so a font that has the mathematical alphabet may lack the letterlike one and produce a word where one capital is visibly heavier, differently slanted, or a box after all. If your text contains several of them, the second panel is the safer choice: Mathematical Bold Script has no holes at all, all fifty-two letters present, because none of them was ever encoded anywhere else.

    What you are actually pasting

    This is not a font. Nothing here changes how your text is drawn; it changes which characters your text is made of. 𝒜 is not an A in a cursive typeface, it is a separate character with its own identity, name and codepoint. That is why the appearance survives a copy and paste into a field that offers no formatting at all, and it is also the source of every problem below.

    Script letters live above U+FFFF, so each one costs two UTF-16 code units. Anything counting your text in code units — which is what a plain .length gives you in most languages — sees a twelve-letter cursive name as twenty-four characters. Platforms differ on whether their limits are counted in code units, codepoints or grapheme clusters, so the tool prints both numbers under each panel and you should trust the field over either of them.

    The accessibility cost is real and worth stating plainly. Screen readers handle these characters badly. Depending on the reader and its version you may get the letters read normally, the full Unicode name of every character in turn, a character-by-character spell-out, or silence where the word should be. A cursive display name is a name that some of your audience cannot hear. Platform search is similar: a search for your ordinary name will not match a string built from different codepoints unless that platform normalises before indexing, and most do not. Keep the searchable version somewhere in the account.

    Frequently asked questions

    Why do some letters show up as empty boxes even after patching?

    Because the patch moves the problem rather than removing it. The eleven substitutes are real, assigned characters, but they sit in Letterlike Symbols rather than the mathematical block, and font coverage is decided per block. Older Android builds and some Windows font stacks ship one and not the other. If you see a box in the first panel, switch to bold script, which draws from a single unbroken range.

    Why can I not make numbers or accented letters cursive?

    Unicode encodes no script digits whatsoever. The Mathematical Alphanumeric Symbols block does contain digits — bold, double-struck, sans-serif, sans-serif bold and monospace — but the script and bold script alphabets end at the letters. There is no cursive 7 in existence to paste. Accented letters have the same answer for the same reason: the mathematical alphabets cover unaccented A–Z and a–z only, so é, ñ and ü have no script form, and neither does any Greek, Cyrillic or CJK character. Those are passed through untouched and listed in the coverage report.

    Can I use this in a username instead of a bio?

    Usually not. Bios, display names, captions and post bodies accept arbitrary Unicode on most platforms. Handles and account names generally do not — they are commonly restricted to ASCII letters, digits, underscores and periods, so the field either rejects the input or quietly strips it. The reliable move is to paste into the real field and save, rather than trusting any generator's promise about a platform.

    Limits worth knowing

    Everything runs in this page. Your text is never sent anywhere, there is no request when you type, and the tool keeps working with the network off. What it cannot do is tell you how a specific device will render the result, because that depends on fonts installed on someone else's machine that this page has no way to inspect. Treat the two panels as a comparison rather than a preview, send yourself a test message before committing, and remember that a bio which looks elegant to you may be a row of boxes to a reader on an older phone.