Edit Mac Scrivener 3 With iOS Ulysses, Addendum (Part 3.5) Finding Compile #amwriting

Scrivener and Ulysses CAN get along

Articles in this series:

Addendum (Part 3.5): Finding Compile

It struck me that in all this time, I haven’t discussed actually compiling with the “Convert Multimarkdown to Rich Text” option on—where to find it, what to do with it, etc. Okay, then, when you first use File→Compile in Scrivener, here’s how you turn on that option:

Screen shot of the Compile dialog with options important to compiling with the convert multimarkdown to rich text workflow.

  1. Choose any “Compile for:” target except a target that says “Multimarkdown,” Those are part of a different workflow that compiles to an intermediate format. You’re going to compile directly to your intended final output format.
  2. In the right-hand sidebar, click on the gear icon to bring up the Compile Options panel.
  3. Turn the “Convert Multimarkdown to Rich Text in Notes and Text” option ON.
  4. Choose a compile format from the left hand column.

That’s it! Scrivener will now take your Multimarkdown and convert it to rich text before compiling to your chosen target.

Optional settings:

  • Remove Annotations: Turn this on to make sure your inline annotation “tags” don’t show up in your compiled output.
  • “Convert Markdown to rich text in titles and synopses”: This is a bit misleading. It only really converts *italics* and **bold.** But if you use these in your titles (and in your synopses if you’re including them in your compile) you can convert them on compile with this.

I’m not going to cover more detail of how to compile. You can find compile help in Scrivener’s Interactive Tutorial (Help→Interactive Tutorial…) and a complete reference in the Scrivener Manual (Chapter 23, “Compiling the Draft” and Chapter 24 “The Compile Format Designer”). But I will say that if you’re new to Scrivener’s compiler, give yourself plenty of time to learn it! Compile is almost a whole second application. On the Scrivener forums, I often see posts from desperate writers who left learning the compiler until two hours before a hard deadline. Such posts usually end in tears.

Don’t be that writer. Take time to learn to compile.

Edit Mac Scrivener 3 With iOS Ulysses, Part 3: Setting Up Sync #amwriting

Scrivener and Ulysses CAN get along

Articles in this series:

Part 3: Setting Up Sync

Introduction

In Part 1 of this series, I talked about changing your Scrivener habits in order to edit with Ulysses, eventually. In Part 2, I talked about changing your existing project so that it compiles with the Scrivener “Convert MultiMarkdown to Rich Text” (MMD→Rich Text) compile option ON, and so that it syncs as smoothly as possible with Ulysses.

If you’re new to my articles on how to edit Scrivener projects with Ulysses, please review “Is this workflow for you?” in Part 1. I strongly recommend you make the changes to your existing Scrivener project that I suggested in Part 2 before proceeding.

If you need a review of Markdown, and of MultiMarkdown tables, you can find them here:

Notes on iCloud Drive, Dropbox, iOS, and Ulysses

The good news is that this process is completely independent of whether you choose iCloud Drive or Dropbox for your sync location. Use whichever you like; I won’t distinguish between them in the rest of this article. However, as of this writing, there are only two other cloud services that I know will work: Working Copy or Secure ShellFish. Ulysses may add another, but hasn’t done so yet.1 You don’t need to have Dropbox installed on your iOS device or devices, however, so that if you’re using a free Dropbox account, your iOS devices won’t count against your three-device limit.

Preparing Your Laptop or Desktop Computer

Dropbox Prep: You must have Dropbox installed on your Mac, so that you have a Dropbox folder available on your hard drive or SSD.

iCloud Drive Prep: None needed, really, other than turning iCloud Drive on in your System Preferences.

Create a Sync Folder for Your Project

We’re going to use Scrivener’s “External Folder Sync” feature to set up sync with Ulysses. The initial setup must be done on the Mac, and mostly from your Scrivener project. External folder sync is a project-based feature, so you’ll need to set up sync separately for each project you want to edit with Ulysses.

If you’ve never used External Folder Sync before, please review Section 14.3, “Synchronised Folders”, in the Scrivener Manual.

  1. In Finder, somewhere inside your chosen cloud service’s folder, create a new folder with the name of your project (hereinafter referred to as “MyProject_Sync”.) I’m not going to tell you how to organise your cloud service’s folder—create inside the cloud folder wherever it makes sense to you.
  2. From this point onward, we’ll be working in Scrivener with the project you want to sync open. First, let’s set up our export options to work with Ulysses. Use the menu item Scrivener→Preferences… and move to the “Sharing” panel. In the “Sync” tab, turn on the option “Convert text inside (()) and {{}} to inline notes when using plain text.” Turn this on, because it will let us use Scrivener’s inline annotations and footnotes as we discussed in Part 1 and in Part 2. The panel should look like this:
    Scrivener Preferences dialog shows turning double parens and double braces ON for External Folder sync
  3. In Scrivener, choose the menu item File→Sync→With External Folder… . You’ll see this dialog:
    Option-by-option illustration of how to set up Scrivener External Folder sync for Ulysses
    Let’s take each option and see how best to use it with Ulysses.

    1. “Sync files in this project with external folder:” – Click the “Choose…” button here, and you’ll get the standard Mac Open File dialog. Navigate to the folder MyProject_Sync you created in step 1 above, and with that folder selected, click the “Open” button. You should see the path to your folder appear in the text box.
    2. “Sync the contents of the Draft folder” – This is your work-in-progress. Turn this ON.
    3. “Sync all other text documents in the project” – This would be all your notes that are in text documents, your front matter, and your back matter. If you’d like to be able to review these files in Ulysses, turn this ON, otherwise leave it OFF.
    4. “Sync only documents in collection:” – This is how you limit what gets synced. If, for example, you want your notes in Ulysses but don’t want your front and back matter, set up a collection (See Section 10.2, “Using Collections”, in the Scrivener manual) that contains all your Draft documents and only the Notes documents that you want to be able to see in Ulysses.2 Choose that collection from the dropdown menu and turn this option ON. Otherwise, leave it OFF and everything gets synced. You can always change this later if you change your mind.3
    5. “Prefix file names with numbers” – this is up to you. If you turn this on, there will be a number (representing Scrivener Binder order) at the front of each file name when you look at it in Ulysses. By then setting Ulysses to sort by file name, you can see all your documents in their Scrivener Binder order. I find this very useful indeed, and always keep this option on, but decide for yourself. You can always change your mind on this.
    6. “Take snapshots of affected documents before updating” – I strongly suggest leaving this ON. This Scrivener option is what will let you quickly recover from any accidental formatting loss from Ulysses. Once a week, I use the Documents→Snapshots→Show Snapshots Manager dialog to clean up automatic snapshots I no longer need. Learn more in the Scrivener manual, section 15.8, “Using Snapshots.”
    7. “Check external folder on project open and automatically sync on close” – I recommend leaving this ON. This is where the automation happens on the Scrivener side of things. You’ll need to remember to close your project when you switch to Ulysses for the day, or whenever. If this just isn’t going to happen for you, there’s a setting for that – in Scrivener→Preferences, “General” panel, “Automatic Quit” in the sidebar. Choose an auto quit interval that’s not so short that it will annoy you but not so long that you’ll be typing away in Ulysses before it happens.
    8. “Import new non-Draft items into” – This needs a bit of explanation. (If you’re not syncing your notes and such, this won’t apply to you.) Any new document you create in Ulysses that you put into the Draft folder in Ulysses will show up at the bottom of the Draft (or Manuscript) folder in Scrivener, and you’ll need to sort it into your project structure. But if you do sync notes, this lets you choose which folder any new note you make will appear in Scrivener. The Research folder is a good option.4
    9. “Format for external Draft files” and “Format for other external files” – Ulysses can’t read Scrivener “.rtf” files any more than Scrivener can read Ulysses’ native format (“.ulyz”). The format that both can read and write is “Plain Text” with extension “md”. Set this up here.
    10. “Automatically convert plain text paragraph spacing” – Turn this OFF.5
  4. Re-check your settings, then click the “Sync” button. Scrivener will write out Markdown files for all the documents you included in sync. They’ll appear in two new folders, “Draft” and “Notes”, that Scrivener creates inside the folder you created in Step 3.1 above. If you’ve decided to sync a lot of files, this may take a while the first time.
  5. Close your Scrivener project! We’re moving to Ulysses at last!
