I pushed this update to github. My impression is that uptake on KiCommand is fairly low at the moment, so there may very well be bugs that slip by.
I’ve added a core command topoints and modified todrawsegments to accept point pairs in addition to tracks. Given this, I had to do some cartwheels to get the width from the text and apply them to the drawsegments. Those cartwheels are documented in the texttosegments command.
Usage: toptextobj selected Dwgs.User texttosegments F.Cu tocopper
The first two commands retreive all the selected top text objects. Then Dwgs.User texttosegments copies the text objects to the Dwgs.User layer, then the F.Cu tocopper copies those segments to the F.Cu copper layer.
Let me know if you have any problems or questions!
Here is the definition of texttosegments in the persist file (which you never have to look at):
:persist texttosegments "Draw [TEXTOBJLIST LAYER] Copies text objects in TEXTOBJLIST to LAYER." swap copy GetThickness call list swap topoints pairwise 2 pick todrawsegments copy 2 pick SetWidth callargs pop swap pop swap pop ;