#
# A file pager.  A demonstration of how to do something useful in ircII.
# This cheesy rip-off was written by hop in 1996.
# My apologies in advance to archon.
#

alias less
{
	if (![$0]) {
		echo Usage: /less <filename>
	} elsif (fexist($0) == 1) {
		less_file $open($0 R) ${winsize() - 1}
	} else {
		echo $0\: no such file.
	}
}


alias less_file
{
	^local line 0
	^local ugh

	while (!eof($0) && (line++ < [$1]))
	{
		@ ugh = read($0)
		if (!eof($0)) {echo $ugh}
	}

	if (!eof($0))
	{
		@ less.fd = [$0]
		@ less.nl = [$1]
		input_char "Enter q to quit, or anything else to continue "
		{
			if ([$0] != [q]) {less_file $less.fd $less.nl}
		}
	}
	{
		@ close($0)
	}
}

#hop'96
