Pago – terminal-based screenwriting script

Pago is a powerful terminal-based screenwriting script. It allows the open source text editor Vim to be used as a fully-functional piece of screenwriting software such as Final Draft or Celtx.

This plugin was inspired by the screenplay.vim plugin developed by Alex Lance, which supported Action lines, Character names, and Dialogue.

This Vim plugin supports all major formatting elements of a screenplay, based on both logical and commonly accepted conventions of the screenplay form. It automatically enforces all boundaries within each screenplay element, ensuring proper formatting to the exact specifications of a screenplay.

It also allows access to all six available screenplay elements without any complex keyboard shortcuts or commands.

Features include:

  • Simple offline PDF generation.
  • Pressing TAB cycles through empty screenplay elements in the order: Action, Dialogue, Parenthetical, Character, Transition, and Action.
  • Pressing <Tab> from a blank TRANSITION element will cycle back to the beginning of the line, triggering a blank Action element.
  • Parentheses are automatically inserted when calling a blank Parenthetical element. Pressing <Tab> from within blank parentheses will automatically delete the parentheses and jump to a blank Character element.
  • Parentheses are automatically inserted when calling a blank Parenthetical element. Pressing <Tab> from within blank parentheses will automatically delete the parentheses and jump to a blank Character element.
  • A colon (“:”) is automatically inserted at the end of the line when an Transition element is called. The cursor remains at the spot of the colon when text is either entered or deleted.
  • Text typed within a Transition element is automatically Right-Justified.
  • Pressing <Enter> from a Transition element jumps two lines down the page and prompts a blank Scene Heading element.
  • Pressing <Backspace> on an empty line cycles through empty screenplay elements in the reverse order: Transition –> Character –> Parenthetical –> Dialogue –> Action –>
    End of Previous Element.
  • Pressing <Backspace> from a blank line jumps to the end of the previous element or, if the above two lines are blank, will create a blank Action element two lines above the previous cursorline.
  • Pressing <Backspace> on a line with text will delete the character to the left of the cursor.
  • All text typed with a Scene Heading, Character, or Transition element will be automatically Capitalized.
  • To create a Scene Heading element, press enter while in a blank Action element. The Cursorline will be Highlighted and all text typed within the element will be Capitalized.
  • While in a blank Scene Heading element: Press the <Space> bar to cycle through the common prefixes INT., EXT., and INT./EXT.
  • Press <Enter> to jump down two lines to a new, blank Action element.
  • Active screenplay element is displayed in Caps in the status bar.
  • Page number is displayed in the status bar. This estimates the number of pages within your screenplay using a 56-line-per-page standard.
  • Pressing <Up> in either Insert or Normal modes jumps to the beginning of the line above the cursorline.
  • Pressing <Down> in either Insert or Normal modes jumps to the end of the line above the cursorline.
  • Holding <Left> in either INSERT or Normal modes scrolls through to the beginning of the current element, then jumps to the end of the previous element.
  • Holding <Right> in either Insert or Normal modes scrolls through to the end of the current element, then jumps to the beginning of the next element.
  • Typing text within a screenplay element such as Dialogue or Action will automatically reformat the paragraph if text exceeds the preset end of the line. This improves upon use of the :tw (text width) and :wrap commands by formatting text that is typed within a paragraph, rather than simply at the end of it.

Developer: Mike Zazaian
License: Public Domain


Return to Script Writing

Popular series
Free and Open Source SoftwareThe largest compilation of the best free and open source software in the universe. Each article is supplied with a legendary ratings chart helping you to make informed decisions.
ReviewsHundreds of in-depth reviews offering our unbiased and expert opinion on software. We offer helpful and impartial information.
Alternatives to Proprietary SoftwareReplace proprietary software with open source alternatives: Google, Microsoft, Apple, Adobe, IBM, Autodesk, Oracle, Atlassian, Corel, Cisco, Intuit, and SAS.
GamesAwesome Free Linux Games Tools showcases a series of tools that making gaming on Linux a more pleasurable experience. This is a new series.
Artificial intelligence iconMachine Learning explores practical applications of machine learning and deep learning from a Linux perspective. We've written reviews of more than 40 self-hosted apps. All are free and open source.
Guide to LinuxNew to Linux? Read our Linux for Starters series. We start right at the basics and teach you everything you need to know to get started with Linux.
Alternatives to popular CLI tools showcases essential tools that are modern replacements for core Linux utilities.
System ToolsEssential Linux system tools focuses on small, indispensable utilities, useful for system administrators as well as regular users.
ProductivityLinux utilities to maximise your productivity. Small, indispensable tools, useful for anyone running a Linux machine.
AudioSurveys popular streaming services from a Linux perspective: Amazon Music Unlimited, Myuzi, Spotify, Deezer, Tidal.
Saving Money with LinuxSaving Money with Linux looks at how you can reduce your energy bills running Linux.
Home ComputersHome computers became commonplace in the 1980s. Emulate home computers including the Commodore 64, Amiga, Atari ST, ZX81, Amstrad CPC, and ZX Spectrum.
Now and ThenNow and Then examines how promising open source software fared over the years. It can be a bumpy ride.
Linux at HomeLinux at Home looks at a range of home activities where Linux can play its part, making the most of our time at home, keeping active and engaged.
Linux CandyLinux Candy reveals the lighter side of Linux. Have some fun and escape from the daily drudgery.
DockerGetting Started with Docker helps you master Docker, a set of platform as a service products that delivers software in packages called containers.
Android AppsBest Free Android Apps. We showcase free Android apps that are definitely worth downloading. There's a strict eligibility criteria for inclusion in this series.
Programming BooksThese best free books accelerate your learning of every programming language. Learn a new language today!
Programming TutorialsThese free tutorials offer the perfect tonic to our free programming books series.
Linux Around The WorldLinux Around The World showcases usergroups that are relevant to Linux enthusiasts. Great ways to meet up with fellow enthusiasts.
Stars and StripesStars and Stripes is an occasional series looking at the impact of Linux in the USA.
Notify of

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Inline Feedbacks
View all comments