New version of HTML Tag
-
Martijn Coppoolse has generously donated the source code of the HTML Tag plugin.
Version 1.2 will be patched against the major breaking change introduced in 8.3. It also fixes a bug in decoding JavaScript Unicode characters (as was reported on the forum).
More on this topic:
- https://sourceforge.net/p/npp-plugins/discussion/725650/thread/08c8e87447
- https://github.com/notepad-plus-plus/notepad-plus-plus/issues/11104#issuecomment-1028188095
- https://github.com/notepad-plus-plus/nppPluginList/pull/411
Downloads: https://bitbucket.org/rdipardo/htmltag/downloads
Release notes: https://bitbucket.org/rdipardo/htmltag/src/default/NEWS.textile
Bugs: https://bitbucket.org/rdipardo/htmltag/issues, or start a forum thread underPlugin Development
-
Thank you very much for taking and continuing the “HTML Tag” project.
Congratulations! Great work.
Best regards.
-
Note Since v1.2, all 64-bit versions of HTML Tag require Notepad++ 8.3 or newer.
HTML Tag 1.2.1 is available for download.
This is primarily a maintenance release to address the risk of crashing N++ versions older than 8.3 — overlooked in the rush to get 1.2 out the door. It also clears the ground ahead of a planned transition to Free Pascal (most likely in time for the next minor release). More than 1,200 SLOC were removed; compiled binaries are ~20% smaller.
Users may notice that the JavaScript (de/en)coding functions have new key mappings, and new shortcuts were added for the less common HTML entity (de/en)coding functions. Decoding multi-line Unicode character sequences has also been improved.
-
Thank you for your work. I appreciate it.
-
-
Note Since v1.2, 64-bit versions of HTML Tag require Notepad++ 8.3 or newer.
Version 1.2.2 patches the first issue to appear on the new tracker.
It was noted that encoding entities would make them decompose if the system used a single-byte code page like Windows-1252:
I would’ve never noticed without the bug report since I activated the “beta” feature of system-wide Unicode on my PC. Users without this option can now expect (de/en)coding to be more faithful and non-destructive (*):
(*) With the ongoing exception of 4-byte glyphs like 🍪, of course ;)
-
-
I’ve built NPP 8.4 (not officially released yet), and on startup I get the following message:
Could you please have a look?
Thank you.
-
@yaron said in New version of HTML Tag:
I’ve built NPP 8.4 (not officially released yet), and on startup I get the following message
It means this condition tested false:
(HIWORD(NppVersion) > 8) or ((HIWORD(NppVersion) = 8) and // 8.3 -> 8,3 (*not* 8,30) ((LOWORD(NppVersion) = 3) or ((LOWORD(NppVersion) > 21) and not IsPatchRelease)))
Version 8.4 would be parsed as HIWORD -> 8, LOWORD -> 4, which fails at the
LOWORD(NppVersion) > 21
branch.
The above comment about 8.3 is my own, so I really should have seen this coming . . .Maybe @donho can pad the minor version so it works out to
40
instead? I don’t know how many plugins depend on the current system, but a more rational approach the version numbers would probably benefit everybody.Worst case, I’ll have to push a patched release.
Thanks for testing!
-
Thank you for the explanation.
so I really should have seen this coming
We’re merely humans. :)
My 8.4 version is the main build I’m using now, and I had to remove HTML Tag.
Even if your suggestion is accepted, it would probably take a while.Would you mind pushing a patched release?
I’d appreciate it. -
Obviously I can change the version in my build.
But anyway, the official 8.4 is supposed to be released soon. -
It’s pretty kludgy, but this will tide us over until we’re safely into a v9 series.
program CheckNppVersions; {$IFDEF FPC} {$mode objfpc}{H+} {$ENDiF} uses Windows, Classes, SysUtils; type NppVersion = record Major: Word; Minor: Word; end; const MinorVersions: array[0..20] of Word = (0, 1, 11, 12, 13, 14, 15, 16, 17, 18, 19, 191, 192, 193, 2, 21, 3, 31, 32, 33, 4); PatchReleases: Array[0..2] of Word = ( 191, 192, 193 ); var V : NppVersion; i, j: byte; IsCompat: Boolean; IsPatchRelease: Boolean; begin v.Major := 8; IsCompat := False; try WriteLn('Major'#9'Minor'#9'Compatible?'); WriteLn('-----'#9'-----'#9'------------'); for i := 0 to Length(MinorVersions) - 1 do begin v.Minor := MinorVersions[i]; IsPatchRelease := False; for j := 0 to Length(PatchReleases) - 1 do begin IsPatchRelease := (V.Minor = PatchReleases[j]); if IsPatchRelease then Break; end; IsCompat := (v.Major > 8) or ((v.Major = 8) and (((V.Minor >= 3) and (V.Minor <= 9)) or ((V.Minor > 21) and not IsPatchRelease))); WriteLn(Format('%5d'#9'%5d'#9'%12s', [V.Major, V.Minor, IsCompat.ToString(TUseBoolStrs.true)])); end; finally end; end.
> dcc.bat CheckNppVersions.pas Embarcadero Delphi for Win64 compiler version 33.0 Copyright (c) 1983,2018 Embarcadero Technologies, Inc. CheckNppVersions.pas(34) Hint: H2077 Value assigned to 'IsPatchRelease' never used 56 lines, 1.53 seconds, 1432880 bytes code, 195448 bytes data. > CheckNppVersions.exe Major Minor Compatible? ----- ----- ------------ 8 0 False 8 1 False 8 11 False 8 12 False 8 13 False 8 14 False 8 15 False 8 16 False 8 17 False 8 18 False 8 19 False 8 191 False 8 192 False 8 193 False 8 2 False 8 21 False 8 3 True 8 31 True 8 32 True 8 33 True 8 4 True
-
Great.
Thank you for your time and work. -
But anyway, the official 8.4 is supposed to be released soon.
I’m obviously not up to speed, but the current git still has “8.33”. Where can I open a PR showing how to bump the version without breaking the plugin (i.e., by adding a
0
to the end of theVERSION_VALUE
string) ?diff --git a/PowerEditor/src/resource.h b/PowerEditor/src/resource.h index a6a402c2..ed26d0f0 100644 --- a/PowerEditor/src/resource.h +++ b/PowerEditor/src/resource.h @@ -23,8 +23,8 @@ // should be X.Y : ie. if VERSION_DIGITALVALUE == 4, 7, 1, 0 , then X = 4, Y = 71 // ex : #define VERSION_VALUE TEXT("5.63\0") -#define VERSION_VALUE TEXT("8.33\0") -#define VERSION_DIGITALVALUE 8, 3, 3, 0 +#define VERSION_VALUE TEXT("8.40\0") +#define VERSION_DIGITALVALUE 8, 4, 0, 0 // Notepad++ version: end
-
@rdipardo said in New version of HTML Tag:
Where can I open a PR showing how to bump the version without breaking the plugin?
I’m not sure I understand your question.
Why not in https://github.com/notepad-plus-plus/notepad-plus-plus/pulls?Thanks again.
-
I’m not sure I understand your question.
It was more of a rhetorical outburst in the heat of the moment. I tried to make the case in a bug report instead.
The secret to my productivity? I’m still “Stand[ing] with Hong Kong” . . .
-
@yaron,
New release ready to try: bitbucket.org/rdipardo/htmltag/issues/2.
Let’s hope it makes it into v1.4.9 of Plugins Admin (and N++ 8.4_).חג פסח שמח!
-
Thank you very much. I appreciate it.
Should I reply “חג שמח גם לך”? :)
Anyway, thanks for that too. -
-
arel3
-
Please update the 'readme.textfile`. It does not include activating the plugin through the Plugins Admin menu. I figured that out but not everyone is guaranteed to know that step is required.
After copying the .dll to the plugins folder:
-
Open the the Plugins menu and then open ‘Plugins Admin…’
-
Searching for HTML if there’s a long list (as there is for me)
-
Check the checkbox to the left of the plugin name in the list.
-
Click the “Install” button in the upper left.
notepad++ will restart and your plugin will then be activated and ready to be used.
-
-