Karaoke Templater
Karaoke Templater is an Automation script that ships with Aegisub. Its primary purpose is to help creating karaoke effects with a specially designed template language. Karaoke Templater is already installed and ready to use along with Aegisub.
Tutorials: Introducing Karaoke Templater
- A simple example
- Using math expressions
- Using multiple template lines
- More advanced effects with positioned syllables
TODO: Plan more tutorials. Also actually write those above.
Reference
- Declaring template and code lines
- Rules for when and in what order templates are run
- Template modifiers
- Inline variables (dollar-variables)
- Rules for code blocks and code lines
- Contents of the code block/line execution environment
Also see the Automation/Lua/Modules/karaskel.lua
section for more
information on what’s in the line
and syl
variables, and more.
For users of multi-template
If you have used the multi-template script from Aegisub 1.10 you should recognise several similar concepts in the karaoke templater, but there are also several pitfalls. Some of them are:
- You no longer declare template lines in the Actor field but in the Effect
field instead. You can also put much more than just
template
in there. Read the tutorials above for an introduction, or the reference below if you feel adventurous. - Instead of using percent-signs to write Lua code blocks you use exclamation
marks. So write
!$start+$i*30!
instead of%$start+$i*30%
. - The
A
global is gone, butline
andsyl
are directly accessible. The escaped Lua code is no longer run in the true global environment but instead in its own environment, so clashes between your templates and Karaoke Templater itself is much less probable. - The
return false
hack to cancel execution of a template no longer works. Neither does having multi-statement Lua blocks and returning from them in general. For the first purpose thefxgroup
functionality has been introduced, and for your multi-statement needs code lines have been introduced. - Instead of working with
newline
andline
(for being-generated and original line) you now work withline
andorgline
for being-generated and original lines. - The
retime
function has been introduced to make it much easier to control the start and end times of your generated lines. - Lots of more fancy features. Check the tutorials or read the reference to learn about it all.