Ввод данных Unicode в Visual Studio, C # - PullRequest
11 голосов
/ 06 августа 2009

Есть ли хороший способ набирать символы Unicode в файле C #?

Я ищу что-то с эффектом:

  1. Нажмите ALT
  2. Тип Unicode Hex
  3. Release Alt

В настоящее время мне нужно ввести символ в слово и скопировать его в исходный файл.

Ответы [ 6 ]

11 голосов
/ 06 августа 2009
6 голосов
/ 04 марта 2016

Ответ Neutrino активировал метод ввода Alt + Numpad ( Глоссарий Microsoft ), но мне пришлось искать правильный путь в реестре. Это:

  1. Перейдите к HKC U \ Панель управления \ Способ ввода

Я пытался написать символ Unicode в моих комментариях в источнике (. К сожалению, я не могу ввести кодовую точку Unicode, как показано в charmap, чтобы получить соответствующий символ.

  • Использование [Alt] + [+] + , где шестнадцатеричная кодовая точка Unicode (4 цифры) заменяет xxxx, не вводит никаких символов (ни [Numpad +], ни обычная клавиша [+]), при использовании обычных цифровых клавиш.
  • Между тем, используя Numpad для 4-значного кода (он имеет только цифры), не имеет значения нажимать [+] перед вводом кодовой точки Unicode. Он просто пишет тот же символ, что и без предшествующего [+] (или в моем случае с предшествующим нулем [0]). Введенный символ является тем, который определен в кодовой странице.
  • Просто для любопытства я пробовал также использовать десятичный код (0x2192 = 8594) или переключать кодовую страницу с помощью chcp. Но это ничего не меняет.

К сожалению, я не нахожу способа убедить Windows ввести символ с его кодом U + xxxx, представленным в собственном charmap Windows. К счастью, есть люди, которые разделяют эту проблему в нескольких программах, а не только в Visual Studio. Таким образом, ребята из http://www.fileformat.info предоставляют несколько советов в статье для Windows , среди них самописная UnicodeInput Utility , которая решает ее.
Хотя я все еще думаю, что в Windows должно быть встроенное решение.

(PS: Я бы добавил комментарий, но моя репутация все еще слишком низкая.)

2 голосов
/ 25 марта 2016

Похоже, что Visual Studio по умолчанию не позволяет использовать многие коды ALT. Обходной путь - просто вставить символ Unicode.

1) запустите charmap.exe.
2) щелкните расширенный вид.
3) найдите нужный символ (по имени или коду).
4) скопируйте нужный символ.
5) вставьте его в свой документ.

charmap.exe входит в стандартную комплектацию Windows. Вы можете использовать его для вставки любого символа Unicode.

2 голосов
/ 07 января 2016

Я должен сказать, что я не думаю, что выбранный ответ на самом деле отвечает на вопрос вообще. Ввод кодовой точки Unicode в качестве escape-последовательности в строковом литерале не приводит к появлению символа Unicode в файле. Добавление escape-последовательности к литералу и ввод символа - две разные вещи.

Лучший ответ:

  1. Открыть RegEdit
  2. Перейдите к HKCR \ Панель управления \ Способ ввода
  3. Создать строковый ключ EnableHexNumpad со значением «1» (без кавычек).
  4. Reboot.

Теперь в любом исходном файле для ввода символа Unicode, удерживая нажатой клавишу ALT, введите numpad plus, затем шестнадцатеричный код, затем отпустите ALT.

например. Для © удерживайте ALT и введите + 00a9.

Работает в большинстве приложений для Windows, включая Firefox:)

2 голосов
/ 11 февраля 2012

Вы можете скопировать вставку из статьи Unicode в Википедии: http://en.wikipedia.org/wiki/List_of_Unicode_characters

0 голосов
/ 08 мая 2019

На всякий случай, если кто-то ищет, как это сделать в Linux, Ctrl + Shift + U, затем введите код и, наконец, нажмите Space или Enter, после чего появится символ. Работает с каждым приложением.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...