add omnicompletion and key mapping