Як можна редагувати текст Unicode в Блокноті ++?


26

Іноді я редагую англійський текст, що включає символи Unicode. Чомусь на моєму ПК Notepad ++ перетворює символи Unicode в ???, тим самим пошкоджуючи текст і втрачаючи всі ці дані. Я шукаю спосіб редагування такого тексту, зберігаючи символи Unicode. Я використовую консолі як свій шрифт. Якщо у шрифті немає всіх цих символів, чому я повинен втрачати дані, коли копіюю текст із Блокнота ++ (через буфер обміну Windows)?


Можливо, ви використовуєте плагін, який не підтримує Unicode?
Іво Фліпс

Якщо це знаки запитань у полях, це насправді гліф шрифту для відсутніх гліфів, і ваші дані не втрачаються.
Joey

Ні його не в ящиках, замість цього просто "?" характер. Підтверджено.
Робінікс

1
може знадобитися змінити шрифт. дивіться superuser.com/questions/16831/…
RamyenHead

Відповіді:


15

Якщо файл дійсно закодований у Unicode, Notepad ++ повинен виявити його автоматично. Шрифт Consolas працює добре для мене. Ви можете спробувати один із цих двох варіантів меню:

  • Кодування -> Кодування в UTF-8
  • Кодування -> Перетворити на UTF-8

Я впевнений, що перший зробить те, що ви хочете.


У мене немає меню Формат.
Валь

1
Для нащадків потрібне меню кодування, а не Формат
Кен Беллоуз

15

Проблема, описана у питанні, виникає, коли порожній / новий документ встановлено на "ANSI", і символи Unicode вставляються в нього.

При використанні із порожнім / новим документом немає автоматичного виявлення, принаймні, не у версії Notepad ++, на якій я тестував його (v5.4.5). "ANSI" є типовим для Notepad ++ для нового документа, якщо це не встановлено в меню НалаштуванняНалаштування → вкладка Новий документ / Відкрити збереження каталогу .

Рішення

Рішення полягає в встановленні кодування до UTF-8 перед вставкою, меню ФорматКодування в UTF-8 :

Команда меню "Формат меню / Кодування в UTF-8", що планується виконати

Приклад

Я скопіював якийсь текст у новий документ Notepad ++, російською (русский язык, русский язык) , з Firefox, показуючи сторінку Wikipedia російською мовою .

Якщо кодування не буде змінено з "ANSI", це результат:

Результат вставлення рядка Unicode "Російська (русский язык, русский язык" в новий документ Notepad ++ без зміни кодування з типового "ANSI".

Якщо кодування буде змінено, це результат:

Результат вставлення рядка Unicode "Російська (русский язык, русский язык" в новий документ Notepad ++ після зміни кодування з типового "ANSI" на "UTF-8".

Як видно на малюнку нижче ( виділено кириличну частину), Блокнот ++ фактично перетворює символи Unicode в ASCII 63 (шістнадцятковий 3F), знаки запитання. Ось чому символи Unicode втрачаються (в режимі "ANSI" ) при копіюванні тексту через буфер обміну (це не проблема шрифту - інформація втрачається).

Знімок екрана з шестигранним видом зазначеного документа

Тестовано на: Блокноті ++ v5.4.5 (UNICODE).


5

Є хороші та погані новини.

Хороша новина: Notepad ++ підтримує Unicode (принаймні з того, що я можу зібрати).

Погані новини: Очевидно, підтримка Unicode є лише в Windows XP.

У мене фактично немає машини Windows перед собою. Як я пам’ятаю, десь є меню кодування під меню Формат. Кодування для Unicode насправді найчастіше UTF-8.

Ось "симпатична" картинка підтримки Unicode у Блокноті ++,

введіть тут опис зображення


3

Unicode відмінно працює в Windows 7. Єдине питання, що виникає, це те, що вам потрібно ввести повторно змінені символи. Це сталося зі мною. Я пишу скандинавськими літерами так ä -> E4, ö -> F6. Боліти в зад, щоб замінити їх усіх, але воно того варте.

Якщо ви кодуєте сторінку з ANSI -> UTF-8, то виникнуть деякі проблеми із символами.

Я б запропонував спершу створити нову сторінку в UTF-8, а потім скопіювати / вставити свою інформацію. Тут не буде / не повинно виникнути жодних проблем.


1

Це для мене працює:

Я змінив шрифт на Courier New у стилі конфігуратора на моєму ПК (Windows 7 з набором символів англійською / американською та румунською мовами для набору без Unicode). Це робота з шрифтами Courier New & Tahoma + кодування UTF-8.


0

У верхньому меню виберіть команду " EncodingВибрати", Encode in UTF-8або Encode in UTF-8 Without BOMви можете редагувати текст у кодуванні Unicode.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.