Skip to content
Ghostchars

Joiners, selectors and fillers

HANGUL JAMO FILLERS (U+115F-U+1160)

Two zero-width fillers, U+115F HANGUL CHOSEONG FILLER and U+1160 HANGUL JUNGSEONG FILLER, that stand in for a missing initial consonant or medial vowel when a Korean syllable block is written out in jamo. In everyday terms they are the choseong filler and the jungseong filler.

Range
U+115F-U+1160
Also written as
u115f-u1160
Removed by default
When free-floating
Governing option
Aggressive -a
Can be load-bearing
Yes

Copy and paste U+115F

To copy and paste HANGUL CHOSEONG FILLER (U+115F), press the button: the character itself goes to your clipboard, and Ctrl+V (Cmd+V on a Mac) pastes it anywhere you can type.

This page covers a whole block, so the button copies one character from it: HANGUL CHOSEONG FILLER (U+115F).

Where it comes from

Korean text encoded as conjoining jamo rather than as precomposed syllables: linguistic material, some IMEs, and older data. The choseong filler (U+115F) holds the leading consonant slot of a block that has none, the jungseong filler (U+1160) holds the vowel slot, and both travel with the text as soon as it is copied out as bare jamo.

Why it matters

They are invisible and they sit inside words, so they break search and comparison for Korean exactly the way a zero width space does for English.

Before and after

HANGUL JAMO FILLERS (U+115F-U+1160) before and after cleaning, with the hidden character shown as a labelled chip
Reference card for this character: the codepoint, the verdict, and the same before and after in one image.
BeforeabU+115Fc
Afterabc

A jamo filler surrounded by Latin letters: there is no syllable block for it to complete.

The character is shown as a labelled chip so you can see where it sits. In your text it draws nothing at all.

When it is legitimate

Inside a jamo sequence, next to other Hangul jamo.

How to remove it

Removed by the default pass unless the previous kept character is a Hangul jamo; `-a` removes them there as well.

Working in a file rather than a paste? The document report for .docx, .odt and .html finds it inside the file, together with hidden runs and tracked changes, without you having to open it. If the question is what the rest of the writing does rather than what this one character does, measure sentence-length variation and see where each habit sits, with no score and no claim about who wrote the text.

Is it an AI watermark?

Not a watermark

No. These are Korean script mechanics. U+3164 HANGUL FILLER, the one behind blank usernames, is a different, compatibility character that is always removed.

No connection to machine-generated text. It comes from software, from a keyboard, or from a person.

Questions

What is U+115F HANGUL CHOSEONG FILLER?

It is the choseong filler: the placeholder that occupies the leading consonant slot of a Korean syllable block that does not have one. Inside a jamo sequence it is legitimate, so the default pass keeps it when the previous kept character is a Hangul jamo and removes it anywhere else; `-a` removes it in both positions.

What is U+1160 HANGUL JUNGSEONG FILLER?

It is the jungseong filler, the same idea for the medial vowel slot: it holds the place of a vowel the block does not have. It is treated exactly like U+115F, kept next to other Hangul jamo, removed by the default pass in any other position, and removed by `-a` in both.

How do these differ from U+3164?

U+115F and U+1160 are conjoining jamo used inside a syllable block and are kept next to other jamo. U+3164 HANGUL FILLER has no such role: it is the compatibility character behind blank usernames and blank messages, it is always removed, and it has a page of its own here.

Check your own text

Paste anything into the cleaner to see every hidden character it contains, with position, codepoint and what happens to each one. Nothing is uploaded.

Check your own textClean it in Chrome as you pasteClean it on your Mac with one keystrokeAll characters

Anonymous usage stats?

Ghostchars processes your text in the browser and never uploads it. We would like to count page views with a self-hosted, cookie-light analytics endpoint. No content, ever.