for some reason vi-mode has to be specified last