To prevent oozing of the inactive extruder i do a very large retract before changing to other extruder.
When the current extruder changes from T0 to T1 for example , then T1 needs a very long extrude-period to get enough filament back to the nozzle.
Sometimes the string which is coming out of the nozzle can be very long, much longer than needed to restart the print with this current extruder.
If we would create a skirt over the whole height of the build and if we would position the extruder OUTSIDE of this skirt before we tell the extruder to re-extrude then the string which is pressed out too long can be scratched of at the skirt when reentering the skirt.
Assuming we have 2 Extruders - a skirt with min . 2 Loops should be created (one Loop for each color) .
On Layers with only 1 color the 2 loops are created with the same extruder...
Second problem is, that the extruder should go up in Z for about 10mm before "reloading" the nozzle with a long extrude of filament and on its way to the skirt it should go back in Z....
I hope you can understand what i want to tell - my english is not the best....
Just set skirt height to 999999. I used that for some dual color prints.
I know about this, but 2 things i am missing:
Skirt is created with one extruder / color - even when this layer has multiple colors
Extra Langth on restart for reactivated Extruder should be appended / startet to extruder only when the extruder is standing outside of the skirt (and should lift Z about 10mm to have enough space for a bit to much filament extruded)
I think something like "Layer change G-Code" but Named " Toolchange GCODE before / after " would be great to do this.
A toolchange G-code setting was added as of e59ed7e (#547). Do you think that's enough for your usage case?