Bagaimana saya bisa mengetik karakter U + 200B?

28

Bagaimana cara saya mengetik karakter unicode U + 200B (karakter spasi nol lebar) dengan keyboard saya?

Mehper C. Palavuzlar
sumber
3
sistem operasi yang Anda gunakan?
Kurt Pfeifle
1
@ipitas: Jika tergantung OS, saya lebih suka Windows.
Mehper C. Palavuzlar
1
Pertanyaan sampingan: Mengapa Anda menginginkan ruang nol-lebar? Itu tidak membantu untuk pemformatan komentar yang rusak, Anda harus menggunakan ruang rambut, lalu.
Joey
@Johannes: Karena saya tidak dapat menemukan jawaban untuk pertanyaan saya di Meta: meta.stackexchange.com/questions/54990/… dan meta.stackexchange.com/questions/54990/… . Bisakah Anda jelaskan bagaimana saya bisa menggunakan ruang rambut?
Mehper C. Palavuzlar
Ah, ok, masalah yang berbeda kalau begitu. Saya pikir Anda mencoba sesuatu seperti meta.stackexchange.com/questions/45424 di mana ZWS tidak berfungsi (lihat komentar pengujian saya di bawah pertanyaan). Anda juga memposting tautan yang sama dua kali.
Joey

Jawaban:

19

Saat menggunakan versi terbaru Chrome / Chromium, Anda dapat menggunakan konsolnya untuk menyalin karakter ke clipboard:

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))
Kate Miháliková
sumber
15

Pertama-tama ubah hex 200B ke desimal 8203

Kedua, memastikan numlock dihidupkan, tekan penekanan tombol berikut sambil menahan tombol Alt, lalu pukul empat digit pada keypad numerik, dan akhirnya melepaskan tombol Alt.

Alt+8203

Ini akan memasukkan karakter yang tepat, tetapi Anda mungkin melihat sampah tergantung pada font yang Anda gunakan (apakah itu mengandung mesin terbang untuk karakter itu) serta editor yang Anda gunakan mungkin tidak sadar unicode dan memperlakukannya sebagai dua karakter atau sesuatu benar-benar lain.

Catatan: Saya menguji ini dengan font Arial Unicode MS , dan itu berfungsi seperti juara.

Goyuix
sumber
1
Terima kasih atas jawaban Anda, tetapi bagaimana saya bisa melakukannya, misalnya, di dalam kotak komentar ini?
Mehper C. Palavuzlar
11
Ini memasukkan U + 2642 di sini. Di RichEdit berfungsi (seperti halnya menggunakan 08203). Adapun alasan untuk U + 2642: 8203 mod 256 adalah 11 yang, pada charset OEM, kode karakter mesin terbang ♂ (yang sekarang U + 2642). Ini konsisten dengan apa yang saya amati sebelumnya: Menggunakan Alt + foo memperlakukan kode secara berbeda, tergantung pada apa yang diawali. Jika tidak 0ada di awal kode, maka ditafsirkan dalam OEM charset, jika tidak maka sistem legacy charset. Dalam kedua kasus, Unicode hanya terlibat dalam mengubah hasil menjadi karakter.
Joey
1
Jelas ini berbeda antara aplikasi dan kontrol, tetapi tidak dengan cara yang bermakna dan dapat diprediksi sehingga sebagai solusi umum hal ini masih kurang tepat.
Joey
1
Omong-omong, browser seharusnya tidak memiliki masalah dalam memilih font untuk mesin terbang tertentu yang tidak ada dalam font yang ditentukan. Arial juga mengandung mesin terbang untuk U + 200B. Bagaimanapun, Anda seharusnya tidak melihat mesin terbang nol (kotak atau U + FFFD) pada sistem semi-baru.
Joey
3
Bagaimana Anda mengetik karakter ini pada perangkat yang tidak memiliki tombol angka, seperti beberapa laptop?
Borek Bernard
7

Ikuti instruksi di Wikipedia . Sayangnya Anda harus menetapkan kunci registri terlebih dahulu.

Setelah formalitas itu diatasi, cukup tahan Altdan tekan + 2 0 0 B, ketikkan +dan angka pada numpad, dan huruf-huruf secara normal.

zildjohn01
sumber
3
Mengetik huruf B pada akhir di terminal Windows XP saya tampaknya membatalkan urutan melarikan diri dan tidak ada karakter yang benar-benar dikirim ke kotak teks.
Goyuix
@ Goyuix: Jendela konsol adalah binatang yang sama sekali berbeda ... sebagian besar waktu Anda tidak dapat memasukkan karakter dengan Alt + foo di sana.
Joey
7

Alt + 0129

Ini memasukkan karakter dengan lebar nol.

Rudey
sumber
7
0129- hex 0x81 - tidak sama dengan U + 200B dan bukan karakter dengan lebar nol. Dalam pengkodean karakter Windows Cp1252 dan ISO-8859-1 itu adalah "bukan karakter" - tidak ada pada kode-titik x81, jadi ya, itu diterjemahkan sebagai tidak ada, tetapi itu bukan batas kata sehingga bukan sama dengan ruang lebar nol. Dalam Unicode, codepoint 0x81 berada dalam rentang karakter kontrol yang dicadangkan "C1". Jika Anda menggunakan pengkodean Unicode / UTF-8 Anda harus menghindari karakter dalam kisaran 0x80 hingga 0x9f (128-159). Bahkan dalam bahasa Latin-1 kisaran ini dicadangkan
Stephen P
2

Anda dapat mengunjungi situs web ini: Simbol - ini memberikan akses mudah ke banyak simbol dan karakter khusus. Di bagian bawah halaman, Anda melihat tombol untuk karakter "Ruang Lebar Nol", cukup klik tombol itu untuk menyalin karakter "Ruang Lebar Nol" di clipboard.

Harryngh
sumber
Ini jauh lebih mudah daripada jawaban lain yang saya coba! Terima kasih.
Ryan
0

Untuk mengetik ini pada laptop tanpa tombol angka yang terpisah, Anda harus mengaktifkan numlock, yang akan berbeda tergantung pada produsen komputer Anda. Angka 0-9 masing-masing adalah MJKLUIO789. Pada kebanyakan laptop, tombol-tombol ini ditandai seperti itu. Tetapi, bahkan jika tidak, itu tetap bekerja.

trlkly
sumber
-3

Saya tidak 100% yakin tetapi saya pikir itu mungkin Alt + 127

RobertPitt
sumber
Menggunakan num lock yang mungkin saya tambahkan!
RobertPitt
hmm yah yang lain yang bisa saya pikirkan adalah apakah versi unicode penyihir kita 200 atau 200B jadi coba ALT + 200 atau ALT + 200B
RobertPitt
Ketika saya melakukannya, karakter ini muncul:
Mehper C. Palavuzlar
Alt + 200 =
Mehper C. Palavuzlar
Jawaban ini salah - ASCII 127 umumnya adalah karakter DEL, bukan karakter unicode spasi lebar nol.
Goyuix