Есть ли способ использовать флаги при поиске с помощью Google от ghci?
Как я могу использовать флаги командной строки hoogle при использовании hoogle внутри ghci?
Это, очевидно, не работает:
ghci> :hoogle --count=5 Char -> Int
Could not read as type Int, "5 Char -> Int"
1 ответ
Решение
Вам нужно изменить ваш ghci.conf, чтобы сделать это. Предполагая, что вы выполнили шаги, описанные на haskell.org, ваш ghci.conf содержит строку типа
:def hoogle \x -> return $ ":!hoogle \"" ++ x ++ "\""
Тем не менее, эта строка говорит о том, что :hoogle x
будет переведен на hoogle "x"
что, очевидно, не будет работать, если вы хотите применить дополнительные флаги, такие как --count=5
,
Вам нужно либо удалить кавычки вокруг аргумента, например
:def hoogleP \x -> return $ ":!hoogle " ++ x
и использовать :hoogleP --count=5 "Char -> Int"
или разбить аргумент вручную на счетчик и поисковый запрос:
:def hoogleC \x -> return $ ":!hoogle --count="++(head.words $x)++" \"" ++ (unwords.tail.words $x) ++ "\""
Последняя версия может быть использована как :hoogleC 5 Char -> Int
,