File: core.py

package info (click to toggle)
python-click-plugins 1.1.1.2-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 204 kB
  • sloc: python: 308; makefile: 8
file content (46 lines) | stat: -rw-r--r-- 921 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
"""
Core components for `PrintItStyle`
"""


import click


COLORS = (
    'black',
    'red',
    'green',
    'yellow',
    'blue',
    'magenta',
    'cyan',
    'white',
)


@click.command()
@click.argument('infile', type=click.File('r'), default='-')
@click.argument('outfile', type=click.File('w'), default='-')
@click.option('-c', '--color', type=click.Choice(COLORS), required=True)
def background(infile, outfile, color):

    """
    Add a background color.
    """

    for line in infile:
        click.secho(line, file=outfile, color=color)


@click.command()
@click.argument('infile', type=click.File('r'), default='-')
@click.argument('outfile', type=click.File('w'), default='-')
@click.option('-c', '--color', type=click.Choice(COLORS), required=True)
def color(infile, outfile, color):

    """
    Add color to text.
    """

    for line in infile:
        click.echo(line, color=color, file=outfile)