From b25d67d4c0398dbceca0165c3b43df0625e1e06a Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Sun, 13 Jan 2008 12:41:07 +0000 Subject: [PATCH] Only initialise readline if we are connected to a terminal Patch from Bertram Felgenhauer --- compiler/ghci/InteractiveUI.hs | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/compiler/ghci/InteractiveUI.hs b/compiler/ghci/InteractiveUI.hs index e4439d6..e712e9d 100644 --- a/compiler/ghci/InteractiveUI.hs +++ b/compiler/ghci/InteractiveUI.hs @@ -299,13 +299,15 @@ interactiveUI session srcs maybe_expr = do hSetBuffering stdin NoBuffering #ifdef USE_READLINE - Readline.initialize - Readline.setAttemptedCompletionFunction (Just completeWord) - --Readline.parseAndBind "set show-all-if-ambiguous 1" - - Readline.setBasicWordBreakCharacters word_break_chars - Readline.setCompleterWordBreakCharacters word_break_chars - Readline.setCompletionAppendCharacter Nothing + is_tty <- hIsTerminalDevice stdin + when is_tty $ do + Readline.initialize + Readline.setAttemptedCompletionFunction (Just completeWord) + --Readline.parseAndBind "set show-all-if-ambiguous 1" + + Readline.setBasicWordBreakCharacters word_break_chars + Readline.setCompleterWordBreakCharacters word_break_chars + Readline.setCompletionAppendCharacter Nothing #endif -- initial context is just the Prelude -- 1.7.10.4