Set the EDITOR environment variable. Invoke vipw to get the locking feature and you get to use your favorite editor to munge the file contents.
Cool! Works great!
Alas, if I su, EDITOR becomes undefined. But if I su -l, it's defined correctly (as it's in root's .bash_profile. What do I need to do to keep the variable when I don't use the -l?