Connect iOS Ulysses to Your Sync Folder

For each iOS device you’d like to use with your new Scrivener sync folder, you’ll need to set up Ulysses to use Ulysses’ own External Folder feature. (It’s unfortunate that it uses a similar name to the Scrivener feature, because it’s really quite different.) If you’ve never used Ulysses’ External Folder capability before, I suggest you review its tutorial on the Ulysses website.

  1. Tap the gear icon in your Ulysses library panel.
  2. In the Settings popover, tap the Library item.
  3. Connect Ulysses to the sync folder:
    • If you’re using iCloud Drive or some other non-Dropbox cloud service:
      • Tap on the “Add from Other Location…” item. You’ll be taken to the Apple Files app interface.
      • Navigate to the folder you created in Step 3.1 above. You’ll see the new Draft and Notes folders inside, but be sure the top level folder “MyProject_Sync is selected.
      • Tap “Done” in the upper-right corner. You’ll be taken to the folder settings panel.
    • If you’re using Dropbox:
      • Tap the “Add from Dropbox…” item.
      • If you haven’t connected Dropbox to Ulysses before, sign in to the Dropbox account that you saved your sync folder to.
      • Navigate to the folder you created in Step 3.1 above.
      • Tap the “MyProject_Sync” item at the bottom of the panel. You’ll be taken to the folder settings panel.
  4. In the folder settings panel:
    • Change the icon if you like.
    • Sort by title if you like (to take advantage of your Binder order numbers.)
    • Set “Read and Write Markdown Files” to ON.
    • Set the “Default File Extension” to “.md” to match what you told Scrivener.
    • Turn “Create Reference Links” on if you like (I don’t, but it’s a matter of personal preference. Review CommonMark if you don’t remember the difference.)
    • Turn “Always use Fenced Code Blocks” ON. This will make using code blocks to mark off styled text in Scrivener much easier.

Repeat the above for every iOS device you want to use to edit your Scrivener projects, and for each Scrivener project you want to edit.

There you are! When you want to work on iOS Ulysses, close your project on your Mac, or use the menu item File→Sync→With External Folder Now. (You can put this in Scrivener’s toolbar if you like.) When you want to incorporate your changes from Ulysses, open the project on your Mac or again use File→Sync→With External Folder Now.

A Warning About Document Titles/File Names

Are you letting Scrivener automatically name some of your files? Scrivener External Folder Sync produces long, long filenames in that case, like this: “068 I opened the sitting room drapes and settled myself into my own armchair. I... [85].md

That final “[85]” is Scrivener’s internal file ID and without it, your changes won’t get synced back to your original file. Instead, you’ll find a new document with your changes.

The problem is that Ulysses can’t handle such a long filename, and will truncate it to something like: “068 I opened the sitting room drapes and settled myself into my own ar.md” It loses Scrivener’s file ID (“[85]”) and thus confuses Scrivener on the return trip.

My workaround is to edit the filename myself, to “068 [85]” (in the first line in the Ulysses sheet) before editing anything else in the file. Scrivener is perfectly happy with that, and my changes are synced normally. Another solution would be to name all your files yourself in Scrivener with somewhat shorter names.

If you accidentally have a file ID truncated, all is not lost. You’ll find the “new” document at the bottom of the Draft folder in your Binder. You’ll be able to tell that it’s not connected to the original when you’re doing your “return from sync” check because you won’t see any snapshots in the Inspector for it. Take a deep breath, and find the original in its place in the Binder. Now, you’ll do manually what External Folder sync would have done:

  1. Make a snapshot of your original (“Real_File” in this example), naming the snapshot whatever you like. (“Lost_ID” for this example.)
  2. Open the new version from Ulysses (“Duped_File” in this example), select all its text, and copy to the clipboard.
  3. Return to Real_File, select all its text, and paste in the text from Duped_File.
  4. Compare the text you just pasted to the Lost_ID snapshot, restoring formatting if you need to.
  5. Move Duped_File to the Trash, and then delete it from the Trash (so you won’t get confused in future). You don’t need it any more; you’ve incorporated your changes into the original and have a snapshot of that original before changes.
Best Practices
  • Avoid using Scrivener features for things that Markdown and Multimarkdown plus MMD→Rich Text compile can do. Lists, tables, images, external links, italics, and bold text are best done with Markdown features rather than with Scrivener.
  • Remember to mark paragraphs containing Scrivener styled text, Scrivener internal links, or Scrivener-inserted graphics when you add them in Scrivener.
  • Avoid editing paragraphs containing Scrivener styled text, Scrivener internal links, or Scrivener inserted graphics with Ulysses.
  • If you can’t remember to close your projects so that Scrivener writes out changes (or use the File→Sync→With External Folder Now command), use the Scrivener→Preferences→General “Automatic Quit” option.
  • When you return to Scrivener after editing with Ulysses and External Folder Sync gets run, you’ll be shown an Updated Documents list in the Binder area. I suggest checking each document against its most recent snapshot in the Inspector, to spot any formatting, image, or link loss and correct it quickly before you forget! (Read more in the Scrivener manual about using snapshots in section 15.8.) This seldom takes long and is good insurance.
  • To keep project size and backup time lower, once a week use Documents→Snapshot→Show Snapshot Manager in Scrivener, after you’ve checked your most recent Ulysses updates. Delete older “Pre-Sync External File Version” and “Pre-External File Sync Overwrite” snapshots. Your own caution and experience will be your best guide as to how to balance project size, sync speed, and safety.
  • Be aware of your Ulysses filename length. If a filename ends in “…” before the ID number in brackets, edit the filename in Ulysses to contain only the ID in brackets and the front Binder order number (if you’re using it). This will prevent the file from getting disconnected from its Scrivener original.

  1. You could as easily be using Scrivener for Windows, and this workflow would still work on the iOS side. I’m not addressing this for two reasons: First, I don’t have a Windows device so I can’t address Windows-specific Scrivener procedures. Second, using Ulysses on iOS has its own limitations (not unlike iOS Scrivener.) There are certain preferences that can only be changed in Mac Ulysses—and Ulysses does not have a Windows version, nor is it likely to in future. All my directions will assume that you are using Mac Scrivener. 
  2. I use a saved search for this. I added a keyword, “SYNC”, to the files I’d like to have in Ulysses, searched for that keyword in Project Search, then at the very bottom of the project search context menu, saved the search as a collection. I don’t have to adjust the collection, just add the keyword to each new file as it comes back to Scrivener. There are many other ways to set up project searches that may work well for you. Read more detail in the Scrivener manual, section 10.2.4 “Saved Search Result Collections” and section 11.1, “Project Search.” 
  3. Perhaps this is a good place to talk about Scrivener folders. You might be tempted to eliminate your folders from the files you’ll be syncing – there’s no text in them, right?

    Well, not necessarily. I often put notes into my folders – they’re just specially tagged text files in Scrivener, after all. Some people put things like chapter introductions or epigrams into them. More than that, though, they’re “markers” – even though they don’t show up as indented in Ulysses, I can use them to show me where I am in my document structure. This is one of those things that’s up to you. Me, though, I sync all mine, even if they’re empty. 

  4. If you’d like to have new Draft files show up in an “Inbox” folder instead of at the bottom of the Draft folder, you can do that. Set up a new top-level folder in Scrivener called “Inbox”, outside the Draft folder. Point this setting to that folder. Then, when you create a new Draft “sheet” in Ulysses, move it in Ulysses to the Notes folder (or create it there in the first place.) On return sync, Scrivener will take those new files, put them in the Inbox folder you’ve set up (along with any new Notes files), and from there you can sort them back into your project structure where they belong, be they draft or notes.

    If you use this option, do use a regular collection to limit your sync rather than a saved search. Scrivener will automatically add new files to the collection. 

  5. This would convert single enter characters to double enters on outgoing sync, and reduce double enters to single on incoming sync. You’ve already done this because Scrivener MMD→Rich Text compile requires it. Turning this on will mess up your documents’ appearance in Ulysses and make it harder to edit in Ulysses and have the results compile in Scrivener. OFF. 

