def run(self): url = mw.get_page_url() if url: webbrowser.open(url) else: sublime.status_message('Can\'t open page with empty title') return
def on_done(self, index): if index == 0: # escape from quick panel returns -1 self.view.show(self.regions[self.selected]) self.view.sel().clear() self.view.sel().add(self.regions[self.selected]) elif index == 1: sublime.set_timeout(lambda: self.view.window().run_command("mediawiker_page", {"action": "mediawiker_show_page", "title": self.items[self.selected]}), 1) elif index == 2: url = mw.get_page_url(self.items[self.selected]) webbrowser.open(url)
def show_results(self, search_value=''): # TODO: paging? self.pages_names = [] self.search_limit = mw.get_setting('mediawiker_search_results_count') if search_value: self.search_result = self.do_search(search_value) if self.search_result: for i in range(self.search_limit): try: page_data = self.search_result.next() self.pages_names.append([page_data['title'], page_data['snippet']]) except: pass te = '' search_number = 1 for pa in self.pages_names: te += '### %s. %s\n* [%s](%s)\n\n%s\n' % (search_number, pa[0], pa[0], mw.get_page_url(pa[0]), self.antispan(pa[1])) search_number += 1 if te: self.view = sublime.active_window().new_file() self.view.set_syntax_file('Packages/Markdown/Markdown.tmLanguage') self.view.set_name('Wiki search results: %s' % search_value) self.view.run_command('mediawiker_insert_text', {'position': 0, 'text': te}) elif search_value: sublime.message_dialog('No results for: %s' % search_value)