Привык к vim, а vi имхо себя ведет несколько странно. В insert-mode по умолчанию символы не вставляются, а помещаются поверх существующих (overwrite, короче), это нормально? Можно сделать так, чтобы в insert-mode был insert, а не overwrite?
П.С. проблема, может быть, также и в cygwin'е, не знаю.