Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>Well WrittenNew to Visual Studio Code? Get it now.
Well Written

Well Written

ZakladWebdeweloperski

|
16 installs
| (0) | Free
A swiss army tool for novel writers - draft organization, scene markers, and repetition detection
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Well Written

A multi-purpose "swiss army" tool for novel writers. Transform VS Code into a powerful novel writing environment with custom draft file format (.wrt), scene markers for organization, and repetition detection to improve your writing.

Features

📝 Draft Files (.wrt)

Custom file format optimized for creative writing with:

  • Word wrap enabled by default
  • Line numbers for easy reference
  • Clean, distraction-free editing experience

🎬 Scene Markers

Organize your manuscript with hierarchical markers:

  • $ for scenes (smallest division)
  • $$ for chapters (medium division)
  • $$$ for parts (largest division)

Features:

  • ✨ Folding support - collapse/expand sections like Markdown headings
  • 📑 Outline view - hierarchical navigation in sidebar
  • 🔍 Breadcrumbs - see your current location
  • 🎨 Theme-aware styling - works with both light and dark themes
  • 📝 Empty markers allowed - plan your structure first, fill in later
  • 🚫 Not compiled - markers are for organization only, excluded from final output

Example:

$$$ Part One - The Beginning

$$ Chapter 1 - Introduction

$ Scene 1 - The Arrival
Story content here...

$ Scene 2 - The Meeting
More content...

$
Empty scene (to be written later)

📑 Markdown Headers

Use standard markdown headers for additional organization:

  • # H1 - Part level
  • ## H2 - Chapter level
  • ### H3 - Section level
  • #### H4 - Subsection level

Features:

  • 🎨 Bold and colored styling (distinct from scene markers)
  • ✨ Folding support - collapse/expand sections
  • ✅ Compiled into final output (unlike scene markers)
  • 📊 Counted in word count
  • 📘 Converted to proper headings (H1-H4) in DOCX export

💬 Comments

Leave notes to yourself without affecting your draft:

  • 📝 Single-line comments - use // for quick notes
  • 📄 Multi-line comments - use /* ... */ for longer notes
  • 🎨 Visual distinction - comments appear in gray italic (customizable)
  • 🚫 Excluded from analysis - not counted in word count or repetition mode
  • 🔓 Escapable - use \// or \/* */ to show literal text

Tip: If comments aren't visible in your theme, customize the color in settings: wellWritten.comments.color

Example:

$$ Chapter 1

// TODO: Add more description here
The hero entered the dark forest.

/* Note to self:
This scene needs more tension
and better pacing */

Use \// to show literal slashes (not a comment)

�🔄 Repetition Mode

Highlight repeated words to improve your writing:

  • 🎨 Color-coded - each repeated word gets unique color
  • ⚡ Real-time updates - highlights update as you type
  • 🔤 Case-insensitive - "Test", "test", "TEST" treated as same
  • 📝 Apostrophe support - "don't", "can't", "won't" work correctly
  • 🌍 International support - full Polish diacritics (ąćęłńóśźż)
  • 🎯 Easy toggle - Ctrl+Alt+R to enable/disable

Use cases:

  • Identify overused words
  • Spot repetitive phrases
  • Improve word variety
  • Polish your prose

📊 Word Count

Track your progress with automatic word counting:

  • 📈 Status bar display - always visible word count
  • � Hover tooltip - detailed statistics appear on hover
  • 🎯 Smart counting - excludes scene markers and other markup
  • 📚 Page estimation - based on standard book pages (250 words/page)
  • 🔧 Configurable - works with .wrt, .md, .txt (customizable)
  • 🌍 International support - counts Polish and English text correctly

Statistics provided (on hover):

  • Word count
  • Character count (with and without spaces)
  • Page count (customizable words per page)

🎯 Goal Counter

Stay motivated with session-based writing goals:

  • ⏱️ Session timer - track your writing time
  • 📊 Progress tracking - see words written toward your goal (0/500)
  • ⚡ Click to start/stop - easy one-click session management
  • 🎉 Goal celebration - notification when you reach your target
  • 📈 Writing speed - see your words per minute
  • 🔧 Customizable goal - set your daily word target (default: 500)

How it works:

  1. Click the goal counter in status bar to start your session
  2. Write your draft - progress updates in real-time
  3. Reach your goal and get a celebration notification!
  4. Click again to stop and see your session summary

