Avoid moving cursor in `complete_func`. Closes #238 (#259)
Avoid moving cursor in `complete_func`. Closes #238 (#259)

It's not needed when called from __Vim__ (double checked
Vim's documentation and it's not in `complete-functions`
specifications), but it breaks omnicompletion
when called from __deoplete__.
With this fix Ensime completion can be configured as
`g:deoplete#omni#input_patterns` instead of
`g:deoplete#omni_patterns`. See 'FAQ' in __deoplete__
documentation to know more about the advantages.
ensime/ensime-vim