¿Cómo puedo escribir el carácter U + 200B?


28

¿Cómo puedo escribir el carácter unicode U + 200B (carácter de espacio de ancho cero) con mi teclado?


3
¿Qué sistema operativo estás usando?
Kurt Pfeifle

1
@pipitas: si depende del sistema operativo, preferiría Windows.
Mehper C. Palavuzlar

1
Pregunta secundaria: ¿Por qué quieres un espacio de ancho cero? No ayuda para el formato de comentario roto, entonces tendrías que usar un espacio para el cabello.
Joey

@Johannes: Porque no pude encontrar una respuesta a mi pregunta en Meta: meta.stackexchange.com/questions/54990/… y meta.stackexchange.com/questions/54990/… . ¿Podría explicar cómo puedo usar un espacio para el cabello?
Mehper C. Palavuzlar

Ah, está bien, un problema diferente entonces. Pensé que estabas intentando algo como meta.stackexchange.com/questions/45424 aquí donde ZWS no funciona (mira mis comentarios de prueba debajo de la pregunta). También publicaste el mismo enlace dos veces.
Joey

Respuestas:


19

Al usar versiones recientes de Chrome / Chromium, puede usar su consola para copiar el personaje al portapapeles:

copy("\u200B")         // works for BMP characters only (U+0000 to U+FFFF)
copy("\u{200B}")       // works for all characters (U+0000 to U+10FFFF)

copy(String.fromCodePoint(0x200B))

15

Primero convierta el hexadecimal 200B al decimal 8203

En segundo lugar, asegurándose de que el bloqueo numérico esté activado, presione las siguientes teclas mientras mantiene presionada la tecla Alt, luego presione los cuatro dígitos en el teclado numérico y finalmente suelte la tecla Alt.

Alt+8203

Insertará el carácter apropiado, pero es posible que vea basura dependiendo de la fuente que esté utilizando (contiene un glifo para ese carácter), así como el editor que está utilizando puede no ser unicode y tratarlo como dos caracteres o algo más completamente.

Nota: Probé esto con la fuente Arial Unicode MS , y funcionó como un campeón.


1
Gracias por su respuesta, pero ¿cómo puedo hacerlo, por ejemplo, dentro de este mismo cuadro de comentarios?
Mehper C. Palavuzlar

11
Esto inserta U + 2642 aquí. En RichEdit funciona (al igual que usar 08203). En cuanto al por qué para U + 2642: 8203 mod 256 es 11, que era, en el juego de caracteres OEM, el código de caracteres del glifo ♂ (que ahora es U + 2642). Esto es consistente con lo que he observado anteriormente: el uso de Alt + foo trata el código de manera diferente, dependiendo de lo que tenga el prefijo. Si no 0está al comienzo del código, se interpreta en el juego de caracteres OEM, de lo contrario, el juego de caracteres heredado del sistema. En ambos casos, Unicode solo participa en la conversión del resultado a un carácter.
Joey

1
Obviamente, esto difiere entre aplicaciones y controles, pero no de una manera significativa y predecible, por lo que, como solución general, esto no es del todo correcto.
Joey

1
Por cierto, los navegadores no deberían tener problemas para elegir una fuente para un glifo particular que no está presente en la fuente especificada. También Arial hace contener un glifo U + 200B. En cualquier caso, no debería ver glifos nulos (cuadros o U + FFFD) en un sistema semi-reciente.
Joey

3
¿Cómo se escribe este carácter en un dispositivo que no tiene un teclado numérico, como algunas computadoras portátiles?
Borek Bernard el

7

Sigue las instrucciones en Wikipedia . Lamentablemente, primero debe establecer una clave de registro.

Después de que se cumpla esa formalidad, solo mantén Altpresionada + 2 0 0 B, escribiendo los +números y en el teclado numérico y las letras normalmente.


3
Escribir la letra B al final en mi terminal de Windows XP parece anular la secuencia de escape y no se envía ningún carácter al cuadro de texto.
Goyuix

@Goyuix: Las ventanas de la consola son una bestia completamente diferente ... la mayoría de las veces no puedes ingresar personajes con Alt + foo allí.
Joey

7

Alt + 0129

Esto inserta un carácter de ancho cero.


77
0129- hex 0x81 - no es lo mismo que U + 200B y no es un carácter de ancho cero. En la codificación de caracteres Cp1252 de Windows e ISO-8859-1, "no es un carácter": no hay nada en el punto de código x81, así que sí, se representa como nada, pero no es un límite de palabra, por lo que no es el igual que un espacio de ancho cero. En Unicode, el punto de código 0x81 está en el rango de caracteres de control reservado "C1". Si está utilizando la codificación Unicode / UTF-8, debe evitar los caracteres en el rango de 0x80 a 0x9f (128-159). Incluso en Latin-1 este rango está reservado
Stephen P

2

Puede ir a este sitio web: Símbolos : proporciona un fácil acceso a muchos símbolos y caracteres especiales. En la parte inferior de la página, verá un botón para el carácter "Espacio de ancho cero", simplemente haga clic en ese botón para copiar el carácter "Espacio de ancho cero" en el portapapeles.


¡Esto fue mucho más fácil que las otras respuestas que probé! Gracias.
Ryan

0

Para escribir esto en una computadora portátil sin teclado numérico separado, deberá activar el bloqueo numérico, que diferirá según el fabricante de su computadora. Los números 0-9 son entonces MJKLUIO789, respectivamente. En la mayoría de las computadoras portátiles, estas teclas están marcadas como tales. Pero, incluso si no lo son, igual debería funcionar.


-3

No estoy 100% seguro, pero creo que puede ser Alt + 127


Usando el bloqueo numérico que podría agregar
RobertPitt

hmm bueno, el otro que puedo pensar si es la versión Unicode que nos usa 200 o 200B, así que prueba ALT + 200 o ALT + 200B
RobertPitt

Cuando lo hago, aparece este personaje:
Mehper C. Palavuzlar

Alt + 200 =
Mehper C. Palavuzlar

Esta respuesta es incorrecta: ASCII 127 es comúnmente el carácter DEL, no un carácter unicode de espacio de ancho cero.
Goyuix
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.