xcowsay - Display a cute cow and speech bubble.
] [-t time
] [-r speed
] [-f font
Display a cow with a speech bubble containing some text. If text
specified it will be displayed in the bubble. Otherwise the text will be read
from the standard input and displayed when end of file is encountered.
The cow is displayed for either a fixed amount of time, or an amount of time
calculated from the size of the text. Click on the cow to dismiss it
is started with --daemon
it will fork away from the
terminal and run in daemon mode. The daemon provides a DBus service
that responds to ShowCow
requests. The daemon
can queue up any number of requests and displays them in order.
starts it checks to see if a daemon is running, and if it
is, sends a ShowCow
request and returns immediately. Otherwise
will block until the cow has disappeared.
xcowsay reads a configuration file on startup. The configuration file can be
stored in the XDG compliant location $XDG_CONFIG_HOME/xcowsayrc
will default to $HOME/.config/xcowsayrc
) or in your home directory at
. If the --config=FILE
option is passed FILE
will be processed after your personal
The configuration file consists of 'option = value' pairs, one per line. The
valid keys are given in the next section. For example, the following line sets
display time to 10 seconds:
display_time = 10000
The character '#' begins a comment which lasts until the end of the line.
Values containing spaces should be enclosed in quotes. For example:
font = "mono 28"
Note that these options override any settings in the config file.
- -h, --help
- Display usage information.
- -t time, --time=time
- Display the cow for time seconds. This overrides any
value set for reading_speed. Setting time to zero displays
the cow until it is clicked. The corresponding config file option is
- -r speed,
- Number of milliseconds to display the cow for each word in
the input text. This is clamped to a minimum of min_display_time
and a maximum of max_display_time. The defaults are 1 second and 30
seconds respectively. The corresponding config file option is
- -f font, --font=font
- Font for the speech bubble text. Accepts Pango font
strings. The corresponding config file option is font.
- -d file, --dream=file
- Display an image instead of text in the cow's bubble. The
dream_time config file option sets the numer of milliseconds to
display the image for. The default is 10 seconds.
- Display a thought bubble instead of a speech bubble.
- Run xcowsay in daemon mode if DBus support has been
enabled. See the description for more information.
- Size of the cow image. Current choices are small,
med, or large. The corresponding config file option is
- Use a different image instead of the cow. The corresponding
config file option is alt_image.
- Make the cow appear on monitor N.
- Force that cow to appear at screen location (X,Y). The
config file options are at_x and at_y.
- Change position of bubble relative to where it would
normally appear. This is most useful when combined with the
alt_image option to create your own characters. The config file
options are bubble_x and bubble_y.
- Disable word wrapping when the bubble is too wide to fit on
the screen. The config file option wrap can be set to true
or false to set this explicitly.
- -l, --left
- Make the bubble appear on the left hand side of the cow.
This is useful if you are using your own image.
- Print messages about what xcowsay is doing. Useful
for finding out why the daemon fails.
- Close window on release event instead of press. The
corresponding config file option is
- -v, --version
- Print version information.
Written by Nick Gasson.
Report all bugs to firstname.lastname@example.org The xcowsay home page is
The cow and speech bubble have jagged edges which would be improved by
anti-aliasing. Unfortunately this isn't possible without a compositing window
manager since X can only cut holes in windows using a binary mask, so I
wouldn't expect this any time soon.