diff --git a/README.md b/README.md index a5deed1..e9be9ae 100644 --- a/README.md +++ b/README.md @@ -1,129 +1,127 @@ -# garret's shitty aegisub scripts +# garret's aegisub scripts Aegisub automation scripts I've written. - Mostly only useful to me. +Nothing cool and exciting here, just little utilities that make my life easier. -Some scripts do the same things as other peoples', - likely because I didn't know their script existed, - or because it had loads of ~~bloat i'll never use~~ other stuff with it (cough cough unanimated). +I write and use these on [Aegisub/Aegisub](https://github.com/Aegisub/Aegisub) on Linux ([this PPA](https://launchpad.net/~riccetn/+archive/ubuntu/aegisub)), but they should work perfectly fine wherever, I don't think there's anything OS-specific in there. -Tested on official-ish aegi for linux, - but _should_ work fine on any build that has automation v4 (read: all of them). - -assume garbage-in garbage-out. +One day I'll get round to sorting out a DependencyControl feed. If you're reading this, that day has not yet come. ---- -## Script List - -### A-B - -Makes checking pre-timing possible -by putting some text in the lines - (the actor name, and `a` or `b`, - hence the name) - -ignores lines with text in them, - prepends to lines with just tags in them - -### Append Comment - -pops up a dialogue to put the comment in, and appends it to the selected lines. - -if you're not using it for multiple lines you may as well just type the curly brackets & stuff yourself, it's probably quicker. - -### Audio Clipper - -Extracts audio from the selected line(s), like the create audio clip button. -Unlike the create audio clip button, it can copy the audio stream. - -Also, if you select multiple lines, it'll make separate clips for each, not one long one. - -By default, outputs to `?video/audioclipper_output/i.xyz`, - where `x` is the index of the line in your selection, and `xyz` is the extension. - -**Needs ffmpeg in path.** -Can be slow. - -**Done better by**: Petzku's `Encode Clip` (kinda), Aegisub (kinda) - -### Chapter Generator - -Makes XML chapters for matroska. - -Makes lines with the effect `[Cc]hapter`, `[Cc]hptr` or `[Cc]hap` (the same as UA's Significance), into chapters. Start time of the line is used for the timestamp, text of the line is used for chapter name. -Language is currently hardcoded to english. - -**Done better by**: `Significance` by UA. - -### Dupe and Comment +## Dupe and Comment Duplicates a line and comments out the original. -I like seeing the original line while editing, - and being able to go back to it - easily if my edit was crap. +This lets you: -### Em-dash +- quickly create different versions of a line +- see the differences at a glance +- easily revert to the original, even if the undo history is gone -Appends an Em-dash (`—`) to the selected line(s). -Replaces `--` with `—`. +Probably the script I use the most. -I do not have an em-dash key on my keyboard. +| Key | Function | Rationale | +| --- | -------- | --------- | +| D | `Dupe and Comment/Do` | Easy access. "D" for duplicate. | +| Shift-D | `Dupe and Comment/Undo` | Shift-D, like Shift-Delete for deleting files. | +| Ctrl-D | `edit/line/duplicate` | Still want to dupe without commenting occasionally. | -**Done better by**: Ctrl-H (partially) +These hotkeys let me have everything related to duplication on one key. -### Inverse Glow +## Syllable Splitter -For typesetting. +Splits romaji into karaoke syls. For the lazy k-timer. -Glow, but it goes inside the letters. +Tries to use the lengths that aegi would produce if you did it manually. +Does an alright enough job most of the time, but is ignorant of whitespace. -- `\c` = dark colour -- `\3c` = light colour -- `\bord` = amount of blur on light colour +Not that it really matters, you'll be retiming it anyway. -won't work if doesn't have all three +## K-Timing -> Alpha Timing -see `inverse-glow.ass` for an example +Makes doing alpha timing significantly easier by getting rid of the part where you do alpha timing. -### K-Timing -> Alpha Timing +Instead, K-Time the line, and run the script. The highlighting of the syls will become the appearance of the syls. -makes doing alpha timing significantly easier - by getting rid of the part where you do alpha timing. +The original line will be commented out, so you can go back and change it easily. -originally created to convert stuff that should've been alpha timed in the first place - but used a weird hack with `\ko` instead. +Originally created to convert stuff that should've been alpha timed in the first place, but that used a hack with `\ko` instead. -### Order layers +## DependencyControl Global Config -for typesetting. +There's a line in the DependencyControl README that goes: -Puts each selected line on its own layer, so they don't clash. -Tries to be a bit clever and check if you actually need it -, but it's not so clever that it'll check if they actually overlap. +> DependencyControl stores its configuration as a JSON file in the _config_ subdirectory of your Aegisub folder (`l0.DependencyControl.json`). Currently you'll have to edit this file manually, in the future there will be a management macro. -### Restyler +That line's been there for about 7 years now. -`become-fansubber.lua` +I wanted to change some settings without wading through the JSON and typing in the right stuff myself, so I wrote this. -Changes style of selected lines to `Default` (for now, will be configurable in future), - and copies italic+alignment values from the script's styles to inline tags. +## Select Comments -Can't help if the source script isn't properly styled. +Tiny utility script. +Easier than `Subtitle > Select Lines` etc + +---- + +Updating this README has made me realise that I only really have 2 or 3 actually useful scripts. Here are the bad and/or useless ones. + +These scripts should be considered abandoned for the foreseeable future. + +They should all work decently enough, it's just that what they do isn't useful very often, or is done better by something else. + +## A-B + +Makes checking pre-timing possible by putting some text in the lines. +(the actor name, and `a` or `b`, hence the name) + +ignores lines with text in them, prepends to lines with just tags in them + +## Audio Clipper + +Old and bad, but maybe still useful sometimes. + +**Needs [FFMPEG](https://ffmpeg.org) in your PATH.** + +Makes audio clips of all the selected lines. +Output is either stream-copied, or encoded to a format of your choice. + +By default, makes a folder called `audioclipper_output` and dumps all the files in there. +The filename is the index of the line in your selection. + +**Done better by**: [Petzku's `Encode Clip`](https://github.com/petzku/Aegisub-Scripts/blob/master/macros/petzku.EncodeClip.lua), Aegisub's `Create audio clip` button. + +## Chapter Generator + +Makes XML chapters for Matroska. + +Incomplete clone of the chapter generator in [Significance](https://github.com/unanimated/luaegisub/blob/master/ua.Significance.lua). +No proper XML handling here, just mashing strings together and hoping for the best. + +Makes lines with the effect `[Cc]hapter`, `[Cc]hptr` or `[Cc]hap` into chapters. + +Start time is the timestamp, line text is the chapter name. +Language is currently hardcoded to English. + +**Done better by**: `Significance`, SubKt. + +## Restyler + +previously `become-fansubber.lua` + +For dealing with CR scripts. + +Changes style of selected lines to `Default` and copies italic+alignment values from the script's styles to inline tags. + +Can't help if the source script isn't sanely styled. **cannot handle inline tags!** -### Scenebleed Detector +## Scenebleed Detector Finds scenebleeds in the selected lines, and marks them with an effect (`bleed`). -Currently has a hardcoded threshold of 500ms - as my brain is too small - to figure out how to do - a config file. +Currently has a hardcoded threshold of 500ms, as my brain is too small to figure out how to do a config file. **Done better by**: probably some UA script -### Select Comments - -have a guess