Reputation: 15170
In Notepad++ I have set "replace tab with 2 spaces".
When coding in Python I copy-pasted some code from the web and it appeared indented correctly. But running the code resulted in indentation errors, which I solved in the end by removing all "visible" spaces at line beginnings and inserting the same amount of spaces again.
Could it be possible that Scintilla based Notepad++ does not show all special characters, but displays them as spaces? Is there a setting to fix this?
Upvotes: 290
Views: 448491
Reputation: 4072
In Notepad++ v8.4.8 (and probably earlier versions) a plugin needs to be used. Using the Converter plugin's (v4.5 author Do Ho) ASCII to HEX converter (Plugins -> Converter -> ASCII to HEX) can reveal such characters and worked for me
Upvotes: 0
Reputation: 2743
Yes, N++ does show almost all non printable char, but not all of them, even with the option "Show all characters" toggled on.
For instance, U+200B
or U+FEFF
or U+A0
are not displayed, even when toggling ON "Show all char".
Let's take this sample, from an online tool:
Here is what it looks like in N++:
NB: Notepad++ does "see" those characters, because if you move your cursor with the arrow keys, it will not move for one more keystroke after each dot on line 3. But it doesn't display them, even with "Display all characters" options.
Disclaimer: This question was about spaces, but the title is more broad, and this is the first result on SERPs when searching about "displaying all chars on N++".
Upvotes: 10
Reputation: 39
Yes, and unfortunately you cannot turn them off, or any other special characters. The options under \View\Show Symbols only turns on or off things like tabs, spaces, EOL, etc. So if you want to read some obscure coding with text in it - you actually need to look elsewhere. I also looked at changing the coding, ASCII is not listed, and that would not make the mess invisible anyway.
Upvotes: 1
Reputation: 26889
Yes, it does. The way to enable this depends on your version of Notepad++. On newer versions you can use:
Menu View → Show Symbol → *Show All Characters`
or
Menu View → Show Symbol → Show White Space and TAB
(Thanks to bers' comment and bkaid's answers below for these updated locations.)
On older versions you can look for:
Menu View → Show all characters
or
Menu View → Show White Space and TAB
Upvotes: 448
Reputation: 21
For non-printing characters, you can do the following:
Upvotes: 2
Reputation: 4969
Double check your text with the Hex Editor Plug-in. In your case there may have been some control characters which have crept into your text. Usually you'll look at the white-space, and it will say 32 32 32 32, or for Unicode 32 00 32 00 32 00 32 00. You may find the problem this way, providing there isn't masses of code.
Download the Hex Plugin from here; http://sourceforge.net/projects/npp-plugins/files/Hex%20Editor/
Upvotes: 17
Reputation: 52093
In newer versions of Notepad++ (currently 5.9), this option is under:
View->Show Symbol->Show All Characters
or
View->Show Symbol->Show White Space and Tab
Upvotes: 108