I didn't use BitBucket issues as they want to "make it easier for me" by insisting I use, and set up, an Atlassian login. It's not easier it's a PITA.
diff --git tclCommands/TclCommandOffset.py tclCommands/TclCommandOffset.py
index 17ffdaa..4cd9576 100644
--- tclCommands/TclCommandOffset.py
+++ tclCommands/TclCommandOffset.py
@@ -48,6 +48,12 @@ class TclCommandOffset(TclCommand.TclCommand):
"""
name = args['name']
- x, y = args['x'], args['y']
-
- self.app.collection.get_by_name(name).offset(x, y)
+ x, y = float(args['x']), float(args['y'])
+ if name == 'all':
+ names = self.app.collection.get_names()
+ for name in names:
+ object = self.app.collection.get_by_name(name)
+ if object.kind == 'gerber' or object.kind == "excellon":
+ object.offset((x, y))
+ else:
+ self.app.collection.get_by_name(name).offset((x, y))
I'm not sure that name == 'all' is the right trigger but, like I say, it works for me. Oh, this also fixes a bug where the shell command "offset" doesn't work at all.