list of functions of unanimated's Aegisub scripts

aka "Is there a script that does ......?"
(Detailed info in the manuals.)
HYDRA
add any tags
add inline tags in many different ways
apply tags to sections of text (various options)
apply tags before every character / word
add transforms (new transforms, add to existing transforms [several modes])
relative transforms (transform by, rather than transform to)
increase value of applied tags for each line
create a gradient by character
create a vertical/horizontal gradient
create a gradient by line
(various options for gradients)
copy fscx value to fscy and vice versa
move inline colour tags to the start (when you use the eyedropper tool but cursor isn't at the start of the editbox)
convert between clip and iclip
convert \s1 to selected tags and \s0 to the original state of those tags
clean up tags / remove garbage / round numbers
sort tags in set order (user defined)
transform between two sets of tags back and forth (back and forth transform)
transform \fscx\fscy based on a clip
select overlaps
convert clip to drawing
convert drawing to clip
create a checkerboard pattern clip
change \shad to \xshad\yshad
create a 3D effect from a shadow (needs \xshad\yshad, creates layers to fill the space between the base & the shadow)
split line in (2 or) 3 parts based on given timecodes/durations


Hyperdimensional Relocator - Repositioning Field
align signs along the same \pos x or y coordinate
mirrored image / duplicate across the screen
calculate \fax from \org
calculate \fax from \clip, including different values on each end + gradient in between
calculate \frz from \clip, including averaging between two lines
reposition a line based on 2 clip coordinates
shake / randomize position (+rotation)
create a shadow layer instead of \shad
offset position of a sign by half a shadow's length
create lines for each letter of text, spacing them out by a given distance
switch progression of pos X and Y for fbf lines (right<->down, up<->left, etc.)
replicate a line X times over a given distance (can shift each by X frames and do other things)
fbf retrack - adjust positions of fbf lines (smoothen)
track position with points of a vectorial clip (track by clip)

Hyperdimensional Relocator - Soul Bilocator
create 1 line with \move from 2 static lines with \pos, including creating transforms (transmove)
fix \move coordinates so that sign moves in a straight line (horizontal, vertical)
make lines with \pos move the same as a reference line with \move (multimove)
reverse \move
change starting coordinates of \move by a given amount (shiftstart)
change ending coordinates of \move by a given amount (shiftmove)
set target coordinates for \move (move to)
set target coordinates for \move from a clip (clip2move) (works with \pos and \move)
create a clip transform that follows \move (move clip)
randomize \move, either in the same direction but different distance, or within a given radius of the start/end points
nuke timecodes in \move or \t (kill times)
set timecodes in \move or \t to first/last frame of the line (full times)
set timecodes in \move or \t to any given numbers (set times)

Hyperdimensional Relocator - Morphing Grounds
round values for pos, move, org, clip, masks
split/chop a line into fbf (frame by frame) segments, changing move to pos and transforms to single tags (line2fbf)
join fbf lines by a given number, like join each 3 lines into 1
shift a vectorial clip based off \pos tags for fbf lines (move v. clip)
set \org tag with current \pos coordinates (set origin)
calculate origin point (\org) from a clip matching a tetragon on screen (calculate origin)
calculate/create a clip transform (transform clip)
set a \frz tag with predefined values like 30, 45, 60, 90, etc (FReeZe)
change rotation by 180 degrees for \frz, \frx, or \fry (rotate 180)
change rotations to negative number with the same result, like \frz350 -> \frz-10, to help with transforms (negative rot)
convert between rectangular and vectorial clips
set position in the middle of a rectangual clip (find centre)
resize masks in x/y direction (extend mask)
flip a mask horizontally (flip mask)
change the shape of a mask by randomizing the points (randomask)
randomize the values of a given tag to create chaotic effects for gbc or fbf (randomize...)
make vertical text by adding linebreaks between letters (letterbreak)
add linebreaks between words (wordbreak)
hide or unhide a clip (so that you can "see" the sign quickly)

Hyperdimensional Relocator - Cloning Laboratory
copy pos, move, org, clip tags from one line to others (also rotations)
(includes options to stack/combine clips in various ways, as well as to shift more with each line)

Hyperdimensional Relocator - Teleportation
shift pos, move, org, clip, mask by a given amount
'warp' can shift by an additional amount for each new line, or each new frame
change position by 1 px in each of 4 directions (4 separate macros)


Colourise (everything is selectable for \c, \2c, \3c, \4c)
alternate between 2-7 colours letter by letter / word by word
shift colours by a letter / word
set a given mumber of colours (2-7) evenly across the line (3 = start, middle, before last character)
adjust RGB channels (options: only tags outside transforms, only tags inside transforms, all)
adjust hue/saturation/lightness (options: only tags outside transforms, only tags inside transforms, all)
randomize RGB/HSL (each of the 6)
match colours between primary, outline, and shadow
create RGB and HSL colour gradients
tune/adjust existing colours in the line (options: only tags outside transforms, only tags inside transforms, all)
tune/adjust/replace existing colours in current selection


Blur and Glow
blur for signs with a border
create another layer with glow
create double border
raise layer for multiple lines


Script Cleanup
delete comments
delete tags
delete commented or empty lines
clear actor / effect field
raise dialogue layer by 5
clean up tags / remove garbage / round numbers
delete specific tags or groups of related tags (colours, alphas, rotations...)
delete specific tags only from transforms
remove linebreaks
hide/unhide any tags from start tags, or all inline tags


Recalculator
multiply values of tags (options: only tags outside transforms, only tags inside transforms, all)
add to or subtract from values of tags (options: only tags outside transforms, only tags inside transforms, all)
resize clips / drawings
shift karaoke (by changing value for the first \k tag in line)
recalculate gradients for already existing tags


Selectricks
select or sort lines by text, actor, effect, visible text, layer duration, word count, character count, cps, blur, margins
reverse order of selection
sort by width of text (in pixels)
move the last line in a selection to the top of selection and vice versa
select lines with the same text as the current one
move selection up or down
recalculate values for layer, margins, start/end time, number patterns in text, actor, effect


Multi-Line Editor
edit multiple lines at once (text, style, actor, effect)
replace function for selected lines, including regexp
check duration, character count, and cps of a line
count characters / words in a selection
change case / capitalisation
move the last word on active line to the start of next line
move the first word on the next line to the end of active line
reverse line order of text, effect, actor, etc. (all fields) for selected lines


MultiCopy
copy from / paste to selected lines:
	initial tags, text after tags, both, clip, pos, blur, bord, colours, alpha, fscx, fscy, layer, duration, actor, effect, comments
export a crunchyroll script for pad
paste over with check for errors
paste over from irc (automatically removes timecodes and nicknames)
paste over for lines with GBC
	(keeps the tag before last character so you can just rerun GBC after that. replicates colour gradients in full.)
paste the same tags / text to multiple lines
paste over of selected fields (layer, effect, text...)
copy from one column (layer, effect, text...) to another


Time Signs
time signs from timecodes, including shifting times, adding blur, and snapping to keyframes


ShiftCut (TPP with more options)
add or cut lead in or lead out (ms or frames)
shift times (ms or frames)
shift each line by X frames
link lines
fix overlaps
snap to keyframes
shift selection so that the active line ENDS at current frame


FadeWorkS
apply fade
create fade-based alpha transforms
create fade-based colour transforms
create fade-based transforms for other transformable tags
create fades letter by letter, including right to left
make text appear letter by letter or word by word using \ko
create a fade across multiple lines
set fades as fractions of duration
set negative fades (counting from the other end of the line)
set fade in/out to current video frame
create complex fade in/out effects by adding new lines at either end


Change Case
change text to lowercase / uppercase
capitalise lines, sentences, or titles


Significance
export complex signs to a saved file (any number of lines, basically works like a template)
import signs from a saved file
import chapters from xml
a complex function to update lyrics
make chapters (includes subchapters)
set chapter markers (like make selected line a 'Part A' chapter)
number lines in actor/effect field (also layer and margins) by various patterns
add markers to numbers in actor/effect (like ab01cd) (this also allows to add comments to text)
lua replacer - replace function with lua matching patterns
perl replacer - same with full regexp
lua calculator - perform basic math operations on matched numbers (experimental and pretty useless)
uncomment commented text (nuke { })
switch commented / visible text
reverse text character by character
reverse text word by word
reverse transforms (\bord3\t(\bord5) -> \bord5\t(\bord3); only initial tags, one transform per tag)
fake capitalisation of uppercase text using higher \fs for the first letter of each word
format dates to one of 4 patterns: "January 1", "January 1st", "1st of January", "1st January"
split into letters (one line per character; other characters are alpha'd out)
explode (split into letters + characters randomly move and fade away)
dissolve text (make text disappear in segments in various ways)
duplicate and shift lines - for all selected lines, adds one or multiple frames before and/or after
randomized transforms - different values for each line (includes randomized fade, duration, move)
clone clip (replicates an existing clip given amount of times in rows/columns)
transform kara tags (\k, \kf, \ko) into alpha transforms (FF->00)
adjust kara tags for split lines (karaoke with fbf)
comment honorifics
convert framerate
stats: video name, script resolution, colorspace, styles used, # of dialogue lines, # of selected lines, selection duration
active line statistics: # in script, style, font, weight, fnot size, border, shadow, duration, characters, cps, default position
make a new style from active line, using tags in the line


Masquerade
create a mask with a predefined shape (includes 2 alignment grids)
create a mask from clipped area
save/load custom masks
shift tags left or right by letters or words
motion blur
merge tags for 2 lines with same text but different inline tags (including gradients)
make text appear letter by letter using alpha (shift alpha FF tag line by line)
alpha time line(s) (splits text by given markers, times evenly)
transform underline/strikeout tags into alpha tags, as well as @30@ -> \alpha&H30& etc. (strikealpha)
(many transformations/replacements/conversions available)


NecrosCopy
calculate \fax from a clip, including different values on each end + gradient in between
calculate \frz from a clip
copy initial block of tags from line 1 to others
copy text after initial block of tags from line 1 to others (also clean text without tags/comments)
copy colours/alphas from line 1 to others
copy anything available from one line to others
copy tags from start tags to after linebreaks
create a 3D shadow
split by linebreaks (keeps times; also splits by spaces and by tags; keeps position for segments under common conditions)
arrange text along a path set by a clip, one word for each clip segment between two points (only straight clips)
split into letters (one line for each letter)


Line Breaker
insert linebreak in a meaningful place
shift linebreak by 1 word (right or left)


Join / Split / Snap
join active line with the following one (tries to handle text / tags intelligently)
split a line at first linebreak / period / excl./quest. mark / comma, and adjust timing for each line
snap selected lines to keyframes / adjacent lines based on numbers in settings (TPP snapping for hotkeying)


Jump to Next
jump to next/previous line with a different actor/effect/layer/style/text from the current one, or to next commented line


Reset Style
choose a style to set for \r tag


Reset-to-tags
change \r[style] to tags with the [style]'s properties


Aladin's Lamp
deal with right-to-left tags by:
- fixing inline tags
- fixing line breaks
- fixing punctuation


Encode - Hardsub
encode a clip for mocha
hardsub a clip or whole video using one or two subtitle files
mux audio for encoded clip


Multiplexer
mux video and subs currently opened in Aegisub
mux additional subtitle file and/or chapters
create CRC for the filename of muxed file
create xdelta to patch the source video to the muxed one