Skip to content
Permalink
Browse files

queries may contain spaces; first word is the section

  • Loading branch information
chubin committed May 19, 2019
1 parent 63a716f commit 03bae9e5da8adf2b5b5189638a172e5a13a3432f
Showing with 30 additions and 7 deletions.
  1. +1 −1 etc/config.yaml
  2. +2 −0 lib/adapter/question.py
  3. +12 −0 lib/cheat_wrapper.py
  4. +15 −6 tests/results/9
@@ -1,4 +1,4 @@
server:
address: "0.0.0.0"
cache:
type: none
type: redis
@@ -47,6 +47,8 @@ def _get_page(self, topic, request_options=None):
self._output_format = "ansi"
return UpstreamAdapter._get_page(self, topic, request_options=request_options)

topic = topic.replace('+', ' ')

# if there is a language name in the section name,
# cut it off (de:python => python)
if '/' in topic:
@@ -26,6 +26,17 @@ def cheat_wrapper(query, request_options=None, output_format='ansi'):
Additional request options specified in `request_options`.
"""

def _add_section_name(query):
# temporary solution before we don't find a fixed one
if ' ' not in query and '+' not in query:
return query
if '/' in query:
return query
if ' ' in query:
# for standalone queries only that may contain ' '
return "%s/%s" % tuple(query.split(' ', 1))
return "%s/%s" % tuple(query.split('+', 1))

def _rewrite_aliases(word):
if word == ':bash.completion':
return ':bash_completion'
@@ -74,6 +85,7 @@ def _parse_query(query):
return topic, keyword, search_options

query = _sanitize_query(query)
query = _add_section_name(query)
query = _rewrite_aliases(query)
query = _rewrite_section_name(query)

@@ -1,7 +1,16 @@
Unknown topic.
Do you mean one of these topics maybe?
# How do I copy a file in Python?
# 
# shutil (http://docs.python.org/3/library/shutil.html) has many methods
# you can use. One of which is:

* python/:learn 69
* python/Classes 67
* python/Modules 67

from shutil import copyfile

copyfile(src, dst)

# Copy the contents of the file named src to a file named dst. The
# destination location must be writable; otherwise, an IOError exception
# will be raised. If dst already exists, it will be replaced. Special
# files such as character or block devices and pipes cannot be copied
# with this function. src and dst are path names given as strings.
# 
# [Swati] [so/q/123198] [cc by-sa 3.0]

0 comments on commit 03bae9e

Please sign in to comment.
You can’t perform that action at this time.