vi source code from busybox-1.21