Here's some handy little macros I use in some custom menus and toolbars.
Open location of current drawing in explorer
^C^C^P(startapp "explorer" (strcat "/e, "(getvar "dwgprefix")))(princ);
Select mid point between two points
_non;'cal;(cur+cur)/2;
Saveas 2000
^C^C^P(setq odwgname (getvar "dwgname"));(setq xdwgpath (getvar "dwgprefix"));(setq ndwgname (strcat (substr odwgname 1 (- (strlen odwgname) 4))));_saveas;2000;(strcat xdwgpath ndwgname);y;(command "close");y;
A crude but quick way of removing z values
C^C_move;_all;;0,0,0;0,0,1e99;_move;_p;;0,0,0;0,0,-1e99;
Draworder hatch to back
^C^C^p(setq ss1 (ssget "x" '((0 . "hatch"))));(command "_draworder" ss1 "" "_b");