#
View Source Mix.Shell.IO (Mix v1.15.7)

This is Mix's default shell.

It simply prints messages to stdio and stderr.

# Summary

## Functions

cmd(command, opts \\ [])

Executes the given command and prints its output to stdout as it comes.

error(message)

Prints the given ANSI error to the shell followed by a newline.

info(message)

Prints the given ANSI message to the shell followed by a newline.

print_app()

Prints the current application to the shell if it was not printed yet.

prompt(message)

Prints a message and prompts the user for input.

yes?(message, options \\ [])

Prints a message and asks the user to confirm if they want to proceed. The user must type and submit one of "y", "yes", "Y", "YES" or "Yes".

# Functions

Link to this function

# cmd(command, opts \\ [])

View Source

Executes the given command and prints its output to stdout as it comes.

Link to this function

# error(message)

View Source

Prints the given ANSI error to the shell followed by a newline.

Link to this function

# info(message)

View Source

Prints the given ANSI message to the shell followed by a newline.

Link to this function

# print_app()

View Source

Prints the current application to the shell if it was not printed yet.

Link to this function

# prompt(message)

View Source

Prints a message and prompts the user for input.

Input will be consumed until Enter is pressed.

Link to this function

# yes?(message, options \\ [])

View Source

Prints a message and asks the user to confirm if they want to proceed. The user must type and submit one of "y", "yes", "Y", "YES" or "Yes".

The user may also press Enter; this can be configured to either accept or reject the prompt. The latter case may be useful for a potentially dangerous operation that should require explicit confirmation from the user.

## Options

- `:default` - (:yes or :no) if `:yes` pressing Enter accepts the prompt; if `:no` pressing Enter rejects the prompt instead. Defaults to `:yes`.

## Examples

    if Mix.shell().yes?("Are you sure?") do
      # do something...
    end