Черепаха: запрос на ввод, без завершающего перевода строки
Я пишу консольное приложение, которое должно предложить пользователю несколько вещей. Я использую библиотеку черепах.
Моя функция выглядит так:
askInput :: IO (Maybe Text)
askInput = do
echo "Input something: "
s <- readline
return s
Но echo
реализуется с использованием putStrLn
и в результате напечатает свой аргумент с завершающим переводом строки.
Есть ли функция ввода в библиотеке черепах, похожая на Python raw_input
, что сочетает в себе подсказки с последующим чтением пользовательского ввода?
2 ответа
Решение
Вы можете импортировать из text
упаковать и использовать много функций, которые не экспортируются из turtle
, В этом случае:
{-# LANGUAGE OverloadedStrings #-}
import qualified Data.Text.IO as Text
main = Text.putStr "Input something: " -- doesn't print newline
Я также хочу отметить, что turtle
недавно добавил printf
функция, которая выводит отформатированную строку без завершающей строки, поэтому другое решение:
{-# LANGUAGE OverloadedStrings #-}
import Turtle
main = printf "Input something: "