Session summary includes:

  • Total words written
  • Time elapsed
  • Average writing speed (words/minute)

👤 Character Cards

Manage your novel's cast with comprehensive character database:

  • 📋 Create and organize - dedicated sidebar for all characters
  • ⭐ Character types - main, secondary, background, or other
  • 📝 Rich details - comprehensive character information
  • 🖼️ Image support - attach character portraits and photos
  • 🏷️ Tag system - quick reference tags for use in drafts
  • 🔍 Tag search - find where characters appear in your drafts
  • 🎨 Custom properties - add your own custom fields
  • 💾 JSON storage - stored in .well-written/characters/ folder
  • 🔍 Quick access - click any character to view/edit
  • 🗑️ Easy management - create, edit, and delete with simple UI

Character card includes:

Basic Information:

  • Name and Surname: Character's full name
  • Nicknames: Multiple nickname support
  • Age: Character's age (numeric)
  • Gender: Character's gender
  • Occupation: Character's job or role
  • Type: Main, Secondary, Background, or Other

Physical & Personality:

  • Appearance: Physical description (hair, eyes, build, etc.)
  • Personality Traits: Character's personality and behavior
  • Description: General character notes and background

Media & Tags:

  • Image: Attach character portrait (browse and preview)
  • Tags: Quick reference tags (e.g., #watson, #detective)
    • Use tags in your .wrt files for quick character reference
    • Search for tag occurrences across all drafts

Custom Properties:

  • Add any custom fields you need
  • Perfect for story-specific details (e.g., "Magic Ability", "Military Rank")

How to use:

  1. Open the "Well Written" sidebar (book icon in activity bar)
  2. Click "+" to create a new character card
  3. Fill in character details in the comprehensive webview form
  4. Browse for image: Use the Browse button to attach a character portrait
  5. Add tags: Create tags like #watson or #detective for quick reference
  6. Use tags in drafts: Reference characters in your .wrt files using their tags
  7. Find tag occurrences: Right-click character → "Find Character Tags in Drafts"
  8. Click character in the list to edit
  9. Right-click to delete

Tag search example:

$$ Chapter 1

The butler opened the door. #watson looked terrified, 
his clothes soaked through.

#doctor Watson had seen many things in his military career.

After creating a character with tags #watson and #doctor, use "Find Character Tags in Drafts" to instantly locate all mentions!

Data structure: Characters are stored as JSON files in .well-written/characters/ folder. Images are stored in .well-written/images/ folder. All data is easy to version control and backup.

📦 Compilation System

Combine multiple draft files into publishable manuscripts:

  • 📚 Manage compilations - dedicated sidebar section below characters
  • 🔍 Auto-detect files - automatically find all .wrt files in workspace (works immediately!)
  • 📋 File ordering - manually arrange draft files in desired order
  • 🎨 Compilation options:
    • Strip scene markers from output
    • Remove comments from output
  • 📖 Metadata - add book title and author
  • 💾 Export formats - Markdown and DOCX (Microsoft Word)
  • 🚀 Quick compile - right-click compilation for instant export
  • 💼 Configuration storage - saved in .well-written/compilations/ folder

How to use:

  1. Open the "Well Written" sidebar
  2. In the "Compilations" section, click "+" to create a new compilation
  3. Enter a compilation name (e.g., "My Novel - Final Draft")
  4. Book title auto-fills from compilation name (you can change it)
  5. Fill in author name
  6. Click "Detect Draft Files" to auto-add all .wrt files
    • Works immediately! No need to save first
    • Auto-creates compilation if it doesn't exist yet
  7. Use up/down buttons to reorder files as needed
  8. Configure compilation options:
    • Strip markers: Remove scene markers ($, $$, $$$) from output
    • Title page: Include/exclude title page with automatic page break (enabled by default)
    • Automatically removes comments too
  9. Click export button to choose format
  10. Save the compiled manuscript to your desired location

Export formats:

  • 📄 Markdown (.md): Plain text format, perfect for version control and further processing
  • 📘 DOCX (.docx): Native Microsoft Word document with:
    • Optional title page with automatic page break
    • Proper heading hierarchy
    • Title and author metadata (internationalization-friendly)
    • Inline formatting support:
      • *italic* - Italic text
      • **bold** - Bold text
      • ***bolditalic*** - Bold and italic text
      • \* - Escaped asterisk (renders as literal *)
    • Horizontal rule support (---, ***, ___)
    • Professional manuscript formatting
    • Ready to submit or edit in Word

Pro tip: Need PDF? Export as DOCX, then "Save As PDF" in Microsoft Word. You can also use free tools like LibreOffice or online converters.

Inline formatting example:

This is *italic* text, this is **bold** text, 
and this is ***bold and italic*** text.

Use \* to show a literal asterisk.
Mix *italic* and **bold** in the same paragraph!

Compilation config example:

{
	"id": "my-novel",
	"name": "My Novel - Final Draft",
	"sourcePaths": [
		"chapter-01.wrt",
		"chapter-02.wrt",
		"chapter-03.wrt"
	],
	"stripMarkers": true,
	"titlePage": true,
	"metadata": {
		"title": "The Great Adventure",
		"author": "John Smith"
	}
}

Quick compile:

  • Right-click any compilation in the tree view
  • Select "Compile Now" (play icon)
  • Choose export format
  • Save your compiled manuscript!

Quick Start

  1. Create a draft file with .wrt extension
  2. Add scene markers to organize your story:
    $$ Chapter 1
    $ Scene 1
    Your story text here...
    
  3. Add comments with // for notes that won't appear in your final draft
  4. Click goal counter in status bar to start your writing session
  5. Check your word count to see detailed statistics (hover over it)
  6. Toggle repetition mode with Ctrl+Alt+R to check for repeated words
  7. Use outline view (View > Outline) to navigate through scenes
  8. Fold sections to focus on specific parts of your manuscript

Commands

Command Shortcut Description
Well Written: Toggle Repetition Mode Ctrl+Alt+R (Mac: Cmd+Alt+R) Enable/disable repeated word highlighting

Settings

Customize the extension to match your preferences:

Setting Default Description
wellWritten.sceneMarkers.color (theme color) Color for scene markers. Leave empty to use theme color. Examples: #6495ED, rgb(100, 149, 237), rgba(100, 149, 237, 0.8)
wellWritten.repetitionMode.colors 8 colors Array of colors for repetition highlighting. Each repeated word gets the next color in rotation. Use semi-transparent colors (rgba) for best results.
wellWritten.comments.color (theme color) Color for comments (// and /* */). Leave empty to use theme color. Examples: #808080, rgb(128, 128, 128), rgba(128, 128, 128, 0.8)
wellWritten.wordCount.enabledFileTypes [".wrt", ".md", ".txt"] File extensions that display word count in status bar.
wellWritten.wordCount.wordsPerPage 250 Words per page for page count calculation. Standard book page is 250-300 words.
wellWritten.wordCount.countSingleLetters false Include single-letter words (like "I", "a") in word count.
wellWritten.goalCounter.dailyGoal 500 Daily writing goal in words. Click the goal counter in status bar to start/stop tracking.

To customize:

  1. Open Settings (Ctrl+,)
  2. Search for "Well Written"
  3. Modify settings to your preference

Scene Marker Navigation

Folding

  • Click arrow icon next to scene marker to fold/unfold
  • Ctrl+Shift+[ - Fold current section
  • Ctrl+Shift+] - Unfold current section
  • Ctrl+K Ctrl+0 - Fold all sections
  • Ctrl+K Ctrl+J - Unfold all sections

Outline View

The extension provides document symbols that appear in VS Code's built-in outline view:

  • Open the Outline panel in the Explorer sidebar (or View > Outline)
  • See hierarchical structure: Parts > Chapters > Scenes
  • Click any item to jump to that section
  • Automatically updates as you edit

Breadcrumbs

VS Code's breadcrumbs feature works with scene markers:

  • Enable breadcrumbs: View > Show Breadcrumbs
  • Shows current location in document structure
  • Click any level to see and navigate to other sections

Theme Compatibility

All features use theme-aware colors and work beautifully with:

  • ✅ Light themes (Solarized Light, Light+, etc.)
  • ✅ Dark themes (Dark+, Monokai, Dracula, etc.)
  • ✅ High contrast themes

Requirements

  • VS Code version 1.105.0 or higher

Known Limitations

  • Repetition mode: Currently doesn't group word forms (e.g., "run", "running", "ran" are separate)
  • Scene markers: For organization only - not included in exports or compilation

Enjoy writing your novel! 📚✨

For detailed version history and release notes, see CHANGELOG.md.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft