DEV Community

Discussion on: A pragmatic approach to shell completion

 
rsteube profile image
rsteube • Edited

Not too sure with only a quick view on it, but my first guess would be that it's probably the difference of a *Element reference to a Element copy.
Meaning you are altering command.Element but rootElement.Elements might contain a different object.
Try putting rootElement.Elements = append(rootElement.Elements, commandElement) after the VisitAll.

Thread Thread
 
anderssonpeter profile image
Peter

Thanks for your help I managed to get a export running after finding the carapace-bin repo!!

Thread Thread
 
rsteube profile image
rsteube

Ah yes, might get a bit lost in the text. For everyone else: github.com/rsteube/carapace-bin

Thread Thread
 
anderssonpeter profile image
Peter

After thinking about my go issue i think you are right, when i added the command element to the root command, it took a copy of my variable and stored it.
So all the changes i did after got lost. Not that it matters your solution was much better than mine :).