diff --git a/funnyprint.cabal b/funnyprint.cabal
--- a/funnyprint.cabal
+++ b/funnyprint.cabal
@@ -3,7 +3,7 @@
 -- see: https://github.com/sol/hpack
 
 name:           funnyprint
-version:        0.0.3
+version:        0.0.4
 synopsis:       funnyPrint function to colorize GHCi output.
 description:    see FunnyPrint.funnyPrint.
 category:       Text
@@ -34,7 +34,7 @@
       base >= 2 && < 6
     , hscolour
     , ipprint == 0.6
-    , text
+    , posix-escape
   exposed-modules:
       FunnyPrint
   default-language: Haskell2010
@@ -49,7 +49,7 @@
       base >= 2 && < 6
     , hscolour
     , ipprint == 0.6
-    , text
+    , posix-escape
     , funnyprint
     , tasty
     , tasty-hspec
@@ -65,7 +65,7 @@
       base >= 2 && < 6
     , hscolour
     , ipprint == 0.6
-    , text
+    , posix-escape
     , funnyprint
     , criterion
   default-language: Haskell2010
diff --git a/library/FunnyPrint.hs b/library/FunnyPrint.hs
--- a/library/FunnyPrint.hs
+++ b/library/FunnyPrint.hs
@@ -1,15 +1,13 @@
 -- | funnyPrint function to colorize GHCi output. See @FunnyPrint.funnyPrint@.
 module FunnyPrint ( Colored
-                  , escape
+                  , escapeQuotes
                   , funnyPrint
                   , funnyPrintC
                   , prompt
                   , prompt2
                   ) where
 
-import Prelude hiding ( putStrLn )
-import Data.Text.IO ( putStrLn )
-import Data.Text ( pack )
+import System.Posix.Escape.Unicode ( escape )
 import IPPrint ( pshow )
 import Language.Haskell.HsColour.Output ( TerminalType(..) )
 import Language.Haskell.HsColour.Colourise ( Colour(..)
@@ -24,9 +22,9 @@
                                       , highlightOff
                                       )
 -- | Escape quoutes in string.
-escape :: String -- ^ handled string
-       -> String
-escape arg = "'" ++ ((\c -> if c == '\'' then "'\"'\"'" else [c]) =<< arg) ++"'"
+escapeQuotes :: String -- ^ handled string
+             -> String
+escapeQuotes arg = "'" ++ ((\c -> if c == '\'' then "'\"'\"'" else [c]) =<< arg) ++"'"
 
 term    :: TerminalType
 term    = XTerm256Compatible
@@ -74,7 +72,7 @@
 funnyPrint'   :: (Show a) => Colored -- ^ enable colors in prompt
               -> a                   -- ^ printed input
               -> IO ()
-funnyPrint' c = putStrLn . pack . if c then colorize . pshow else pshow
+funnyPrint' c = putStrLn .escape . if c then colorize . pshow else pshow
   where
     prefs = TTYg term
     colorize = hscolour prefs colours False False "" False
diff --git a/package.yaml b/package.yaml
--- a/package.yaml
+++ b/package.yaml
@@ -7,7 +7,7 @@
     - base >= 2 && < 6
     - hscolour
     - ipprint == 0.6
-    - text
+    - posix-escape
     - funnyprint
     - criterion
     ghc-options:
@@ -31,7 +31,7 @@
   - base >= 2 && < 6
   - hscolour
   - ipprint == 0.6
-  - text
+  - posix-escape
   source-dirs: library
 license: MIT
 license-file: LICENSE.md
@@ -44,7 +44,7 @@
     - base >= 2 && < 6
     - hscolour
     - ipprint == 0.6
-    - text
+    - posix-escape
     - funnyprint
     - tasty
     - tasty-hspec
@@ -54,4 +54,4 @@
     - -with-rtsopts=-N
     main: Main.hs
     source-dirs: test-suite
-version: '0.0.3'
+version: '0.0.4'
diff --git a/stack.yaml b/stack.yaml
--- a/stack.yaml
+++ b/stack.yaml
@@ -42,6 +42,7 @@
 extra-deps:
   - ipprint-0.6
   - sr-extra-1.46.3.2
+  - posix-escape-0.1
 
 # Override default flag values for local packages and extra-deps
 flags: {}
