Ввод данных Unicode в Visual Studio, С#

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

Я искал что-то вроде:

  • Нажмите ALT
  • Тип Unicode Hex
  • Отпустите Alt

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

Ответ 2

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

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

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

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

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

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

Ответ 4

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

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

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

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

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

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

Ответ 5

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

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

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

Ответ 6

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