diff --git a/library/Neovim/User/Choice.hs b/library/Neovim/User/Choice.hs
--- a/library/Neovim/User/Choice.hs
+++ b/library/Neovim/User/Choice.hs
@@ -1,4 +1,5 @@
-{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE LambdaCase        #-}
+{-# LANGUAGE OverloadedStrings #-}
 {- |
 Module      :  Neovim.User.Choice
 Description :  Ask the user for an answer
@@ -15,26 +16,26 @@
 
 import           Neovim
 
-import           Data.Char                    (toLower)
-import           Data.List                    (isPrefixOf)
-import           Text.PrettyPrint.ANSI.Leijen as P hiding ((<$>))
+import           Data.Char (toLower)
+import           Data.List (isPrefixOf)
 
 
 -- | Call @inputlist()@ on the neovim side and ask the user for a choice. This
 -- function returns 'Nothing' if the user input was invalid or 'Just' the chosen
 -- element. The elements are rendered via 'Pretty'.
-oneOf :: Pretty a => [a] -> Neovim r st (Maybe a)
+oneOf :: [String] -> Neovim env (Maybe String)
 oneOf cs = fmap (\i -> cs !! (i-1)) <$> askForIndex (zipWith mkChoice cs [1..])
   where
-    mkChoice c i = docToObject $ int i P.<> text "." <+> pretty c
+    mkChoice :: String -> Int -> Object
+    mkChoice c i = toObject $ show i <> ". " <> c
 
 
 -- | Ask user for a choice and 'Maybe' return the index of that choice
 -- (1-based).
-askForIndex :: [Object] -> Neovim r st (Maybe Int)
+askForIndex :: [Object] -> Neovim env (Maybe Int)
 askForIndex cs = vim_call_function "inputlist" [ObjectArray cs] >>= \case
     Left e ->
-        (err . text . show) e
+        err $ exceptionToDoc e
 
     Right a -> case fromObject a of
         Right i | i >= 1 && i <= length cs ->
@@ -48,7 +49,7 @@
 
 
 -- | Same as 'oneOf' only that @a@ is constrained by 'Show' insted of 'Pretty'.
-oneOfS :: Show a => [a] -> Neovim r st (Maybe a)
+oneOfS :: Show a => [a] -> Neovim env (Maybe a)
 oneOfS cs = fmap (\i -> cs !! (i-1)) <$> askForIndex (zipWith mkChoice cs [1..])
   where
     mkChoice c i = toObject $ show (i :: Int) ++ ". " ++ show c
@@ -58,10 +59,11 @@
 -- prefix of @yes@ or @no@ or alternatively aborted the dialog. Defaults to
 -- @yes@ for the empty input.
 yesOrNo :: String -- ^ Question to the user
-        -> Neovim r st Bool
+        -> Neovim env Bool
 yesOrNo message = do
     spec <- vim_call_function
-                "inputdialog" $ (message ++ " (Y/n) ") +: "" +: "no" +: []
+                "inputdialog" $ (message ++ " (Y/n) ")
+                    +: ("" :: String) +: ("no" :: String) +: []
     case fmap fromObject spec of
         Right (Right s) | map toLower s `isPrefixOf` "yes" ->
             return True
diff --git a/library/Neovim/User/Input.hs b/library/Neovim/User/Input.hs
--- a/library/Neovim/User/Input.hs
+++ b/library/Neovim/User/Input.hs
@@ -23,7 +23,7 @@
 input :: String -- ^ Message to display
       -> Maybe String -- ^ Input fiiled in
       -> Maybe String -- ^ Completion mode
-      -> Neovim r st (Either NeovimException Object)
+      -> Neovim env (Either NeovimException Object)
 input message mPrefilled mCompletion = vim_call_function "input" $
     (message <> " ")
     +: maybe "" id mPrefilled
@@ -35,7 +35,7 @@
 -- If the directory does not exist, ask the usere whether it should be created.
 askForDirectory :: String -- ^ Message to put in front
                 -> Maybe FilePath -- ^ Prefilled text
-                -> Neovim r st FilePath
+                -> Neovim env FilePath
 askForDirectory message mPrefilled = do
     fp <- errOnInvalidResult $ input message mPrefilled (Just "dir")
 
@@ -51,6 +51,6 @@
 
 askForString :: String -- ^ message to put in front
              -> Maybe String -- ^ Prefilled text
-             -> Neovim r st String
+             -> Neovim env String
 askForString message mPrefilled =
     errOnInvalidResult $ input message mPrefilled Nothing
diff --git a/nvim-hs-contrib.cabal b/nvim-hs-contrib.cabal
--- a/nvim-hs-contrib.cabal
+++ b/nvim-hs-contrib.cabal
@@ -1,9 +1,9 @@
 name:                nvim-hs-contrib
-version:             0.2.0
+version:             1.0.0.0
 synopsis:            Haskell plugin backend for neovim
 description:
   Library for nvim-hs.
-homepage:            https://github.com/neovimhaskell/nvim-hs
+homepage:            https://github.com/neovimhaskell/nvim-hs-contrib
 license:             Apache-2.0
 license-file:        LICENSE
 author:              Sebastian Witte
@@ -15,7 +15,7 @@
 extra-source-files:  CHANGELOG.md
 source-repository head
     type:            git
-    location:        https://github.com/neovimhaskell/nvim-hs
+    location:        https://github.com/neovimhaskell/nvim-hs-contrib
 
 library
   exposed-modules:      Neovim.BuildTool
@@ -24,14 +24,14 @@
 
   -- other-extensions:
   build-depends:        base >=4.6 && < 5
-                      , nvim-hs >= 0.2.0
-                      , ansi-wl-pprint
+                      , nvim-hs >= 1.0
+                      , prettyprinter
+                      , prettyprinter-ansi-terminal
                       , bytestring
                       , data-default
                       , directory
-                      , exceptions
                       , filepath
-                      , messagepack >= 0.4
+                      , messagepack
                       , mtl >= 2.2.1 && < 2.3
                       , text
                       , time
