def _JumpToLocation(self, definition_list): if len(definition_list) == 1: definition = definition_list[0] if definition.in_builtin_module(): if definition.is_keyword: vimsupport.PostVimMessage( "Cannot get the definition of Python keywords.") else: vimsupport.PostVimMessage( "Builtin modules cannot be displayed.") else: vimsupport.JumpToLocation(definition.module_path, definition.line_nr, definition.column + 1) else: # multiple definitions defs = [] for definition in definition_list: if definition.in_builtin_module(): defs.append( {'text': 'Builtin ' + \ definition.description.encode( 'utf-8' ) } ) else: defs.append({ 'filename': definition.module_path.encode('utf-8'), 'lnum': definition.line_nr, 'col': definition.column + 1, 'text': definition.description.encode('utf-8') }) vim.eval('setqflist( %s )' % repr(defs)) vim.eval('youcompleteme#OpenGoToList()')
def _GoToDeclaration(self): location = self._LocationForGoTo('GetDeclarationLocation') if not location or not location.IsValid(): vimsupport.PostVimMessage('Can\'t jump to declaration.') return vimsupport.JumpToLocation(location.filename_, location.line_number_, location.column_number_)
def _HandleGotoResponse(self): if isinstance(self._response, list): vimsupport.SetQuickFixList( [_BuildQfListItem(x) for x in self._response]) vimsupport.OpenQuickFixList(focus=True, autoclose=True) else: vimsupport.JumpToLocation(self._response['filepath'], self._response['line_num'], self._response['column_num'])
def _HandleGotoResponse(self): if isinstance(self._response, list): vimsupport.SetQuickFixList( [_BuildQfListItem(x) for x in self._response]) vim.eval('youcompleteme#OpenGoToList()') else: vimsupport.JumpToLocation(self._response['filepath'], self._response['line_num'], self._response['column_num'])
def _HandleGotoResponse(self): if isinstance(self._response, list): defs = [_BuildQfListItem(x) for x in self._response] vim.eval('setqflist( %s )' % repr(defs)) vim.eval('youcompleteme#OpenGoToList()') else: vimsupport.JumpToLocation(self._response['filepath'], self._response['line_num'], self._response['column_num'])
def _GoToDefinition(self): """ Jump to definition of identifier under cursor """ definition = self._GetResponse('/gotodefinition', self._DefaultParameters()) if definition['FileName'] != None: vimsupport.JumpToLocation(definition['FileName'], definition['Line'], definition['Column']) else: vimsupport.PostVimMessage('Can\'t jump to definition')
def RunPostCommandActionsIfNeeded(self): if not self._is_goto_command or not self.Done() or not self._response: return if isinstance(self._response, list): defs = [_BuildQfListItem(x) for x in self._response] vim.eval('setqflist( %s )' % repr(defs)) vim.eval('youcompleteme#OpenGoToList()') else: vimsupport.JumpToLocation(self._response['filepath'], self._response['line_num'] + 1, self._response['column_num'] + 1)