The system only has the system clipboard, and Paste can only paste from the system clipboard. There is no working around this it is simply how things are.
To do what you want to do, what you need to to is either:
- Keep the clipboard history ordered (tricky)
- Keep track of the clipboard history order (tricky)
- Copy the clipboard entries to saved entries and paste from them (best practice).
Note that because Keyboard Maestro does not allow duplicate entries in the clipboard, if two items can have the same content then you will run in to specific problems that will need solving.
So, assuming you have your 111, 222, 333 example in the clipboard.
In the first case you would do something like:
Command-1:
- Paste From Past Clipboard: 2
- Set Clipboard to Past Clipboard: 2
- Set Clipboard to Past Clipboard: 2
Command-2:
- Paste From Past Clipboard: 1
- Set Clipboard to Past Clipboard: 1
Command-3:
The second method is considerably more difficult.
The third method would be either something like:
Copy the various desired entries, then trigger a macro to "Save" them, say Command-0.
Command-0:
- Set Named Clipboard "1" to Past Clipboard: 2
- Set Named Clipboard "2" to Past Clipboard: 1
- Set Named Clipboard "3" to Past Clipboard: 0
Command-3:
- Paste From Named Clipboard "3"
Note: if the data is plain text, you can use variables instead of Named Clipboards.
You could possibly have all your Command-1/2/3 macros check how long its been since any of them were last used and execute the Command-0 sequence if it has been long enough, or execute it when you change application, or whatever to avoid having the manually press Command-0.
Alternatively, you could have Control-1 Copy to Named Clipboard "1", and Control-2 Copy to Named Clipboard "2" so you could copy the items explicitly.
But in all cases, to Paste requires the system clipboard to be used and affects the clipboard history.