“Paste Special” should be called “Paste From Windows Clipboard” since that’s what it does.
Paste (Ctrl-V) -> calls maro “PastePlus” -> calls macro “Paste”
Paste Special -> calls macro “Paste /WC=1”
The /WC=1 means use Windows Clipboard
Multi-Edit system variable “NewClipboardData” is forced to true (1) when the /WC=1 is present.
When “NewClipboardData” is true(1), data from the Windows Clipboard is copied to Multi-Edit’s internal hidden buffer named “Buffer.0”. This hidden buffer can be viewed by doing MACRO -> RUN and entering the command “SWITWIN /SYSTEM=2” and selecting “Buffer.0”. This buffer saves everything that was ever pasted to it. The most recent stuff is at the end and is highlighted. Paste then copies the highlighted text from Buffer.0 to where you want the text pasted in your user buffer.
When “NewClipboardData” is false(0) Paste skips the copying from Windows Clipboard and just copies whatever highlighted text is already at the end of Buffer.0 to where you want the text pasted in your user buffer.
Paste will do the same thing as Paste Special if “NewClipboardData” is already set to true (1).
“NewClipboardData” is a Multi-Edit system variable. CMAC reference says of NewClipboardData, “When greater than zero, new data has been posted to the clipboard.” There’s no further info, but I suspect it’s getting the info from the Windows operating system somehow. The ClipMate author may have a good guess where Multi-Edit gets “NewClipboardData” from.
So sometimes Paste will copy from the Windows Clipboard, and sometimes not, depending on “NewClipboardData”. Paste Special always copies from the Windows Clipboard.
“NewClipboardData” is set to false(0) after a Paste or Paste Special or a “Cut”.
That’s about all I know offhand. -D.D.