playscript - Structure for Play Scripts
Project description
playscript
概要
台本を構造化データとして扱うためのパッケージです。
インストール
PyPI からインストールする場合は、追加で fountain をインストールします。
> pip install playscript
> pip install git+https://github.com/Tagirijus/fountain.git@7da5447abae640f34448dd36fee83f47a7415fcf
GitHub からインストールする場合は、以下のコマンドでインストールされます。
> pip install git+https://github.com/satamame/playscript.git
クラス
PSc
台本データのクラスです。
PScLine
PSc オブジェクトに含まれる各行を表すクラスです。
"type" 属性により、セリフやト書きといった「行の種類」が決まります。
PScLineType
PScLine の "type" を定義する enum 型です。
例
行を定義して台本を作る
from playscript import PScLineType, PScLine, PSc
title = PScLine.from_text(PScLineType.TITLE, 'ろくでなしの冒険')
h1 = PScLine.from_text(PScLineType.H1, 'シーン1')
direction = PScLine.from_text(PScLineType.DIRECTION, '六郎と七郎、登場。')
dialogue1 = PScLine.from_text(PScLineType.DIALOGUE, '六郎「どうする?」')
dialogue2 = PScLine.from_text(PScLineType.DIALOGUE, '七郎「帰って寝る」')
endmark = PScLine.from_text(PScLineType.ENDMARK, 'おわり')
script = PSc(
lines=[
title,
h1,
direction,
dialogue1,
dialogue2,
endmark,
]
)
Fountain (日本式) から台本を作る
import textwrap
from playscript.conv.fountain import psc_from_fountain
fountain_str = textwrap.dedent('''\
Title: ろくでなしの冒険
Author: アラン・スミシ
# 登場人物
六郎
七郎
# シーン1
六郎と七郎、登場。
@六郎
どうする?
@七郎
帰って寝る
> おわり
''')
script = psc_from_fountain(fountain_str)
Fountain (日本式) を読み込んで PDF にする
from playscript.conv import fountain, pdf
with open('example.fountain', encoding='utf-8-sig') as f:
script = fountain.psc_from_fountain(f.read())
pdf_stream = pdf.psc_to_pdf(script)
with open('out.pdf', 'wb') as f:
f.write(pdf_stream.read())
Fountain (日本式) を読み込んで HTML にする
from playscript.conv import fountain, html
with open('example.fountain', encoding='utf-8-sig') as f:
script = fountain.psc_from_fountain(f.read())
html_str = html.psc_to_html(script)
with open('out.html', 'w', encoding='utf-8') as f:
f.write(html_str)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
playscript-0.2.7.tar.gz
(22.3 kB
view hashes)
Built Distribution
playscript-0.2.7-py3-none-any.whl
(23.1 kB
view hashes)
Close
Hashes for playscript-0.2.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f14a5f7268dd0a828387e9b12a568c3b2d83c378b8fe2c6236722061ebcb5f41 |
|
MD5 | 669e35a315887a493f553fcd8f9133dd |
|
BLAKE2b-256 | e84331206d5e103cb56ccd8be028dcff932fd3f4beeb0b3015b13487eae68e7e |