Index: /Users/grant/src/sup/lib/sup/modes/label-search-results-mode.rb =================================================================== --- /Users/grant/src/sup/lib/sup/modes/label-search-results-mode.rb (revision 750) +++ /Users/grant/src/sup/lib/sup/modes/label-search-results-mode.rb (working copy) @@ -8,7 +8,18 @@ opts[:load_spam] = true if labels.include? :spam 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