From 3db5f47bade7e2b8eb36c0c77398e6c1e10a6e55 Mon Sep 17 00:00:00 2001 From: John Benediktsson Date: Fri, 26 Aug 2022 14:25:26 -0700 Subject: [PATCH] webapps.help: tokenize and collapse search terms --- extra/webapps/help/help.factor | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/extra/webapps/help/help.factor b/extra/webapps/help/help.factor index 79c789ed02..faa1b11a5a 100644 --- a/extra/webapps/help/help.factor +++ b/extra/webapps/help/help.factor @@ -4,7 +4,8 @@ USING: accessors assocs furnace.actions furnace.boilerplate furnace.redirection help.html help.topics html.components html.forms http.server http.server.dispatchers http.server.static io.directories io.files.temp io.servers -kernel namespaces sequences splitting unicode urls ; +kernel namespaces sequences simple-tokenizer splitting unicode +urls ; IN: webapps.help TUPLE: help-webapp < dispatcher ; @@ -21,6 +22,9 @@ TUPLE: help-webapp < dispatcher ; : ?links ( has-links? apropos -- has-links? seq/f ) links [ f ] [ nip t swap ] if-empty ; +: ?tokenize ( str -- str' ) + [ tokenize ] [ drop 1array ] recover ; + :: ( help-dir -- action ) { help-webapp "search" } >>template @@ -28,6 +32,7 @@ TUPLE: help-webapp < dispatcher ; f "search" param [ unicode:blank? ] trim dup "search" set-value [ help-dir [ + ?tokenize concat [ article-apropos ?links "articles" set-value ] [ word-apropos ?links "words" set-value ] [ vocab-apropos ?links "vocabs" set-value ] tri -- 2.34.1