Как я могу найти код символа специального символа в текстовом редакторе?

При вставке текста из внешних источников в текстовый редактор (например, TextMate или Sublime Text 2) общая проблема заключается в том, что специальные символы также часто вставляются. Некоторые из этих символов отображаются отлично, но в зависимости от источника некоторые могут отображаться неправильно (обычно они отображаются как вопросительный знак с полем вокруг него).

Итак, это на самом деле 2 вопроса:

  • С учетом специального символа (например, или ♥) можно определить код символа UTF-8, используемый для отображения этого символа внутри текстового редактора, и/или преобразовать эти символы в коды символов?

  • Для тех "особо специальных" символов, которые появляются как мусор, есть ли способ выяснить, какая кодировка использовалась для отображения этого символа в исходном тексте, и могут ли эти символы каким-то образом преобразовываться в UTF- 8?

Ответы

Ответ 1

Мой любимый сайт для поиска персонажей fileformat.info. У них отличный поиск символов в Юникоде, который содержит много полезной информации о каждом персонаже и его различных кодировках.

Если вы видите вопросительный знак с полем, это означает, что вы вставили что-то, что невозможно интерпретировать, часто потому, что оно не является законным UTF-8 (не каждая последовательность байтов является законной UTF-8). Одна из возможностей заключается в том, что UTF-16 с режимом endian, который ваш редактор не ожидает. Если вы можете получить полный исходный источник в файл, команда file часто является лучшим инструментом для определения кодировки.

Ответ 2

В & what Я построил инструмент, чтобы сосредоточиться на поиске символов. Он индексирует все таблицы сущностей Unicode и HTML, но также дополняет с помощью хакерских словарей и базу данных ключевых слов, которые я собрал, поэтому вы можете искать слова типа heart, quot, weather, umlaut, hash, cloverleaf и получить то, что вы хотите. Сосредоточив внимание на поиске, он избегает необходимости охоты вокруг страниц Юникода, что может расстраивать. Попробуйте.