Python Libraries, Tools + Resources for Creative and Academic Writers
Today I scoured the internet for tools written in Python that assist writing in any form. After some relentless Google and Github searching, here are my favorites. I found tools to help write modular stories and novels, screenwriting with Trelby and several libraries for academic papers. I haven't tried all of these... yet!
Storywriting
- manuskript: A open-source tool for writers
- writerblocks: A toolkit for writing stories in a modular way
- NovelWriter: novelWriter is an open source plain text editor designed for writing novels.
- Trelby: The free, multiplatform, feature-rich screenwriting program!
- Readeractive: Tool for writing and generating interactive books, also known as gamebooks.
- PAWS: Python Adventure Writing System
Miscellaneous Writing, Text Cleaning and Proofreading Resources
- Language Tool API: Open Source proofreading software for English, French, German, Polish, Russian, and more than 20 other languages. It finds many errors that a simple spell checker cannot detect. See also: language_tool_python library (Github)
- clean-text: Python package for text cleaning
- normality: A tiny library for Python text normalisation. Useful for ad-hoc text processing.
- textstat: Python package to calculate readability statistics of a text object - paragraphs, sentences, articles.
- textblob: Simple, Pythonic, text processing--Sentiment analysis, part-of-speech tagging, noun phrase extraction, translation, spelling correction and more.
- Natural Language Toolkit (NLTK)
- Sumy: Module for automatic summarization of text documents and HTML pages.
- Mackerel: Mackerel provides an automated, easy to use alternative for company or school writing tasks. Simply provide the topic and/or files and we will do the rest.
- Verb Miner: This tool can help you analyze a document and discover cool verbs from pdf papers.
- paper-translater: Chinese and English essay translator, paper translator, clipboard listener
- There are many text editor options like Sublime or Atom with useful plug-ins for text documents or code.
- Free Google Technical Writing Courses
- PythonWriters Wiki
Academic Writing
Tips and Tricks for Writing Scientific Papers: Practice and tips & tricks to write scientific papers in LaTeX, with figures generated in Python or Matlab.
library: A collection of essays and timeless papers
PyLaTeX: A Python library for creating LaTeX files
Begin LaTeX in minutes: Brief Intro to LaTeX for beginners that helps you use LaTeX with ease.
Texbib: A program that helps you to manage your BibTeX references.
BibLatex-Check: A python script for checking BibLatex .bib files for common referencing mistakes!
paperpy: Tools for simplifying the preparation of version-controlled and well-written academic papers.
Academic Writing Check: Check for passive words, weasel words, duplicate words, typographical errors and words strunk & white don't like. (Written in Perl.)
Anatomy of Matplotlib: Tutorial developed for the SciPy conference
SciPy: (pronounced “Sigh Pie”) is a Python-based ecosystem of open-source software for mathematics, science, and engineering.
NumPy: A fundamental package for scientific computing with Python
pandas: A fast, powerful, flexible and easy to use open source data analysis and manipulation tool, built on top of the Python programming language.
A writing tip I learned at Oxford: TLDR read your writing out loud to proof it.
In Math, Computer Science, Physics, or any field where your typical paper has even a modest amount of mathematical notation the percentage of papers written using LaTeX (or even plain TeX!) is probably about 90%+.
Adam Russell, PhD Data Visualization, Computational Geometry
BibTeX is reference management software for formatting lists of references. The BibTeX tool is typically used together with the LaTeX document preparation system.