dd ipublic :%s,\$this->,,g /* we use , as delimiter because // interferes with the CPP */ :%s,\$,,g :%s,private var,private double var, /sqrt iMath. gg /function dw n cwvoid n . n cwdouble gg /val idouble /* in vim moves the cursor 1 cell back, hence 2n will not do the right thing */ fv /* accounts for this cursor is now at the start of "val" */ 2n. Gdd