logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

pipes.sh - animated pipes terminal screensaver

Authors

       Pipeseroni/pipes.sh contributors.

Bugs

       Please see current issues on issue tracker, and report any bugs or request feature you'd like.

Description

       A  bash script which draws randomly pathed pipes over the terminal. Generally used either as a functional
       screensaver or for amusement.

History

pipes.sh  was originally created by Matthew Simpson and posted to the Arch Linux Forums in early 2010. It
       was also later posted to Gist released in the public domain.

       In early 2013, Yu-Jie Lin posted a modification of the script to Gist after reading about it on  a  blog.
       It was maintained on Gist independently for a period of a few months.

       In  2014, the script was given its own GitHub repository as a project which encouraged contributions from
       other developers. As the project gained more popularity the decision was  made  to  combine  forces  with
       developers of similar projects.

       Finally  in 2015, the MIT License was added and the Pipeseroni collective was formed (see LINKS below) to
       maintain the project.

Keyboard Controls

       Press any key to quit pipes.sh, except the following Shift + Key:

       P / O  Increase/decrease probability of straight pipes

       F / D  Increase/decrease frame rate

       B      Toggle bold effect

       C      Toggle no colors

       K      Toggle keeping pipe color and type when crossing edges

Name

       pipes.sh - animated pipes terminal screensaver

Options

-p[1-]
            Number of pipes. (default is 1)

       -t[0-9]
            Determines the type of pipes to be drawn. Multiple arguments can be used. (default is 0)

            Due to the manpage limitation, the following list describes types in text,  please  see  README  for
            actual Unicode characters and screenshots.

            -t0   "BOX DRAWING HEAVY"

            -t1   "BOX DRAWING LIGHT" and "BOX DRAWING LIGHT ARC"

            -t2   "BOX DRAWING LIGHT"

            -t3   "BOX DRAWING DOUBLE"

            -t4   "|+ ++-+ +|++ +-"

            -t5   "|/ \/-\ \|/\ /-"

            -t6   ".. .... .... .."

            -t7   ".o oo.o o.oo o."

            -t8   "-\ /\|/ /-\/ \|" (railway)

            -t9   "BOX DRAWING HEAVY AND LIGHT" (knobby)

       -tc[16chars]
            Use custom type of pipes.

            The  following  table  describes  the  order  of  characters  and  what they represent.  Four of the
            characters are not applicable as the pipes does not perform a 180-turn.

            Index  Going

            1      Straight up

            2      Up and going right

            3      Not applicable (up and back down), use space

            4      Up and going left

            5      Right and going up

            6      Stright right

            7      Right and going down

            8      Not applicable (right and back left), use space

            9      Not applicable (down and back up), use space

            10     Down and going right

            11     Straight down

            12     Down and going left

            13     Left and going up

            14     Not applicable (left and back right), use space

            15     Left and going down

            16     Straight left

       -c[0-7]
            Colors of pipes. Multiple arguments can be used. (default is 1 2 3 4 5 6 7 0)

       -f[20-100]
            Frame rate. (default is 75)

       -s[5-15]
            Probability of straight fitting. (default is 13)

       -r[LIMIT]
            Resets the drawing after [LIMIT] characters. If no limit is specified then it  takes  the  value  0.
            (default is 2000)

       -R   Randomize starting position and direction.

       -B   No bold effect.

       -C   No color.

       -K   No change of colors and types when hitting screen edges.

       -h   Displays a help message.

       -v   Prints the version number.

Synopsis

pipes.sh [OPTION]...

See Also