How can I type the unicode character U+200B (zero-width space character) with my keyboard?

When using recent versions of Chrome/Chromium, you can use its console to copy the character to clipboard:

copy(String.fromCodePoint(0x200B))

First convert the hex 200B to decimal 8203

Second, making sure numlock is turned on, press the following keystrokes while holding down the Alt key, then striking the four digits on the numeric keypad, and finally releasing the Alt key.

Alt+8203

It will insert the proper character, but you may see garbage depending on the font you are using (does it contain a glyph for that character) as well as the editor you are using may not be unicode aware and treat it as two characters or something else completely.

Note: I tested this with the Arial Unicode MS font, and it worked like a champ.

  • Thanks for your answer but how can I do it, for example, inside this very comment box? – Mehper C. Palavuzlar Jun 25 '10 at 17:24
  • 11
    This inserts U+2642 here. In RichEdit it works (as does using 08203). As to the why for U+2642: 8203 mod 256 is 11 which was, in the OEM charset, the character code of the glyph ♂ (which is now U+2642). This is consistent with what I have previously observed: Using Alt+foo treats the code differently, depending on what is prefixed. If no 0 is at the start of the code, then it is interpreted in the OEM charset, otherwise the system legacy charset. In both cases Unicode is only involved in converting the result to a character. – Joey Jun 26 '10 at 8:06
  • 1
    Obviously this differs between applications and controls, but not in a meaningful and predictable way so as a general solution this isn't quite right, still. – Joey Jun 26 '10 at 8:06
  • 1
    By the way, browsers should have no problem picking a font for a particular glyph that isn't present in the font specified. Also Arial does contain a glyph for U+200B. In any case, you shouldn't see null glyphs (boxes or U+FFFD) on a semi-recent system. – Joey Jun 26 '10 at 8:09
  • 2
    How do you type this character on a device that doesn't have a numeric pad, like some laptops? – Borek Bernard Jan 8 '12 at 9:30

Follow the instructions in Wikipedia. Unfortunately you need to set a registry key first.

After that formality is taken care of, just hold Alt and press + 2 0 0 B, typing the + and numbers on the numpad, and the letters normally.

  • 3
    Typing the letter B at the end on my Windows XP terminal seems to abort the escape sequence and no character is actually sent to the text box. – Goyuix Jun 25 '10 at 15:24
  • @Goyuix: The console windows are an entirely different beast ... most of the time you can't enter characters with Alt+foo there. – Joey Jun 26 '10 at 7:49

Alt + 0129

This inserts a zero-width character.

  • 5
    0129 - hex 0x81 - is not the same as U+200B and is not a zero-width character. In the Windows Cp1252 character encoding and ISO-8859-1 it is "not a character" — there is nothing at the code-point x81, so yes, it renders as nothing, but it isn't a word boundary so it's not the same as a zero-width space. In Unicode, codepoint 0x81 is in the "C1" reserved control character range. If you're using Unicode / UTF-8 encoding you should avoid characters in the range 0x80 to 0x9f (128-159). Even in Latin-1 this range is reserved – Stephen P Aug 19 '15 at 18:59

You can go to this website: Symbols - it provides easy access to many special symbols and characters. At the bottom of the page, you see a button for "Zero Width Space" character, just click on that button to have the "Zero Width Space" character copied in the clipboard.

  • This was way easier than the other answers that I tried! Thanks. – Ryan Apr 4 at 17:32

To type this on a laptop with no separate number pad, you'll need to turn numlock on, which will differ depending on your computer's manufacturer. The numbers 0-9 are then MJKLUIO789, respectively. On most laptops, these keys are marked as such. But, even if they aren't, it should still work.

Im not 100% sure but i think it may be Alt+127

  • Using the num lock I might add! – RobertPitt Jun 25 '10 at 11:39
  • hmm well the inly other one i can think if is the unicode version witch us 200 or 200B so try ALT+200 or ALT+200B – RobertPitt Jun 25 '10 at 11:41
  • When I do it, this character appears: – Mehper C. Palavuzlar Jun 25 '10 at 11:41
  • Alt + 200 = – Mehper C. Palavuzlar Jun 25 '10 at 11:52
  • This answer is incorrect - ASCII 127 is commonly the DEL character, not a zero width space unicode character. – Goyuix Jun 25 '10 at 15:23

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.