Skip to content

Commit 0aad810

Browse files
committed
Added argument to optionally display using a pager
1 parent bcdb97b commit 0aad810

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

examples/color.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,23 @@ def __init__(self) -> None:
2525

2626
rainbow_parser = cmd2.Cmd2ArgumentParser()
2727
rainbow_parser.add_argument('-b', '--background', action='store_true', help='show background colors as well')
28+
rainbow_parser.add_argument('-p', '--paged', action='store_true', help='display output using a pager')
2829

2930
@cmd2.with_argparser(rainbow_parser)
3031
def do_taste_the_rainbow(self, args: argparse.Namespace) -> None:
3132
"""Show all of the colors available within cmd2's Color StrEnum class."""
3233

34+
color_names = []
3335
for color_member in Color:
3436
style = Style(bgcolor=color_member) if args.background else Style(color=color_member)
3537
styled_name = stylize(color_member.name, style=style)
36-
self.poutput(styled_name)
38+
if args.paged:
39+
color_names.append(styled_name)
40+
else:
41+
self.poutput(styled_name)
42+
43+
if args.paged:
44+
self.ppaged('\n'.join(color_names))
3745

3846

3947
if __name__ == '__main__':

0 commit comments

Comments
 (0)