<commit_before>function! s:CheckTarget()
  let vimproc_paths = globpath(&runtimepath, 'autoload/vimproc.vim')
  if vimproc_paths ==# "" || vimproc#util#is_windows() || has('win32unix') || !executable('make')
    return
  endif

  let target_file = vimproc#util#is_mac() ? 'vimproc_mac.so' : 'vimproc_unix.so'
  let make_file   = vimproc#util#is_mac() ? 'make_mac.mak' : 'make_unix.mak'
  let src_files   = ['proc.c', 'vimstack.c']

  for path in split(vimproc_paths, '\n')
    let autoload_path = fnamemodify(path, ':p:h')
    let vimproc_path = fnamemodify(path, ':p:h:h')

    let target_file_time = getftime(autoload_path . '/' . target_file)
    for src_file in ['proc.c', 'vimstack.c']
      if target_file_time < getftime(autoload_path . '/' . src_file)
        echomsg 'Found ' . target_file . ' is obsoleted, make it again...'
        call system('cd ' . shellescape(vimproc_path) .
        \  ' && make -f ' . make_file . ' clean' .
        \  ' && make -f ' . make_file)
        if v:shell_error
          echomsg 'Filed to make ' . target_file . '.'
          echomsg 'Please make it by hand, otherwise some plugin may not work properly.'
        else
          echomsg 'Done.'
        endif
        break
      endif
    endfor
  endfor
endfunction

call s:CheckTarget()<commit_msg>FIX: use right target_file of vimproc.<commit_after>function! s:CheckTarget()
  let vimproc_paths = globpath(&runtimepath, 'autoload/vimproc.vim')
  if vimproc_paths ==# "" || vimproc#util#is_windows() || has('win32unix') || !executable('make')
    return
  endif

  if vimproc#util#is_mac()
    let target_file = 'vimproc_mac.so'
  elseif glob('/lib*/ld-linux*64.so.2') != ''
    let target_file = 'vimproc_linux64.so'
  elseif glob('/lib*/ld-linux*.so.2') != ''
    let target_file = 'vimproc_linux32.so'
  else
    let target_file = 'vimproc_unix.so'
  endif
  let src_files   = ['proc.c', 'vimstack.c']

  for path in split(vimproc_paths, '\n')
    let autoload_path = fnamemodify(path, ':p:h')
    let vimproc_path = fnamemodify(path, ':p:h:h')

    let target_file_time = getftime(autoload_path . '/' . target_file)
    for src_file in src_files
      if target_file_time < getftime(autoload_path . '/' . src_file)
        echomsg 'Found ' . target_file . ' is obsoleted, make it again...'
        call system('cd ' . shellescape(vimproc_path) .
        \  ' && make clean' .
        \  ' && make')
        if v:shell_error
          echomsg 'Filed to make ' . target_file . '.'
          echomsg 'Please make it by hand, otherwise some plugin may not work properly.'
        else
          echomsg 'Done.'
        endif
        break
      endif
    endfor
  endfor
endfunction

call s:CheckTarget()
{'fraction_non_alphanumeric': 0.13555555555555557, 'fraction_numerical': 0.0044444444444444444, 'mean_word_length': 2.788218793828892, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2450152', 'n_tokens_mistral': 1009, 'n_tokens_neox': 957, 'n_words': 213}