Edit Mac Scrivener 3 With iOS Ulysses, Part 2: Prepping Your Existing Scrivener Project #amwriting

Scrivener and Ulysses CAN get along

Articles in this series:

Part 2: Prepping your existing Scrivener Project

Introduction

In Part 1 of this series, I talked about changing your Scrivener habits in order to edit with Ulysses, eventually. In Part 2, I’m going to talk about changing your existing project so that it compiles with the Scrivener “Convert MultiMarkdown to Rich Text” option ON, and so that it syncs as smoothly as possible with Ulysses. Believe me, you want to do as much as possible of this work before you start syncing and editing with Ulysses. If you’re new to my articles on how to edit Scrivener projects with Ulysses, please review “Is this workflow for you?” in Part 1. You’re about to make some significant changes to your existing project, and I wouldn’t want you to put in a few hours of work on it and then blame me if you don’t like the result… If you’re not sure, I suggest you start with a new project making the changes to the base preferences I suggest in Part 1, and then skipping ahead to Part 3. Or, you could make a fresh copy of the Scrivener Tutorial Project (in Scrivener, use the menu item Help→Interactive Tutorial to make a new one.) and follow along here in Part 2 without touching your work-in-progress (WIP) until you’re sure you understand the needed changes. But if you’re brave and reasonably certain, I’ll provide directions so that you’ll be able to revert your entire WIP (if needed) or any part of it. Just as a reminder, you’ll need to type Markdown and MultiMarkdown directly into Scrivener. If you need to, you can review them here:

Ready?

Let’s make a backup and a bunch of snapshots!

First, use the menu command File→Back Up→Back Up To… to make a backup of the project you’re converting. (From now on I’ll refer to that project as your WIP, even though it may be a copy of the Tutorial.) Be sure to tick the “Back up as ZIP file” checkbox underneath the file list to make the backup a compressed archive! Save the backup somewhere other than your usual backup folder, so that you can find it easily (I suggest the Desktop.) With that backup tucked away as insurance, let’s make named snapshots of all your WIP’s files and folders.

  • Select all the top-level folders in your Binder.
  • Use the menu command View→Outline→Expand All to show everything in your Binder.
  • Use ⌘-A or Edit→Select All so that all the documents in your Binder are selected.
  • Use Documents→Snapshots→Take Titled Snapshots of Selected Documents.
  • Give the snapshots a name, like “Before Ulysses Conversion” or whatever else takes your fancy, and click OK. (Any document that isn’t text, or is empty, will be ignored.) It may take a while, if your WIP is large. Get a fresh cup of your caffeinated beverage of choice.

Now you can not only revert any individual document to its “before Ulysses” state, you’ll be able to see what it looked like before you started, so you can check your progress. Finally, before we start the changes, I suggest you turn on View→Text Editing→Show Invisibles. Some of what we must do involves changing the number of spaces, tabs, and returns in your text. It helps to be able to see them.

Convert Inspector Comments and Inspector Footnotes

This one’s easy, and easy to reverse as well.

  1. In the Binder, select all the text documents that you think you might ever compile.
  2. Put the editor into Scrivenings view. It may take a few seconds to load if your project is large.
  3. After the view loads, put your cursor somewhere in the editor.
  4. Display the Inspector, showing the Comments and Footnotes tab.
  5. Nothing there? You’re done. Move on to Update Paragraphs, below.
  6. If you have some, ask yourself this question: Will I ever need to have these in the Inspector again?
  7. If your answer is yes, scan through your comments and footnotes.
  8. If any comment or footnote has more than one paragraph, remove the paragraph breaks. (I like to put in a bullet so that I can easily restore the paragraphs after I return the comments to the Inspector.)
  9. After you’re done, put your cursor somewhere in the editor again.
  10. Use the menu command Edit→Transformations→Convert Inspector Comments to Inline Annotations.
  11. Use the menu command Edit→Transformations→Convert Inspector Footnotes to Inline Footnotes.

If later you need to put your comments and footnotes back into the Inspector, use a similar process but instead use Edit→Transformations→Convert Inline Annotations to Inspector Comments and Edit→Transformations→Convert Inline Footnotes to Inspector Footnotes. It’s easiest if you restore paragraphs after you’ve transformed the comments and footnotes back to the Inspector.

Update Paragraphs

First, if you haven’t already, follow the directions I referenced in Part 1 for removing any “body style” or “normal style” from your project, and the directions for changing your default paragraph style to block style throughout your project. Here are the links again:

At this point you’re probably cursing me: “Darn you, Dragon, now I couldn’t find where my paragraphs begin and end if I didn’t have ‘Show Invisibles’ on!” This next step is where you fix that.

  1. Once again, in the Binder, select all the text documents that you think you might ever compile.
  2. Somewhere in the Scrivenings view, select the ¶ symbol at the end of a paragraph and copy it.
  3. Now choose Edit→Find→Project Replace… and paste the ¶ symbol once into the Find box and twice into the Replace box. It should look like this:Project replace dialog for replacing one return with two.
  4. Click “Replace.” In the “Project Replace Cannot Be Undone” alert, click OK.

From now on, you’ll need to press “enter” twice after each paragraph. This paragraph formatting will make it obvious if you don’t! It quickly becomes habit.

Quality Point: Line Breaks

Do you ever use line breaks within a paragraph? (They show up as “↩︎” when you have Show Invisibles on.) If you do, you’ll need to change each one to two spaces plus a new paragraph (“・・¶” when Show Invisibles is on.) Use the technique of copying and pasting into the Project Replace dialog above to change all these now.

Update Bold and Italic Text

This isn’t hard, but it is tedious if you have a lot of these. (If you use a keyboard macro utility, you can automate this. I’ll give keystrokes so that you can do that easily, but as I don’t use such a utility myself, I can’t tell you how to set it up.)

  1. Change Scrivener preferences to use underscores as italics markers. Open Scrivener→Preferences…, and in the Sharing panel under the Export tab, uncheck “Convert underscores to underlines when converting Markdown”. It should look like this: Scrivener Preferences dialog for adjusting underscore meaning
  2. You should already have your “compilable” documents selected from above. If not, please select them and place your cursor at the beginning of the Scrivenings view.
  3. Use the menu command Edit→Find→Find by Formatting… (Keystroke: control-option-command-F “⌃⌥⌘F”)
  4. Set up to search for italics. It should look like this: Scrivener "Find by Formatting" dialog set up to search for italics
  5. Go ahead and click “Find.”
  6. Repeat the following steps until you’ve processed them all:
  7. Move to the beginning of the selection. (Keystroke: left arrow key “←”)
  8. Type an underscore. (Keystroke: shift-hyphen “⇧-“)
  9. Select the italics again. (Keystroke: shift-option-command-G “⇧⌥⌘G”)
  10. Move to the end of the selection. (Keystroke: right arrow key “→”)
  11. Type another underscore. (Keystroke: shift-hyphen “⇧-“)
  12. Select the next italics in the Scrivenings view. (Keystroke: shift-option-command-G “⇧⌥⌘G”)
  13. Start over from step 2, but this time search for bold, and type two asterisks “**” instead of a single underscore.

