Skip to main content

A UI-compatible clone of AtariWriter, built with Textual

Project description

safari_writer

A retro word processor plus a family of keyboard-first companion tools.

Main goals

  • Better notepad
  • Can post to Mastodon with spellcheck
  • Can be used to read long documents
  • Supports feature set of AtariWriter and adjacent applications, including database, image viewer, file browser
  • 1980 Retro UI, Retro scripting languages
  • Modern features, modern keybindings

Installation

pipx install safari-writer

Usage

You can run the main editor or the companion tools directly:

safari-writer
safari-dos browse C:\work --show-hidden --sort date --descending
safari-dos ls C:\work --sort type
safari-chat
safari-chat docs\index.md
safari-fed --folder Mentions
safari-base address_book.db
safari-reader --library C:\books
safari-repl demo.bas
safari-slides docs\safari_suite_tools.slides.md
safari-view open images\frog.png --mode st --no-dithering
safari-view render images\frog.png --mode 2600 --width 160 --height 192 --output out\frog-2600.png

Most people start with safari-writer and open the other tools from the Main Menu.

Features

  • Safari Writer: The core word processor.
    • Keybindings mostly modern, but somewhat influenced by original Atari.
    • Search and replace, word count, and alphabetize.
    • Style codes/printer codes for formatting.
    • Print/export to markdown, ANSI preview, postscript, or PDF.
  • Proofreader: A built-in spell checker.
  • Mailmerge: Database-driven form letters with a dedicated record editor.
  • Safari DOS: A menu-driven way to do file browsing and manipulation, featuring a classic two-pane layout and a "Garbage" bin for file recovery.
  • Safari Chat: A "Clippy" style helper based on ELIZA. It answers your questions using the help docs and offers emotional support—no LLMs involved.
  • Safari Base: A dBASE-style shell for browsing and updating SQLite-backed address-book style data.
  • Safari Fed: A calm, keyboard-driven Mastodon client styled after Pine and retro BBS readers. Queue-based reading, folder metaphors, thread view, and a direct handoff to Safari Writer.
  • Safari Reader: A keyboard-first library, catalog, and long-form reading app.
  • Safari REPL: A small Atari BASIC REPL and .BAS file runner with Writer handoff for loaded files.
  • Safari Slides: A SlideMD presentation viewer with notes and fragment support.
  • Safari View: A retro image viewer and renderer with Textual, Tk, and batch render entry points.
  • Safari BASIC: The shared Atari BASIC-compatible macro engine used by Safari Writer and Safari Fed.

Current Limitations

  • Doesn't support original binary AtariWriter files
  • Keybindings still evolving.

Trademarks and stuff

I have no relationship to Atari. This is Safari Writer and has no relationship to Atari.

License is MIT.

Dual licensed with a Shareware license. Dual meaning, you pick which of the two you want to govern our relationship.

Languages / Internationalization

Safari Writer automatically uses your operating system's locale. If you want to run the app in a different language, set the SAFARI_LOCALE environment variable before launching.

Code Language
en English
eo Esperanto
es Spanish
fr French
is Icelandic
ru Russian

Linux / macOS:

SAFARI_LOCALE=eo safari-writer

Windows (PowerShell):

$env:SAFARI_LOCALE="eo"; safari-writer

Windows (Command Prompt):

set SAFARI_LOCALE=eo && safari-writer

You can use a bare language code (eo) or a full IETF tag (eo_EO). If no catalog exists for the full tag, the bare code is tried automatically. If neither is found, the app falls back to English.

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

safari_writer-0.1.5.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

safari_writer-0.1.5-py3-none-any.whl (744.2 kB view details)

Uploaded Python 3

File details

Details for the file safari_writer-0.1.5.tar.gz.

File metadata

  • Download URL: safari_writer-0.1.5.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for safari_writer-0.1.5.tar.gz
Algorithm Hash digest
SHA256 0684bec4eff791883585567a7e437e8bc08dc77648cb49a27cd7c0e3e4869561
MD5 f79a47f048704bacc5087a859eb972e3
BLAKE2b-256 32fddff64f2daec7c3c857b4b12a3f61328db4fbfe05b0cf69422be279f1f28d

See more details on using hashes here.

Provenance

The following attestation bundles were made for safari_writer-0.1.5.tar.gz:

Publisher: publish.yml on matthewdeanmartin/safari_writer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file safari_writer-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: safari_writer-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 744.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for safari_writer-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 f13c87bb8bb3b8a02312f5942955022d17c7ad39aec44ad8ce1124ce6a6116fb
MD5 a7596a5d927b4d035fa12085721ef3ba
BLAKE2b-256 07dc775fb3ca332db31ffa045ed13fa010fded20e22b0af9c99130becf346257

See more details on using hashes here.

Provenance

The following attestation bundles were made for safari_writer-0.1.5-py3-none-any.whl:

Publisher: publish.yml on matthewdeanmartin/safari_writer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page