Mercurial > vim
view runtime/ftplugin/gprof.vim @ 9649:fd9727ae3c49 v7.4.2101
commit https://github.com/vim/vim/commit/2932359000b2f918d5fade79ea4d124d5943cd07
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Jul 24 22:04:11 2016 +0200
patch 7.4.2101
Problem: Looping over windows, buffers and tab pages is inconsistant.
Solution: Use FOR_ALL_ macros everywhere. (Yegappan Lakshmanan)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 24 Jul 2016 22:15:07 +0200 |
parents | a5352e73dc00 |
children | 9f41bfdbc6fc |
line wrap: on
line source
" Language: gprof " Maintainer: Dominique Pelle <dominique.pelle@gmail.com> " Last Change: 2013 Jun 09 " When cursor is on one line of the gprof call graph, " calling this function jumps to this function in the call graph. if exists("b:did_ftplugin") finish endif let b:did_ftplugin=1 fun! <SID>GprofJumpToFunctionIndex() let l:line = getline('.') if l:line =~ '[\d\+\]$' " We're in a line in the call graph. norm! $y% call search('^' . escape(@", '[]'), 'sw') norm! zz elseif l:line =~ '^\(\s\+[0-9\.]\+\)\{3}\s\+' " We're in line in the flat profile. norm! 55|eby$ call search('^\[\d\+\].*\d\s\+' . escape(@", '[]*.') . '\>', 'sW') norm! zz endif endfun " Pressing <C-]> on a line in the gprof flat profile or in " the call graph, jumps to the corresponding function inside " the flat profile. map <buffer> <silent> <C-]> :call <SID>GprofJumpToFunctionIndex()<CR> " vim:sw=2 fdm=indent