dialog-formatter
CLI app for extracting and formatting dialog scripts from .docx
to .txt
Getting Started
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
Prerequisites
Software
- Node.js - JavaScript run-time environment
VS Code Extensions
This project is intended to be used with Visual Studio Code and the following extensions are recommended:
- ESLint - Integrates ESLint JavaScript into VS Code
Deployment
Prerequisites
- textutil - Command line text utility
- comes with OS X/macOS 10.4 or newer
- Node.js - JavaScript run-time environment
Installation
# run without installation npx dialog-formatter # install globally and run npm i -g dialog-formatter && dialog-formatter # install locally and run npm i dialog-formatter && npx dialog-formatter
Document Format
.docx
Input - lines only containing whitespace are ignored
- if a line contains at least one tab, then the text after the last tab is interpreted as dialog
- otherwise the entire content of the line is interpreted as the name of the character currently speaking
Example
DEEP THOUGHT
21:42:30: Alright. The answer to the ultimate question ...
LUNKWILL
21:42:33: Yes ...
DEEP THOUGHT
21:42:35: ... of Life, the Universe, and Everything ...
FOOK
21:42:38: Yes!
DEEP THOUGHT
21:42:39: ... is ...
CROWD
21:42:41: Yes ...!
DEEP THOUGHT
21:42:42: Forty two.
.txt
Output - each line of dialog from the input
.docx
produces one line in the output.txt
- each line has the format
<speaking-character> <dialog>
- whitespace at the beginning and end of both the speaking character and the dialog are removed beforehand
Example
DEEP THOUGHT Alright. The answer to the ultimate question ...
LUNKWILL Yes ...
DEEP THOUGHT ... of Life, the Universe, and Everything ...
FOOK Yes!
DEEP THOUGHT ... is ...
CROWD Yes ...!
DEEP THOUGHT Forty two.
Built With
Authors
- Robin Hartmann - Initial work - robin-hartmann
License
This project is licensed under the MIT License - see the LICENSE file for details