This branch implements
#1625. There are subtleties in the code that I need not discuss here.
The main thing you should see is this: If you clone a node descending from any kind of @<file> node, you should see that clone colored properly, no matter where you move it, and no matter what the default language is in effect. (@string target-language specifies the default language.)
For example, my copy of leoInteg.leo contains both python and typescript files. I can clone nodes from either kind of file and have the clones colored properly, no matter where I move the clones. It's a big improvement.
Please test this code and report any obvious problems. I plan to merge "clones" into devel tomorrow.
Edward