The R-I-B-BI Screenwriter is an open-source Python tool for Drawbot that reproduces the stylized visual output of early desktop publishing. The tool is developed by Wim Wepster in collaboration with Frode Helland, and accompanies the release of R-I-B-BI.

Title
R-I-B-BI Screenwriter
Published
1 October 2026
ScreenMASTER.py

Download ScreenMASTER.py from its Sourcehut repository.

Requirements

The script is developed for use with the open-source software Drawbot (Mac only). It further relies on the four nuclearThe “nuclear” font family became the norm in early desktop publishing, where “I” and “B” buttons offered easy access to italic and bold styling. styles from the R-I-B-BI family: R-I-B-BI Regular, Italic, Bold, and Bold Italic.

Getting started
  • Save “ScreenMASTER.py” to a new folder.

  • We recommend making a copy of the file to include your edits. That way you can always return to the original if something goes wrong.

  • Add a second folder inside the first, name it “assets”, and place your licensed copy of the R‑I‑B‑BI family inside.

  • Right click your copy of “ScreenwriterMASTER.py” and open it with Drawbot.

Defining variables

These lines defines the font variables and links them to the font files. The tool should theoretically work with any nuclear font family, but we offer no guarantees.

Dewey Decimal Mono Regular
 

The RGB color values are specified by editing the following variables. The screen is “black”, the text is “white”, and “color” is used for the cursor and text selection.

Dewey Decimal Mono Regular
 

The margins specify the distance from the top and left edge of the screen where the first character is typed.

Dewey Decimal Mono Regular
 

You can also edit the font size and leading. These values are specified in Postscript points.

Dewey Decimal Mono Regular
 

The speed of the animation is specified as frames per second.

Dewey Decimal Mono Regular
 

These lines define the dimensions of the resulting animation in pixels.

Dewey Decimal Mono Regular
 

Define the name and file type of the exported animation by editing these. The tool exports either .gif image sequences or .mp4 videos.

Dewey Decimal Mono Regular
 

In Python code, a hashtag (#) indicates the start of a comment. Any text following this symbol on the same line is not executed. If you want to export a gif sequence, you need to replace the first instance of 'mp4' with 'gif'.

Manuscript instructions

Once your settings are defined, you can start writing your manuscript.

Hit “Run” in Drawbot, and input your text in the text window marked “instructions”. The tool respects line breaks and spaces.

A selection of characters are highjacked for basic styling:

Dewey Decimal Mono Regular
 

These commands are used like this. Note that you can combine multiple commands, for example to set the text to bold and italic at the same time.

Dewey Decimal Mono Regular
 
Dewey Decimal Mono Regular
 
Dewey Decimal Mono Regular
 

From top to bottom: Italics activated > Write “Hello” > Italics deactivated > Write “World” Bold activated > Write “Hello” > Bold deactivated > Write “World” Bold Italic activated > Write “Hello” > Bold Italic deactivated > Write “World”

More complex operations involving multiple characters are surrounded by middle dots, “·” (U+00B7). Here you’ll also need the brackets for activating and deactivating text selection.

Dewey Decimal Mono Regular
 

The structure is as follows:

Dewey Decimal Mono Regular
 

The starting position is marked by the first numeral (0), the end position by the last (5), followed by the command (#). Each step is separated by a comma.

Both text and commands are executed in order, so the following example will first write the word, select it, apply the styling, and finally deselect.

Dewey Decimal Mono Regular
 

Write “Hello” > Select the first five characters > Pause > Set the selection to Bold > Pause > Deselect

Previewing

Leave “save_result” unchecked and click “Update” to preview the frames inside Drawbot.

The rendering is quite slow, so we’ve provided a few options. “Last Frame” is useful for quickly previewing the result. “Low” generates a frame for each typed character. “High” also includes the animated transitions and pauses indicated in your manuscript.

Exporting

Check “save_result” and click “Update” to export the resulting animation to the root folder of your project.

License

This project is released under the MIT License. The code is provided as is, with no warranties or promise of support. Please review the license description for more details.

R-I-B-BI BoldView Specimen
R-I-B-BI