Prepping Scrivener Line Breaks for Copy/Paste

Hi, all

When I copy Scrivener docs and paste them (e.g. into email or into Blogger), there’s insufficient white space between paragraphs (because Scrivener uses indents rather than double line breaks to mark 'graphs, and those indents don’t carry over on cut/pastes).

One workaround (not totally satisfying) would be to do a search/replace on the whole scrivener doc, replacing line breaks with double line breaks prior to copy/paste. that doesn’t work, because Scrivener gets real skitchy when you try to search/replace non-printing characters like line breaks (for one thing, the symbols don’t actually show in the fields if you paste 'em in). And you apparently can’t search/replace the indents (can’t select them, anyway). what other solutions exist? I’d rather not have to export the whole document every time I want to email someone a piece of writing in Scrivener.

There’s no really good solution at the moment, but Scrivener 2.0, in its overhauled Compile Draft sheet, will have a checkbox entitled “Convert indents and paragraph spacing to plain text”. This will add tabs where there was a first line indent, and create plain text line breaks between paragraphs to match the paragraph spacing in the rich text (i.e. exactly what you want to do). I’m not sure of a good interim solution, though, I’m afraid; perhaps a fellow user can help with that.

EDIT: Re-reading your e-mail, even 2.0 doesn’t offer a great solution, as you say that you don’t really want to export to do this. I’m not sure about existing documents, but for new documents you can just turn off the spacing between paragraphs (via Preferences > Text Editing) and type them in manually from the get-go.

All the best,

Thanks, Keith

Just speculating…the indent characters used by scrivener appear to be proprietary…can’t select them, can’t find for them, etc… Would it be possible to use actual line breaks (so that text would copy/paste/export right), but somehow make scrivener intelligent enough to interpret them as indents? I suspect that’s already the sort of thing Scrivener is doing in calculating where to indent.

Thing is, I LIKE the indents…in scrivener and only in scrivener. So if indents could just be a question of how scrivener interprets what are otherwise line breaks, that’d be a perfect solution all around.


They’re not proprietary, actually. They are part of the standard OS X text system, the same as in TextEdit (the only difference being that in Scrivener the preferences are set up to have spacing between paragraphs and indents on by default). As in TextEdit, you can control it all via the ruler. They work just like any other rich text system - Word, too. You can’t select them because there is nothing there. The spacing is a paragraph attribute - “spacing before” and the indents are are also a paragraph attribute - “first line head indent”, which can be controlled via the downward-pointing arrow on the top-left of the ruler. You’ll find all of these things present in Word, too.

Given that these are features of the text, it would be odd to try to reinterpret them, as 99% of users are going to want the rich text to remain formatted as-is.

All the best,

Interesting, Keith, thanks!

hmmm, really? Am I the only one who finds text paragraphs in email, blogger, etc, insufficiently defined by single line break? Or is it that I’m the only one who does copy/paste out of Scrivener to send bits of writing to other places? Either seems hard to believe, but, then again, I’m me…! :slight_smile:

The difference is the way that you are doing it. Most folks use CSS to define paragraph styles on a site basis. Take look at your favorite “pretty” sites and you will see what I am talking about.

Jaysen: yes CSS is the solution for websites, but I suppose not generally for email and other plain text?

JB: Seeing that you feel that way, why not set the default paragraph style in Scrivener to have no space above and then use double returns to separate paragraphs in Scrivener? Then when you copy and paste from Scrivener you’ll get what you want.

I think this is what Keith meant by: “for new documents you can just turn off the spacing between paragraphs (via Preferences > Text Editing) and type them in manually from the get-go.”

As far as I can see, when working in Scrivener there won’t be a lot of difference if you use double returns (given that Scrivener doesn’t lay out pages and therefore isn’t in the business of trying to keep paragraphs together on a page, avoid widows and orphans etc.).

Most email is sent RTF or HTML these days. To make it worse, most software, including Mail in OS X have the default to reich content.

That said if I look at all by the system generated emails I have from today all but 3 use HTML/CSS for formating. The 3 that do not are from my die hard unix guy who insists on using Pine. On Windows.

Exactly. If you need double returns, then you have to type them just as you would in any other program. The default formatting is set up to use paragraph spacing etc because it is set up “out of the box” to give a pleasing visual representation of the text. Users who are writing novels or articles or academic theses are most likely going to want a single space between paragraphs in the actual text for export, so the spacing on screen is just a visual nicety. But if you are going to want double spaces between paragraphs most of the time, then, as I said before, change the preferences so that there is no paragraph spacing or indents and then type the spaces manually. Scrivener is a rich text editor, so it’s up to the user how to set up that rich text - the extra line spacing is just the default way it is set up. Asking for Scrivener to reinterpret tabs, indents and line spacing when pasting would be like asking for Word or Pages to do the same - so yes, really, 99% of users would not want what you are asking.

Well, no, not really. If I have paragraphs in Word set up Scrivener-style (separated by single line breaks, and off-set by an indent), I can easily reformat that text for cut/pasting to other apps by search/replacing line breaks for indents. It’s an easy clean-up.

What an odd statement.

Keith, I’m a professional writer (eleven books for major publishers, columns for several major magazines and newspapers, freelance for just about everyone), and my work, and the work of all the other serious writers I know, involves the constant shooting around of bits and snatches of my writing to many different people and places. I send bits via email to editors, to friends for vetting, and to subjects for fact-checking; via browser to blogs or message boards, to text editors for wrangling into HTML and uploading, etc etc ad infinitum. I create words, that’s my job, and that raw material must be shoveled out into myriad contexts. That’s what working writers do in this century…except perhaps for novelists who grind out their writing in relative isolation until the book’s done and they’re ready to hit an “export” button. Though even most novelists I know send around chapters or sections as they work, so forget that.

It boggles my mind that it apparently boggles your mind that anyone would ever want to copy/paste out of Scrivener with intelligible results. And the suggested workaround of having my Scrivener docs be shitty-looking space hogs in order to make copy/pasting work is a silly kludge.

Most of my previous suggestions were met with similar perplexed “why would anyone ever want…” responses from you. I’ve seen a similar dynamic with other software over the years when an app was designed primarily for the personal use of a lead Dev who isn’t of an accommodative mindset to the differing needs of others, and who derisively deflects ideas that don’t match his personal pref and workflow. Such devs often attract a coterie of kindred spirits who amplify the groupthink, creating a false sense of confidence of what the breadth of their usership (let alone potential market) desires.

So, hey…I guess your app isn’t for me. Shame, though, as I’m presumably the exact sort of busy hard-working writer you’re marketing to. But do bear in mind that I’m one of the few to take time/effort to tell you any of this. Most prospective customers don’t take time to engage; they just shrug and leave.


Something get to you yesterday, JimmyBoy?

No point in raising the vituperation temperature any higher. As KB has always said, buy Scrivener for what it is, not for what you hope it might be, so clearly it isn’t for you. However, for me - and judging by these forums and many other indications, for numerous other people who write - Scrivener’s development does have the right balance of personal vision and market responsiveness*. You’d certainly be hard pushed to find a small developer who answers customers’ posts as extensively as KB does. Albeit sometimes in the negative, as you’ve found.

But count me as one of the coterie of kindred spirits who amplify the groupthink… :confused:


*Of which incidentally there is a huge number of examples in these forums.

Then why not use these programs to clean up your text? I know everyone wants every program to do everything they can possible think of, but often (most often, I would say) it is a good idea to delegate to each program what it is best suited for. I don’t use Scrivener for extremely precise text manipulation because it lacks TextMate’s power in that area. I certainly do not think Scrivener should have TextMate’s feature set just because I do use these tools on a regular basis. TextMate is just part of my work flow.

I find people coming from a certain mindset have this belief that an application should do as much as possible without any external help. This is precisely the sort of mentallity that leads to massive applications like Word—the stuff we are all trying to get away from because it hampers the creative process to have so much power floating around.

Right, which just happens to be a core focus of Scrivener; writing books and other large projects of that nature. That it can be used for other things like blogs and articles is a testament to its flexibility, but you will not find an email client for sending drafts, or a blog engine for posting to the internet, and so forth. It was primarily designed to make the process of crafting a large document into something a little more simple than dealing with huge and unweildy files in a word processor.

The export/compile feature is meant to be an integral part of the Scrivener workflow. You seem to want to avoid that and prefer copy and paste—that’s fine we all use software differently, but when you are using an application in a manner which isn’t quite what it was designed for, you do often run into these kinds of things. You either work around it, or use something more suited to the task.

I happen to use it for more than just books, but when it doesn’t do something within the realm of what I’m twisting it to do, I don’t get all infuriated because it doesn’t have a built-in calender for my journal entries, just to mention one example.

Yes, and I don’t think many of them are concerned with technicalities like the nature of line breaks. Most send an RTF or DOC file with the formatting set up a certain way and that is that. If the editor requires a certain font/look, they set up the compiler appropriately.

Which of course brings up the question of whether or not you considered attaching RTF files. This is how most authors handle things, it seems to me. See, what boggles my mind is that Scrivener actually does have a number of good ways to handle what you need (and will have more in the future). You seem entirely unwilling to use any of them however, and then proceed to fault the entire application, developer, forum, and even nebulous sociological patterns because it doesn’t do things precisely the way you thought they should.

Certainly, you must have some conception of the fact that nearly everyone uses a slightly different process to do things? If every single possible human interaction were anticipated and developed into a work flow, all applications would be these huge, overlapping, largely useless tangles of preferences and menus. Certainly you must recognise that an application must do a certain amount of “mental herding” in order to strike a balance between the things that really do need separate functions, and the things that are just variations of existing functions.

That depends on your definition of intelligible, I suppose. When I copy and paste out of Scrivener, it pretty much looks exactly the way it was when I started.

Really? Funny, I seem to work entirely within that framework and it never once struck me a kludge, or appearing as though printed upon used toilet paper. I consider artificial spacing to be a silly notion, though. Why on earth would anyone want to display space that isn’t actually there? Plenty of people do, though. It is acclimation, I suppose, and hardly a universal declaration. I cannot stand working in documents with micro-spacing so you can barely tell what is going on. Give me big, fat, literal spaces and I’m happy.

Not all authors have the same precise demands in equal amounts of vitriol!

Here’s a hint: Keith will often challenge a user to defend their request. But as an aside, most of your requests were a bit “out of scope” from what I saw.

Obviously every single request that is made in the wish list forum cannot be included, or the application really would have a calender, and a blog posting engine, and an email client, and a database for tracking submissions, and a citation manager, and an InDesign module, and a mind mapper, and sketch pad, and a complete WebDAV based concurrent version tracking system, and a Final Cut Pro module, and a PDF editing kit, and a Photoshop module, would export to the undocumented Pages specifications, would export to the undocumented Word document spec, would allow the user to give PowerPoint presentations from within the Editor, and that’s just mentioned a few of the many requests that have been posted. The software would be a nightmare of bugs and hacks and kludged features. Trust me, nearly everything in that list are things that other people have often just as hotly demanded that they and every other professional writer on the planet needs.

If we cannot explain a rationale for why the feature fits into Scrivener, or get all hot and huffy after round-one of the “why do you need this”, then the feature generally falls by the wayside (though not always!)

Anyone that has been around on this forum for a while or has seen Scrivener go through a development cycle knows that Keith is not only extremely open to suggestions, but usually ends up finding a way to implement them in a way that benefits the software in an integrated fashion. So don’t let the intial interrogations fool you. Even if your request has merit, it may not always speak for itself. I know I’ve had a few which were initially dumped on and then after I explained it in a different way it made sense and now they are a part of the application.

In my experience the opposite is true. Most software forums are filled only with the people who have come to complain or hotly demand their own pet peeves. You’ll get the scattered praise here and there, but it is always the exception. The Scrivener board is almost the exact opposite. Your type of post is awfully rare, here. Further, if you look at critical reviews and customer feedback on version tracking sites, you’ll find Scrivener enjoys a nearly 100% unanimous approval rating. This is exceptional for even really good software, and I think a big part of the reason for that is the openness of the developer which has fostered the culture on this board.

Truly, if every professional writer out there needed to be constantly converting their text from rich text friendly to plain text friendly, and that was such a critical thing, I think it would come up a bit more often. Keith’s 99% figure largely fits in with what I’ve seen around here. I think you are the second or third person that has even asked about it, and once they figured out the other methods or had them explained, they were largely satisifed.

Food for thought.

Many thanks to AmberV for replying so exhaustively. I was going to leave it at that, but I think I ought to defend myself and my software given the unusually angry tone of the user here…

Sorry, but at which point did you think that attacking me would be conducive to a healthy conversation or exchange of ideas? And could you please point out to me exactly where I have been “derisive”? Perhaps because I recklessly extrapolated that your suggestion may not be a common need from the fact that out of the many thousands of Scrivener customers you are the first to ask for such a thing? (The two or three that asked for something similar, to whom Amber referred, were asking for this sort of thing at compile time; and indeed it has been added to the Compile Draft feature for 2.0, as I mentioned in my first reply.) I was derisive because I tried to help you because I think you might be misunderstanding how the formatting works? I have done nothing but try to offer you a solution, and I have been nothing but polite to you, despite your somewhat patronising “hmm really?” tone. “Hmm, really?” you asked. “Yes, really,” I replied. And I’m derisive!

I usually take the position that “the rudeness that hath appeared in me have I learned from my entertainment”, but I’ll try to rise above your unwarranted vitriol and cover the salient points:

  1. Please read the forum rules. You are entitled to an opinion on what Scrivener should or should not do, but you are not entitled to be rude or insulting. I hope this isn’t how you would treat a shopkeeper who had politely explained to you why he hadn’t got something in stock. When I was a teacher, and before that when I worked for the NHS, we had signs on the walls explaining that we would not tolerate insulting or aggressive behaviour towards staff. Unfortunately, it seems that the facelessness of the internet encourages some to forget the manners they (hopefully) show in the real world, but the same general rules that apply in other workplaces also apply here on this forum.

  2. See the About page. I have always stated that I built Scrivener to my specifications and that I have no intention of making it software-by-committee. Software that tries to accommodate every single whim does not, in the long run, offer a pleasing user experience to the majority. You may disagree; you are entitled to do so - please see (1), above. I taught myself how to program to write the software I wanted, and it is very gratifying that it meets the needs of others enough for them to want to buy it. If you feel so strongly, I would encourage you to do the same. That said, your claims that I am not accommodative are grossly unfair and unreasonable, based as they are solely on the the fact that I have tried to offer you solutions rather than declare that I will change the way Scrivener works to meet your own particular needs in this one instance - when, as AmberV points out, Scrivener works exactly as expected (copy rich text, you get rich text in the same format when you paste). Take a look through the forums. Browse through the Scrivener change lists. You will find hundreds of instances of my implementing user suggestions or refining features where I feel the user has seen something better than I could have. Look through the Wish List forum - half of the requests there you will see are replied, “Done for 2.0” - because I responded to previous requests. And yes, you will also find instances of me politely explaining why I feel such-and-such a feature doesn’t belong in Scrivener. Occasionally a little more forcefully when a user won’t take no for an answer, but I do evaluate each suggestion and consider whether it would fit in with Scrivener. Of course, I’m sure you will see this as an example of me derisively deflecting ideas that don’t fit my own workflow, as you seem to be of the opinion that the job of a developer is simply to implement every single user suggestion unquestioningly.

  3. You seem to think you are the first professional writer to have been benevolent enough to put Scrivener through its paces and that because it doesn’t do everything you want, no professional writer could seriously use it - which is something of a leap, to say the least. I hate to break it to you, but there are a number of books on the shelves out there right now that have been written in Scrivener - there are professional novelists, academics, lawyers, scriptwriters and yes, even journalists who write for major newspapers using it every day, and have no such issues. But actually, this is irrelevant. I listen and respond to all (polite) users, regardless of their published status. Being a professional doesn’t give you the right to be rude. Again, see (1) above.

  4. Claiming that pasting from Scrivener has “unintelligible results” is absolute and utter errant nonsense. Sorry, but it is. Scrivener’s copy and paste is handled by the OS X text engine. If you don’t like the basics of it, take it up with Apple, because they wrote the copy and paste code and Scrivener’s copy and paste works exactly as it does in most other Mac applications. Unless I have misunderstood you, what you are asking is for Scrivener to modify the copied text - because that is what you want for your particular workflow. I just tried copying some text from a document in Word that had paragraph spacing and a head indent and pasting it into a plain text editor - and got exactly the same results as with Scrivener. So really, I still don’t exactly understand your issue or why you think that Scrivener is doing anything different here than other programs. Because it’s not. (Although I should make it clear that I am not trying to duplicate all of Word’s features.) Perhaps there is something you have failed to explain properly that I am still not getting. Or perhaps I am being dense. But I am at a loss as to what the big issue is. I also don’t understand why your Scrivener documents would be “shitty looking” just because you entered the line breaks and tabs manually. They would look exactly the same as they do now, except that the line breaks and tabs would be real whitespace characters rather than just formatting:

  1. On one thing we do agree: I agree that my app isn’t for you, just as you are not the customer for me. I enjoy working on Scrivener and getting feedback from its users, both positive and negative, and I enjoy trying to improve it and making it the best it can be based on customer interaction, but I don’t really feel the need to put up with unnecessary rudeness in my job any more than anyone else should have to. So unless you can tone down your personal attacks on me when you require assistance or post suggestions in the future, and unless you can handle the fact that a developer may not implement every one of your wishes (not that you actually asked for anything other than help, which I tried to give), I would politely ask you to take your business elsewhere: see my links page for a list of competitors who may be more willing to put up with your insults when they refuse to turn development in the direction you set for them.

For myself, I am frankly baffled at why you so suddenly became aggressive when I was merely trying to help you find a solution and attempting to explain that Scrivener’s formatting is doing nothing magic or different from other rich text programs.

I wish you luck in finding software (and a developer - it sounds as though I am not the first you have upset) that suits you.

Takes all kinds, Capn! Takes all kinds :wink: rat PS: the planks doin nufink at d moment Skipper!! :smiling_imp: PPS: ven again Capn, d y fink he cud be a plant from a MS competititiiter :open_mouth:

I know, I shouldn’t be posting this, but there’s an AppleScript solution to JB’s original problem:

set the clipboard to «class ktxt» of ((the clipboard as text) as record)
set tempText to paragraphs of (the clipboard)
set SavetheDelims to AppleScript's text item delimiters
set AppleScript's text item delimiters to "

set finalText to tempText as text
set AppleScript's text item delimiters to SavetheDelims
set the clipboard to finalText