Skip to content

Commit 93091a6

Browse files
committed
Fix CLI autocompleter (now works correctly with capital letters).
1 parent fee7abe commit 93091a6

File tree

2 files changed

+9
-10
lines changed

2 files changed

+9
-10
lines changed

src/Docs/Search/Interactive.purs

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import Docs.Search.Declarations (Declarations, mkDeclarations)
55
import Docs.Search.DocsJson (DataDeclType(..))
66
import Docs.Search.Engine (mkEngineState, packageInfoToString, Result(..))
77
import Docs.Search.Engine as Engine
8-
import Docs.Search.Extra (listToString, stringToList, (>#>))
8+
import Docs.Search.Extra (stringToList, (>#>))
99
import Docs.Search.IndexBuilder as IndexBuilder
1010
import Docs.Search.ModuleIndex (ModuleResult, mkPackedModuleIndex, unpackModuleIndex)
1111
import Docs.Search.NodeEngine (nodeEngine)
@@ -22,12 +22,12 @@ import Prelude
2222

2323
import Data.Array as Array
2424
import Data.Identity (Identity(..))
25+
import Data.List as List
2526
import Data.Maybe (fromMaybe)
2627
import Data.Newtype (un, unwrap, wrap)
2728
import Data.Search.Trie as Trie
2829
import Data.String (length) as String
29-
import Data.String.Common (split, trim) as String
30-
import Data.Tuple (fst)
30+
import Data.String.Common (split, toLower, trim) as String
3131
import Effect (Effect)
3232
import Effect.Aff (launchAff_)
3333
import Effect.Class (liftEffect)
@@ -105,14 +105,13 @@ mkCompleter
105105
-> Effect { completions :: Array String
106106
, matched :: String }
107107
mkCompleter index input = do
108-
let path = stringToList input
109-
let paths =
108+
let path = stringToList $ String.toLower input
109+
paths =
110110
Array.fromFoldable $
111-
listToString <$>
112-
(fst <$> Trie.query path (unwrap index))
111+
(\result -> unwrap (unwrap result).name) <$>
112+
List.concat (Trie.queryValues path (unwrap index))
113113

114-
pure { completions: paths
115-
, matched: input }
114+
pure { completions: paths, matched: input }
116115

117116

118117
showResult :: Result -> String

test/Main.purs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ module Test.Main where
33
import Prelude
44

55
import Docs.Search.TypeDecoder (Constraint(..), FunDep(..), FunDeps(..), Kind(..), QualifiedName(..), Type(..))
6-
import Docs.Search.Types
6+
import Docs.Search.Types (Identifier(..))
77
import Test.TypeQuery as TypeQuery
88
import Test.IndexBuilder as IndexBuilder
99
import Test.Declarations as Declarations

0 commit comments

Comments
 (0)