module Ribosome.Api.Sleep where

import Ribosome.Control.Monad.Ribo (NvimE)
import Ribosome.Nvim.Api.IO (vimCommand)

nvimSleep ::
  NvimE e m =>
  Int ->
  m ()
nvimSleep :: Int -> m ()
nvimSleep Int
interval =
  Text -> m ()
forall (m :: * -> *) e.
(Nvim m, MonadDeepError e RpcError m) =>
Text -> m ()
vimCommand (Text -> m ()) -> Text -> m ()
forall a b. (a -> b) -> a -> b
$ Text
"sleep " Text -> Text -> Text
forall a. Semigroup a => a -> a -> a
<> Int -> Text
forall b a. (Show a, IsString b) => a -> b
show Int
interval

nvimMSleep ::
  NvimE e m =>
  Int ->
  m ()
nvimMSleep :: Int -> m ()
nvimMSleep Int
interval =
  Text -> m ()
forall (m :: * -> *) e.
(Nvim m, MonadDeepError e RpcError m) =>
Text -> m ()
vimCommand (Text -> m ()) -> Text -> m ()
forall a b. (a -> b) -> a -> b
$ Text
"sleep " Text -> Text -> Text
forall a. Semigroup a => a -> a -> a
<> Int -> Text
forall b a. (Show a, IsString b) => a -> b
show Int
interval Text -> Text -> Text
forall a. Semigroup a => a -> a -> a
<> Text
"m"