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


252

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

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

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

Ответы:


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

Теперь это должен быть принятый ответ для последних версий 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/


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

1

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

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

1

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


Это, по-видимому, серьезное текущее ограничение в Notepad ++
RockPaperLizard
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.