Notepad ++ показывает все скрытые символы?

252

В Notepad ++ я установил «заменить табуляцию на 2 пробела».

При кодировании на Python я скопировал некоторый код из Интернета, и он выглядел правильно с отступом. Но выполнение кода привело к ошибкам отступов, которые я решил, в конце концов, удалив все «видимые» пробелы в начале строки и снова вставив такое же количество пробелов.

Возможно ли, что Notepad ++ на основе Scintilla не отображает все специальные символы, а отображает их в виде пробелов? Есть ли настройка, чтобы это исправить?

user89021
источник

Ответы:

395

Да, это так. Способ включить это зависит от вашей версии Notepad ++. На более новых версиях вы можете использовать:

Вид меню → Показать символ → * Показать все символы`

или

Вид меню → Показать символПоказать пробел и вкладку

(Спасибо комментариям bers и ответам bkaid ниже для этих обновленных локаций.)


В старых версиях вы можете искать:

Вид меню → Показать все символы

или

Вид меню → Показать пустое пространство и вкладку

Стив Уиллкок
источник
4
Это сейчас View->Show Symbol->Show White Space and TAB(v6.8.8).
Берс
9
Это зависит от кодировки, я не верю, что она покажет вам все пробельные символы, например, если вы попробуете пробел без перерывов U + 00A0 или пробел без перерывов нулевой ширины U + FEFF
ClearBlueSky85
1
Как насчет какого-нибудь символа, такого как \ u0000, как его отобразить
Jaskey
3
Примечание: NP ++ не идеален: я использую некоторые инструменты для генерации файлов, и у меня почему-то есть символ, который не отображается, но клавиши со стрелками требуют двух нажатий, чтобы пропустить его. :(
Шут
1
Я не вижу & lrm; персонажи в любом случае.
Скоростной матч
102

В более новых версиях Notepad ++ (в настоящее время 5.9) эта опция находится под:

View->Show Symbol->Show All Characters

или

View->Show Symbol->Show White Space and Tab
bkaid
источник
Теперь это должен быть принятый ответ для последних версий N ++
DAB
В одном из моих файлов, который я пытаюсь идентифицировать специальными символами в скрытом пустом пространстве, Notepad ++ отображается как NUL. Что бы это был за символ?
goofyui
15

Дважды проверьте ваш текст с помощью плагина Hex Editor. В вашем случае, возможно, были некоторые управляющие символы, которые проникли в ваш текст. Обычно вы смотрите на пробел, и он говорит: 32 32 32 32 или Unicode 32 00 32 00 32 00 32 00. Вы можете найти проблему таким образом, при условии, что нет большого количества кода.

Загрузите Hex Plugin отсюда; http://sourceforge.net/projects/npp-plugins/files/Hex%20Editor/

wonea
источник
2
Плагин Hex Editor полезен, спасибо! Ваша ссылка не работает, хотя. Вот обновленная ссылка
javaPlease42
1

Для непечатаемых символов вы можете сделать следующее:

  • если вы можете определить символ, для перемещения курсора требуется 2 клавиши со стрелками, просто выберите этот символ.
  • делать Ctrl-F
  • теперь вы можете посчитать или заменить или даже пометить все такие символы
MPD
источник
1

Да, и, к сожалению, вы не можете отключить их или любые другие специальные символы. Параметры в \ View \ Show Symbols только включают или выключают такие вещи, как табуляции, пробелы, EOL и т. Д. Поэтому, если вы хотите прочитать неясное кодирование с текстом в нем - вам действительно нужно искать в другом месте. Я также посмотрел на изменение кодировки, ASCII не указан в списке, и это не сделает беспорядок невидимым в любом случае.

Ион-Кристофер ДиМеглио
источник
Это, по-видимому, серьезное текущее ограничение в Notepad ++
RockPaperLizard