From Newsgroup: alt.comp.os.windows-10
Daniel70 wrote:
Where did I insult you
Before we answer that question for you, please let us know what you learned from this thread, and let us know what you would do to improve the details.
Specifically if you can improve this Notepad++ shortcuts.xml file, that
would be a good use of your intelligence if you're so willing to share.
Particularly difficult is the method to get Notepad++ to close the file
after the control+B from within the macro, and, also what hasn't been
solved yet that you can help with since you're so eager to post to this thread, is how to automatically save from the macro the original file.
Both of those are important steps which need to be added to this macro,
where since you're so eager to add on-topic value, that's where your vast intelligence will be best employed to help others use this file too!
If you have any questions about this proposed solution, please just ask.
<<?xml version="1.0" encoding="UTF-8" ?>
<!-- C:\app\editor\txt\N++\shortcuts.xml for Windows Notepad++ (N++) -->
<!-- Automatically cleans fragments, converts to ASCII & copies to clipbrd -->
<!-- Use model: Control+V (paste) & Control+B (run the macro) -->
<!-- v3p9 20260211 N++ was not running the macro in the order shown -->
<!-- But it turned out any error causes an OLDER version to run. -->
<!-- Worse, when that happens, N++ overwrites this file -->
<!-- Worse, N++ is executing macro actions in a different order -->
<!-- than they appear in the XML so a total rewrite is needed in v4p0 -->
<!-- v3p8 20260211 U+2060 is driving me nuts so it's the first block now -->
<!-- v3p7 20260211 moved U+2060 up because it's the most disruptive -->
<!-- v3p6 20260211 U+2009 & U+200B not being converted properly -->
<!-- v3p5 20260211 fixed U+200B failing when U+200B is between ' & s -->
<!-- A 2nd pass was duplicated after apostrophe normalization rules -->
<!-- v3p4 20260211 added U+275E (heavy double quote right) -->
<!-- v3p3 20260211 added U+2009 (thin space) -->
<!-- v3p2 20260211 added seven new conversions after running testcases -->
<!-- U+02BE (modifier letter right half ring) -->
<!-- U+02BF (modifier letter left half ring) -->
<!-- U+201E (double low-9 quote) -->
<!-- U+201F (double high-reversed-9 quote) -->
<!-- U+275D (heavy double quote left) -->
<!-- U+275E (heavy double quote right) -->
<!-- U+2015 (horizontal bar) -->
<!-- U+2009 (thin space) -->
<!-- v3p1 20260211 reorganized into a dozen distinct categories -->
<!-- (1) control characters: U+000F U+0001 -->
<!-- (2) dashes & minus signs: U+2010 U+2011 U+2012 U+2212 -->
<!-- (3) zero-width characters: U+200C U+200B U+200D U+FEFF U+2060 -->
<!-- (4) special spaces: U+00A0 U+2007 U+202F U+200A U+2008 U+2006 -->
<!-- (5) apostrophe-like characters:
U+0F0C U+2018 U+2019 U+2032 U+02BC U+02B9 U+02C8 U+02EE
U+201B U+02CB U+A78C U+FF07 -->
<!-- (6) combining marks (remove after apostrophes):
U+0351 U+0307 U+0331 U+0335 U+0336 U+0337 U+0338 -->
<!-- (7) double-quote normalization: U+201C U+201D -->
<!-- (8) dash-like & ellipsis & HTML entities:
U+2026 — U+2014 U+2013 ‌ -->
<!-- (9) bullets, math symbols, diacritics:
U+2022 U+8722 U+011F U+2009 U+00E1 U+0161 U+011B -->
<!-- (10) miscellaneous symbols:
U+2713 ASCII hyphen ` U+2192 U+00B0 U+00A9 U+2122 U+00AE -->
<!-- (11) invisible operators:
U+00AD U+2061 U+2062 U+2063 U+2064 U+180E -->
<!-- (12) line separators: U+2028 U+2029 U+0085 -->
<!-- v3p0 20260211 added combining marks U+0351 U+0307 U+0331 -->
<!-- v3p1 20260211 added apostrophe-like characters U+201B U+02CB -->
<!-- v2p9 20260211 moved U+2060 to be above apostrophe-related blocks -->
<!-- v2p8 20260211 fixed Chromium CF_HTML paste control+A anomaly -->
<!-- v2p7 20260211 added U+02EE modifier letter double apostrophe rule -->
<!-- v2p6 20260211 fixed U+02C8 modifier letter vertical line) rule -->
<!-- v2p5 20260211 fixed U+02B9 (modifier letter prime) rule -->
<!-- v2p4 20260211 removed one of two U+000F blocks -->
<!-- v2p3 20260211 removed two (duplicate) 1700 lines in U+0161 -->
<!-- v2p2 20260211 fixed all zero-width blocks to replace with nothing -->
<!-- v2p1 20260211 fixed BOM to replace with nothing -->
<!-- v2p0 20260210 cleaned (emptied out) closing sections of the file -->
<!-- v1p9 20260210 ported old shortcuts.xml to improve coverage -->
<!-- Cleans Chromium pasted text & normalizes Unicode to ASCII -->
<!-- Use model: paste (using control+v) & fix (using control+b) -->
<!-- The macro should 1st break CF_HTML fragment mode (so Ctrl+A works) -->
<!-- and then run the Unicode-to-ASCII cleanup on all the pasted text -->
<!-- cutting (control+x) the result back into the Windows clipboard -->
<!-- thereby leaving the N++ GUI empty & ready for the next paste-->
<!--
To break Scintilla's CF_HTML fragment mode, we need to make any edit.
We can insert a space & then delete that space, for example.
<!-- Scintilla engine command meanings:
1700 = begin a new search/replace operation
1601 = set the search string (the Unicode character to find)
1625 = clear the replacement buffer
1602 = set the replacement string (ASCII equivalent)
1702 = execute Replace All
1701 = end this search/replace block
2001 = SCI_REPLACESEL (inserts a space)
2326 = SCI_DELETEBACK (deletes the space)
2013 = SCI_SELECTALL (selects everything)
2177 = SCI_CUT (cut all)
41001 = IDM_FILE_EXIT (close)
<!-- When you paste from a Chromium-based app, the clipboard contains:
CF_UNICODETEXT (plain text) & CF_HTML (HTML fragment)
And sometimes CF_RTF where N++ prefers CF_HTML if available.
v2p0 fixes a N++ selection issue caused by CF_HTML pastes.
"HTML Paste Mode" prevents the "Control+A" from working.
"HTML paste mode" inserts HTML fragment as plain text
where Ctrl+A is disabled until the buffer is "normalized"
(until the first edit that breaks the fragment state)
<!-- Below is garbage that N++ adds to shortcuts.xml -->
<NotepadPlus>
<InternalCommands>
<Shortcut id="43009" Ctrl="no" Alt="no" Shift="no" Key="0" />
</InternalCommands>
<Macros>
<!-- Above is garbage that N++ adds to shortcuts.xml -->
<!-- ASCII "control+b" Cleanup Macro -->
<Macro name="ASCII" Ctrl="yes" Alt="no" Shift="no" Key="66">
<!-- Begin Scintilla HTML-paste workaround top portion -->
<!-- Break Chromium CF_HTML fragment mode by adding & deleting a space-->
<Action type="0" message="2001" wParam="32" lParam="0" sParam="" />
<Action type="0" message="2326" wParam="0" lParam="0" sParam="" />
<!-- Select all text before running cleanup -->
<Action type="0" message="2013" wParam="0" lParam="0" sParam="" />
<!-- End Scintilla HTML-paste workaround top portion -->
<!-- BEGIN CONVERSION BLOCKS -->
<!-- U+2060 is driving me nuts so I'm making it the 1st block -->
<!-- U+2060 must be placed above the apostrophe-related blocks -->
<!-- Otherwise apostrophe block may skip over it -->
<!-- U+2060 is disruptive as it must be placed above zero-width too -->
<!-- Replace U+2060 (WORD JOINER) with nothing -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="⁠" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- #1. CONTROL CHARACTERS (remove first) -->
<!-- Replace U+000F (SHIFT-OUT control character) with nothing -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+0001 (SOH control character) with nothing -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- #2. DASHES & MINUS SIGNS (safest to remove early) -->
<!-- Replace U+2010 (HYPHEN) with ASCII "-" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="‐" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="-" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2011 (NON-BREAKING HYPHEN) with ASCII hyphen "-" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="‑" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="-" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2012 (FIGURE DASH) with ASCII "-" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="‒" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="-" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2212 (MINUS SIGN) with ASCII "-" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="−" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="-" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- #3. ZERO-WIDTH CHARACTERS (must be BEFORE apostrophes) -->
<!-- Replace U+200C (ZERO WIDTH NON-JOINER) with "" (nothing) -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="‌" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+200B (ZERO WIDTH SPACE) with nothing -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="​" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+200D (ZERO WIDTH JOINER) with nothing -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="‍" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+FEFF (BOM) with nothing -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- #4. SPECIAL SPACES (convert to ASCII space) -->
<!-- Replace U+00A0 (NO-BREAK SPACE) with ASCII space -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2007 (FIGURE SPACE) with ASCII space -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+202F (NARROW NO-BREAK SPACE) with ASCII space -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+200A (HAIR SPACE) with ASCII space -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2008 (PUNCTUATION SPACE) with ASCII space -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2006 (SIX-PER-EM SPACE) with ASCII space -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- #5. APOSTROPHE-LIKE CHARACTERS -->
<!-- Replace U+0F0C (TIBETAN MARK DELIMITER) with ASCII apostrophe "'" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="༌" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="'" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2018 (LEFT SINGLE QUOTE) with ASCII apostrophe "'" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="‘" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="'" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2019 (RIGHT SINGLE QUOTATION) with ASCII apostrophe "'" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="’" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="'" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2032 (PRIME) with ASCII apostrophe -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="′" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="'" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+02BC (MODIFIER LETTER APOSTROPHE) with ASCII apostrophe -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="ʼ" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="'" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+02B9 (MODIFIER LETTER PRIME) with ASCII apostrophe "'" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="ʹ" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="'" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+02C8 (MODIFIER LETTER VERTICAL) with ASCII apostrophe "'" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="ˈ" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="'" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+02EE (MODIFIER DOUBLE APOSTROPHE) with ASCII apostrophe "'" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="ˮ" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="'" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- U+201B (SINGLE HIGH-REVERSED-9 QUOTATION MARK) with apostrophe "'" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="‛" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="'" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+02CB (MODIFIER LETTER GRAVE ACCENT) with ASCII apostrophe "'" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="ˋ" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="'" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- This is is a duplication which is after the apostrophes -->
<!-- When U+200B appears between two characters that were already replaced -->
<!-- the first pass fails to remove it, so I added this duplicate -->
<!-- Remove U+200B (ZERO-WIDTH SPACE) second pass -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="​" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- #6. COMBINING MARKS (remove only after apostrophes are done) -->
<!-- Remove U+0351 (COMBINING RIGHT HALF RING ABOVE) -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="͑" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Remove U+0307 (COMBINING DOT ABOVE) -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="̇" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Remove U+0331 (COMBINING MACRON BELOW) -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="̱" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- #7. DOUBLE-QUOTE NORMALIZATION -->
<!-- Replace U+201C (LEFT DOUBLE QUOTE) with ASCII double quote " -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="“" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam='"' />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+201D (RIGHT DOUBLE QUOTE) with ASCII double quote -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="”" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam='"' />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- #8. ELLIPSIS, EM DASH, EN DASH, HTML ENTITIES -->
<!-- Replace U+2026 (HORIZONTAL ELLIPSIS) with ASCII "..." -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="…" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="..." />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace literal — (HTML entity for EM DASH) with ASCII "-" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="&#151;" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="-" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2014 (EM DASH) with ASCII "-" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="—" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="-" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2013 (EN DASH) with ASCII "-" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="–" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="-" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace literal ‌ (ZERO WIDTH NON-JOINER entity) with ASCII "-" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="‌" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="-" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- #9. BULLETS, MATH SYMBOLS, LETTERS WITH DIACRITICS -->
<!-- Replace U+2022 (BULLET) with ASCII "*" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="•" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="*" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+8722 (MATHEMATICAL MINUS variant) with ASCII "&" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="蜢" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="&" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+011F (LATIN SMALL G WITH BREVE) with ASCII "g" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="ğ" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="g" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+00E1 (LATIN SMALL A WITH ACUTE) with ASCII "a" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="á" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="a" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+0161 (LATIN SMALL S WITH CARON) with ASCII "s" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="š" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="s" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+011B (LATIN SMALL E WITH CARON) with ASCII "e" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="ě" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="e" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- #10. MISCELLANEOUS SYMBOLS -->
<!-- Replace U+2713 (CHECK MARK) with ASCII space -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="✓" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace ASCII hyphen "-" with ASCII hyphen "-" (normalize) -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="-" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="-" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace backtick with ASCII single quote -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="`" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="'" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace Unicode Arrow (U+2192) with ASCII dash greaterthan -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="→" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="->" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace degree symbol with deg -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="°" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="deg" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace copyright symbol U??? with (C) -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="©" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="(C)" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace Trademark (U+2122) with (TM) -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="™" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="(TM)" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace Registered (U+00AE) with (R) -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="®" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="(R)" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- #11. INVISIBLE OPERATORS (remove) -->
<!-- Replace U+00AD (SOFT HYPHEN) with "" (remove completely) -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="­" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2061 (FUNCTION APPLICATION) with "" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="⁡" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2062 (INVISIBLE TIMES) with "" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="⁢" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2063 (INVISIBLE SEPARATOR) with "" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="⁣" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2064 (INVISIBLE PLUS) with "" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="⁤" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+180E (MONGOLIAN VOWEL SEPARATOR) with "" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="᠎" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- #12. LINE SEPARATORS -->
<!-- Replace U+2028 (LINE SEPARATOR) with ASCII newline -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="
" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2029 (PARAGRAPH SEPARATOR) with ASCII newline -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="
" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+0085 (NEXT LINE / NEL) with ASCII newline -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="…" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+A78C (LATIN SMALL LETTER SALTILLO) with ASCII apostrophe "'" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="ꞌ" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="'" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+FF07 (FULLWIDTH APOSTROPHE) with ASCII apostrophe "'" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="'" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="'" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Remove U+0335 (COMBINING SHORT STROKE OVERLAY) -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="̵" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Remove U+0336 (COMBINING LONG STROKE OVERLAY) -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="̶" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Remove U+0337 (COMBINING SHORT SOLIDUS OVERLAY) -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="̷" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Remove U+0338 (COMBINING LONG SOLIDUS OVERLAY) -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="̸" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2043 (HYPHEN BULLET) with ASCII "-" -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="⁃" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="-" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+02BE (MODIFIER LETTER RIGHT HALF RING) w/ ASCII apostrophe -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="ʾ" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="'" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+02BF (MODIFIER LETTER LEFT HALF RING) w/ ASCII apostrophe -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="ʿ" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="'" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+201E (DOUBLE LOW-9 QUOTATION MARK) w/ ASCII double quote -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="„" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam=""" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+201F (DOUBLE HIGH-REVERSED-9 QUOTATION MARK) w/ dquote -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="‟" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam=""" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+275D (HEAVY DOUBLE QUOTATION MARK ORNAMENT LEFT) w/ dquote -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="❝" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam=""" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+275E (HEAVY DOUBLE QUOTATION MARK ORNAMENT RIGHT) w/ dquote -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="❞" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam=""" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2015 (HORIZONTAL BAR) with ASCII hyphen -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam="―" />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam="-" />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2009 (THIN SPACE) with ASCII space -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- Replace U+2009 (THIN SPACE) with ASCII space -->
<Action type="3" message="1700" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1601" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1625" wParam="0" lParam="0" sParam="" />
<Action type="3" message="1602" wParam="0" lParam="0" sParam=" " />
<Action type="3" message="1702" wParam="0" lParam="768" sParam="" />
<Action type="3" message="1701" wParam="0" lParam="1609" sParam="" />
<!-- END OF CONVERSION BLOCKS -->
<!-- Begin Scintilla HTML-paste workaround bottom portion -->
<!-- Select all cleaned text -->
<Action type="0" message="2013" wParam="0" lParam="0" sParam="" />
<!-- Cut cleaned text to Windows clipboard -->
<Action type="0" message="2177" wParam="0" lParam="0" sParam="" />
<!-- End Scintilla HTML-paste workaround bottom portion -->
<!-- Close N++ -->
<Action type="2" message="41001" wParam="0" lParam="0" sParam="" />
<!-- N++ will save shortcuts.xml automatically as it
rewrites the file whenever shortcuts/macros/plugins change.
Some sections are required so empty sections will be recreated.
</Macro>
</Macros>
<UserDefinedCommands>
</UserDefinedCommands>
<PluginCommands />
<ScintillaKeys />
</NotepadPlus>
--
One problem with Usenet is that there are people who can't ever contribute
but who feel desperate to ruin the threads where people are contributing.
--- Synchronet 3.21b-Linux NewsLink 1.2