I use gedit on the Linux box that runs PathPilot.
Note that PathPilot supports the full LinuxCNC language, which lets you declare and use variables right in the code.
See for example: G Code Overview
(This is untested, but should illustrate the principle I think.)Code:#<Xstart> = 1.0 #<Ystart> = 2.0 #<Zend> = -0.5 #<Xdelta> = 0.5 #<Ydelta> = 0.3 M03 S3000 G0 X[#<Xstart>] Y[#<Ystart>] Z1.0 G0 Z0.1 G1 [#<Zend>] F150 G0 Z1.0 G0 X[#<Xstart>+#<Xdelta>] Y[#<Ystart>] Z1.0 G0 Z0.1 G1 [#<Zend>] F150 G0 Z1.0 G0 X[#<Xstart>+#<Xdelta>] Y[#<Ystart>+#<Ydelta>] Z1.0 G0 Z0.1 G1 [#<Zend>] F150 G0 Z1.0 G0 X[#<Xstart>] Y[#<Ystart>+#<Ydelta>] Z1.0 G0 Z0.1 G1 [#<Zend>] F150 G0 Z1.0 M30 G30