Notepad++ 7.9.1 Released
-
@donho
@Michael-Vincent said in Notepad++ 7.9.1 Released:I certainly will with the AppVeyor build once it finishes
I just tested both Release versions x86 and x64:
Environment: platform=Win32, archi=x86, platform_input=Win32; Configuration: Unicode Release
Environment: platform=x64, archi=amd64, platform_input=x64; Configuration: Unicode ReleaseBoth perform as expected!
I set language to C and did:
if (test) | if (test) { | } if (test) { | }
All behaved as expected. I also set language to C++, Java and Javascript and ran the same typing tests to make sure they behave the same way - and they do.
Finally, set language to both Perl and PowerShell and did the same above tests and they result in:
if (test) | if (test) { | } if (test) { | }
As expected. NOTE: the first case shows no indent since in both Perl and PowerShell, the
{
brace is required for the control block to activate auto-indent.I tried ALL THE ABOVE in 7.9 as well, and all behavior is consistent between 7.9 and the latest AppVeyor build for all my above test cases (with the exception of PowerShell on 7.9 since adding the original fix in 7.9.1 for PowerShell is what triggered this).
I believe we have fixed this regression. Again, sorry for the troubles and thank you for the quick response!
Cheers.
-
No problem, @Michael-Vincent , it was my fault - I didn’t get my code review job done well.
That said, it’s still a small regression: comparing with the fix of corrupted file by @pnedev, this regression is less important. So I guess I’ll still trigger auto-update for v7.9.1 in about 1 week, if there’s no other critical regression/bug found.
-
This is probably a minor bug, but it would be nice if will be fixed.
For C and C++ code the Show Indent Guide functionality wrongly displays indent line if the selection statements (
if
andelse
) contain only one expression without curly braces.Example:
Indent line for
if
statement goes until return which is wrong.
Indent line for
else
statement goes until return which is wrong.
If braces are used the indent line goes until expected
-
@Zsolt-Kántor-0 said in Notepad++ 7.9.1 Released:
This is probably a minor bug, but it would be nice if will be fixed.
I can confirm. This is also present in 7.9 so no 7.9.1 “fixes” introduced this it would seem.
In fact, I see it as far back as 7.3.3:
Cheers.
-
@Zsolt-Kántor-0 said in Notepad++ 7.9.1 Released:
This is probably a minor bug, but it would be nice if will be fixed.
Seems like a Scintilla thing for indentation. Testing various settings, it seems
SC_IV_LOOKFORWARD
works best for all languages despite what the docs say:Cheers.
-
Then it should be fixed in Notepad++, maybe?
-
@Zsolt-Kántor-0 said in Notepad++ 7.9.1 Released:
Then it should be fixed in Notepad++, maybe?
Perhaps. There is a FAQ in this Forum which explains feature requests.
However, there is a plugin, ExtSettings, which allows you to change such Scintilla settings without using a scripting environment like the NppExec example that @Michael-Vincent showed. You can install that plugin using Plugins Admin, and this specific setting is controlled by Indentation guide style – you have to hit Close after each change in that dialog to get it to take effect.
-
@PeterJones said in Notepad++ 7.9.1 Released:
Perhaps. There is a FAQ in this Forum which explains feature requests.
Thanks for the hints, but this is a bug in my opinion and not a feature request.
-
@Zsolt-Kántor-0 said in Notepad++ 7.9.1 Released:
@PeterJones said in Notepad++ 7.9.1 Released:
Perhaps. There is a FAQ in this Forum which explains feature requests.
Thanks for the hints, but this is a bug in my opinion and not a feature request.
And if you had looked at the “FAQ Desk: Feature Request or Bug Report”, you would have seen that bug reports go in the same place as feature requests.
This discussion topic (“Notepad++ 7.9.1 Released”) is meant for problems introduced in v7.9.1 that weren’t present in v7.9 (known as “regressions”). If you can prove that this is a regression, then feel free to continue here. Otherwise, the general bug reporting and feature requesting is handled as described in the FAQ. (And really, even if it is a “regression”, at this point, the bug reporting is more likely to get implemented than more discussion here.)
-
@PeterJones said in Notepad++ 7.9.1 Released:
If you can prove that this is a regression,
and like my post shows above, this is not a “regression” as this behavior was present as far back as 7.3.3 (and maybe before, that’s just the oldest version I had available to test).
Feel free to file a GitHub Issue and continue the discussion there.
Cheers.
-
@PeterJones said in Notepad++ 7.9.1 Released:
If you can prove that this is a regression
Unfortunately I’m bad on proving things :(
-
@Michael-Vincent said in Notepad++ 7.9.1 Released:
SC_IV_LOOKFORWARD
SC_IV_LOOKFORWARD
is set for Python, Coffee script and Haskell 3 languages actually. If you think some languages should be also set to this mode, please let me know. I will consider to add these languages. -
@donho said in Notepad++ 7.9.1 Released:
If you think some languages should be also set to this mode, please let me know. I will consider to add these languages.
I think the argument above is to add languages that don’t require braces
{}
for control blocks to be added to the list. For example, C/C++ has valid syntax:if (condition) | expression; | | return;
where the pipes
|
above show the guidelines withSC_IV_LOOKBOTH
. WithSC_IV_LOOKFORWARD
, C/C++ would show:if (condition) | expression; return;
which is “probably” more accurate?
I’m not sure how I feel about it - I only noticed since @Zsolt-Kántor-0 brought it up. Maybe I’ll open a GitHub Issue so we can discuss there before making any recommendations for changes?
As discussed above though, this is NOT a 7.9.1 regression - it’s always been this way.
Cheers.
-
@Michael-Vincent said in Notepad++ 7.9.1 Released:
I’ll open a GitHub Issue so we can discuss there before making any recommendations for changes
AGAIN - this is NOT a regression!
Cheers.
-
FYI:
Auto-Updater is triggered for v7.9.1. -
@donho
Hye, i have to/ must congratulate:
np++ is my second home - it works in all thinkable situations.
Although last evening i listen only a problem signatur:
Problemereignisname: BEX64
Anwendungsname: notepad++.exe
Anwendungsversion: 7.9.0.0
Think to install version 791 over version 790 to preserve my customer properties - no matter.
Wonderful - wonderful
m.o. 2020-11-15 04:12 am -
@Mario-Olsowski said in Notepad++ 7.9.1 Released:
np++ is my second home
If Notepad++ is not your 1st home, then it’s not good enough.
:) -
Sorry, trying again
@donho OK, Re #4, how about some quick, easy instructions on how to upgrade to the new user defined functionlist?
soooo many questions…- Do I just copy my prior file into the new subdirectory? (no, you need to make a new file)
- Are there naming conventions? (No, but you need to associate a language ID with your parser using overrideMap.xml)
- Can I just go back to the way it used to work, or am I forced to upgrade? (No, we’re not that friendly)
Also… How about a warning – “OH… I see you’re using a non-standard FunctionList.XML. We’ve changed this and you should go <HERE> and read how to update this”
This is really annoying. Upgrades should be smart enough to detect and advise that they will break critical functionality and give guidance on how to address this if it’s backwards incompatible.
For those seeking this guidance:
First see https://npp-user-manual.org/docs/function-list/
Here’s how to move your custom functionalist parser from the old structure to the new:
- open %APPDATA%\notepad++\functionList.xml
- Find the specific language you want to re-implement (look for L_your-language, example L_PYTHON, you’ll note it’s associated with a number (python used to be 22). Remember this ID, you’ll need it later.
- Check the %APPDATA%\notepad++\functionList folder for your language file (your-language.xml) - does it exist? If it does, it’s lost any of your customizations and has been reset to “standard”.
4a. If you language already exists in the %APPDATA%\notepad++\functionList directory, just copy from <parser …></parser> into the new XML file, close notepad++ and open your file - it should work.
4b. If you created your own specialized functionlist parser, use %APPDATA%\notepad++\functionList\ini.xml as an example of how to store the new file (because it’s pretty simple).
A minimal example is:
<?xml version=“1.0” encoding=“UTF-8” ?>
<NotepadPlus>
<functionList>
<parser …></parser>
</functionList>
</NotepadPlus>Where <parser …></parser> can be pulled from %APPDATA%\notepad++\functionList.xml
5. Save this file as %APPDATA%\notepad++\functionList\your_custom_language_extension.XML
6. Edit %APPDATA%\notepad++\functionList\ overrideMap.xml and look in the comment just under “this file is optional”. Do you see your extension (from step 2)? Add a line OUTSIDE the comment like:<association id= “your_custom_language_extension.xml” langID= “your_number”/> (your_language_extension)
This will associate your language with the correct parser.
Now, save all your files, close off notepad++ and try to edit your file, you should see your functionlist again.
-
FYI: the usermanual is in the process of being updated to match the new functionlist functionality. There can be a lag between when the new NPP version is released and the updated usermanual is released to the website. (And before complaining about the lag: please note that the people who contribute most to the usermanual are not the people adding features to NPP; back in the days when NPP relied on the coders to create documentation, the docs lagged the software by 5years or more (in other words, the docs didn’t get updated)… so a lag of a few weeks is drastic improvement.)
Anytime a new NPP is put into Release Candidate status, I start updating the docs in the usermanul github repo, and I try to get the bulk of the changes merged into the master around the time the version is officially released; but sometimes there’s a couple of changes outstanding.
If you ever see a new feature in the release notes that you don’t see reflected in npp-user-manual.org website, go check the usermanul github repo; if you don’t see it there, you can submit a usermanual issue.
All that explained, if you look at the most recent function-list doc page along with the most recent config-files function list section, you will see that it’s better explained.
To move your customized functionList.xml settings to the new format, you move the
<association id=...>
from functionList.xml into functionList\overrideMap.xml. And you move the<parser>
section for your individual language into the XML file in the folder. -
FWIW, my early experience with the new function-list scheme is HERE