Some folks use a style for italics and bold. Life with Ulysses will be much simpler if you don’t. To de-style your italics and bold, just delete the styles you used for them from the Styles list (Format→Style→Delete Style and choose your italics or bold style from the menu.) The text will still be formatted (though again, life with Ulysses will be simpler if you don’t bother in future and use underscores and double asterisks instead.)

Convert Tables

A word about Scrivener tables in general: In my opinion, Scrivener’s tables are the most problematic feature of its editor. Users on the Scrivener forums who live and die by tables (many are scientific writers) often don’t bother; they create their tables in a spreadsheet app, format them there, and paste the result into Scrivener, more as a placeholder than anything. Then, after compiling to DOCX or some other intermediate format, they do a final polish of the table formatting. They may even go back to their spreadsheets and re-paste the tables at that point. If you use that philosophy, then MMD tables are just another kind of placeholder, and you can use my conversion process to produce them almost straight from your spreadsheets. If, on the other hand, you’ve always used Scrivener tables directly, I’m going to suggest you use a spreadsheet app as an intermediate step to convert your Scrivener tables to MMD tables. (You can produce them by hand, as you will lists later, but it’s going to be a slower and more error-prone process.) Here’s my process:

  1. You should already have your “compilable” documents selected from above. If not, please select them and place your cursor at the beginning of the Scrivenings view.
  2. Once again, open the Edit→Find→Find by Formatting… dialog. This time, we’ll choose “Tables” from the dropdown menu, like this: Scrivener "Find by Formatting" dialog set to search for tables
  3. Click Find, and at your first table, open the Inspector to the Snapshots panel. Find the original table in the snapshot (which won’t have the extra “enters” we put in!)
  4. Select the entire table in the snapshot and copy it to the Clipboard.
  5. Open your favourite spreadsheet application. (If you don’t have one, Apple’s Numbers is free on the App Store.)
  6. Create a new spreadsheet and paste in your table. Save the spreadsheet if you like.
  7. Now select what you just pasted, and copy it (the spreadsheet app will have added important information, like row and column numbers, that you can’t see.)
  8. Go to the Tables Generator site. Use its “File” dropdown and select “Paste Table Data…” Do so and click “Load.” Then click the “Generate” button beneath your pasted-in data.
  9. That’s it! You’ll see a MultiMarkdown version of your table. Click the green “Copy to Clipboard” button.
  10. Back in your main editor pane, select the table and the empty line after it as well.
  11. Use the Format→Table→Remove Table menu command.
  12. Paste the MultiMarkdown table over the remains of your old table.
  13. The output from the tables generator site is basic. Add such things as alignment tags and merged cells if needed.
  14. Repeat steps 3-13 until you’ve converted all your tables.
Convert Links
External links

