BUG: syntax highlighting not working



  • Hello guys,
    in certain cases syntax highlighting is not applied to code. Here are the steps to follow:

    1. Launch Notepad++ (I have v7.5.9 32bit)
    2. Double click on an associated file in Windows Explorer to automatically open it in Notepad++
    3. File is opened but no syntax highlight is applied

    If after step 1 you drag-n-drop that file on Notepad++ window (instead of double-clicking on it), syntax coloring is applied.



  • @niente0

    • what file extension does your file have ?

    • how does your file behave, if you right click on it and select “edit with notepad++” instead of a double click ?

    • can you paste some of it’s content here using this template including the ``` code markers below and above your code ?

    template:

    ```
    your code here
    ```
    


  • Hello,

    • It happens for any file extension, for example .htm
    • After opening an empty Notepad++ instance:
    1. If I right-click on file and select “Open with notepad++”, syntax is highlighted
    2. If I drag-n-drop my file on Notepad++ window, syntax is highlighted
    3. If I double-click on my file, syntax is NOT highlighted
      Furthermore: If I complete action 1 (not action 2), then I close the file (not the Notepad++ window), then action 3 colors the syntax (strange!)
    • I cannot post an example of code because if I add it to this message the Akismet plugin on this website doesn’t allow me to post, sorry


  • @niente0

    i can not reproduce this.

    all three ways to open an .html document display a correct highlighting on notepad++ 7.6.3 x86 and x64, on windows 7 and windows 10.

    one thing you can try out on your 7.5.9:

    • close notepad++ if it is open

    • right click on your notepad++ icon and choose “run as administrator”
      (make sure you see [Administrator] at the top bar of your notepad++ window (see screenshot)

    • go to settings > preferences > file association and make sure your needed extensions are visible at the registered extensions panel (last panel on the right) as seen on this screenshot:

    Imgur

    • hit close and exit notepad++

    • now reopen notepad++ normally, and go to settings > preferences > file association again, and make sure your needed extensions are also visible for the standard user account.

    • then exit notepad++ again

    • right click on any .htm(l) file and choose open with > choose other app and select notepad++ from this list.

    • select always use this app to open .html filesand hit ok.

    • close notepad++ again and retry opening your .htm file by double clicking on it.



  • Thank you for your kind support. I followed all the steps but no success.
    After adding all “web script” extensions in Admin mode, if I reopen N++ in standard mode not all exetensions are added, but just some. So I added again all web extensions (this time in standard mode) and saved, then exited, then relaunched N++ but these extensions are still unselected (see screenshot https://imgur.com/a/xnlzeCL).
    Apart from this, I think you cannot reproduce the bug because if you double-click on a file while N++ is closed, this bug doesn’t appear.

    You first have to open Notepad++ by clicking on its icon, then while keeping N++ program open (with no open files inside it), you have to double-click on an associated file (ie .htm).
    If you follow this procedure you’ll probably see the bug.



  • UPDATE: After these steps, now:

    • PHP files display correctly
    • ASP files open but are not syntax-highlighed
    • HTM files do not open anymore

    IMPORTANT: All these tests are performed with double-click and while an empty Notepad++ window is open). If N++ is closed, double-click works perfectly…

    NOTE: In Administrator mode double-click and right-click work perfectly: files open and syntax is highlighted. Drag-n-drop does NOT work.



  • thank you for your detailed information @niente0

    You first have to open Notepad++ by clicking on its icon, then while keeping N++ program open (with no open files inside it), you have to double-click on an associated file (ie .htm).
    If you follow this procedure you’ll probably see the bug.

    i have not been able to reproduce this on windows 7 to 10 using notepad++ 7.5.5-7.6.3.

    • open notepad with only a “new 1” tab (all documents closed) and keep it open and not minimised.
    • double click on any registered file, like asp, htm, html, php, xml
    • on my test setups, all files open and show the correct syntax highlighting, and the correct language type at the bottom of the status bar.

    PHP files display correctly
    ASP files open but are not syntax-highlighed
    HTM files do not open anymore

    in Administrator mode double-click and right-click work perfectly: files open and syntax is highlighted.

    this is very helpful, if the administrator mode works, highlighting everything correctly, probably only the current user (hkey_current_user at the registry) is affected.
    also it’s a good sign that you can at least open php files with correct highlighting now.

    there are several, independent things you can try out, in no specific order, so freely choose what you like to do first, maybe any of it gives us more clues:


    a)

    • create a new, fresh user account on your machine and try out what happens if you open a file by registering the extension to notepad++ and double clicking it.

    b)

    • log in to your old user account, open regedit and search for notepad++exe
    • look for all instances where notepad++.exe is at a shell\open\commandstructure.
      for example: HKEY_CLASSES_ROOT\Applications\notepad++.exe\shell\open\command
    • the (default) value should be something like "C:\Program Files (x86)\Notepad++\notepad++.exe" "%1" where the path might be different on your system, but the important thing is, that your path to the exe as well as "%1" is always between " double-quotes
      (not like C:\Program Files (x86)\Notepad++\notepad++.exe %1 without quotes)

    c)

    • on your old user account, unregister one or more of the non highlighting file extensions using notepad++ (once at user level and once elevated, “run as administrator”)
    • then reboot and register this/these file extensions again.

    i hope any of this is of help, if not solving, but maybe pointing to any relevant direction.

    reader’s note: if anyone else has ever experienced a similar issue and found a way to fix it, you are very welcome to join.



  • Thank you for your reply, I’ll try every hint you posted.
    In the meantime, here’s a Notepad++ window showing two ASP files opened with 2 different methods: double-click with open N++ window on top, drag-n-drop at bottom

    https://imgur.com/a/5lQB1Vf



  • It seems I finally found the culprit: searching into the registry I found some “shell/open/command” keys pointing to a Notepad++.exe installed on another drive (!).

    It turned out that I had 2 different Notepads++ on 2 different drives!
    So I removed one of them, then walked thru the registry to correct all paths, and now all works the right way!!!
    I’ll do some more checks, but it seems my issue is solved!
    Thanks again for your help.



  • @niente0

    magnificent, i am glad you got it working. 👍
    thank you for reporting this back, it will be of use for others who might experience the same problem.
    if you have any further questions, we will assist you with pleasure.


Log in to reply