diff options
author | joe <joe@jerkface.net> | 2014-03-17 18:15:13 -0400 |
---|---|---|
committer | joe <joe@jerkface.net> | 2014-03-17 18:15:13 -0400 |
commit | 16d246935f4598fbe8e3bee62e36841d45fb073a (patch) | |
tree | 0663b39a113bc05af2075391e06aeae04429f4e6 | |
parent | 6dc02043fc6f475d5bc828eb0fe500a81909ad35 (diff) |
Added \r to tty writes.
-rw-r--r-- | Presence/ConsoleWriter.hs | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/Presence/ConsoleWriter.hs b/Presence/ConsoleWriter.hs index e295a72b..2a77394f 100644 --- a/Presence/ConsoleWriter.hs +++ b/Presence/ConsoleWriter.hs | |||
@@ -237,6 +237,12 @@ deliverGUIMessage cw tty utmp msg = do | |||
237 | exitImmediately ExitSuccess | 237 | exitImmediately ExitSuccess |
238 | return True | 238 | return True |
239 | 239 | ||
240 | crlf :: Text -> Text | ||
241 | crlf t = Text.unlines $ map cr (Text.lines t) | ||
242 | where | ||
243 | cr t | Text.last t == '\r' = t | ||
244 | | otherwise = t <> "\r" | ||
245 | |||
240 | deliverTerminalMessage cw tty utmp msg = do | 246 | deliverTerminalMessage cw tty utmp msg = do |
241 | mode <- fmap fileMode (getFileStatus $ Text.unpack tty) | 247 | mode <- fmap fileMode (getFileStatus $ Text.unpack tty) |
242 | let mesgy = mode .&. 0o020 /= 0 -- verify mode g+w | 248 | let mesgy = mode .&. 0o020 /= 0 -- verify mode g+w |
@@ -245,8 +251,8 @@ deliverTerminalMessage cw tty utmp msg = do | |||
245 | t <- messageText msg | 251 | t <- messageText msg |
246 | return $ Text.unpack | 252 | return $ Text.unpack |
247 | $ case stanzaFrom msg of | 253 | $ case stanzaFrom msg of |
248 | Just from -> from <> " says...\n" <> t <> "\n" | 254 | Just from -> from <> " says...\r\n" <> crlf t <> "\r\n" |
249 | Nothing -> t <> "\n" | 255 | Nothing -> crlf t <> "\r\n" |
250 | writeFile (Text.unpack tty) text | 256 | writeFile (Text.unpack tty) text |
251 | return True -- return True if a message was delivered | 257 | return True -- return True if a message was delivered |
252 | 258 | ||