Что это за невидимый персонаж?

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

Я хотел бы знать
а) что это такое?
б) как их обнаружить?

Я пробовал как «draw_white_space»: «все» в настройках, так и подключаемый модуль TrailingSpaces, но они работают не раскрыть их.

"com"

person Fellow Stranger    schedule 23.01.2015    source источник
comment
Как вы узнаете, что у вас есть невидимые символы, если вы их не видите?   -  person Some programmer dude    schedule 23.01.2015
comment
Два способа: 1) Если я вставляю его в текстовый редактор (например, Sublime) и устанавливаю курсор в конце слова и шаг влево, ему нужно два шага влево, чтобы пройти мимо двойной кавычки и m. 2) При вставке строки в консоль курсор находится не сразу после строки, между ними есть пробел.   -  person Fellow Stranger    schedule 23.01.2015


Ответы (1)


Невидимый символ — это Unicode U+FEFF - ZERO WIDTH NO-BREAK SPACE. Я написал плагин для поиска и выделения символов нулевой ширины. В вашем случае замените '\u200b' на '\ufeff' в связанном коде, и все будет готово. Если в вашем тексте есть один или несколько таких символов, они будут выделены областью действия invalid (пример использования Neon Color Scheme и IPython, работающие в SublimeREPL):

(обратите внимание на темно-красную линию после m).

person MattDMo    schedule 23.01.2015