commit 32cfb125d5734ada6b9216a6e7738e26d20f2998
parent e1750c0ec032b48d79947c7358a568d5aa52a8b5
Author: wmorgan <wmorgan@5c8cc53c-5e98-4d25-b20a-d8db53a31250>
Date: Mon, 10 Dec 2007 06:46:57 +0000
patch to add refine search command for label-search-results-mode from Grant Hollingworth
git-svn-id: svn://rubyforge.org/var/svn/sup/trunk@765 5c8cc53c-5e98-4d25-b20a-d8db53a31250
Diffstat:
1 file changed, 11 insertions(+), 0 deletions(-)
diff --git a/lib/sup/modes/label-search-results-mode.rb b/lib/sup/modes/label-search-results-mode.rb
@@ -9,6 +9,17 @@ class LabelSearchResultsMode < ThreadIndexMode
super [], opts
end
+ register_keymap do |k|
+ k.add :refine_search, "Refine search", '.'
+ end
+
+ def refine_search
+ label_query = @labels.size > 1 ? "(#{@labels.join('||')})" : @labels.first
+ query = BufferManager.ask :search, "query: ", "+label:#{label_query} "
+ return unless query && query !~ /^\s*$/
+ SearchResultsMode.spawn_from_query query
+ end
+
def is_relevant? m; @labels.all? { |l| m.has_label? l } end
def self.spawn_nicely label