RandomSequence
Quick Start
from terminaltexteffects.effects.effect_random_sequence import RandomSequence
effect = RandomSequence("YourTextHere")
with effect.terminal_output() as terminal:
for frame in effect:
terminal.print(frame)
Prints the input data in a random sequence, one character at a time.
Classes:
Name | Description |
---|---|
RandomSequence |
Prints the input data in a random sequence. |
RandomSequenceConfig |
Configuration for the RandomSequence effect. |
RandomSequenceIterator |
Iterator for the RandomSequence effect. Does not normally need to be called directly. |
RandomSequence
Bases: BaseEffect[RandomSequenceConfig]
Prints the input data in a random sequence, one character at a time.
Attributes:
Name | Type | Description |
---|---|---|
effect_config |
PourConfig
|
Configuration for the effect. |
terminal_config |
TerminalConfig
|
Configuration for the terminal. |
Source code in terminaltexteffects/effects/effect_random_sequence.py
RandomSequenceConfig
dataclass
Bases: ArgsDataClass
Configuration for the RandomSequence effect.
Attributes:
Name | Type | Description |
---|---|---|
starting_color |
Color
|
Color of the characters at spawn. |
speed |
float
|
Speed of the animation as a percentage of the total number of characters to reveal in each tick. Valid values are 0 < n <= 1. |
final_gradient_stops |
tuple[Color, ...]
|
Tuple of colors for the final color gradient. If only one color is provided, the characters will be displayed in that color. |
final_gradient_steps |
tuple[int, ...] | int
|
Tuple of the number of gradient steps to use. More steps will create a smoother and longer gradient animation. Valid values are n > 0. |
final_gradient_frames |
int
|
Number of frames to display each gradient step. Increase to slow down the gradient animation. |
final_gradient_direction |
Direction
|
Direction of the final gradient. |
Source code in terminaltexteffects/effects/effect_random_sequence.py
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 |
|
final_gradient_direction = ArgField(cmd_name='--final-gradient-direction', type_parser=argvalidators.GradientDirection.type_parser, default=Gradient.Direction.VERTICAL, metavar=argvalidators.GradientDirection.METAVAR, help='Direction of the final gradient.')
class-attribute
instance-attribute
Gradient.Direction : Direction of the final gradient.
final_gradient_frames = ArgField(cmd_name=['--final-gradient-frames'], type_parser=argvalidators.PositiveInt.type_parser, default=12, metavar=argvalidators.PositiveInt.METAVAR, help='Number of frames to display each gradient step. Increase to slow down the gradient animation.')
class-attribute
instance-attribute
int : Number of frames to display each gradient step. Increase to slow down the gradient animation.
final_gradient_steps = ArgField(cmd_name=['--final-gradient-steps'], type_parser=argvalidators.PositiveInt.type_parser, nargs='+', default=12, metavar=argvalidators.PositiveInt.METAVAR, help='Space separated, unquoted, list of the number of gradient steps to use. More steps will create a smoother and longer gradient animation.')
class-attribute
instance-attribute
tuple[int, ...] | int : Int or Tuple of ints for the number of gradient steps to use. More steps will create a smoother and longer gradient animation.
final_gradient_stops = ArgField(cmd_name=['--final-gradient-stops'], type_parser=argvalidators.ColorArg.type_parser, nargs='+', default=(Color('8A008A'), Color('00D1FF'), Color('FFFFFF')), metavar=argvalidators.ColorArg.METAVAR, help='Space separated, unquoted, list of colors for the character gradient (applied across the canvas). If only one color is provided, the characters will be displayed in that color.')
class-attribute
instance-attribute
tuple[Color, ...] : Tuple of colors for the final color gradient. If only one color is provided, the characters will be displayed in that color.
speed = ArgField(cmd_name=['--speed'], type_parser=argvalidators.PositiveFloat.type_parser, default=0.004, metavar=argvalidators.PositiveFloat.METAVAR, help='Speed of the animation as a percentage of the total number of characters to reveal in each tick.')
class-attribute
instance-attribute
float : Speed of the animation as a percentage of the total number of characters to reveal in each tick.
starting_color = ArgField(cmd_name=['--starting-color'], type_parser=argvalidators.ColorArg.type_parser, default=Color('000000'), metavar=argvalidators.ColorArg.METAVAR, help='Color of the characters at spawn.')
class-attribute
instance-attribute
Color : Color of the characters at spawn.
get_effect_class()
classmethod
RandomSequenceIterator
Bases: BaseEffectIterator[RandomSequenceConfig]
Iterator for the RandomSequence effect.
Source code in terminaltexteffects/effects/effect_random_sequence.py
__init__(effect)
Initialize the effect iterator.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
effect
|
RandomSequence
|
The effect to use for the iterator. |
required |
Source code in terminaltexteffects/effects/effect_random_sequence.py
__next__()
Return the next frame in the animation.
Source code in terminaltexteffects/effects/effect_random_sequence.py
build()
Build the initial state of the effect.
Source code in terminaltexteffects/effects/effect_random_sequence.py
get_effect_and_args()
Get the effect class and its configuration class.