How to select the first ocurrence in the auto-completion menu by pressing Enter?

Posted by janoChen on Ask Ubuntu See other posts from Ask Ubuntu or by janoChen
Published on 2011-02-05T21:02:13Z Indexed on 2011/02/05 23:33 UTC
Read the original article Hit count: 358

Filed under:

Every time there's is a pop up menu. I select the first occurrence and press enter but nothing happens (the word is not completed with he selected occurrence). The only way is to press Tab until you reach the term for a second time.

Is there a way of selecting the first occurrence pressing Enter (or other Vim hotkey)?

My .vimrc:

" SHORTCUTS

nnoremap <F4> :set filetype=html<CR>
nnoremap <F5> :set filetype=php<CR>

nnoremap <F3> :TlistToggle<CR>

" press space to turn off highlighting and clear any message already displayed.
nnoremap <silent> <Space> :nohlsearch<Bar>:echo<CR>

" set buffers commands
nnoremap <silent> <M-F8> :BufExplorer<CR>
nnoremap <silent> <F8> :bn<CR>
nnoremap <silent> <S-F8> :bp<CR>

" open NERDTree with start directory: D:\wamp\www
nnoremap <F9> :NERDTree /home/alex/www<CR>

" open MRU
nnoremap <F10> :MRU<CR>

" open current file (silently)
nnoremap <silent> <F11> :let old_reg=@"<CR>:let @"=substitute(expand("%:p"), "/", "\\", "g")<CR>:silent!!cmd /cstart <C-R><C-R>"<CR><CR>:let @"=old_reg<CR>

" open current file in localhost (default browser)
nnoremap <F12> :! start "http://localhost" file:///"%:p""<CR>

" open Vim's default Explorer
nnoremap <silent> <F2> :Explore<CR>

nnoremap <C-F2> :%s/\.html/.php/g<CR>

" REMAPPING
" map leader to ,
let mapleader = ","

" remap ` to '
nnoremap ' `
nnoremap ` '

" remap increment numbers
nnoremap <C-kPlus> <C-A>

" COMPRESSION

function Js_css_compress ()
  let cwd = expand('<afile>:p:h')
  let nam = expand('<afile>:t:r')
  let ext = expand('<afile>:e')
  if -1 == match(nam, "[\._]src$")
    let minfname = nam.".min.".ext
  else
    let minfname = substitute(nam, "[\._]src$", "", "g").".".ext
  endif
  if ext == 'less'
    if executable('lessc')
      cal system( 'lessc '.cwd.'/'.nam.'.'.ext.' &')
    endif
  else
    if filewritable(cwd.'/'.minfname)
      if ext == 'js' && executable('closure-compiler')
        cal system( 'closure-compiler --js '.cwd.'/'.nam.'.'.ext.' > '.cwd.'/'.minfname.' &')
      elseif executable('yuicompressor')
        cal system( 'yuicompressor '.cwd.'/'.nam.'.'.ext.' > '.cwd.'/'.minfname.' &')
      endif
    endif
  endif
endfunction
autocmd FileWritePost,BufWritePost *.js :call Js_css_compress()
autocmd FileWritePost,BufWritePost *.css :call Js_css_compress()
autocmd FileWritePost,BufWritePost *.less :call Js_css_compress()

" GUI
" taglist right side
let Tlist_Use_Right_Window = 1

" hide tool bar
set guioptions-=T

"remove scroll bars
set guioptions+=LlRrb
set guioptions-=LlRrb

" set the initial size of window
set lines=46 columns=180

" set default font
set guifont=Monospace
" set guifont=Monospace\ 10

" show line number
set number

" set default theme
colorscheme molokai-2

" encoding
set encoding=utf-8
setglobal fileencoding=utf-8 bomb
set fileencodings=ucs-bom,utf-8,latin1

" SCSS syntax highlight
au BufRead,BufNewFile *.scss set filetype=scss

" LESS syntax highlight
syntax on
au BufNewFile,BufRead *.less set filetype=less

" Haml syntax highlight
"au! BufRead,BufNewFile *.haml
"setfiletype haml

" Sass syntax highlight
"au! BufRead,BufNewFile *.sass
"setfiletype sass

" set filetype indent
filetype indent on

" for snipMate to work
filetype plugin on

" show breaks
set showbreak=----->

" coding format
set tabstop=4
set shiftwidth=4
set linespace=1

" CONFIG

" set location of ctags
let Tlist_Ctags_Cmd='D:\ctags58\ctags.exe'

" keep the buffer around when left
set hidden

" enable matchit plugin
source $VIMRUNTIME/macros/matchit.vim

" folding
set foldmethod=marker
set foldmarker={,}
let g:FoldMethod = 0
map <leader>ff :call ToggleFold()<cr>
fun! ToggleFold()
    if g:FoldMethod == 0
        exe 'set foldmethod=indent'
        let g:FoldMethod = 1
    else
        exe 'set foldmethod=marker'
        let g:FoldMethod = 0
    endif
endfun

" save and restore folds when a file is closed and re-opened
"au BufWrite ?* mkview
"au BufRead ?* silent loadview

" auto-open NERDTree everytime Vim is invoked
au VimEnter * NERDTree /home/alex/www

" set omnicomplete
autocmd FileType python set omnifunc=pythoncomplete#Complete
autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS
autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
autocmd FileType css set omnifunc=csscomplete#CompleteCSS
autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags
autocmd FileType php set omnifunc=phpcomplete#CompletePHP
autocmd FileType c set omnifunc=ccomplete#Complete

" Remove trailing white-space once the file is saved
au BufWritePre * silent g/\s\+$/s///

" Use CTRL-S for saving, also in Insert mode
noremap <C-S> :update!<CR>
vnoremap <C-S> <C-C>:update!<CR>
inoremap <C-S> <C-O>:update!<CR>

" DEFAULT
set nocompatible
source $VIMRUNTIME/vimrc_example.vim
"source $VIMRUNTIME/mswin.vim
"behave mswin

" disable creation of swap files
set noswapfile

" no back ups wwhile editing
set nowritebackup

" disable creation of backups
set nobackup

" no file change pop up warning
autocmd FileChangedShell * echohl WarningMsg | echo "File changed shell." | echohl None

set diffexpr=MyDiff()
function MyDiff()
  let opt = '-a --binary '
  if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
  if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
  let arg1 = v:fname_in
  if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
  let arg2 = v:fname_new
  if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
  let arg3 = v:fname_out
  if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
  let eq = ''
  if $VIMRUNTIME =~ ' '
    if &sh =~ '\<cmd'
      let cmd = '""' . $VIMRUNTIME . '\diff"'
      let eq = '"'
    else
      let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
    endif
  else
    let cmd = $VIMRUNTIME . '\diff'
  endif
  silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3 . eq
endfunction 

© Ask Ubuntu or respective owner

Related posts about vim