aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile2
-rw-r--r--manpage.118
-rwxr-xr-xponysay17
3 files changed, 30 insertions, 7 deletions
diff --git a/Makefile b/Makefile
index 467a000..194fa29 100644
--- a/Makefile
+++ b/Makefile
@@ -25,6 +25,7 @@ install: all
mkdir -p "$(DESTDIR)/usr/share/man/man1"
install "manpage.1" "$(DESTDIR)/usr/share/man/man1/ponysay.1"
+ ln -sf "ponysay.1" "$(DESTDIR)/usr/share/man/man1/ponythink.1"
uninstall:
rm -fr "$(DESTDIR)/usr/share/ponies"
@@ -36,6 +37,7 @@ uninstall:
unlink "$(DESTDIR)/usr/share/licenses/ponysay/COPYING"
unlink "$(DESTDIR)/usr/share/bash-completion/completions/ponysay"
unlink "$(DESTDIR)/usr/share/man/man1/ponysay.1"
+ unlink "$(DESTDIR)/usr/share/man/man1/ponythink.1"
clean:
rm -r "ponysaytruncater"
diff --git a/manpage.1 b/manpage.1
index d5b8ec9..57c4222 100644
--- a/manpage.1
+++ b/manpage.1
@@ -22,6 +22,10 @@ ponysay \- A cowsay wrapper with ponies
.RI [ options ]
.RI [ message ]
.br
+.B ponythink
+.RI [ options ]
+.RI [ message ]
+.br
.SH DESCRIPTION
.PP
.\" TeX users may be more comfortable with the \fB<whatever>\fP and
@@ -33,6 +37,8 @@ word-wraps the message given at about 40 columns, and prints the pony saying the
.PP
If no arguments are provided, the program only accepts standard input piped from another program, a file or
either here documents or here strings (see man bash(1) for details on here document/string.)
+.PP
+\fBponythink\fP is to \fIponysay\fP as \fIcowthink\fP is to \fIcowsay\fP.
.SH OPTIONS
A summary of options is included below.
.TP
@@ -54,8 +60,16 @@ The screen column where the message should be wrapped
.TP
.B PONYSAY_BOTTOM
Under TTY (Linux VT), if the output is larger the the screen's height, only the beginning is
-printed, leaving 2 blank lines. If you want the buttom to be printed rather the the beginning
+printed, leaving two blank lines. If you want the buttom to be printed rather the the beginning
you can export \fBPONYSAY_BOTTOM\fP with the value \fIyes\fP, \fIy\fP or \fI1\fP.
+.B PONYSAY_SHELL_LINES
+Under TTY (Linux VT), if the output is larger the the screen's height, two lines are left blank.
+If you want moer, or less, blank lines you can export \fBPONYSAY_SHELL_LINES\fP with the value
+of how many blank lines you want. Naturally this takes effect if the output is not actually larger
+than the screen.
+.B PONYSAY_FULL_WIDTH
+You can export \fBPONYSAY_FULL_WIDTH\fP with the value \fIno\fP, \fIn\fP or \fI0\fP, if you
+do not want the output to be truncated on the width to fit the terminal.
.SH BUG
Bugs can be reported in <\fBhttps://github.com/erkin/ponysay/issues\fP>.
.SH SEE ALSO
@@ -86,4 +100,4 @@ DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
.br
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
.PP
- 0. You just DO WHAT THE FUCK YOU WANT TO.
+0. You just DO WHAT THE FUCK YOU WANT TO.
diff --git a/ponysay b/ponysay
index 4b5e912..9b5b2af 100755
--- a/ponysay
+++ b/ponysay
@@ -63,15 +63,22 @@ say() {
function wtrunc
{
- ponysaytruncater `tput cols || echo 0` 2>/dev/null ||
- ${HOME}/.local/bin/ponysaytruncater `tput cols || echo 0` 2>/dev/null ||
- ./ponysaytruncater `tput cols || echo 0` 2>/dev/null ||
- cat
+ if [ "$PONYSAY_FULL_WIDTH" = 'no' ] || [ "$PONYSAY_FULL_WIDTH" = 'n' ] || [ "$PONYSAY_FULL_WIDTH" = '0' ]; then
+ cat
+ else
+ ponysaytruncater `tput cols || echo 0` 2>/dev/null ||
+ ${HOME}/.local/bin/ponysaytruncater `tput cols || echo 0` 2>/dev/null ||
+ ./ponysaytruncater `tput cols || echo 0` 2>/dev/null ||
+ cat
+ fi
}
function htrunc
{
- head --lines=$(( $(stty size <&2 | cut -d ' ' -f 1) - 2 ))
+ if [ "$PONYSAY_SHELL_LINES" = "" ]; then
+ PONYSAY_SHELL_LINES=2
+ fi
+ head --lines=$(( $(stty size <&2 | cut -d ' ' -f 1) - $PONYSAY_SHELL_LINES ))
}
if [ "$TERM" = "linux" ]; then