Skip to content

About

Script Editor is a powerful, distraction-free screenwriting plugin for Obsidian. Write industry-standard screenplays directly in your vault with a dynamic live preview, smart autocomplete, real-time runtime estimates, and professional PDF export — with full support for both LTR (English) and RTL (Hebrew) scripts.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Repository files navigation

🎬 Script Editor for Obsidian

Version Obsidian License: MIT TypeScript

Script Editor is a powerful, distraction-free screenwriting plugin for Obsidian. Write industry-standard screenplays directly in your vault with a dynamic live preview, smart autocomplete, real-time runtime estimates, and professional PDF export — with full support for both LTR (English) and RTL (Hebrew) scripts.


✨ Features

  • 📺 CodeMirror 6 Live Preview: Screenplay text is automatically formatted into industry-standard layout (scene headings, character cues, dialogue blocks, parentheticals, and transitions) as you write.
  • ⚡ Smart Screenplay Autocomplete:
    • Context-aware autocomplete for scene types (INT., EXT., בפנים., בחוץ., etc.).
    • Time-of-day suggestions (DAY, NIGHT, LATER, בוקר, ערב, etc.) after typing a hyphen (-).
    • Automatic language detection dynamically adjusts suggestions between English and Hebrew.
  • 📄 Industry-Standard PDF Export:
    • Exports to Hollywood-standard screenplay format (12pt Courier, precise inch margins, header numbering, and title page).
    • Built-in embedded font engine for Hebrew (Alef) and English (Courier).
  • ⏱️ Live Runtime Estimator: Real-time status bar indicator (🎬 45 min) calculating estimated screen time at the industry-standard rate (~130 words per minute).
  • 📋 Script Metadata GUI: Dedicated visual properties editor for Title, Subtitle, Writers, Production Company, Date, and folder scopes.
  • 🎭 Character Notes Integration: Link character cues directly to Markdown notes in your vault's character directory for worldbuilding and character development.
  • 🔄 Instant View Switching: Easily toggle between Live Preview, raw Source Mode, and Metadata Editor via pane options or Command Palette.

✍️ Screenplay Syntax Cheat Sheet

Script Editor uses intuitive, lightweight Markdown-friendly prefixes to identify screenplay components:

Element Syntax Prefix Example
Scene Heading # # INT. COFFEE SHOP - DAY
# בחוץ. רחוב סואן - לילה
Character Cue @ @ WALTER
@ ליהי
Parenthetical "" "" (quietly, looking at the door)
Dialogue " " Are we sure about this plan?
Transition ! ! DISSOLVE TO:
! חיתוך ל:
Action / Description (plain text) He sets his steaming coffee cup on the wooden table.

Title Page & Frontmatter

At the top of your .script file, include YAML metadata (or use the visual Metadata tab):

---
title: The Silent Signal
subtitle: Pilot Episode
writers:
  - Jane Doe
  - John Smith
prodCompany: Nebula Pictures
date: 2026-11-07
characterFolder: Characters
locationFolder: Locations
---

⌨️ Commands & Shortcuts

Access these from the Obsidian Command Palette (Ctrl/Cmd + P) or the pane action menu:

  • Script Editor: Toggle preview mode — Switch between WYSIWYG screenplay layout and raw source code.
  • Script Editor: Edit script metadata — Open the metadata form to edit title, author, and production info.
  • Script Editor: Export script to PDF — Generate and save a print-ready screenplay PDF.

📥 Installation

Manual Installation

  1. Download the latest release assets (main.js, manifest.json, styles.css) from the Releases page.
  2. In your Obsidian vault, navigate to:
    <VaultFolder>/.obsidian/plugins/
    
  3. Create a folder named script-editor and place the downloaded files inside.
  4. Open Obsidian Settings → Community Plugins, reload plugins, and enable Script Editor.

🛠️ Development

If you want to contribute or modify the plugin:

# Clone the repository
git clone https://github.com/ShakedKod/Obsidian-Script-Editor.git
cd Obsidian-Script-Editor

# Install dependencies
npm install --legacy-peer-deps

# Start development build with watch mode
npm run dev

# Build for production
npm run build

# Run linter
npm run lint

📜 License

This project is licensed under the MIT License.

About

Script Editor is a powerful, distraction-free screenwriting plugin for Obsidian. Write industry-standard screenplays directly in your vault with a dynamic live preview, smart autocomplete, real-time runtime estimates, and professional PDF export — with full support for both LTR (English) and RTL (Hebrew) scripts.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages