def on_query_completions(self, view, prefix, locations): if is_robot_format(view): view_file = populate_testcase_file(view) keywords = Scanner(view).scan_file(view_file) lower_prefix = prefix.lower() user_keywords = [(kw[0].keyword.name, kw[0].keyword.name) for kw in keywords.itervalues() if kw[0].keyword.name.lower().startswith(lower_prefix)] return user_keywords
def run(self): scanner = Scanner(self.view) keywords = scanner.scan_file(self.view_file) for folder in self.folders: for root, dirs, files in os.walk(folder): for f in files: if f.endswith('.txt') and f != '__init__.txt': path = os.path.join(root, f) scanner.scan_without_resources(path, keywords) results = [] for bdd_prefix in ['given ', 'and ', 'when ', 'then ']: if self.keyword.lower().startswith(bdd_prefix): substr = self.keyword[len(bdd_prefix):] results.extend(self.search_user_keywords(keywords, substr)) results.extend(stdlib_keywords.search_keywords(substr)) results.extend(self.search_user_keywords(keywords, self.keyword)) results.extend(stdlib_keywords.search_keywords(self.keyword)) sublime.set_timeout(lambda: select_keyword_and_go(self.view, results), 0)
def run(self): scanner = Scanner(self.view) keywords = scanner.scan_file(self.view_file) for folder in self.folders: for root, dirs, files in os.walk(folder): for f in files: if f.endswith('.txt') and f != '__init__.txt': path = os.path.join(root, f) scanner.scan_without_resources(path, keywords) results = [] for bdd_prefix in ['given ', 'and ', 'when ', 'then ', 'but ']: if self.keyword.lower().startswith(bdd_prefix): substr = self.keyword[len(bdd_prefix):] results.extend(self.search_user_keywords(keywords, substr)) results.extend(stdlib_keywords.search_keywords(substr)) results.extend(self.search_user_keywords(keywords, self.keyword)) results.extend(stdlib_keywords.search_keywords(self.keyword)) sublime.set_timeout(lambda: select_keyword_and_go(self.view, results), 0)
def on_query_completions(self, view, prefix, locations): if not is_robot_format(view): return sel = view.sel()[0] line = re.compile('\r|\n').split(view.substr(view.line(sel)))[0].replace('\t', ' ') lower_prefix = view.substr(view.line(sel))[:view.rowcol(sel.begin())[1]].split(' ')[-1] view_file = populate_testcase_file(view) folders = view.window().folders() scanner = Scanner(view) keywords = scanner.scan_file(view_file) for folder in folders: for root, dirs, files in os.walk(folder): for f in files: if f.endswith('.txt') and f != '__init__.txt': path = os.path.join(root, f) scanner.scan_without_resources(path, keywords) keywords.update(stdlib_keywords.keywords) user_keywords = user_kw(keywords, lower_prefix, prefix) return user_keywords