Once again, we’ll use Find→Find by Formatting…, this time searching for “Web/File Link”. The dialog will look like this: Scrivener "Find by Formatting" dialog set up to search for external links Click “Next”, then for each link you find:

  1. Put square brackets around the link, and an empty pair of parentheses after it, like this: [Google it!]()
  2. Right-click or control-click on the link, and select “Copy Link”
  3. Paste the link into the parentheses. Your link should now look like: [Google it!](https://google.com)
  4. You can right-click on the link again (“Google it!” in my example) and select “Remove link” if you like.
  5. If you prefer reference-style links, that’s fine! But don’t set them up now. When we start syncing and editing with Ulysses, we’ll configure it to use reference links if you prefer, and these will be converted.
Internal links

Repeat the process for external links above, but this time search for “Document Link”. For each document link you find, insert an inline annotation (shift-command-A) at the beginning. It should look like this: Internal link tagged with an inline annotation Use whatever tag you like. (If it’s an obvious link like a table of contents link, you can skip this, but remember that without some sort of clue, you won’t be able to tell the difference between internal links and plain text in Ulysses.)

Convert Lists

Sadly, we can’t search for lists with the “Find by Formatting” command. Instead, we’ll search for tab characters. This may find a few things that aren’t lists. We’ll just skip them.

  1. You should already have your “compilable” documents selected from above. If not, please select them and place your cursor at the beginning of the Scrivenings view.
  2. Open the Edit→Find→Find… dialog. In the Find box, hold down the option key and type the tab key. You should see a blue right-arow “→” in the Find field.
  3. Click “Next” until you find a list. It should look something like this:
    ◆   Foobar
    
        ⁃   Foo
    
        ⁃   Bar
    
    ◆   Foobat
    
        ⁃   Foo
    
        ⁃   Bat
    
  4. Select the entire list and choose Format→Lists→None. The bullets or numbering will disappear.
  5. Remove the blank lines between items.
  6. Open your Inspector pane to the Snapshots panel and find the list to use as a guide. Using Markdown list syntax, recreate the list in the main editor as closely as you can, using hyphens instead of bullets, and simple numbers followed by periods for enumerated items.
  7. Repeat steps 3-6 until you’ve converted all your lists.
Convert Images

Embedded images, images linked to image files within your project, and images that Scrivener linked to files outside your project—all are invisible in Ulysses, and can be accidentally deleted from your text simply by using Ulysses to edit the paragraph they’re in, like internal links. (You’ll have the means to fix this, never fear, but why deal with it if you don’t have to?) I’ll give you options so that Ulysses won’t touch your images.

  1. Once again, use Edit→Find→Find By Formatting… while you’re viewing a Scrivenings session of your compilable documents. This time, search for images.
  2. For each image you find:
    • Option 1: Put an inline annotation tag in front of it, just as you did for internal links. If you are willing to reinsert images from your snapshots if you accidentally edit their paragraphs with Ulysses, this is by far the fastest option.
    • Option 2: Create a Markdown image insertion for the image. This is much safer than Option 1. Ulysses will never mess with your image insertion unless you deliberately delete it.
  3. Right- or control-click on the image in Scrivener. If the popup menu has the item Save As Picture… in it, it’s an embedded image. Use the menu item and save the image to your hard drive, outside of any cloud drive. Do not save it to either Google Drive or iCloud Drive! The compiler will not be able to load it from there.
    Or
    If the popup menu has the item Reveal In Binder in it, it’s linked to an image that’s in the research area of your project. Go ahead and select Reveal In Binder, click on its revealed filename in the Binder, and use File→Export→Files… to save it as you would an embedded image, above.
    Or
    If the popup menu has the item Reveal In Finder, it’s an image already linked to an external image file and you need not save it.
  4. Navigate to the image in the Finder. Use the Reveal in Finder item in the popup menu, or navigate to where you just saved the image.
  5. Right- or control-click on the image in Finder.
  6. Hold down the option key. You should see an item in the popup menu that says, Copy “myimage.jpg” as Pathname.
  7. Continue to hold down the option key and select that menu item.
  8. Return to Scrivener. Delete the image, and type the Markdown syntax for an image insertion. Inside the parentheses, type “file://” and then paste your pathname from step 5. Your final image insertion should look something like ![](file:///Users/MyUserName/MyFolder/myimage.jpg)
Styled Text Cleanup

I’ve already suggested that you not style most of your text. Every time you edit a paragraph containing styles with Ulysses, you’ll need to reapply the formatting when you return to Scrivener if you want to retain it for compile. Do think critically about the styling you really need—Can you style this at compile time rather than in the text? Would it be easier to adjust the styling after compile? Do you really need both underlining and italics? Limit your styles to what you do need (I find I need blockquotes, attributions, and small caps occasionally in body text, and a few more styles in front and end matter—title pages, tables of contents, acknowledgments and the like.) Delete the others. Then follow these steps for each of the remaining styles:

  1. You should already have your “compilable” documents selected from above. If not, please select them and place your cursor at the beginning of the Scrivenings view.
  2. Once again, open the Edit→Find→Find by Formatting… dialog. This time, we’ll choose “Style” from the dropdown menu. For each style you have,
  3. Search for text with the style.
  4. Put an inline annotation with the name of the style at the beginning of each paragraph that contains the style.
Odds and Ends
  • If you have styles that include tabbed text, put them inside fenced code blocks, like this:1
    ```MyStyleName
    §This style   uses columns         separated
    §by tabs.      These are    sometimes useful
    §for things like manuscript       headers in
    §very old-     fashioned          submission
    §guidelines
    
    ```
    

    The problem is not that Ulysses will strip the style—of course it will, if you edit the paragraphs with Ulysses. No, it’s Scrivener’s MMD→RTF conversion that will strip out the tabs before compile. I’ve used section markers to show the lines that are styled. You must have an unstyled empty line before the closing fence.

  • I’ve given methods that don’t require any adjustment to the standard built-in compile formats. If you’re willing to edit compile formats, you can do all sorts of things—and you probably will. Some of the things I’ve set up:
    • Using Markdown tags to tag styles instead of inline annotations.
    • Colour-coding Scrivener styles to match colours I’ve set up in Ulysses for things like block quotes, header styles, and centred text.
    • Colouring text inside inline annotations in Ulysses to match the annotation colour in Scrivener.
    • If there’s any interest, I may do a blog post on this sort of advanced cross-formatting.
  • Image storage for Markdown: Using your own hard drive for image storage works perfectly well and will save you from slips of the keyboard. If you’d like to see your images while editing in iOS Ulysses (at least in preview mode) I’ve found you can store them two places:
    • On a website you control. Even a WordPress.com blog will do. Upload the images and use their URLs from your website in your image references.
    • On Dropbox. (NOT iCloud Drive. Sorry.) If you have Dropbox on your Mac, store the image somewhere in your Dropbox folder. Right click on the image file in Finder, and select “Copy Dropbox Link.” Use that link in your image references, but edit the link slightly: Change the dl=0 at the end of the link to dl=1. This will let Scrivener access the image for compile as well as giving you visibility in Ulysses preview mode on iOS.
  • Tag placement for italics and bold: Ulysses likes its bold and italics tags to be surrounded by whitespace, like this:
    … greeted me with a hearty _¡Hola, amigo!_
    Most of the time you can achieve this by simply including your punctuation inside your tags. But if you follow Chicago Manual of Style recommendation for dashes—em dashes are not set off by spaces—you may be in trouble if your italics/bold start right after your em-dash, as Ulysses will arbitrarily decide that of course you don’t want italics or bold to start in the middle of a word! And will put a helpful backslash in so that your italics or bold is messed up on compile.
    The easy way to get around this is to use CMS’s alternate recommendation of space-en dash-space. If you really want your em dashes, set up a compile substitution rule to convert space-en dash-space to em dash. (If you have no idea what the differences are among em dashes, en dashes, and hyphens, don’t worry about it. Just be aware that if your italics or bold don’t show up after compile, this peculiarity of Ulysses may be the reason. In Scrivener, search for a blackslash followed by an underscore or an asterisk to find and correct this problem.)

  1. You can do this for any Scrivener-styled paragraph that doesn’t have any Markdown inside. I like it; the styled paragraphs really stand out in Ulysses, and they’re easy to find in Scrivener even if the style is accidentally stripped. It’s just that for tabs to survive, you must use code blocks for styles incorporating tabs. 

Edit Mac Scrivener 3 With iOS Ulysses, Part 1: Prepping Your Brain (Changing Your Scrivener Habits) #amwriting

Scrivener and Ulysses CAN get along

Articles in this series:

Part 1

So you’re frustrated by iOS Scrivener’s limitations compared to Mac Scrivener 3, and by its old-fashioned (by iOS standards) interface. You may or may not loathe Dropbox, but you’re definitely frustrated by iOS Scrivener’s “stop everything” sync. You look at iOS Ulysses with its slick interface and wonder why you can’t just use it to edit your Scrivener project. After all, you don’t get full-up Scrivener on iOS, anyway…

Well, dear reader, you can! You can have Scrivener and Ulysses sync with either an iCloud Drive-based sync, or a Dropbox-based sync. But—it involves changing the way you use Scrivener, and effort to adapt your existing Scrivener projects. (Sadly, Mac Scrivener itself will need a “stop everything” sync, but you won’t have to start it and it will go by fast.) Still interested? Read on.

What do you mean, “prepping your brain”?

You’re going to learn to work with Scrivener projects in Scrivener while keeping (eventual) editing with iOS Ulysses in mind. No matter how much you do in Ulysses, there will be a lot that you still need to do in Scrivener; Scrivener has far more robust organising tools, and Scrivener’s compiler provides customisable output not possible from Ulysses.

You’ll need a new attitude towards using Scrivener if using iOS Ulysses as editor is to work well for you. You’ll have to mentally “forget about” certain Scrivener features that cause a lot of friction going back and forth with Ulysses. In some cases, you can add these back after you’ve finished your first draft and have moved on to working with beta readers, editors, professors, publishers, etc. Others features will leave your project forever.

This may be your workflow if:

  • You much prefer Markdown-style editing to Rich Text (WYSIWYG) editing. If you love Scrivener organisation tools (Corkboard! Outliner! Scrivenings!) or Scrivener’s output flexibility, but hate its editor, this may be the workflow you’re looking for.
  • Dropbox gives you hives. If you’d much rather have your project on iCloud Drive than Dropbox, yet be able to edit on iOS without copying the project, this may be the workflow you’re looking for.
  • You do most of your work in simple prose. Maybe you use a bulleted list of your acknowledgements in the back pages, or a table of… something in your preface, with a modest title page and an illustration or 3 and that’s about it. If most of your work is straightforward prose, and you like it that way, this may be the workflow you’re looking for.

This workflow may not be for you if:

  • You’re not going to use Scrivener’s compiler. If you’re not compiling for final output in Scrivener, this workflow may not be for you.
  • You use elaborate list formatting inside Scrivener documents. If you need anything more than web-style bulleted or numbered lists, you may need to adjust them in your compiled output. If this won’t suit, this workflow may not be for you.
  • You use anything but the simplest tables inside Scrivener. Only very simple tables typed in as text in MultiMarkdown format will work well. If you need fancier tables, you may need to adjust them in your compiled output. If this won’t suit, this workflow may not be for you.
  • You need Inspector comments and footnotes (show up in the right-hand column) as opposed to inline annotations and footnotes (placed in the midst of the text itself). If you absolutely need Inspector comments or Inspector footnotes while drafting, this workflow may not be for you.
  • You use Scrivener styles. A lot. Every use of a Scrivener style is a friction point with Ulysses. If you can’t use Markdown instead, your use of styles is widespread, and you’re not willing to consider doing without some of this formatting, this workflow may not be for you.
  • You don’t want to learn or use Markdown and some features of MultiMarkdown. You will need to type Markdown formatting in by hand in Scrivener. If you don’t want to fuss with (Multi)Markdown, this workflow may not be for you.
What this guide won’t do:

I won’t give detailed directions for every single step—or this would be novel-length! Instead I’ll refer you to the Scrivener, Ulysses, or Markdown documentation.

Suggested Scrivener Work Habits when planning on using iOS Ulysses

All of these are habits that will either let your project compile smoothly with the “Convert MultiMarkdown to Rich Text” compile option on,1 make the round trip from Ulysses with less formatting loss, or both. (This article assumes you’re starting with a new Scrivener project, or have already prepped a project for MMD→RTF compile. I’ll cover prepping an existing project in Part 2.)

In general, avoid using non-Markdown formatting as much as practical. The less you have, the less you’ll need to reapply after you edit with Ulysses.

  • Learn Markdown, and how to use MultiMarkdown tables. Visit CommonMark if you don’t know any Markdown—their ten-minute interactive tutorial rocks. Read Fletcher Penney’s MultiMarkdown tables documentation. Scrivener will not help you with this. Ulysses will help with Markdown, but with MultiMarkdown tables, you’re on your own.
  • Get rid of any body or “normal” style. It will cause a lot of friction with Ulysses. (For why, see 1.1.1 below.) Most of your Scrivener work should be in unstyled text. For how to get rid of a body text style, see this post on the Scrivener forum: https://www.literatureandlatte.com/forum/viewtopic.php?p=316480#p316480
  • Change your default formatting (“no style”) in Scrivener to block paragraph style—no paragraph indent, and no spacing between paragraphs. Use an extra return to space paragraphs apart. (For why, see 2.1 below. The exceptions are Markdown lists, code blocks, and MMD tables.) To change your default formatting for current and future documents in your project, see this thread on the Scrivener forum: https://www.literatureandlatte.com/forum/viewtopic.php?f=2&t=62229
  • Don’t bother with making text italic or bold; use _surrounding underscores_ for italics and **surrounding double asterisks** for bold. Use Markdown links for any external link you need. Use Markdown image insertions. (For why, see 1.1.1 and 2.2 below)
  • Use Scrivener-style internal links. As these show up in Ulysses as plain text with no link evident, you may want to use an inline annotation to mark them as links.
  • Use Markdown lists and MultiMarkdown tables if you need any. (For why, see several items below.)
  • Use Scrivener inline annotations and footnotes if you need comments or footnotes. Avoid Inspector comments and Inspector footnotes.(For why, see 1.5 and 2.10 below.)
  • You may need a few styles for things like blockquotes, attributions, centred text, etc. I suggest using an inline annotation in each styled paragraph noting the name of the style.
  • If there are non-Markdown character attributes you need (highlighting, etc.), again you’ll have to use Scrivener styles. Using an inline annotation to tag each paragraph containing these will help you out later. (The other option for styles, particularly if they’re formatting you only use for final output, such as in front and back matter, is just to apply them after you compile, in your favourite word processor.)
  • Make the styles you do use obvious in Scrivener. Figure that you’re going to need to reapply them occasionally. If you never use coloured text even for links, give your character attribute styles a text colour. If you never use highlighting in your final output, give them a background tint. You can deliberately strip those attributes in compile, but the colour or tint will show up in the automatic snapshots that Sync to External Folder takes. Thus, it will be easier to spot and reapply those styles. Even for pure paragraph styles, tagging styled text with an inline annotation will make life easier.

Conclusion

To sync your project with Ulysses smoothly, you’ll need to use Markdown and MultiMarkdown features within Scrivener text documents instead of many of the native Scrivener features. This way of working quickly becomes a habit, but it isn’t for everyone.

Appendix: What Happens in the Scrivener ↔︎ Ulysses round-trip—and in MMD→RTF compile

  1. Ulysses round trip effects:
    1. Any paragraph that you edit with Ulysses will
      1. Lose its formatting. Italics, bold, underline, and other character attributes will disappear from Scrivener. Indeed, any change from Scrivener’s default style (font, font size, alignment, etc.) will be erased.
      2. Lose Scrivener styles. Any style you truly need will have to be reapplied.
      3. Have Inspector comments and Inspector footnotes (linked notation) stripped out.
    2. Scrivener-style lists will show up as code blocks inside Ulysses, with only one level of indentation. If you edit them, your list formatting will be lost for the items you edit. (see above.)
    3. Scrivener-style tables will just show up in Ulysses as a series of paragraphs. Once again, the table’s formatting will be damaged if you edit its cells in Ulysses.
    4. Scrivener-style image insertions and external links are invisible inside Ulysses. If you edit their paragraphs, they disappear (see above).
    5. Scrivener ((inline annotations)) and {{inline footnotes}} do show up in double parentheses and double braces, respectively, in Ulysses. You can add new comments and new footnotes by enclosing comments in (()) and footnotes in {{}}.
    6. Scrivener internal links look like plain text. MMD-style internal links are ignored.
    7. MMD tables in Ulysses will look like plain text with some vertical bars thrown in, just as they do in Scrivener. You can edit them just the same as you would in Scrivener.
  2. MMD→RTF compile effects:
    When compiling a document in Scrivener with this option on, first the MMD→RTF translation is done, then styles (if any) are applied, and finally the compile layout formatting is done. In practical terms,

    1. Paragraphs separated by only one “enter” are compressed. You must type “Enter” twice between paragraphs in order for the Scrivener MMD processor to recognise them. The exceptions are Markdown lists, code blocks, and MMD tables.
    2. Non-Markdown character formatting is stripped. Underlines, highlighting, strike-through and more will vanish in the compile. If you absolutely need any of these in your output, you’ll need to use styles for them.
    3. “Inline” Markdown definitely comes through. Italics, bold, external links, and images all end up in the compiled output if they are designated in Markdown in the text.
    4. Markdown lists and MMD tables appear in the compiled output as well.
    5. Scrivener lists show up as a series of paragraphs with hand-bulleting or numbering. Indents are lost.
    6. Scrivener tables appear in the compiled output as a single massive collapsed paragraph. No “table-ness” survives.
    7. Markdown and MMD “blocks” in general do not pass through compile intact. They are wiped out by the section layouts unless they are styled. This includes both code blocks and blockquotes.
    8. On the other hand, code blocks surrounding Scrivener styles are absolutely essential to retaining things like intra-paragraph tabs during compile. Without code blocks, tabs don’t survive the MMD→RTF process long enough to be styled.
    9. Strangely enough, MMD-style footnotes have formatting problems.
    10. Scrivener-style external links disappear.
    11. Scrivener inline annotations and inline footnotes work just fine.
    12. Scrivener-style internal links compile just fine.
    13. Compile ignores Dividers (four hyphens).

  1. You can get by without using this compile option, but at the cost of having to do much more “fixing” of your edited files in Scrivener when you get them back from Ulysses. In my opinion, it’s not worth it. 

Beyond iOS Scrivener 1.2.1 #amwriting

Back in December, I wrote that I hardly use iOS Scrivener any more, and that remains true.

I’ve had a lot of time on my hands, lately, what with my coworking venue going out of business, and all the coffeehouses being closed (at least for purposes of sitting and writing for long periods.) The time I spent commuting had to go somewhere, and when I wasn’t too depressed to do anything except play video games, I found myself niggling at The iOS Scrivener Problem. (Yes, I know, I could have been productively writing. Still…)

Abandoning Scrivener totally is out of the question for me. I use the Scrivenings view constantly on my Mac, as well as stacked corkboards, the Outliner view, keywords, custom metadata… ad infinitum. (About the only features of Scrivener I don’t use are document notes, scriptwriting, and research. Oh, and the various LaTeX workflows.) I also use Aeon Timeline, and while theoretically I could use AT with Ulysses, I’ve got Scrivener all set up with it.

Ulysses… hmm. What about using Ulysses as an iOS editor for Scrivener projects? I can’t access many of my Mac Scrivener features in iOS Scrivener anyway. I already know and pay for Ulysses (I write this blog on it.) Ulysses has as slick an iOS-style interface as any app going. Any metadata I need to refer to (synopses, keywords, etc.) is available on iOS via Aeon Timeline. My research is already available on iOS via Evernote. I can even edit metadata in AT if I need to and sync it up to my Scrivener project on my Mac.

I’m no stranger to using non-Scrivener editors on iOS. In the Bad Old Days before iOS Scrivener, I used both the Index Card app and the Editorial app to edit my Scrivener projects, using Scrivener’s External Folder Sync feature. It was harder to describe than it was to do.

It’s taken me some experimentation. Scrivener 3 is more complex than Scrivener 2 so there are more pitfalls on the Scrivener side. Also, Ulysses is more complex than either of my old two iOS apps, though that turns out to be all to the good.

Nonetheless, I’ll be posting my new Mac Scrivener 3 <=> iOS Ulysses editing workflow in a series of several blog posts:

  1. Translating Between Scrivener 3 and Ulysses: Ulysses speaks Markdown. Scrivener speaks Rich Text. Rich text has a lot more formatting flexibility than Markdown. This means modifying some things in your Scrivener project, and avoiding certain Scrivener features. I’ll cover what you’ll need to do to your Scrivener manuscript to prepare it to work smoothly with Ulysses’s Markdown. WARNING: You may not be willing to live with these limitations. In that case, this isn’t the workflow you’re looking for.
  2. Setting Up Sync: I’ll reveal the nitty gritty of using either iCloud or Dropbox (dealer’s choice) to sync between Mac Scrivener 3 and iOS Ulysses. I’ll provide detailed sync settings for each app.
  3. Avoiding The Editing “Gotchas”: I’ll tell you how to sidestep the “OMG no!!!” moments, or at least face them with confidence.
  4. Compiling Your Project: I’ll describe the modifications you’ll need to make to your Scrivener compile formats to output your Ulysses-savvy manuscript.
  5. But What If I Don’t Want To Use Aeon Timeline?: I’ll go over some strategies for getting at least some of your metadata into Ulysses. Note that these methods are minimally, if at all, automated. If you update the metadata in Ulysses, you, and you alone, will be responsible for updating said metadata in your Scrivener project by hand. Be told.

I’ve Had Better Years

My last entry in this blog ended with “Happy 2020!”

Ah, sweet irony.

Not that I’ve had a particularly bad 2020. Nothing like as bad as other folks’ 2020. Neither I nor anyone in my immediate family has come down with COVID-19. I haven’t lost a business. I haven’t heard a neighbor gunned down by deputies, with multiple bullets in him.

On the other hand:

  • Two of my close friends are physicians. Both their children are physicians. All live on the front line and cope with both terror and exhaustion.
  • The co-working office I used, Kleverdog Co-Working, has gone out of business.
  • Another close friend, working in his front yard, saw the shooting victim bike past and heard the shots.

John Donne said it nearly 400 years ago:

No man is an island,
Entire of itself;
Every man is a piece of the continent,
A part of the main.

If a clod be washed away by the sea,
Europe is the less,
As well as if a promontory were:
As well as if a manor of thy friend’s
Or of thine own were.

Any man’s death diminishes me,
Because I am involved in mankind.
And therefore never send to know for whom the bell tolls;
It tolls for thee.

2020 has seen a lot of clods washed away, and I am the less for it.

NaNoWriMo 2019 Post-Mortem #amwriting #nanowrimo

Sunrise
Image courtesy of Yongkiet at https://FreeDigitalPhotos.net
Fubar. (Rough translation: Fouled Up Beyond All Repair.)

I didn’t break five digits. I’d go look at my final total, but it’s too embarrassing.

OTOH, I’m past the winter solstice, alive, and not too much heavier than I was at the beginning of October. My short story, “The Replacement”, was published in the NaNo Los Angeles anthology, Journeys to Uncharted Lands. I’m working on publishing it as a short in the usual places. I’ve redecorated my bedroom/office and re-read every novel series in my reading apps, as (looking at my reading app stats and credit card statements) I do every winter when I’m seasonally depressed. At least I haven’t gained 20 pounds or stopped exercising completely, as I did last year.

Happy 2020! More daylight soon!

iOS Scrivener Two and a Half Years On #amwriting

The truth: I hardly use iOS Scrivener any more.

It’s just too limited compared to Mac Scrivener (or even Windows Scrivener). I can never see the aspects of my project that I really want to see. There’s no Scrivenings mode. There are no collections. The Corkboard only ever shows one level of one folder. Keywords and custom metadata are missing.

It goes on. I self-publish, and the facilities to produce a manuscript that’s ready to upload to Amazon and Smashwords just aren’t there. The iOS Scrivener compiler has few features compared to Mac or Windows.

As for research, I don’t use Scrivener at all for that. I use Evernote instead. It’s much easier to find what I need there, and I can display Evernote on a second screen on Mac. On the rare occasions when I use iOS Scrivener these days, I can split the screen between Scrivener and Evernote. I really don’t like my research crammed into the same app as my manuscript. (N.B.: This is Scrivener heresy. One of its heavy selling points is keeping research and manuscript together. I’ve tried it. Every third project, it seems, I try it again just to see if it works better than Evernote. The answer has always been no so far.)

So iOS Scrivener doesn’t work well for me for either planning or publishing. Its lack of easily configurable overview makes it less than ideal for drafting. The only time I find myself using it is when I want to jump start my actual word production for the day by using handwriting recognition. But since I found a workaround to use handwriting recognition with my Mac, I don’t even use iOS Scrivener for that any more.

It’s not a bad app, iOS Scrivener. I like it. If Mac Scrivener didn’t exist, or if I had only an iPad, it would be my writing app. But as I have a lovely tiny Macbook Air 11, I just don’t use it.

Bummer.

iOS Scrivener Sync Altermatives, Part 1: iCloud Drive #amwriting

Many Scrivener users want iOS sync to work via iCloud Drive. Desperately. I hear from users on the Literature and Latte forums that they’re keeping their working Mac/iOS projects in iCloud Drive with no apparent problem.

Don’t do it! I also hear users who lose all their writing this way. It’ll work fine—until it doesn’t. Because of Scrivener’s unique “hidden multiple files” project format, the only recommended cloud service for “working” projects is Dropbox. Period.

Nonetheless, I’m going to suggest ways to use iCloud Drive to get work from Mac to iOS and back, and from iOS device to iOS device. These are file transfer solutions, not sync solutions. They’re not automatic. They’re not “transparent.” They don’t happen in the background without you doing anything (once you’ve set it up). If you’re looking for a “set it and forget it” solution, these aren’t it.

What they are, is safe. They use iCloud Drive. You can automate parts of the process. Still with me? Good! Let’s get into the setup.

System Requirements

iOS Scrivener 1.2 or greater
iOS/iPadOS 11 or greater
Mac Scrivener 2 or greater
Any version of MacOS that supports iCloud Drive

For iOS 11:
FileApp
For iOS 12:
The Shortcuts app, and a shortcut as described here: UnZIP and Open In…

Mac – iOS:

Mac side:

  1. First, set up your iCloud preferences for maximum safety when working with Scrivener and iCloud Drive
    1. Open the Mac System Preferences app, and open iCloud preferences.
    2. Next to iCloud Drive, click the Options… button.
    3. Turn off “Optimise Mac Storage”, in the bottom left of the options dialog. This is essential. Scrivener depends on your projects being physically present on your hard/ssd drive. If any portion of a project has to be downloaded from iCloud, you risk project corruption.
    4. For maximum safety, turn off “Desktop and Documents Folders.” This is less urgent than the “optimise Mac storage” setting, but if you don’t need this for other apps besides Scrivener, please turn it off. You will not use this to transfer Scrivener projects.
  2. Next, set up a transfer folder.
    1. Open up an iCloud Drive window. Create a new folder, and name it something obvious, like “Scrivener Transfers”.

    Work on your Mac Scrivener project as you usually do. When you’re ready to stop work on your Mac:

  3. From the File menu, select File->Back up->Back up to…

  4. In the Back up to: dialog, check the “Back up as ZIP File” box towards the bottom of the window. This is essential. Here’s where you make this process safe for your data. By making a ZIPped backup and transferring that, you save your project in a single file that isn’t vulnerable to sync corruption like an unzipped, .scriv project.

iOS side:

When you’re ready to work on your project on your iOS device:

  1. Open iOS Scrivener.
  2. Navigate to your projects screen if needed.
  3. If there are any copies of your project on your iOS device:
    1. Tap the “Edit” button at the top of your vertical projects button.
    2. Delete the iOS copies of the project. This will eliminate any possible confusion by working on an old copy of your project.
    3. Tap the “Done” button
  4. For iOS 12 or 13
    1. Open the Files app
    2. Navigate to the “Scrivener Transfers” folder (or whatever you named it)
    3. iOS 13+:
      1. Tap on the (most recent) backup project. The Files app will unZip the project. Wait until the project is unzipped AND uploaded to iCloud.
      2. Tap on the unZipped project. It will open in Scrivener.
    4. iOS 12:
      1. Create an “Unzip and Open In…” shortcut as described in this L&L forum post: https://www.literatureandlatte.com/forum/viewtopic.php?p=287616#p287616
      2. Tap on your zipped project, and select Unzip and Open In… as your action.
      3. After unzipping, select Scrivener as your target. Your project will open directly in Scrivener.
  5. For iOS 11:
    1. Get a free third-party utility, FileApp. (Not the same as Files!!!)
    2. Open FileApp. Tap on the plus icon in the upper right corner. Then tap the import icon in the lower left.
    3. Tap Browse, navigate to your transfer folder on iCloud Drive, and select your zipped project. It will be copied to FileApp
    4. Still in FileApp, tap your project to unzip it there.
    5. Drill down into the unzipped project until you find a folder that has an extension of .scriv (very important!)
    6. Long press on that .scriv folder, then tap the export icon and open your project in Scrivener.

When you’re ready to put away your iOS device:

  1. Return to the projects screen.
  2. Tap the “Edit” button at the top of your vertical projects button.
  3. Select the project you just worked on.
  4. Tap the export button
  5. iOS Scrivener will make a zipped backup of your project
  6. Save to to the “Scrivener Transfers” folder (or whatever you named it) in Files
  7. (Optional) Delete the project from your iOS Scrivener app (select the project and tap “Delete” at the bottom of your screen) If you do this, you can avoid confusion about which version of your project you worked on last.
  8. Tap the “Done” button

Back to the Mac:

When you’re ready to start work on your Mac again:

  1. From the Finder, open the “Scrivener Transfers” folder (or whatever you named it) on the iCloud drive.
  2. Delete the unzipped project—it’s now old
  3. Double click on the most recent zipped version. Rename the unzipped project to something obvious (“My Project From iOS”) and drag it to your desktop.
  4. Go ahead and double-click the iOS version on your desktop to open it. Scrivener will incorporate the iOS changes. Close the project.
  5. Open your old Mac Scrivener project in your usual way.
  6. From the File menu, select File->Import->Scrivener Project
  7. In the Open dialog, select the project version from iOS that you dragged to your desktop.
  8. When you see the “Merge?” dialog, go ahead and select “Import and Merge”. After you’ve checked to be sure your changes made it over, you may delete the iOS version on your desktop (it’s secure in zipped form in your transfers folder.)

Optional Automation

If you’d like to have the “Mac Side” steps 3 and 4 automated, do this:

  1. From the Scrivener menu, select Scrivener->Preferences…
  2. Tap on the Backup icon
  3. Turn on these Backup preferences: Automatic backup, backup on close, backup on manual save, compress backups as ZIP files, use date in backup file names.
  4. Keep at least 25 backups.
  5. Choose your iCloud “Scrivener Transfers” folder as your backup location.

    Now whenever you either close your project, close Scrivener, or use cmd-s to save, a fresh zipped backup will be saved in your Scrivener transfers folder, named so you can tell them apart, ready to be opened in iOS Scrivener. If you don’t think you’ll turn off your Mac, close your project, or remember to type cmd-s, there’s one last automation step:

  6. Still in the Preferences dialog, tap on the General icon and select Automatic Quit. Put a checkmark beside automatic quit, and adjust the interval so that it’s not so short as to be annoying, but often enough that Scrivener will quit (thus making an automatic backup in iCloud) before you pull out your iPhone or iPad to work.

iOS – iOS

iOS to iOS is easier than the above in that we only need to worry about one environment. It’s harder because we have no way to automate any of this. Using this method to transfer files between two (or more!) iOS devices is totally dependent on user discipline to keep versions straight. Be told.

Prepare the Files app

  1. Open the Files app on your first iOS device, which I’ll call D-One.
  2. Next, set up a transfer folder in iCloud drive. Just as for Mac – iOS, create a new folder, and name it something obvious, like “Scrivener Transfers”.

Switching from D-One

When you’re ready to put away D-One, or switch to your other iOS Device, D-Two:

  1. Return to the projects screen.
  2. Tap the “Edit” button at the top of your vertical projects button.
  3. Select the project you just worked on.
  4. Tap the export button
  5. iOS Scrivener will make a zipped backup of your project
  6. Save to to the “Scrivener Transfers” folder (or whatever you named it) in Files
  7. (Optional) Delete the project from your iOS Scrivener app (select the project and tap “Delete” at the bottom of your screen) If you do this, you can avoid confusion about which version of your project you worked on last.
  8. Tap the “Done” button

Starting up D-Two

When you’re ready to work on your project on your second iOS device, D-Two:

  1. Open iOS Scrivener.
  2. Navigate to your projects screen if needed.
  3. If there are any copies of your project on D-Two:
    1. Tap the “Edit” button at the top of your vertical projects button.
    2. Delete the iOS copies of the project. This will eliminate any possible confusion by working on an old copy of your project.
    3. Tap the “Done” button
    4. For iOS 12 or 13
      1. Open the Files app
      2. Navigate to the “Scrivener Transfers” folder (or whatever you named it)
      3. iOS 13+:
        1. Tap on the (most recent) backup project. The Files app will unZip the project. Wait until the project is unzipped AND uploaded to iCloud.
        2. Tap on the unZipped project. It will open in Scrivener.
      4. iOS 12:
        1. Create an “Unzip and Open In…” shortcut as described in this L&L forum post: https://www.literatureandlatte.com/forum/viewtopic.php?p=287616#p287616
        2. Tap on your zipped project, and select Unzip and Open In… as your action.
        3. After unzipping, select Scrivener as your target. Your project will open directly in Scrivener.
    5. For iOS 11:
      1. Get a free third-party utility, FileApp. (Not the same as Files!!!)
      2. Open FileApp. Tap on the plus icon in the upper right corner. Then tap the import icon in the lower left.
      3. Tap Browse, navigate to your transfer folder on iCloud Drive, and select your zipped project. It will be copied to FileApp
      4. Still in FileApp, tap your project to unzip it there.
      5. Drill down into the unzipped project until you find a folder that has an extension of .scriv (very important!)
      6. Long press on that .scriv folder, then tap the export icon and open your project in Scrivener.

Repeat the cycle as needed. Enjoy!

2019 NaNoWriMo—Not So Much #amwriting

Those of of you who’ve followed me a while know that every winter I deal with seasonal affective disorder (SAD). Yes, even here in sunny Southern California. Usually I don’t notice until February, by which point I’m so deep in that I can’t claw my way out until May or June.

This year I noticed early—right after the start of NaNoWriMo. My weight had spiked. I craved carbohydrates. I felt tired all the time. My blood pressure was rising, and my exercise falling. Nothing was interesting. And writing wasn’t happening.

I made a decision to put my health ahead of writing this November. Sue me.

I’ve changed my sleeping habits so that I’m awake from sunrise on. I’ve made outdoor exercise a priority. I’ve managed to find a food plan I can stick to even on my worst days. As a result, my blood pressure, inflammation levels, blood glucose, etc. have all stayed in healthy territory. Even my weight (which goes up 7–10 lbs. each winter) reversed the late October spike and is now holding steady.

I’ll take it. Steady is good.

NaNoWriMo comes after all that. No more late-night catch-up sessions fueled by caffeine, carbohydrates, and anxiety. NaNo comes after getting outdoors in the sun… (or maybe with it if my electronics will stay charged.) NaNo is less important than getting enough sleep, getting exercise, and keeping my food clean. I signed up for an ordinary 50,000 word project, but honestly I’ll be thrilled if I make it to 10k.

So no progress bar this November. In December, I’ll let y’all know how far I got in NaNoWriMo and more importantly how the winter is going for me in general.