Next: , Up: Problems and requests   [Contents][Index]


9.1 External bugs

There is only one known bug that may occour that is external to ponysay, meaning that it is a bug that can occour with ponysay, but is not actually a bug in ponysay. This bug is common for programs that prints a lot of colours, even with cat; it is only known to happen for VTE-based terminals, such as mate-terminal, gnome-terminal and terminator.

The bug, is that lines (often no more than one line) can skipped when all lines move up one step, the next line is skipped instead, and so one; or that an escape sequence is interpreted as pure text (this is common in GNU Emacs, however GNU Emacs does not support programs such as ponysay.)

This bug can often be suppressed by piping the output to cat multiple times when using a VTE-based terminal (or always if you prefer). The use of VTE-based terminal can often be determined by checking for the environment variable COLORTERM, to which VTE-based terminal usually export their name (some reported another terminals name.)

If you want to do this in GNU Bash you can add this (with possible modifications depending on what you also have done with ponysay) code sample to your ~/.bashrc file.

[[ ! "$COLORTERM" = "" ]] &&
    function ponysay
    {
        exec ponysay "$@" | cat | cat | cat | cat
    }

It is important for this bug workaround that cat is unbuffered, which is default in GNU’s version of cat, but not in Unix’s version. If this does not work, test adding the option -u to cat.


Next: , Up: Problems and requests   [Contents][Index]