Notepad++ v8.4.9 Release
-
There is display bug on NPP, related to UTF-8 graphical symbols.
Here example of the text:
š ā·Ā ā“ āµ ā¶ - clock
ā·Ā ā“ āµ ā¶ - clock
This is how it looks in NPP
The bug is not limited to above symbols, there are quite a few that have similar issue.
Somehow putting that specific triangle symbol in the beginning of line suddenly makes all subsequent symbols also appear correctly. -
@Register-Noname said in Notepad++ v8.4.9 Release:
š ā·Ā ā“ āµ ā¶ - clock
ā·Ā ā“ āµ ā¶ - clockIt appears that you want DirectWrite enabled; see Settings > Preferences > MISC. As the Preferences dialog says, turning it on āmay improve rendering special charactersā.
I confirmed in v8.4.9 with my settings, DirectWrite off will have display problems like you showed, whereas DirectWrite on will show all the characters correctly:
But the same has been true for many versions, not just v8.4.9, so this really should have been a separate topic, since itās not specific to v8.4.9.
@donho: BTW, we frequently get questions here that are solved by DirectWrite being on. Is there a reason that we cannot have that setting enabled by default ā that way, new users will just see Notepad++ work great with Unicode characters, rather than having to come complain about poor Unicode behavior and then be told that they need to change a setting. Let me know if you want me to create an issue.
-
@PeterJones I agree this was true for very long time. Sorry Iām new here didnāt want go with opening tickets right away :)
DirectWrite (whatever it is) indeed helped. Thank you!
I also agree that this setting should be enabled by default if the āstandard behaviorā cannot be fixed. -
Hello, @register-noname, @peterjones and All,
I did some tests and, indeed, the use of
DirectWrite
insrease rendering of characters !I verified that, if the
DirectWrite
option is not checked, the four Unicode characters, provided by @register-noname, are properly displayed ONLY IF the current line contains a character with codepoint over the BMP, so with codepointabove FFFF
!Compare these two screen-shoots below :
WITHOUT Direct Write
And :
WITH Direct Write
Note, particularly, the differences in lines
1
,2
,15
and16
;-))Best Regards,
guy038
-
Hi there, found a regression: the software does not launch anymore on Windows Vista and Windows Server 2008 systems (NT 6.0). The application quits with the error message
āThe procedure entry point CoGetApartmentType could not be located in the dynamic link library ole32.dll.ā
This issue seems to be present since 8.4.7 already, 8.4.6 is the last version that launches fine.
-
This was noted HERE as well.
Perhaps theSUPPORTED_SYSTEM.md
file is in need of updating. -
This issue seems to be present since 8.4.7 already, 8.4.6 is the last version that launches fine.
Could you help us to identify the problem please:
https://github.com/notepad-plus-plus/notepad-plus-plus/issues/13074#issuecomment-1445398398 -
-
@donho
Using 8.4.9 for Python.
When inserting a tab in an existing Python file, the editor does not respect the setting preference flag for converting tabs to spaces. That is, it always uses spaces whether āReplace by spaceā is checked or unchecked.
The line with 3 columns in the image has just had a tab inserted.Obviously this is dreadful for Python. It means that misalignment of new code can only be corrected by turning everything into spaces (not desirable) via unindent/indent of blocks.
NB it works ok for a new file (prior to save).
I will install the latest version to see if it is better and update here as appropriate.
-
@Ann-Witbrock said in Notepad++ v8.4.9 Release:
turning everything into spaces (not desirable)
Did you know that the recommended standard for Python is to use spaces for indentation and NOT tab characters?
the editor does not respect the setting preference flag for converting tabs to spaces.
You arenāt showing the setting for Python in your screenshot. Scroll the listbox in the Tab Settings groupbox down to where the
python
item is shown and make it active, and then post THAT screenshot. Only then will we know what the setting for Python files is. -
@Alan-Kilborn Unfortunately we can not always work in our own files. We can still expect our editor to work as expected. I discovered this glitch while working in such a file, when I added some print lines to see the workings. It would have been fine if I could have set the compatibility at all.
The same behaviour is still present in 8.5.2 (see detailed progression of test), including fully setting Python as you pointed out, thanks :-)
(The label āDisabled itemsā was a bit confusing there, and itās been a while since I used this editor often so I misinterpreted the highlight).I think we can probably conclude this is also true for other languages, but itās vital for Python.
-
@Ann-Witbrock said in Notepad++ v8.4.9 Release:
including fully setting Python as you pointed out
How come you arenāt showing this to us here, in a screenshot, like I asked?
The label āDisabled itemsā was a bit confusing
Disabled items
has nothing to do with what weāre discussing.Show us your setting like this, with
python
in view and selected: -
@Ann-Witbrock
before:
useEdit->Blank Operations->TAB to SPACE
after:
-
@Alan-Kilborn Iām sorry you are not making yourself at all clear.
I see in the thread below that there is a new, additional place to set this. I had not noticed this in the menu. Perhaps the word Blank is not so obvious if you arenāt expecting it.
Iāll try again with that setting. Not sure how that should interact with the global setting.
-
@Ann-Witbrock said in Notepad++ v8.4.9 Release:
Iām sorry you are not making yourself at all clear.
I think Iām pretty clear, if youād just read and provide what Iām asking for.
You are probably referring to Markās posting, which isnāt going to help you solve the root of your problem (which is, what you get [spaces or tab character] when you press the Tab key). -
@Alan-Kilborn Itās OK I see it now, I was attempting setting the language in the main panel rather than the tab settings panel. Iām sorry. Iāve been using other editors more recently and missed the labelling. Itās really quite obvious ONCE YOU SEE IT!
And it does resolve my problem, indeed.To avoid confusion, it might be useful to have it obey the default when no language is set.
Iāve tried out the edit menu settings as well now (thanks Mark for pointing me in the right direction) and although itās a little confusing it seems to be quite useful :-) This actually would have saved me all the trouble if Iād noticed in advance and changed all the tabs to spaces as normal.
Hopefully this discussion will help others if they come across this. Thanks.
-
@Ann-Witbrock said in Notepad++ v8.4.9 Release:
To avoid confusion, it might be useful to have it obey the default when no language is set.
Iām pretty sure Notepad++ does that, but it sets ālanguageā automatically based on the file extension. Normally thatās a good thing, butā¦
Does it seem to anyone else that when you open Settingsā¦ | Preferences | Language, the language selector in the Tab Settings box ought to start off with the language currently applied to the active file highlighted? Iām fairly sure at least some of the ones I see that are not set to Use default value ā like python and yaml ā were not set that way by me. Iām not sure it would even occur to me, if I were editing a *.yaml file (if that is what triggers yaml) that it was a language and not just an unknown file extension (which it is to me). So I might be thrashing about the same way, wondering why my settings werenāt effective.
Side note: Is there a reason the language names there arenāt the same as the ones in the Language Menu list just to the left (e.g., C++ in the Language Menu, but cpp in the Tab Settings?
-
@Coises said in Notepad/+/+ v8/.4/.9 Release:
Side note: Is there a reason the language names there arenāt the same as the ones in the Language Menu list just to the left (e.g., C++ in the Language Menu, but cpp in the Tab Settings?
The latter is populated by simply iterating Lexillaās module identifiers (*1): https://github.com/notepad-plus-plus/notepad-plus-plus/blob/7e6c4b3c6bb08ccd9da4ef09c3361ea16f0409bb/PowerEditor/src/WinControls/Preference/preferenceDlg.cpp#L2884-L2887
(*1)
$ git clone https://github.com/ScintillaOrg/lexilla.git $ cd lexilla/examples/CheckLexilla $ CFLAGS=-Wno-deprecated-declarations make check gcc -I ../../include -Wno-deprecated-declarations CheckLexilla.c -o CheckLexilla.exe ./CheckLexilla.exe Opened ../../bin/lexilla.dll -> 00007ff9c2350000. There are 132 lexers. a68k abaqus ada apdl as asciidoc asm asn1 asy au3 ave avs baan bash batch bib blitzbasic bullant caml cil clarion clarionnocase cmake COBOL coffeescript conf cpp cppnocase csound css d dataflex diff DMAP DMIS ecl edifact eiffel eiffelkw erlang errorlist escript f77 flagship forth fortran freebasic fsharp gap gdscript gui4cli haskell hollywood hypertext ihex indent inno json julia kix kvirc latex lisp literatehaskell lot lout lua magiksf makefile markdown matlab maxima metapost mmixal modula mssql mysql nim nimrod nncrontab nsis null octave opal oscript pascal powerbasic perl phpscript PL/M po pov powerpro powershell abl props ps purebasic python r raku rebol registry ruby rust sas scriptol smalltalk SML sorcins specman spice sql srec stata fcST TACL tads3 TAL tcl tcmd tehex tex txt2tags vb vbscript verilog vhdl visualprolog x12 xml yaml Lexer factory 4 -> 00007ff9c236fe30. Created cpp lexer -> 0000016796a00000. Lexer name 3 -> cpp. Property names ''. Name space 'lexilla'.
-
@rdipardo said in Notepad++ v8.4.9 Release:
@Coises said in Notepad/+/+ v8/.4/.9 Release:
Side note: Is there a reason the language names there arenāt the same as the ones in the Language Menu list just to the left (e.g., C++ in the Language Menu, but cpp in the Tab Settings?
The latter is populated by simply iterating Lexillaās module identifiers (*1): https://github.com/notepad-plus-plus/notepad-plus-plus/blob/7e6c4b3c6bb08ccd9da4ef09c3361ea16f0409bb/PowerEditor/src/WinControls/Preference/preferenceDlg.cpp#L2884-L2887
Forgive me, but Iām now more confused than I thought I was before. I see that languages in the Language Menu box appear to match up with the languages that are, in fact, on the Language menu (though for some reason I canāt guess, theyāre in some apparently random order), but are the languages in the Tab Settings in fact the same languages, just using different identifiers? I canāt make out from the code you linked and the code above it what, if anything, is the connection between the two. (Hmmmā¦ I count 88 entries in the Language Menu box and 85 in the Tab Settings box, so I guess they canāt be quite the sameā¦ but nothing in the documentation clarifies to me what is the connection.)
All this even more makes me think it really would be best to highlight the entry thatās actually in control of the current document; otherwise situations like @Ann-Witbrock encountered seem inevitable.
-
@Coises said in Notepad++ v8.4.9 Release:
ā¦otherwise situations like @Ann-Witbrock encountered seem inevitable.
My first thought was putting some static text in the Tab Settings groupbox that says ā[Default] setting is in effect unless overridden by setting for specific languageā. My second thought was that that is pointless because thatās pretty much the definition of ādefaultā.
best to highlight the entry thatās actually in control of the current document
I donāt see any problem with this; are you going to make it a real feature request?
-
I see that languages in the Language Menu box appear to match up with the languages that are, in fact, on the Language menu ā¦ but are the languages in the Tab Settings in fact the same languages, just using different identifiers?
The names in the Language menu are the text from Notepad_plus.rc
The table in ScintillaEditView.cpp shows the _langName and _shortName and _longName values that Notepad++ uses elsewhere. The _langName corresponds to the name thatās found inside lexer source code and in the Settings > Preferences > Language > Tab Settings box, the _shortName is what shows up in the Language menu and in Settings > Preferences > Language > Language Menuās Available items and Disabled items boxes, and the _longName is what shows up as the file-type language name in the status bar.
though for some reason I canāt guess, theyāre in some apparently random order
The Preferencesā Language Menu box is āsortedā in the same order from the
ScintillaEditView.cpp
table (which, as the comment in .cpp file says, "the order of lang type (enum LangType) must be respected ā where theenum LangType
order is defined in Notepad_plus_msgs.h), and thepreferenceDlg.cpp
code that was linked above just iterates through that table in order, which is why itās that order rather than being sorted alphabetically; the Preferencesā is sorted alphabetically by _langName (except āsearchResultā goes at the end for the Tab Settings); the order in the Language Menu is set by the order in theNotepad_plus.rc
file.