Skip to content
This repository was archived by the owner on Jan 27, 2023. It is now read-only.

Commit 25dd3a2

Browse files
refactoring
1 parent 37efece commit 25dd3a2

1 file changed

Lines changed: 21 additions & 15 deletions

File tree

search_in_project.py

Lines changed: 21 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -42,21 +42,7 @@ def __init__(self, window):
4242

4343
def run(self, type="search"):
4444
if type == "search":
45-
self.settings = sublime.load_settings('SearchInProject.sublime-settings')
46-
self.engine_name = self.settings.get("search_in_project_engine")
47-
pushd = os.getcwd()
48-
os.chdir(basedir)
49-
__import__("searchengines.%s" % self.engine_name)
50-
self.engine = searchengines.__dict__[self.engine_name].engine_class(self.settings)
51-
os.chdir(pushd)
52-
view = self.window.active_view()
53-
selection_text = view.substr(view.sel()[0])
54-
self.saved_view = view
55-
panel_view = self.window.show_input_panel(
56-
"Search in project:",
57-
not "\n" in selection_text and selection_text or self.last_search_string,
58-
self.perform_search, None, None)
59-
panel_view.run_command("select_all")
45+
self.search()
6046
elif type == "clear":
6147
self.clear_markup()
6248
elif type == "next":
@@ -66,6 +52,26 @@ def run(self, type="search"):
6652
else:
6753
raise Exception("unrecognized type \"%s\""%type)
6854

55+
def load_search_engine(self):
56+
self.settings = sublime.load_settings('SearchInProject.sublime-settings')
57+
self.engine_name = self.settings.get("search_in_project_engine")
58+
pushd = os.getcwd()
59+
os.chdir(basedir)
60+
__import__("searchengines.%s" % self.engine_name)
61+
self.engine = searchengines.__dict__[self.engine_name].engine_class(self.settings)
62+
os.chdir(pushd)
63+
64+
def search(self):
65+
self.load_search_engine()
66+
view = self.window.active_view()
67+
selection_text = view.substr(view.sel()[0])
68+
self.saved_view = view
69+
panel_view = self.window.show_input_panel(
70+
"Search in project:",
71+
not "\n" in selection_text and selection_text or self.last_search_string,
72+
self.perform_search, None, None)
73+
panel_view.run_command("select_all")
74+
6975
def perform_search(self, text):
7076
if not text:
7177
return

0 commit comments

Comments
 (0)