I’ve been using Celtx to write the script for Botnet. It’s a great little application. It has this neat feature whereby it automatically creates a list of characters from your script, and then notes what scenes they appear in.
Unfortunately, Celtx doesn’t have the ability to “refresh” that list of characters. After it’s the characters and the scenes in which they appear are initially indexed, the info stays – even if the characters/scenes are removed.
So I wrote this Python script to keep track of the characters. First it dumps the complete list of characters according to Celtx, and then indexes its own list by reading through the script, and notes in which scenes the said characters have dialog.