1
" ----------------------------------------------------------------------------
" Functions
" ----------------------------------------------------------------------------

function! g:UltiSnips_Complete()
  call UltiSnips#ExpandSnippet()
  if g:ulti_expand_res == 0
    if pumvisible()
      return "\<c-n>"
    else
      call UltiSnips#JumpForwards()
      if g:ulti_jump_forwards_res == 0
        return "\<tab>"
      endif
    endif
  endif
  return ""
endfunction
"
" ----------------------------------------------------------------------------
" Autocmds
" ----------------------------------------------------------------------------

augroup relativenumber
  autocmd InsertEnter,focusLost * :set norelativenumber
  autocmd InsertLeave,focusGained * :set relativenumber
augroup END

autocmd BufEnter * exec "inoremap <silent> " . g:UltiSnipsExpandTrigger . " <c-r>=g:UltiSnips_Complete()<cr>"

上記のコードは、私の .vimrc ファイルの最後を構成するものです。この関数は以前は機能していましたが、いくつかの更新 (YouCompleteMe または UltiSnips のいずれか、不明) の後、これらが機能するのは、最初にディレクトリで vim を開き、そこからファイルを開いたときだけです。autocmd と関係があると思いますが、正直なところ、どこから始めればよいかわかりません。autocmd イベントを BufRead に変更しようとしましたが、残念ながら違いはありませんでした。どんな助けでも大歓迎です、ありがとう!

編集: この質問を投稿できるより良い場所があると思われる場合、または詳細が必要な場合は、教えてください! 喜んでお手伝いします。

4

2 に答える 2