Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- FUNCTION <SNR>155_BufferTextChangedSinceLastMoveInInsertMode()
- Called 10 times
- Total time: 0.000368
- Self time: 0.000368
- count total (s) self (s)
- 10 0.000030 if s:moved_vertically_in_insert_mode
- 1 0.000003 let s:previous_num_chars_on_current_line = -1
- 1 0.000002 return 0
- endif
- 9 0.000064 let num_chars_in_current_cursor_line = strlen( getline('.') )
- 9 0.000029 if s:previous_num_chars_on_current_line == -1
- let s:previous_num_chars_on_current_line = num_chars_in_current_cursor_line
- return 0
- endif
- 9 0.000053 let changed_text_on_current_line = num_chars_in_current_cursor_line != s:previous_num_chars_on_current_line
- 9 0.000042 let s:previous_num_chars_on_current_line = num_chars_in_current_cursor_line
- 9 0.000019 return changed_text_on_current_line
- FUNCTION <SNR>147_get_syn()
- Called 48 times
- Total time: 0.001975
- Self time: 0.001975
- count total (s) self (s)
- " need to pass in mode, known to break on 7.3.547
- 48 0.000339 let mode = has('gui_running') ? 'gui' : 'cterm'
- 48 0.000441 let color = synIDattr(synIDtrans(hlID(a:group)), a:what, mode)
- 48 0.000183 if empty(color) || color == -1
- let color = synIDattr(synIDtrans(hlID('Normal')), a:what, mode)
- endif
- 48 0.000142 if empty(color) || color == -1
- if has('gui_running')
- let color = a:what ==# 'fg' ? '#000000' : '#FFFFFF'
- else
- let color = a:what ==# 'fg' ? 0 : 1
- endif
- endif
- 48 0.000087 return color
- FUNCTION <SNR>77_repo_head_ref()
- Called 1 time
- Total time: 0.000174
- Self time: 0.000139
- count total (s) self (s)
- 1 0.000076 0.000056 if !filereadable(self.dir('HEAD'))
- return ''
- endif
- 1 0.000090 0.000075 return readfile(self.dir('HEAD'))[0]
- FUNCTION airline#check_mode()
- Called 15 times
- Total time: 0.013569
- Self time: 0.002129
- count total (s) self (s)
- 15 0.000126 let context = s:contexts[a:winnr]
- 15 0.000082 if get(w:, 'airline_active', 1)
- 15 0.000091 let l:m = mode()
- 15 0.000048 if l:m ==# "i"
- 9 0.000040 let l:mode = ['insert']
- 9 0.000020 elseif l:m ==# "R"
- let l:mode = ['replace']
- elseif l:m =~# '\v(v|V||s|S|)'
- let l:mode = ['visual']
- else
- 6 0.000028 let l:mode = ['normal']
- 6 0.000011 endif
- 15 0.000138 let w:airline_current_mode = get(g:airline_mode_map, l:m, l:m)
- 15 0.000021 else
- let l:mode = ['inactive']
- let w:airline_current_mode = get(g:airline_mode_map, '__')
- endif
- 15 0.000088 if g:airline_detect_modified && &modified
- 15 0.000191 call add(l:mode, 'modified')
- 15 0.000022 endif
- 15 0.000053 if g:airline_detect_paste && &paste
- call add(l:mode, 'paste')
- endif
- 15 0.000046 if &readonly || ! &modifiable
- call add(l:mode, 'readonly')
- endif
- 15 0.000124 let mode_string = join(l:mode)
- 15 0.000113 if get(w:, 'airline_lastmode', '') != mode_string
- 1 0.000100 0.000015 call airline#highlighter#highlight_modified_inactive(context.bufnr)
- 1 0.011366 0.000011 call airline#highlighter#highlight(l:mode)
- 1 0.000005 let w:airline_lastmode = mode_string
- 1 0.000001 endif
- 15 0.000027 return ''
- FUNCTION <SNR>155_UpdateDiagnosticNotifications()
- Called 7 times
- Total time: 0.140970
- Self time: 0.140898
- count total (s) self (s)
- 7 0.002056 0.001984 let should_display_diagnostics = g:ycm_show_diagnostics_ui && s:DiagnosticUiSupportedForCurrentFiletype() && pyeval( 'ycm_state.NativeFiletypeCompletionUsable()' )
- 7 0.000044 if !should_display_diagnostics
- return
- endif
- 7 0.138796 py ycm_state.UpdateDiagnosticInterface()
- FUNCTION <SNR>155_GetCompletions()
- Called 11 times
- Total time: 0.142187
- Self time: 0.142187
- count total (s) self (s)
- 11 0.140927 py results = GetCompletionsInner()
- 11 0.001151 let results = pyeval( 'results' )
- 11 0.000062 return results
- FUNCTION <SNR>155_OnBlankLine()
- Called 9 times
- Total time: 0.000936
- Self time: 0.000936
- count total (s) self (s)
- 9 0.000921 return pyeval( 'not vim.current.line or vim.current.line.isspace()' )
- FUNCTION airline#themes#get_highlight()
- Called 24 times
- Total time: 0.003846
- Self time: 0.000245
- count total (s) self (s)
- 24 0.003833 0.000232 return call('airline#highlighter#get_highlight', [a:group] + a:000)
- FUNCTION <SNR>77_repo()
- Called 2 times
- Total time: 0.000160
- Self time: 0.000160
- count total (s) self (s)
- 2 0.000039 let dir = a:0 ? a:1 : (exists('b:git_dir') && b:git_dir !=# '' ? b:git_dir : fugitive#extract_git_dir(expand('%:p')))
- 2 0.000007 if dir !=# ''
- 2 0.000014 if has_key(s:repos, dir)
- 2 0.000017 let repo = get(s:repos, dir)
- 2 0.000004 else
- let repo = {'git_dir': dir}
- let s:repos[dir] = repo
- endif
- 2 0.000050 return extend(extend(repo, s:repo_prototype, 'keep'), s:abstract_prototype, 'keep')
- endif
- call s:throw('not a git repository: '.expand('%:p'))
- FUNCTION airline#parts#filetype()
- Called 15 times
- Total time: 0.000073
- Self time: 0.000073
- count total (s) self (s)
- 15 0.000055 return &filetype
- FUNCTION airline#parts#iminsert()
- Called 15 times
- Total time: 0.000187
- Self time: 0.000187
- count total (s) self (s)
- 15 0.000075 if g:airline_detect_iminsert && &iminsert && exists('b:keymap_name')
- return toupper(b:keymap_name)
- endif
- 15 0.000022 return ''
- FUNCTION <SNR>155_OnCursorHold()
- Called 2 times
- Total time: 0.004576
- Self time: 0.000191
- count total (s) self (s)
- 2 0.000249 0.000108 if !s:AllowedToCompleteInCurrentFile()
- return
- endif
- 2 0.000148 0.000036 call s:SetUpCompleteopt()
- 2 0.004162 0.000030 call s:OnFileReadyToParse()
- FUNCTION <SNR>145_check_mixed_indent()
- Called 1 time
- Total time: 0.003526
- Self time: 0.003526
- count total (s) self (s)
- 1 0.000005 if s:indent_algo == 1
- " [<tab>]<space><tab>
- " spaces before or between tabs are not allowed
- let t_s_t = '(^\t* +\t\s*\S)'
- " <tab>(<space> x count)
- " count of spaces at the end of tabs should be less then tabstop value
- let t_l_s = '(^\t+ {' . &ts . ',}' . '\S)'
- return search('\v' . t_s_t . '|' . t_l_s, 'nw')
- else
- 1 0.003500 return search('\v(^\t+ +)|(^ +\t+)', 'nw')
- endif
- FUNCTION <SNR>77_repo_head()
- Called 1 time
- Total time: 0.000395
- Self time: 0.000101
- count total (s) self (s)
- 1 0.000276 0.000027 let head = s:repo().head_ref()
- 1 0.000017 if head =~# '^ref: '
- 1 0.000069 0.000024 let branch = s:sub(head,'^ref: %(refs/%(heads/|remotes/|tags/)=)=','')
- 1 0.000004 elseif head =~# '^\x\{40\}$'
- " truncate hash to a:1 characters if we're in detached head mode
- let len = a:0 ? a:1 : 0
- let branch = len ? head[0:len-1] : ''
- else
- return ''
- endif
- 1 0.000003 return branch
- FUNCTION <SNR>155_SetUpCompleteopt()
- Called 2 times
- Total time: 0.000112
- Self time: 0.000112
- count total (s) self (s)
- " Some plugins (I'm looking at you, vim-notes) change completeopt by for
- " instance adding 'longest'. This breaks YCM. So we force our settings.
- " There's no two ways about this: if you want to use YCM then you have to
- " have these completeopt settings, otherwise YCM won't work at all.
- " We need menuone in completeopt, otherwise when there's only one candidate
- " for completion, the menu doesn't show up.
- 2 0.000028 set completeopt-=menu
- 2 0.000016 set completeopt+=menuone
- " This is unnecessary with our features. People use this option to insert
- " the common prefix of all the matches and then add more differentiating chars
- " so that they can select a more specific match. With our features, they
- " don't need to insert the prefix; they just type the differentiating chars.
- " Also, having this option set breaks the plugin.
- 2 0.000012 set completeopt-=longest
- 2 0.000012 if g:ycm_add_preview_to_completeopt
- set completeopt+=preview
- endif
- FUNCTION UltiSnips#CursorMoved()
- Called 14 times
- Total time: 0.004098
- Self time: 0.004098
- count total (s) self (s)
- 14 0.004067 exec g:_uspy "UltiSnips_Manager._cursor_moved()"
- FUNCTION 279()
- Called 11 times
- Total time: 0.000150
- Self time: 0.000150
- count total (s) self (s)
- 11 0.000075 let idx = self.kinddict[a:kind]
- 11 0.000057 return self.kinds[idx]
- FUNCTION SetUsLayout()
- Called 1 time
- Total time: 0.000027
- Self time: 0.000027
- count total (s) self (s)
- 1 0.000019 if has('unix') && &term == 'builtin_gui'
- silent !qdbus ru.gentoo.KbddService /ru/gentoo/KbddService ru.gentoo.kbdd.set_layout 0 >/dev/null
- endif
- FUNCTION <SNR>155_OnCursorMovedInsertMode()
- Called 10 times
- Total time: 0.009807
- Self time: 0.001470
- count total (s) self (s)
- 10 0.000415 0.000070 if !s:AllowedToCompleteInCurrentFile()
- return
- endif
- 10 0.000566 py ycm_state.OnCursorMoved()
- 10 0.000441 0.000148 call s:UpdateCursorMoved()
- " Basically, we need to only trigger the completion menu when the user has
- " inserted or deleted a character, NOT just when the user moves in insert mode
- " (with, say, the arrow keys). If we trigger the menu even on pure moves, then
- " it's impossible to move in insert mode since the up/down arrows start moving
- " the selected completion in the completion menu. Yeah, people shouldn't be
- " moving in insert mode at all (that's what normal mode is for) but explain
- " that to the users who complain...
- 10 0.000440 0.000072 if !s:BufferTextChangedSinceLastMoveInInsertMode()
- 1 0.000001 return
- endif
- 9 0.004401 0.000072 call s:IdentifierFinishedOperations()
- 9 0.000034 if g:ycm_autoclose_preview_window_after_completion
- call s:ClosePreviewWindowIfNeeded()
- endif
- 9 0.000021 if g:ycm_auto_trigger || s:omnifunc_mode
- 9 0.003075 0.000073 call s:InvokeCompletion()
- 9 0.000011 endif
- " We have to make sure we correctly leave omnifunc mode even when the user
- " inserts something like a "operator[]" candidate string which fails
- " CurrentIdentifierFinished check.
- 9 0.000172 if s:omnifunc_mode && !pyeval( 'base.LastEnteredCharIsIdentifierChar()')
- let s:omnifunc_mode = 0
- endif
- FUNCTION airline#util#wrap()
- Called 105 times
- Total time: 0.001199
- Self time: 0.001199
- count total (s) self (s)
- 105 0.000510 if a:minwidth > 0 && winwidth(0) < a:minwidth
- return ''
- endif
- 105 0.000242 return a:text
- FUNCTION xolox#misc#cursorhold#autocmd()
- Called 2 times
- Total time: 0.000706
- Self time: 0.000505
- count total (s) self (s)
- " The 'top level event handler' that's called by Vim whenever the
- " [CursorHold][] or [CursorHoldI][] event fires. It iterates through the
- " event handlers registered using `xolox#misc#cursorhold#register()` and
- " calls each event handler at the appropriate interval, keeping track of
- " the time when each event handler was last run.
- 4 0.000035 for handler in g:xolox#misc#cursorhold#handlers
- 2 0.000026 let function = handler['function']
- 2 0.000024 let last_run = get(handler, 'last_run', 0)
- 2 0.000017 let interval = get(handler, 'interval', 4)
- 2 0.000144 0.000065 call xolox#misc#msg#debug("vim-misc %s: Checking handler %s with interval %i and last run %i ..", g:xolox#misc#version, function, interval, last_run)
- " Rate limit in case &updatetime is set (very) low.
- 2 0.000031 let time_until_next_run = (last_run + interval) - localtime()
- 2 0.000010 if time_until_next_run > 0
- 1 0.000051 0.000023 call xolox#misc#msg#debug("vim-misc %s: Rate limiting handler %s (time until next run: %i seconds).", g:xolox#misc#version, function, time_until_next_run)
- 1 0.000002 else
- 1 0.000049 0.000020 call xolox#misc#msg#debug("vim-misc %s: Running handler %s ..", g:xolox#misc#version, function)
- 1 0.000099 0.000034 call call(function, get(handler, 'arguments', []))
- 1 0.000009 let handler['last_run'] = localtime()
- 1 0.000002 endif
- 2 0.000006 endfor
- FUNCTION airline#extensions#whitespace#check()
- Called 15 times
- Total time: 0.006810
- Self time: 0.003284
- count total (s) self (s)
- 15 0.000141 if &readonly || !&modifiable || !s:enabled || line('$') > s:max_lines
- return ''
- endif
- 15 0.000103 if !exists('b:airline_whitespace_check')
- 1 0.000008 let b:airline_whitespace_check = ''
- 1 0.000012 let checks = get(g:, 'airline#extensions#whitespace#checks', s:default_checks)
- 1 0.000004 let trailing = 0
- 1 0.000008 if index(checks, 'trailing') > -1
- 1 0.001922 let trailing = search('\s$', 'nw')
- 1 0.000003 endif
- 1 0.000004 let mixed = 0
- 1 0.000007 if index(checks, 'indent') > -1
- 1 0.003544 0.000018 let mixed = s:check_mixed_indent()
- 1 0.000001 endif
- 1 0.000002 if trailing != 0 || mixed != 0
- let b:airline_whitespace_check = s:symbol
- if s:show_message
- if trailing != 0
- let b:airline_whitespace_check .= (g:airline_symbols.space).printf(s:trailing_format, trailing)
- endif
- if mixed != 0
- let b:airline_whitespace_check .= (g:airline_symbols.space).printf(s:mixed_indent_format, mixed)
- endif
- endif
- endif
- 1 0.000000 endif
- 15 0.000055 return b:airline_whitespace_check
- FUNCTION <SNR>155_IdentifierFinishedOperations()
- Called 9 times
- Total time: 0.004329
- Self time: 0.004329
- count total (s) self (s)
- 9 0.000717 if !pyeval( 'base.CurrentIdentifierFinished()' )
- 7 0.000018 return
- endif
- 2 0.003548 py ycm_state.OnCurrentIdentifierFinished()
- 2 0.000020 let s:omnifunc_mode = 0
- FUNCTION <SNR>154_AutoUpdate()
- Called 1 time
- Total time: 0.001408
- Self time: 0.000719
- count total (s) self (s)
- 1 0.000049 0.000024 call s:debug('AutoUpdate called [' . a:fname . ']')
- " This file is being loaded due to a quickfix command like vimgrep, so
- " don't process it
- 1 0.000008 if exists('s:tagbar_qf_active')
- return
- elseif exists('s:window_opening')
- " This can happen if another plugin causes the active window to change
- " with an autocmd during the initial Tagbar window creation. In that
- " case InitWindow() hasn't had a chance to run yet and things can
- " break. MiniBufExplorer does this, for example. Completely disabling
- " autocmds at that point is also not ideal since for example
- " statusline plugins won't be able to update.
- call s:debug('Still opening window, stopping processing')
- return
- endif
- " Get the filetype of the file we're about to process
- 1 0.000056 let bufnr = bufnr(a:fname)
- 1 0.000012 let ftype = getbufvar(bufnr, '&filetype')
- " Don't do anything if we're in the tagbar window
- 1 0.000006 if ftype == 'tagbar'
- call s:debug('In Tagbar window, stopping processing')
- return
- endif
- " Only consider the main filetype in cases like 'python.django'
- 1 0.000019 let sftype = get(split(ftype, '\.'), 0, '')
- 1 0.000059 0.000036 call s:debug("Vim filetype: '" . ftype . "', " . "sanitized filetype: '" . sftype . "'")
- " Don't do anything if the file isn't supported
- 1 0.000235 0.000022 if !s:IsValidFile(a:fname, sftype)
- call s:debug('Not a valid file, stopping processing')
- let s:nearby_disabled = 1
- return
- endif
- 1 0.000006 let updated = 0
- " Process the file if it's unknown or the information is outdated.
- " Testing the mtime of the file is necessary in case it got changed
- " outside of Vim, for example by checking out a different version from a
- " VCS.
- 1 0.000029 0.000017 if s:known_files.has(a:fname)
- 1 0.000028 0.000016 let curfile = s:known_files.get(a:fname)
- " if a:force || getbufvar(curfile.bufnr, '&modified') ||
- 1 0.000040 if a:force || empty(curfile) || curfile.ftype != sftype || (filereadable(a:fname) && getftime(a:fname) > curfile.mtime)
- call s:debug('File data outdated, updating [' . a:fname . ']')
- call s:ProcessFile(a:fname, sftype)
- let updated = 1
- else
- 1 0.000054 0.000031 call s:debug('File data seems up to date [' . a:fname . ']')
- 1 0.000002 endif
- 1 0.000006 elseif !s:known_files.has(a:fname)
- call s:debug('New file, processing [' . a:fname . ']')
- call s:ProcessFile(a:fname, sftype)
- let updated = 1
- endif
- 1 0.000084 0.000071 let fileinfo = s:known_files.get(a:fname)
- " If we don't have an entry for the file by now something must have gone
- " wrong, so don't change the tagbar content
- 1 0.000006 if empty(fileinfo)
- call s:debug('fileinfo empty after processing [' . a:fname . ']')
- return
- endif
- " Display the tagbar content if the tags have been updated or a different
- " file is being displayed
- 1 0.000108 if bufwinnr('__Tagbar__') != -1 && !s:paused && (s:new_window || updated || (!empty(s:known_files.getCurrent(0)) && a:fname != s:known_files.getCurrent(0).fpath))
- call s:RenderContent(fileinfo)
- endif
- " Call setCurrent after rendering so RenderContent can check whether the
- " same file is being redisplayed
- 1 0.000005 if !empty(fileinfo)
- 1 0.000037 0.000017 call s:debug('Setting current file [' . a:fname . ']')
- 1 0.000025 0.000014 call s:known_files.setCurrent(fileinfo)
- 1 0.000007 let s:nearby_disabled = 0
- 1 0.000002 endif
- 1 0.000336 0.000019 call s:HighlightTag(0)
- 1 0.000037 0.000017 call s:debug('AutoUpdate finished successfully')
- FUNCTION <SNR>155_UpdateCursorMoved()
- Called 10 times
- Total time: 0.000293
- Self time: 0.000293
- count total (s) self (s)
- 10 0.000078 let current_position = getpos('.')
- 10 0.000054 let s:cursor_moved = current_position != s:old_cursor_position
- 10 0.000086 let s:moved_vertically_in_insert_mode = s:old_cursor_position != [] && current_position[ 1 ] != s:old_cursor_position[ 1 ]
- 10 0.000039 let s:old_cursor_position = current_position
- FUNCTION <SNR>155_OnCursorMovedNormalMode()
- Called 4 times
- Total time: 0.002802
- Self time: 0.000449
- count total (s) self (s)
- 4 0.000426 0.000047 if !s:AllowedToCompleteInCurrentFile()
- return
- endif
- 4 0.002023 0.000049 call s:OnFileReadyToParse()
- 4 0.000326 py ycm_state.OnCursorMoved()
- FUNCTION airline#util#append()
- Called 45 times
- Total time: 0.001038
- Self time: 0.001038
- count total (s) self (s)
- 45 0.000197 if a:minwidth > 0 && winwidth(0) < a:minwidth
- return ''
- endif
- 45 0.000349 let prefix = s:spc == "\ua0" ? s:spc : s:spc.s:spc
- 45 0.000281 return empty(a:text) ? '' : prefix.g:airline_left_alt_sep.s:spc.a:text
- FUNCTION youcompleteme#Complete()
- Called 18 times
- Total time: 0.092982
- Self time: 0.004992
- count total (s) self (s)
- " After the user types one character after the call to the omnifunc, the
- " completefunc will be called because of our mapping that calls the
- " completefunc on every keystroke. Therefore we need to delegate the call we
- " 'stole' back to the omnifunc
- 18 0.000099 if s:omnifunc_mode
- 2 0.011145 0.000027 return youcompleteme#OmniComplete( a:findstart, a:base )
- endif
- 16 0.000027 if a:findstart
- " InvokeCompletion has this check but we also need it here because of random
- " Vim bugs and unfortunate interactions with the autocommands of other
- " plugins
- 8 0.000013 if !s:cursor_moved
- " for vim, -2 means not found but don't trigger an error message
- " see :h complete-functions
- return -2
- endif
- 8 0.000602 if !pyeval( 'ycm_state.IsServerAlive()' )
- return -2
- endif
- 8 0.002772 py ycm_state.CreateCompletionRequest()
- 8 0.000953 return pyeval( 'base.CompletionStartColumn()' )
- else
- 8 0.076958 0.000086 return s:GetCompletions()
- endif
- FUNCTION youcompleteme#OmniComplete()
- Called 6 times
- Total time: 0.067232
- Self time: 0.001917
- count total (s) self (s)
- 6 0.000033 if a:findstart
- 3 0.000307 if !pyeval( 'ycm_state.IsServerAlive()' )
- return -2
- endif
- 3 0.000015 let s:omnifunc_mode = 1
- 3 0.001085 py ycm_state.CreateCompletionRequest( force_semantic = True )
- 3 0.000374 return pyeval( 'base.CompletionStartColumn()' )
- else
- 3 0.065340 0.000025 return s:GetCompletions()
- endif
- FUNCTION 287()
- Called 12 times
- Total time: 0.000106
- Self time: 0.000106
- count total (s) self (s)
- 12 0.000045 if !s:paused || a:forcecurrent
- 12 0.000037 return self._current
- else
- return self._paused
- endif
- FUNCTION 288()
- Called 1 time
- Total time: 0.000011
- Self time: 0.000011
- count total (s) self (s)
- 1 0.000009 let self._current = a:fileinfo
- FUNCTION airline#highlighter#highlight()
- Called 1 time
- Total time: 0.011355
- Self time: 0.003502
- count total (s) self (s)
- 1 0.000005 let p = g:airline#themes#{g:airline_theme}#palette
- " draw the base mode, followed by any overrides
- 1 0.000017 let mapped = map(a:modes, 'v:val == a:modes[0] ? v:val : a:modes[0]."_".v:val')
- 1 0.000004 let suffix = a:modes[0] == 'inactive' ? '_inactive' : ''
- 3 0.000006 for mode in mapped
- 2 0.000013 if exists('g:airline#themes#{g:airline_theme}#palette[mode]')
- 2 0.000008 let dict = g:airline#themes#{g:airline_theme}#palette[mode]
- 23 0.000054 for kvp in items(dict)
- 21 0.000054 let mode_colors = kvp[1]
- 21 0.000959 0.000153 call airline#highlighter#exec(kvp[0].suffix, mode_colors)
- 63 0.000133 for accent in keys(s:accents)
- 42 0.000112 if !has_key(p.accents, accent)
- continue
- endif
- 42 0.000189 let colors = copy(mode_colors)
- 42 0.000135 if p.accents[accent][0] != ''
- let colors[0] = p.accents[accent][0]
- endif
- 42 0.000103 if p.accents[accent][2] != ''
- 21 0.000073 let colors[2] = p.accents[accent][2]
- 21 0.000015 endif
- 42 0.000079 if len(colors) >= 5
- 14 0.000054 let colors[4] = get(p.accents[accent], 4, '')
- 14 0.000011 else
- 28 0.000175 call add(colors, get(p.accents[accent], 4, ''))
- 28 0.000027 endif
- 42 0.002166 0.000337 call airline#highlighter#exec(kvp[0].suffix.'_'.accent, colors)
- 42 0.000051 endfor
- 21 0.000023 endfor
- " TODO: optimize this
- 14 0.000038 for sep in items(s:separators)
- 12 0.005407 0.000189 call <sid>exec_separator(dict, sep[1][0], sep[1][1], sep[1][2], suffix)
- 12 0.000024 endfor
- 2 0.000002 endif
- 2 0.000003 endfor
- FUNCTION airline#parts#ffenc()
- Called 15 times
- Total time: 0.000728
- Self time: 0.000728
- count total (s) self (s)
- 15 0.000711 return printf('%s%s', &fenc, strlen(&ff) > 0 ? '['.&ff.']' : '')
- FUNCTION airline#parts#paste()
- Called 15 times
- Total time: 0.000109
- Self time: 0.000109
- count total (s) self (s)
- 15 0.000087 return g:airline_detect_paste && &paste ? g:airline_symbols.paste : ''
- FUNCTION tagbar#currenttag()
- Called 11 times
- Total time: 0.004927
- Self time: 0.001220
- count total (s) self (s)
- " Indicate that the statusline functionality is being used. This prevents
- " the CloseWindow() function from removing the autocommands.
- 11 0.000056 let s:statusline_in_use = 1
- 11 0.000027 if a:0 > 0
- " also test for non-zero value for backwards compatibility
- 11 0.000178 let longsig = a:1 =~# 's' || (type(a:1) == type(0) && a:1 != 0)
- 11 0.000079 let fullpath = a:1 =~# 'f'
- 11 0.000064 let prototype = a:1 =~# 'p'
- 11 0.000017 else
- let longsig = 0
- let fullpath = 0
- let prototype = 0
- endif
- 11 0.000751 0.000105 if !s:Init(1)
- return a:default
- endif
- 11 0.002693 0.000124 let tag = s:GetNearbyTag(0, 1)
- 11 0.000045 if !empty(tag)
- 11 0.000024 if prototype
- return tag.getPrototype(1)
- else
- 11 0.000687 0.000195 return printf(a:fmt, tag.str(longsig, fullpath))
- endif
- else
- return a:default
- endif
- FUNCTION <SNR>77_sub()
- Called 1 time
- Total time: 0.000045
- Self time: 0.000045
- count total (s) self (s)
- 1 0.000043 return substitute(a:str,'\v\C'.a:pat,a:rep,'')
- FUNCTION <SNR>155_InsideCommentOrStringAndShouldStop()
- Called 9 times
- Total time: 0.001542
- Self time: 0.000222
- count total (s) self (s)
- 9 0.001392 0.000072 let retval = s:InsideCommentOrString()
- 9 0.000029 let inside_comment = retval == 1
- 9 0.000024 let inside_string = retval == 2
- 9 0.000038 if inside_comment && g:ycm_complete_in_comments || inside_string && g:ycm_complete_in_strings
- return 0
- endif
- 9 0.000013 return retval
- FUNCTION airline#extensions#hunks#get_hunks()
- Called 15 times
- Total time: 0.002786
- Self time: 0.001721
- count total (s) self (s)
- 15 0.000082 if !get(w:, 'airline_active', 0)
- return ''
- endif
- 15 0.001200 0.000135 let hunks = s:get_hunks()
- 15 0.000043 let string = ''
- 15 0.000047 if !empty(hunks)
- 60 0.000178 for i in [0, 1, 2]
- 45 0.000176 if s:non_zero_only == 0 || hunks[i] > 0
- 45 0.000539 let string .= printf('%s%s ', s:hunk_symbols[i], hunks[i])
- 45 0.000070 endif
- 45 0.000104 endfor
- 15 0.000019 endif
- 15 0.000037 return string
- FUNCTION airline#parts#readonly()
- Called 15 times
- Total time: 0.000091
- Self time: 0.000091
- count total (s) self (s)
- 15 0.000074 return &readonly ? g:airline_symbols.readonly : ''
- FUNCTION airline#highlighter#exec()
- Called 76 times
- Total time: 0.003371
- Self time: 0.003371
- count total (s) self (s)
- 76 0.000196 let colors = a:colors
- 76 0.000203 if s:is_win32term
- let colors[2] = s:gui2cui(get(colors, 0, ''), get(colors, 2, ''))
- let colors[3] = s:gui2cui(get(colors, 1, ''), get(colors, 3, ''))
- endif
- 76 0.002154 exec printf('hi %s %s %s %s %s %s %s %s', a:group, get(colors, 0, '') != '' ? 'guifg='.colors[0] : '', get(colors, 1, '') != '' ? 'guibg='.colors[1] : '', get(colors, 2, '') != '' ? 'ctermfg='.colors[2] : '', get(colors, 3, '') != '' ? 'ctermbg='.colors[3] : '', get(colors, 4, '') != '' ? 'gui='.colors[4] : '', get(colors, 4, '') != '' ? 'cterm='.colors[4] : '', get(colors, 4, '') != '' ? 'term='.colors[4] : '')
- FUNCTION <SNR>155_SetUpYcmChangedTick()
- Called 7 times
- Total time: 0.000122
- Self time: 0.000122
- count total (s) self (s)
- 7 0.000111 let b:ycm_changedtick = get( b:, 'ycm_changedtick', { 'file_ready_to_parse' : -1, } )
- FUNCTION <SNR>147_exec_separator()
- Called 12 times
- Total time: 0.005218
- Self time: 0.000682
- count total (s) self (s)
- 12 0.002017 0.000117 let l:from = airline#themes#get_highlight(a:from.a:suffix)
- 12 0.002073 0.000127 let l:to = airline#themes#get_highlight(a:to.a:suffix)
- 12 0.000067 let group = a:from.'_to_'.a:to.a:suffix
- 12 0.000026 if a:inverse
- 4 0.000038 let colors = [ l:from[1], l:to[1], l:from[3], l:to[3] ]
- 4 0.000005 else
- 8 0.000055 let colors = [ l:to[1], l:from[1], l:to[3], l:from[3] ]
- 8 0.000008 endif
- 12 0.000061 let a:dict[group] = colors
- 12 0.000786 0.000096 call airline#highlighter#exec(group, colors)
- FUNCTION <SNR>142_get_hunks_signify()
- Called 15 times
- Total time: 0.000506
- Self time: 0.000246
- count total (s) self (s)
- 15 0.000392 0.000132 let hunks = sy#repo#get_stats()
- 15 0.000060 if hunks[0] >= 0
- 15 0.000032 return hunks
- endif
- return []
- FUNCTION <SNR>155_InvokeCompletion()
- Called 9 times
- Total time: 0.003002
- Self time: 0.000524
- count total (s) self (s)
- 9 0.000046 if &completefunc != "youcompleteme#Complete"
- return
- endif
- 9 0.002656 0.000178 if s:InsideCommentOrStringAndShouldStop() || s:OnBlankLine()
- return
- endif
- " This is tricky. First, having 'refresh' set to 'always' in the dictionary
- " that our completion function returns makes sure that our completion function
- " is called on every keystroke. Second, when the sequence of characters the
- " user typed produces no results in our search an infinite loop can occur. The
- " problem is that our feedkeys call triggers the OnCursorMovedI event which we
- " are tied to. We prevent this infinite loop from starting by making sure that
- " the user has moved the cursor since the last time we provided completion
- " results.
- 9 0.000031 if !s:cursor_moved
- return
- endif
- " <c-x><c-u> invokes the user's completion function (which we have set to
- " youcompleteme#Complete), and <c-p> tells Vim to select the previous
- " completion candidate. This is necessary because by default, Vim selects the
- " first candidate when completion is invoked, and selecting a candidate
- " automatically replaces the current text with it. Calling <c-p> forces Vim to
- " deselect the first candidate and in turn preserve the user's current text
- " until he explicitly chooses to replace it with a completion.
- 9 0.000095 call feedkeys( "\<C-X>\<C-U>\<C-P>", 'n' )
- FUNCTION <SNR>155_OnInsertLeave()
- Called 1 time
- Total time: 0.141464
- Self time: 0.001868
- count total (s) self (s)
- 1 0.000038 0.000005 if !s:AllowedToCompleteInCurrentFile()
- return
- endif
- 1 0.000002 let s:omnifunc_mode = 0
- 1 0.139570 0.000007 call s:OnFileReadyToParse()
- 1 0.001818 py ycm_state.OnInsertLeave()
- 1 0.000019 if g:ycm_autoclose_preview_window_after_completion || g:ycm_autoclose_preview_window_after_insertion
- call s:ClosePreviewWindowIfNeeded()
- endif
- FUNCTION <SNR>142_get_hunks()
- Called 15 times
- Total time: 0.001065
- Self time: 0.000559
- count total (s) self (s)
- 15 0.000069 if empty(s:source_func)
- if get(g:, 'loaded_signify', 0)
- let s:source_func = 's:get_hunks_signify'
- elseif exists('*GitGutterGetHunkSummary')
- let s:source_func = 's:get_hunks_gitgutter'
- elseif exists('*changes#GetStats')
- let s:source_func = 's:get_hunks_changes'
- else
- let s:source_func = 's:get_hunks_empty'
- endif
- endif
- 15 0.000673 0.000167 return {s:source_func}()
- FUNCTION <SNR>155_OnFileReadyToParse()
- Called 7 times
- Total time: 0.145669
- Self time: 0.004577
- count total (s) self (s)
- " We need to call this just in case there is no b:ycm_changetick; this can
- " happen for special buffers.
- 7 0.000191 0.000069 call s:SetUpYcmChangedTick()
- " Order is important here; we need to extract any done diagnostics before
- " reparsing the file again. If we sent the new parse request first, then
- " the response would always be pending when we called
- " UpdateDiagnosticNotifications.
- 7 0.141065 0.000095 call s:UpdateDiagnosticNotifications()
- 7 0.000094 let buffer_changed = b:changedtick != b:ycm_changedtick.file_ready_to_parse
- 7 0.000022 if buffer_changed
- 2 0.004121 py ycm_state.OnFileReadyToParse()
- 2 0.000010 endif
- 7 0.000056 let b:ycm_changedtick.file_ready_to_parse = b:changedtick
- FUNCTION <SNR>155_DiagnosticUiSupportedForCurrentFiletype()
- Called 7 times
- Total time: 0.000072
- Self time: 0.000072
- count total (s) self (s)
- 7 0.000068 return get( s:diagnostic_ui_filetypes, &filetype, 0 )
- FUNCTION <SNR>155_AllowedToCompleteInCurrentFile()
- Called 18 times
- Total time: 0.000927
- Self time: 0.000927
- count total (s) self (s)
- 18 0.000271 if empty( &filetype ) || getbufvar( winbufnr( winnr() ), "&buftype" ) ==# 'nofile' || &filetype ==# 'qf'
- return 0
- endif
- 18 0.000185 let whitelist_allows = has_key( g:ycm_filetype_whitelist, '*' ) || has_key( g:ycm_filetype_whitelist, &filetype )
- 18 0.000131 let blacklist_allows = !has_key( g:ycm_filetype_blacklist, &filetype )
- 18 0.000066 return whitelist_allows && blacklist_allows
- FUNCTION airline#extensions#tagbar#currenttag()
- Called 15 times
- Total time: 0.005526
- Self time: 0.000599
- count total (s) self (s)
- 15 0.000085 if get(w:, 'airline_active', 0)
- 15 0.000088 if s:airline_tagbar_last_lookup_time != localtime()
- 11 0.005091 0.000164 let s:airline_tagbar_last_lookup_val = tagbar#currenttag('%s', '', s:flags)
- 11 0.000099 let s:airline_tagbar_last_lookup_time = localtime()
- 11 0.000014 endif
- 15 0.000061 return s:airline_tagbar_last_lookup_val
- endif
- return ''
- FUNCTION <SNR>147_get_array()
- Called 24 times
- Total time: 0.000439
- Self time: 0.000439
- count total (s) self (s)
- 24 0.000070 let fg = a:fg
- 24 0.000053 let bg = a:bg
- 24 0.000282 return has('gui_running') ? [ fg, bg, '', '', join(a:opts, ',') ] : [ '', '', fg, bg, join(a:opts, ',') ]
- FUNCTION <SNR>155_InsideCommentOrString()
- Called 9 times
- Total time: 0.001320
- Self time: 0.001320
- count total (s) self (s)
- " Has to be col('.') -1 because col('.') doesn't exist at this point. We are
- " in insert mode when this func is called.
- 9 0.001146 let syntax_group = synIDattr( synIDtrans( synID( line( '.' ), col( '.' ) - 1, 1 ) ), 'name')
- 9 0.000052 if stridx(syntax_group, 'Comment') > -1
- return 1
- endif
- 9 0.000029 if stridx(syntax_group, 'String') > -1
- return 2
- endif
- 9 0.000012 return 0
- FUNCTION airline#extensions#branch#head()
- Called 15 times
- Total time: 0.000911
- Self time: 0.000384
- count total (s) self (s)
- 15 0.000130 if exists('b:airline_head') && !empty(b:airline_head)
- 14 0.000037 return b:airline_head
- endif
- 1 0.000005 let b:airline_head = ''
- 1 0.000005 let found_fugitive_head = 0
- 1 0.000009 if s:has_fugitive && !exists('b:mercurial_dir')
- 1 0.000546 0.000019 let b:airline_head = fugitive#head(7)
- 1 0.000005 let found_fugitive_head = 1
- 1 0.000009 if empty(b:airline_head) && !exists('b:git_dir')
- let b:airline_head = s:get_git_branch(expand("%:p:h"))
- endif
- 1 0.000002 endif
- 1 0.000006 if empty(b:airline_head)
- if s:has_lawrencium
- let b:airline_head = lawrencium#statusline()
- endif
- endif
- 1 0.000005 if empty(b:airline_head)
- if s:has_vcscommand
- call VCSCommandEnableBufferSetup()
- if exists('b:VCSCommandBufferInfo')
- let b:airline_head = get(b:VCSCommandBufferInfo, 0, '')
- endif
- endif
- endif
- 1 0.000011 if empty(b:airline_head) || !found_fugitive_head && !s:check_in_path()
- let b:airline_head = ''
- endif
- 1 0.000010 if exists("g:airline#extensions#branch#displayed_head_limit")
- let w:displayed_head_limit = g:airline#extensions#branch#displayed_head_limit
- if len(b:airline_head) > w:displayed_head_limit - 1
- let b:airline_head = b:airline_head[0:w:displayed_head_limit - 1].'…'
- endif
- endif
- 1 0.000005 return b:airline_head
- FUNCTION <SNR>154_Init()
- Called 11 times
- Total time: 0.000646
- Self time: 0.000646
- count total (s) self (s)
- 11 0.000056 if s:checked_ctags == 2 && a:silent
- return 0
- elseif s:checked_ctags != 1
- if !s:CheckForExCtags(a:silent)
- return 0
- endif
- endif
- 11 0.000034 if !s:checked_ctags_types
- call s:GetSupportedFiletypes()
- endif
- 11 0.000028 if !s:type_init_done
- call s:InitTypes()
- endif
- 11 0.000033 if !s:autocommands_done
- call s:CreateAutocommands()
- call s:AutoUpdate(fnamemodify(expand('%'), ':p'), 0)
- endif
- 11 0.000021 return 1
- FUNCTION airline#parts#mode()
- Called 15 times
- Total time: 0.000111
- Self time: 0.000111
- count total (s) self (s)
- 15 0.000092 return get(w:, 'airline_current_mode', '')
- FUNCTION UltiSnips#LeavingInsertMode()
- Called 1 time
- Total time: 0.000100
- Self time: 0.000100
- count total (s) self (s)
- 1 0.000099 exec g:_uspy "UltiSnips_Manager._leaving_insert_mode()"
- FUNCTION sy#repo#get_stats()
- Called 15 times
- Total time: 0.000260
- Self time: 0.000260
- count total (s) self (s)
- 15 0.000123 if !exists('b:sy') || !has_key(b:sy, 'stats')
- return [-1, -1, -1]
- endif
- 15 0.000044 return b:sy.stats
- FUNCTION xolox#misc#msg#debug()
- Called 4 times
- Total time: 0.000136
- Self time: 0.000136
- count total (s) self (s)
- " Show a formatted debugging message to the user, *if the user has enabled
- " increased verbosity by setting Vim's ['verbose'] [] option to one
- " (1) or higher*.
- "
- " This function has the same argument handling as the
- " `xolox#misc#msg#info()` function.
- "
- " In the case of `xolox#misc#msg#debug()`, automatic string coercion
- " provides lazy evaluation in the sense that complex data structures are
- " only converted to strings when the user has enabled increased verbosity.
- "
- " ['verbose']: http://vimdoc.sourceforge.net/htmldoc/options.html#'verbose'
- 4 0.000039 if &vbs >= 1
- call s:show_message('question', a:000)
- endif
- FUNCTION fugitive#head()
- Called 1 time
- Total time: 0.000527
- Self time: 0.000047
- count total (s) self (s)
- 1 0.000009 if !exists('b:git_dir')
- return ''
- endif
- 1 0.000511 0.000031 return s:repo().head(a:0 ? a:1 : 0)
- FUNCTION <SNR>88_Highlight_Matching_Pair()
- Called 25 times
- Total time: 0.002572
- Self time: 0.002572
- count total (s) self (s)
- " Remove any previous match.
- 25 0.000185 if exists('w:paren_hl_on') && w:paren_hl_on
- silent! call matchdelete(3)
- let w:paren_hl_on = 0
- endif
- " Avoid that we remove the popup menu.
- " Return when there are no colors (looks like the cursor jumps).
- 25 0.000140 if pumvisible() || (&t_Co < 8 && !has("gui_running"))
- return
- endif
- " Get the character under the cursor and check if it's in 'matchpairs'.
- 25 0.000128 let c_lnum = line('.')
- 25 0.000106 let c_col = col('.')
- 25 0.000143 let before = 0
- 25 0.000120 let text = getline(c_lnum)
- 25 0.000135 let c = text[c_col - 1]
- 25 0.000400 let plist = split(&matchpairs, '.\zs[:,]')
- 25 0.000143 let i = index(plist, c)
- 25 0.000047 if i < 0
- " not found, in Insert mode try character before the cursor
- 25 0.000130 if c_col > 1 && (mode() == 'i' || mode() == 'R')
- 20 0.000043 let before = 1
- 20 0.000078 let c = text[c_col - 2]
- 20 0.000072 let i = index(plist, c)
- 20 0.000020 endif
- 25 0.000038 if i < 0
- " not found, nothing to do
- 25 0.000039 return
- endif
- endif
- " Figure out the arguments for searchpairpos().
- if i % 2 == 0
- let s_flags = 'nW'
- let c2 = plist[i + 1]
- else
- let s_flags = 'nbW'
- let c2 = c
- let c = plist[i - 1]
- endif
- if c == '['
- let c = '\['
- let c2 = '\]'
- endif
- " Find the match. When it was just before the cursor move it there for a
- " moment.
- if before > 0
- let has_getcurpos = exists("*getcurpos")
- if has_getcurpos
- " getcurpos() is more efficient but doesn't exist before 7.4.313.
- let save_cursor = getcurpos()
- else
- let save_cursor = winsaveview()
- endif
- call cursor(c_lnum, c_col - before)
- endif
- " Build an expression that detects whether the current cursor position is in
- " certain syntax types (string, comment, etc.), for use as searchpairpos()'s
- " skip argument.
- " We match "escape" for special items, such as lispEscapeSpecial.
- let s_skip = '!empty(filter(map(synstack(line("."), col(".")), ''synIDattr(v:val, "name")''), ' . '''v:val =~? "string\\|character\\|singlequote\\|escape\\|comment"''))'
- " If executing the expression determines that the cursor is currently in
- " one of the syntax types, then we want searchpairpos() to find the pair
- " within those syntax types (i.e., not skip). Otherwise, the cursor is
- " outside of the syntax types and s_skip should keep its value so we skip any
- " matching pair inside the syntax types.
- execute 'if' s_skip '| let s_skip = 0 | endif'
- " Limit the search to lines visible in the window.
- let stoplinebottom = line('w$')
- let stoplinetop = line('w0')
- if i % 2 == 0
- let stopline = stoplinebottom
- else
- let stopline = stoplinetop
- endif
- " Limit the search time to 300 msec to avoid a hang on very long lines.
- " This fails when a timeout is not supported.
- if mode() == 'i' || mode() == 'R'
- let timeout = exists("b:matchparen_insert_timeout") ? b:matchparen_insert_timeout : g:matchparen_insert_timeout
- else
- let timeout = exists("b:matchparen_timeout") ? b:matchparen_timeout : g:matchparen_timeout
- endif
- try
- let [m_lnum, m_col] = searchpairpos(c, '', c2, s_flags, s_skip, stopline, timeout)
- catch /E118/
- " Can't use the timeout, restrict the stopline a bit more to avoid taking
- " a long time on closed folds and long lines.
- " The "viewable" variables give a range in which we can scroll while
- " keeping the cursor at the same position.
- " adjustedScrolloff accounts for very large numbers of scrolloff.
- let adjustedScrolloff = min([&scrolloff, (line('w$') - line('w0')) / 2])
- let bottom_viewable = min([line('$'), c_lnum + &lines - adjustedScrolloff - 2])
- let top_viewable = max([1, c_lnum-&lines+adjustedScrolloff + 2])
- " one of these stoplines will be adjusted below, but the current values are
- " minimal boundaries within the current window
- if i % 2 == 0
- if has("byte_offset") && has("syntax_items") && &smc > 0
- let stopbyte = min([line2byte("$"), line2byte(".") + col(".") + &smc * 2])
- let stopline = min([bottom_viewable, byte2line(stopbyte)])
- else
- let stopline = min([bottom_viewable, c_lnum + 100])
- endif
- let stoplinebottom = stopline
- else
- if has("byte_offset") && has("syntax_items") && &smc > 0
- let stopbyte = max([1, line2byte(".") + col(".") - &smc * 2])
- let stopline = max([top_viewable, byte2line(stopbyte)])
- else
- let stopline = max([top_viewable, c_lnum - 100])
- endif
- let stoplinetop = stopline
- endif
- let [m_lnum, m_col] = searchpairpos(c, '', c2, s_flags, s_skip, stopline)
- endtry
- if before > 0
- if has_getcurpos
- call setpos('.', save_cursor)
- else
- call winrestview(save_cursor)
- endif
- endif
- " If a match is found setup match highlighting.
- if m_lnum > 0 && m_lnum >= stoplinetop && m_lnum <= stoplinebottom
- if exists('*matchaddpos')
- call matchaddpos('MatchParen', [[c_lnum, c_col - before], [m_lnum, m_col]], 10, 3)
- else
- exe '3match MatchParen /\(\%' . c_lnum . 'l\%' . (c_col - before) . 'c\)\|\(\%' . m_lnum . 'l\%' . m_col . 'c\)/'
- endif
- let w:paren_hl_on = 1
- endif
- FUNCTION <SNR>154_debug()
- Called 6 times
- Total time: 0.000131
- Self time: 0.000131
- count total (s) self (s)
- 6 0.000025 if s:debug
- execute 'redir >> ' . s:debug_file
- silent echon s:gettime() . ': ' . a:msg . "\n"
- redir END
- endif
- FUNCTION neobundle#config#get_autoload_bundles()
- Called 1 time
- Total time: 0.000049
- Self time: 0.000049
- count total (s) self (s)
- 1 0.000048 return filter(values(s:neobundles), "!v:val.sourced && v:val.lazy")
- FUNCTION <SNR>155_OnInsertEnter()
- Called 1 time
- Total time: 0.000040
- Self time: 0.000011
- count total (s) self (s)
- 1 0.000034 0.000005 if !s:AllowedToCompleteInCurrentFile()
- return
- endif
- 1 0.000003 let s:old_cursor_position = []
- FUNCTION airline#statusline()
- Called 15 times
- Total time: 0.000471
- Self time: 0.000471
- count total (s) self (s)
- 15 0.000190 if has_key(s:contexts, a:winnr)
- 15 0.000216 return '%{airline#check_mode('.a:winnr.')}'.s:contexts[a:winnr].line
- endif
- " in rare circumstances this happens...see #276
- return ''
- FUNCTION <SNR>154_GetNearbyTag()
- Called 12 times
- Total time: 0.002812
- Self time: 0.002556
- count total (s) self (s)
- 12 0.000043 if s:nearby_disabled
- return {}
- endif
- 12 0.000262 0.000156 let fileinfo = s:known_files.getCurrent(a:forcecurrent)
- 12 0.000052 if empty(fileinfo)
- return {}
- endif
- 12 0.000057 let typeinfo = fileinfo.typeinfo
- 12 0.000030 if a:0 > 0
- let curline = a:1
- else
- 12 0.000068 let curline = line('.')
- 12 0.000019 endif
- 12 0.000042 let tag = {}
- " If a tag appears in a file more than once (for example namespaces in
- " C++) only one of them has a 'tline' entry and can thus be highlighted.
- " The only way to solve this would be to go over the whole tag list again,
- " making everything slower. Since this should be a rare occurence and
- " highlighting isn't /that/ important ignore it for now.
- 58 0.000272 for line in range(curline, 1, -1)
- 58 0.000330 if has_key(fileinfo.fline, line)
- 12 0.000079 let curtag = fileinfo.fline[line]
- 12 0.000298 0.000148 if a:all || typeinfo.getKind(curtag.fields.kind).stl
- 12 0.000049 let tag = curtag
- 12 0.000020 break
- endif
- endif
- 46 0.000128 endfor
- 12 0.000028 return tag
- FUNCTION neobundle#autoload#insert()
- Called 1 time
- Total time: 0.000074
- Self time: 0.000025
- count total (s) self (s)
- 1 0.000063 0.000014 let bundles = filter(neobundle#config#get_autoload_bundles(), "get(v:val.autoload, 'insert', 0)")
- 1 0.000003 if !empty(bundles)
- call neobundle#config#source_bundles(bundles)
- doautocmd InsertEnter
- endif
- FUNCTION 267()
- Called 11 times
- Total time: 0.000492
- Self time: 0.000492
- count total (s) self (s)
- 11 0.000045 if a:full && self.path != ''
- let str = self.path . self.typeinfo.sro . self.name
- else
- 11 0.000049 let str = self.name
- 11 0.000017 endif
- 11 0.000059 if has_key(self.fields, 'signature')
- 11 0.000025 if a:longsig
- let str .= self.fields.signature
- else
- 11 0.000054 let str .= '()'
- 11 0.000014 endif
- 11 0.000015 endif
- 11 0.000027 return str
- FUNCTION airline#highlighter#get_highlight()
- Called 24 times
- Total time: 0.003601
- Self time: 0.001187
- count total (s) self (s)
- 24 0.001184 0.000185 let fg = s:get_syn(a:group, 'fg')
- 24 0.001177 0.000201 let bg = s:get_syn(a:group, 'bg')
- 24 0.000483 let reverse = has('gui_running') ? synIDattr(synIDtrans(hlID(a:group)), 'reverse', 'gui') : synIDattr(synIDtrans(hlID(a:group)), 'reverse', 'cterm')|| synIDattr(synIDtrans(hlID(a:group)), 'reverse', 'term')
- 24 0.000706 0.000267 return reverse ? s:get_array(bg, fg, a:000) : s:get_array(fg, bg, a:000)
- FUNCTION <SNR>138_sync_active_winnr()
- Called 4 times
- Total time: 0.000090
- Self time: 0.000090
- count total (s) self (s)
- 4 0.000055 if exists('#airline') && winnr() != s:active_winnr
- call airline#update_statusline()
- endif
- FUNCTION <SNR>77_repo_dir()
- Called 2 times
- Total time: 0.000035
- Self time: 0.000035
- count total (s) self (s)
- 2 0.000031 return join([self.git_dir]+a:000,'/')
- FUNCTION <SNR>154_IsValidFile()
- Called 1 time
- Total time: 0.000213
- Self time: 0.000193
- count total (s) self (s)
- 1 0.000038 0.000018 call s:debug('Checking if file is valid [' . a:fname . ']')
- 1 0.000007 if a:fname == '' || a:ftype == ''
- call s:debug('Empty filename or type')
- return 0
- endif
- 1 0.000027 if !filereadable(a:fname) && getbufvar(a:fname, 'netrw_tmpfile') == ''
- call s:debug('File not readable')
- return 0
- endif
- 1 0.000048 if getbufvar(a:fname, 'tagbar_ignore') == 1
- call s:debug('File is marked as ignored')
- return 0
- endif
- 1 0.000004 if &previewwindow
- call s:debug('In preview window')
- return 0
- endif
- 1 0.000010 if !has_key(s:known_types, a:ftype)
- if exists('g:tagbar_type_' . a:ftype)
- " Filetype definition must have been specified in an 'ftplugin'
- " file, so load it now
- call s:LoadUserTypeDefs(a:ftype)
- else
- call s:debug('Unsupported filetype: ' . a:ftype)
- return 0
- endif
- endif
- 1 0.000004 return 1
- FUNCTION airline#highlighter#highlight_modified_inactive()
- Called 1 time
- Total time: 0.000085
- Self time: 0.000039
- count total (s) self (s)
- 1 0.000005 if getbufvar(a:bufnr, '&modified')
- 1 0.000012 let colors = exists('g:airline#themes#{g:airline_theme}#palette.inactive_modified.airline_c') ? g:airline#themes#{g:airline_theme}#palette.inactive_modified.airline_c : []
- 1 0.000001 else
- let colors = exists('g:airline#themes#{g:airline_theme}#palette.inactive.airline_c') ? g:airline#themes#{g:airline_theme}#palette.inactive.airline_c : []
- endif
- 1 0.000002 if !empty(colors)
- 1 0.000056 0.000010 call airline#highlighter#exec('airline_c'.(a:bufnr).'_inactive', colors)
- 1 0.000001 endif
- FUNCTION airline#extensions#branch#get_head()
- Called 15 times
- Total time: 0.001563
- Self time: 0.000652
- count total (s) self (s)
- 15 0.001038 0.000127 let head = airline#extensions#branch#head()
- 15 0.000163 let empty_message = get(g:, 'airline#extensions#branch#empty_message', get(g:, 'airline_branch_empty_message', ''))
- 15 0.000119 let symbol = get(g:, 'airline#extensions#branch#symbol', g:airline_symbols.branch)
- 15 0.000200 return empty(head) ? empty_message : printf('%s%s', empty(symbol) ? '' : symbol.(g:airline_symbols.space), head)
- FUNCTION <SNR>154_HighlightTag()
- Called 1 time
- Total time: 0.000317
- Self time: 0.000074
- count total (s) self (s)
- 1 0.000005 let tagline = 0
- 1 0.000007 let force = a:0 > 0 ? a:1 : 0
- 1 0.000003 if a:0 > 1
- let tag = s:GetNearbyTag(1, 0, a:2)
- else
- 1 0.000258 0.000015 let tag = s:GetNearbyTag(1, 0)
- 1 0.000002 endif
- 1 0.000005 if !empty(tag)
- 1 0.000006 let tagline = tag.tline
- 1 0.000001 endif
- " Don't highlight the tag again if it's the same one as last time.
- " This prevents the Tagbar window from jumping back after scrolling with
- " the mouse.
- 1 0.000006 if !force && tagline == s:last_highlight_tline
- 1 0.000003 return
- else
- let s:last_highlight_tline = tagline
- endif
- let tagbarwinnr = bufwinnr('__Tagbar__')
- if tagbarwinnr == -1
- return
- endif
- let prevwinnr = winnr()
- call s:goto_win(tagbarwinnr)
- match none
- " No tag above cursor position so don't do anything
- if tagline == 0
- call s:goto_win(prevwinnr)
- redraw
- return
- endif
- if g:tagbar_autoshowtag == 1 || a:openfolds
- call s:OpenParents(tag)
- endif
- " Check whether the tag is inside a closed fold and highlight the parent
- " instead in that case
- let tagline = tag.getClosedParentTline()
- " Parent tag line number is invalid, better don't do anything
- if tagline <= 0
- call s:goto_win(prevwinnr)
- redraw
- return
- endif
- " Go to the line containing the tag
- execute tagline
- " Make sure the tag is visible in the window
- call winline()
- let foldpat = '[' . s:icon_open . s:icon_closed . ' ]'
- let pattern = '/^\%' . tagline . 'l\s*' . foldpat . '[-+# ]\zs[^( ]\+\ze/'
- call s:debug("Highlight pattern: '" . pattern . "'")
- if hlexists('TagbarHighlight') " Safeguard in case syntax highlighting is disabled
- execute 'match TagbarHighlight ' . pattern
- else
- execute 'match Search ' . pattern
- endif
- if a:0 <= 1 " no line explicitly given, so assume we were in the file window
- call s:goto_win(prevwinnr)
- endif
- redraw
- FUNCTION xolox#session#auto_save_periodic()
- Called 1 time
- Total time: 0.000065
- Self time: 0.000065
- count total (s) self (s)
- " Automatically saves the current editing session every few minutes.
- " Normally called by the [CursorHold] [] and [CursorHoldI] [] automatic
- " command events.
- "
- " [CursorHold]: http://vimdoc.sourceforge.net/htmldoc/autocmd.html#CursorHold
- " [CursorHoldI]: http://vimdoc.sourceforge.net/htmldoc/autocmd.html#CursorHoldI
- 1 0.000006 if g:session_autosave_periodic > 0
- let interval = g:session_autosave_periodic * 60
- let next_save = s:session_last_flushed + interval
- if localtime() > next_save
- let name = xolox#session#find_current_session()
- if !empty(name)
- if xolox#session#is_tab_scoped()
- call xolox#session#save_tab_cmd(name, '', 'SaveTabSession')
- else
- call xolox#session#save_cmd(name, '', 'SaveSession')
- endif
- endif
- endif
- endif
- FUNCTION 290()
- Called 2 times
- Total time: 0.000025
- Self time: 0.000025
- count total (s) self (s)
- 2 0.000022 return get(self._files, a:fname, {})
- FUNCTION 292()
- Called 1 time
- Total time: 0.000012
- Self time: 0.000012
- count total (s) self (s)
- 1 0.000011 return has_key(self._files, a:fname)
- FUNCTION airline#util#prepend()
- Called 15 times
- Total time: 0.000291
- Self time: 0.000291
- count total (s) self (s)
- 15 0.000079 if a:minwidth > 0 && winwidth(0) < a:minwidth
- return ''
- endif
- 15 0.000139 return empty(a:text) ? '' : a:text.s:spc.g:airline_right_alt_sep.s:spc
- FUNCTIONS SORTED ON TOTAL TIME
- count total (s) self (s) function
- 7 0.145669 0.004577 <SNR>155_OnFileReadyToParse()
- 11 0.142187 <SNR>155_GetCompletions()
- 1 0.141464 0.001868 <SNR>155_OnInsertLeave()
- 7 0.140970 0.140898 <SNR>155_UpdateDiagnosticNotifications()
- 18 0.092982 0.004992 youcompleteme#Complete()
- 6 0.067232 0.001917 youcompleteme#OmniComplete()
- 15 0.013569 0.002129 airline#check_mode()
- 1 0.011355 0.003502 airline#highlighter#highlight()
- 10 0.009807 0.001470 <SNR>155_OnCursorMovedInsertMode()
- 15 0.006810 0.003284 airline#extensions#whitespace#check()
- 15 0.005526 0.000599 airline#extensions#tagbar#currenttag()
- 12 0.005218 0.000682 <SNR>147_exec_separator()
- 11 0.004927 0.001220 tagbar#currenttag()
- 2 0.004576 0.000191 <SNR>155_OnCursorHold()
- 9 0.004329 <SNR>155_IdentifierFinishedOperations()
- 14 0.004098 UltiSnips#CursorMoved()
- 24 0.003846 0.000245 airline#themes#get_highlight()
- 24 0.003601 0.001187 airline#highlighter#get_highlight()
- 1 0.003526 <SNR>145_check_mixed_indent()
- 76 0.003371 airline#highlighter#exec()
- FUNCTIONS SORTED ON SELF TIME
- count total (s) self (s) function
- 11 0.142187 <SNR>155_GetCompletions()
- 7 0.140970 0.140898 <SNR>155_UpdateDiagnosticNotifications()
- 18 0.092982 0.004992 youcompleteme#Complete()
- 7 0.145669 0.004577 <SNR>155_OnFileReadyToParse()
- 9 0.004329 <SNR>155_IdentifierFinishedOperations()
- 14 0.004098 UltiSnips#CursorMoved()
- 1 0.003526 <SNR>145_check_mixed_indent()
- 1 0.011355 0.003502 airline#highlighter#highlight()
- 76 0.003371 airline#highlighter#exec()
- 15 0.006810 0.003284 airline#extensions#whitespace#check()
- 25 0.002572 <SNR>88_Highlight_Matching_Pair()
- 12 0.002812 0.002556 <SNR>154_GetNearbyTag()
- 15 0.013569 0.002129 airline#check_mode()
- 48 0.001975 <SNR>147_get_syn()
- 6 0.067232 0.001917 youcompleteme#OmniComplete()
- 1 0.141464 0.001868 <SNR>155_OnInsertLeave()
- 15 0.002786 0.001721 airline#extensions#hunks#get_hunks()
- 10 0.009807 0.001470 <SNR>155_OnCursorMovedInsertMode()
- 9 0.001320 <SNR>155_InsideCommentOrString()
- 11 0.004927 0.001220 tagbar#currenttag()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement