Vim kendi profil oluşturma mekanizmasını kullanabilirsiniz:
vim --cmd 'profile start profile.log' \
--cmd 'profile func *' \
--cmd 'profile file *' \
-c 'profdel func *' \
-c 'profdel file *' \
-c 'qa!'
Yukarıdakileri çalıştırdıktan sonra, geçerli dizinde gerekli tüm bilgileri içeren profile.log adlı bir dosya bulacaksınız. Zaten mevcut olan her işlev içinkine benzer komut dosyası başına bilgi tablosunu almak için (bu dosyayı vim'de açtıktan sonra) kullanın:
" Open profile.log file in vim first
let timings=[]
g/^SCRIPT/call add(timings, [getline('.')[len('SCRIPT '):], matchstr(getline(line('.')+1), '^Sourced \zs\d\+')]+map(getline(line('.')+2, line('.')+3), 'matchstr(v:val, ''\d\+\.\d\+$'')'))
enew
call setline('.', ['count total (s) self (s) script']+map(copy(timings), 'printf("%5u %9s %8s %s", v:val[1], v:val[2], v:val[3], v:val[0])'))
Sıralanmamış olacaktır, ancak :sort
komut dosyası sayısı çok büyükse her zaman yerleşik komutu kullanabilirsiniz .