Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
A small Python package for splitting text into dialogue and narrative.
narrative
is available on PyPI. Simply install it with pip
:
pip install narrative
narrative
splits a piece of prose into narrative and dialogue components. The
main function split()
will return a dict containing both narrative
and
dialogue
components:
>>> import narrative
>>> text = '"Hello," he said. "How are you today?"'
>>> narrative.split(text)
{'dialogue': ['"Hello,"', '"How are you today?"'], 'narrative': ['', ' he said. ', '']}
There are two other helper functions as well.
get_dialogue()
returns only the dialogue components:
>>> narrative.get_dialogue(text)
['"Hello,"', '"How are you today?"']
get_narrative()
returns only the narrative components:
>>> narrative.get_narrative(text)
['', ' he said. ', '']
Note: The empty strings are a feature of Python's split()
function. See
Why are empty strings returned in split() results?
for an explanation.
Each function accepts a second parameter of a regular expression used to parse
out the dialogue. This defaults to narrative.DIALOGUE_RE
, which follows the
American standard of using double quotes for initial quotes. narrative
now
includes a second regular expression, narrative.BRITISH_DIALOGUE_RE
, which
follows the British style of using single quotes for initial quotes. Simply use
it as the second parameter for any function:
>>> import narrative
>>> narrative.split(text, narrative.BRITISH_DIALOGUE_RE)
>>> …
>>> narrative.get_dialogue(text, narrative.BRITISH_DIALOGUE_RE)
>>> …
>>> narrative.get_narrative(text, narrative.BRITISH_DIALOGUE_RE)
>>> …
FAQs
A small Python package for splitting text into dialogue and narrative.
We found that narrative demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.