def keywords(query, index, return_hits = false)
      response = Response.new request(
        :keywords,
        keywords_message(query, index, return_hits)
      )

      (0...response.next_int).collect do
        hash = {}
        hash[:tokenised]  = response.next
        hash[:normalised] = response.next

        if return_hits
          hash[:docs] = response.next_int
          hash[:hits] = response.next_int
        end

        hash
      end
    end
def keywords(query, index, return_hits = false)
      response = Response.new request(
        :keywords,
        keywords_message(query, index, return_hits)
      )

      (0...response.next_int).collect do
        hash = {}
        hash[:tokenised]  = response.next
        hash[:normalised] = response.next

        if return_hits
          hash[:docs] = response.next_int
          hash[:hits] = response.next_int
        end

        hash
      end
    end
Generates a keyword list for a given query. Each keyword is represented
 by a hash, with keys :tokenised and :normalised. If return_hits is set to
 true it will also report on the number of hits and documents for each
 keyword (see :hits and :docs keys respectively).