Sliding-Scale Text Zoom

Hi all,

You know what would be really great? Instead having a text zoom menu at the bottom of the window that says, “100%, 125%, 150%”, etcetera, it’s be great to just have a slider control with a small text field next to it so that we could come up with our own arbitrary zoom setting, so that if we wanted to, we could set our text zoom level to be, say, 163%, or 215%, or 336%, if we so desired. (Because you know – sometimes 125% seems too small, but 150% feels too big … well, for some of us, at least.) I don’t know if the current way of doing things is the result of a deliberate UI design choice (if so, I can sort of see the logic in doing it like that – I just don’t prefer it, is all), or if it was perhaps designed around some sort of limitation in the OS X text system, or what … if it’s the latter case, well, I guess there’s just nothing for it, and them’s the brakes. But if the former is true, then I, as a user, would argue that a more flexible approach is preferable, as it gives me what all users want, in the end – in the words of comedian Tim Allen, “More power!” :smiley:

–A.H.

P.S. Has Apple given ANY indication to devs of when – if ever – they’re going to revamp or upgrade the OS X text system? It’s soooo “10.4.”

There are some weird things happen with zooming on, particularly with odd numbers, but I think most of them are worked around at this point at the code level.

There’s your answer, as far as any indication goes, right there. Alas. This is unsubstantiated as far as I know, but I’ve heard that the RTF engine was basically the hobby horse of one talented coder at Apple, and he left Apple around the time of Tiger, which is why nothing about it has really evolved since then. Up until then, new features were coming in at a decent clip. Buggy and halfway implemented, but at least things were happening. Now we just have the same buggy half-implemented tables, lists and “styles”. I think a big part of the problem is that it is RTF. It’s not the easiest thing to work with, it’s a gruesome specification. I realise back when 10.0 came out XML was still a kind of new thing, but it sure would have been nice if they had had a little foresight on the matter. Just about every word processing engine is based on it now, and having the OS X text engine based on XML would have made the whole landscape much, much easier for third party extension, or even for another developer or two at Apple to keep on with it.

Just a clarification: there’s nothing inherently “RTF” about the text system - it’s just that Apple chose RTF (or rather RTFD) as the best format for saving text from the system.

The text system itself its, conceptually, sound - great, even. There are paragraph-level settings and character-level settings, and views are separated from layout. Just look at what Nisus have done with the text system - custom tables, better lists, styles, and so on. Although I know that they run into as many frustrations as I do, and have had to use a lot of workarounds to get where they are. (They have been working on it for years, and of course, the text editor area is the major component in Nisus, whereas it’s only one aspect of Scrivener, so I don’t have the same resources as they do to pump into improving and customising it.)

But yeah, the trouble is that it hasn’t been updated and improved enough. They slapped on a format bar and a different find bar for 10.7 (and am I the only one who hates find bars and prefers old-fashioned Find panels?), but left the .doc and .docx exporters losing loads of basic formatting and left the tables and bullets systems as buggy and awkward as ever. It’s a shame. There’s still a lot of potential in the text system, but it needs Apple’s attention to really improve it.

To answer the question, though, no, developers don’t get any heads-up on these things - not until a new OS goes into beta and is made available to developers (which I guess will be another two years away). Right now, we don’t even know what Apple are going to do about all the sandboxing bugs that could cripple many apps in the Mac App Store come the March 1st deadline - but don’t get me started on that!

Oh, and regarding the arbitrary text scales - that’s on the list, though it will probably not be coming until 3.0. It’s a lot more difficult than it seems, as there are some scales that can cause horrible drawing issues.

All the best,
Keith

Yeah, that’s true, I guess I just figured that internally the bindings between the program interface and the output format were too tight to make it easy to develop an alternate format beneath them, thus why Nisus uses RTF anyway. But then again, there is Mellel which uses XML as a format—though their engine does seem to be different on top, too. Could be highly modified like Nisus though.

And no you aren’t alone, I hate find bars with a passion.

It is a shame, because even with all of its warts, it is still the best stock text engine that any OS provides.

I have a question, though. Maybe I’m just being naive, but given the above, wouldn’t it make a lot of sense to rewrite Scrivener’s text editor so that it still used Apple’s text system underneath, but was based on XML instead of RTF, and in the process maybe had a few improvements made to its handling of lists and tables? I know enough to know that that would be a HUGE undertaking . . . but wouldn’t it be worth it, in the final analysis? Again, maybe I’m just being naive here, but since the text editor is a central part of Scrivener’s overall functionality, why shackle it to an inferior text engine without making any improvements to how that engine works, and to a file format that is, indeed, sooo 10.4, rather than the format of the future, XML? Again … not trying to be naive, though I maybe am. Perhaps doing this would be a lot more work than it would ultimately be worth . . . though I question the latter, as it might be worth quite a lot.

So far, the best support for tables and lists I’ve seen (albeit, of course, in a dedicated word processor) has been in Apple’s own Pages, which is ironic considering that the Apple text engine exhibits such – well, let’s call it “quirky” — behavior. I know Scrivener isn’t meant to be the same type of app as Pages — it’s about structure and form, not about lavish visual design — but any way you slice it, it’s possible that the dev(s) could do worse than to emulate Page’s features in this regard.

Over the past few days, I’ve been doing some worldbuilding for my new fantasy novel — a process that works best if kept within Scrivener’s organizational methodology — and in the process, I’ve had to make quite a few ordered lists (such as outlines within documents) and create quite a few tables (some of which are nested), and I can now safely say that the Apple text system truly is a P.O.S. and a half. I almost always have to duck into Pages to do the real “work” involved, which is an atrocious distraction and a cumbersome process of cut-and-paste and back-and-forth that takes more time than it should and more effort than necessary. But the only alternative is Scrivener’s lists and tables, which, I’m sorry, are atrocious and inelegant, to say the least.

Scrivener doesn’t have to have all sorts of gimmicky bells and whistles, or anything super-fancy. Just a little more feature-parity with what’s offered in word processors, and only in certain areas. Granted, those programs have a lot of extra features (and, admittedly, much larger dev teams), and I know that those programs are not what Scrivener is supposed to be. However, I think there’s a difference between trying to go toe-to-toe with MS Word or Pages in terms of their overall feature sets . . . and simply trying to make some much-needed improvement in how tables and lists are handled. Yes, Apple’s text system offers a lot of features and is, in a lot of ways, more complete than any other OS’s text system. But it also has a lot of opportunities for improvement. And while I can certainly understand the dev not wanting to have to write an entire text system on his own, I don’t think there’s anything wrong in asking for simple improvements to what is already there. Granted, the dev may want to prioritize other things ahead of such improvements, which is completely understandable and, of course, his prerogative… I’m just making the point that they eventually ned to be made.

I’m not trying to be rude or impudent, just matter-of-fact: the Apple text system’s tables and lists suck, a lot, and desperately want for improvement. Should the dev decide that these sorts of improvements are a higher priority, then believe me, they will be most welcome in some future version, and can only make Scrivener even better than it already is, which is terrific; since adopting Scrivener, I’ve been much more productive as a writer, much better organized, and have been set free from the “linear” writing brainwashing job that years of MS Word have done on me. So, yeah, I think Scrivener is fantastic at what it does, and doesn’t need to expand its functionality much beyond that . . . but I also think that it needs to do a few things better than it does, currently. And, I think that these improvements could be done without confusing Scrivener’s core purpose, mission, or its focused role in the writing process, and without trying to make it compete in a sphere that it was never intended to occupy. It may not be a dedicated word processor, but it does include some word processing functionality . . . so shouldn’t that functionality be as good as it can possibly be?

Well, now I’m ranting, or have been for a while, maybe. I realize that the dev has a life, a wife, a family, friends, and his own writing, plus things he wants to do that have nothing to do with coding for hours on end. And, I realize that one can only do so much with the resources one has. And yes, I realize that it’s one thing for someone like me to rattle off a wish-list of ideas and future features, and another thing entirely for the dev to sit down and do the hard work of coding those things into being, some of which might not even be possible, or too complex for just one person to handle. But, nonetheless, I think that issues like this one deserve to be addressed at some point, and something should eventually be done about them. I’m not trying to gripe or bitch or be an arse or anything, and I do realize that I am probably very naive about the complexities and effort required to fix these things. But I would be remiss if I didn’t say something about them, because I think that as a member of the user community, I kind of have an obligation to raise my voice and pontificate at length about this stuff. That’s all I’m trying to do, in the end; to make it known that this stuff needs fixin’, and that if it ever is, I for one will be most grateful and appreciative. I hope Scrivener is around for years to come, and I hope that one day, I can use it almost exclusively for my writing, without having to boot into Word and Pages for tables, programs whose workflows — when compared to Scrivener’s way of doing things — are a major buzz-kill to have to use.

—Andy H.

P.S. — If you can ever sort out the visual issues with certain fonts, a sliding-scale text zoom would still be terrific!

Andy H., I think you’ve already had your reply.

As I recall, in an early response in another thread about similar points to those you make above, Keith stated words to the effect that such changes are on the list for the future, but not the immediate future. Given what you say yourself above about timescales, I can’t see you can have much problem with that.

Bear in mind, though, that of course other users also have their own asks: language localisation and styles are two large ones that Keith has said he wants to address pretty soon, the thread below this one and numerous others before it have called for collaborative versioning (a magnitude-10 coding job if ever there was one, I imagine), there’s the iOS Scrivener to oversee, and I should think that the developer himself has plenty of other clever ideas to implement that no one else has thought of yet.

But in five years of observing Scrivener develop, I’ve always found that if Keith says he has put items on his list to tackle, that’s not a brush-off - he really has.

Well, that’s good to know. For what it’s worth, if Keith says that something is on his to-do list, I believe him, too. Scrivener has evolved greatly since version 1, and I have no doubt it will continue to improve as Keith works out bugs and implements suggestions and, as you say, all those clever things that he’s thought of that none of us haven’t. It just gets very difficult to wait, at times.

Also, for what it’s worth, the bulk of my post was not directed at Keith, so much as it was a lot of anticipated criticisms of what was being asked for . . . some people seem to think that “the less features something has, the better” is always the best rule of thumb, while I think that it’s more situational, depending not just on the design-philosophy of the developer, but also the needs of users, and the logical evolutionary path of the software as dictated by previous design and adaptation. Some people don’t think this, and most of my post was arguing against their criticism preemptively — perhaps a little too preemptively, I guess.

I do of course realize that mine are not the only feature-requests, and that the developer has his own ideas that none of us may have thought of yet, and that in the end, Keith is just one lone sculptor chiseling away busily, while the crowd shouts, “No, a little more wrinkles on the face! No, no, better definition of the fingers! No, a stronger jaw!” I just happen to be a very emphatic audience-member — perhaps too much so, at times — who has a lot of suggestions to offer, one who tries as hard as he can to be heard above the rest of the crowd — again, perhaps a little too hard. Also, my above post was written primarily out of frustration; it’s hard to work on a big project when your tools won’t cooperate, or won’t work the way that you want them to . . . resulting in a futile outpouring of pique, and further frustration with the fact that in order to get better tools, you have to wait until Christmas . . . though no one has told you exactly “when” this “Christmas” thing is supposed to happen, and so you’re left with nothing else but sitting yourself down and writing a very emphatic letter to Santa. Maybe two of them. And you try to make sure to head off at the pass any argument from others as to whether or not you actually need the tools in question. (Of course you do; why else would you ask for them?) All that I can hope is that by repeatedly writing to Santa in this fashion, I have not inadvertently landed myself — or my request for these specific tools — on the naughty list.

So yeah, that’s pretty much where I’m coming from with all this. If Keith says it’s on his list of to-dos, then I certainly believe him. He hasn’t let us down yet, after all, and I’m confident that when Christmas 2.5 or 3.0 rolls around, I will at least get something cool under the Scrivener tree, even if it isn’t exactly what I asked for. And even if that winds up being the case, hey, there’s always the next release to look forward to.

—A.H.

I’m not sure I follow the logic of this. The file format and the way these things are handled are entirely separate. Note that if you save an RTF file from Word and reopen it again, the tables and lists work just the same as if you were saving and opening a .docx file. A file format is just a snapshot of the content stored on disk - it has absolutely nothing to do with how that data is manipulated. There is nothing to gain from writing my own XML format, and in fact, there is something to lose - suddenly .scriv files would contain proprietary files rather than RTF files which have been in use for 20 years.

Pages does not use the standard OS X text engine. Apple wrote its own text engine from the ground up for Pages, which is not available to third-party developers. Apple can do that, because it has the resources.

I really think this is putting it way too strongly. I just do not see it like that. Sure, there are areas I wish they would improve - tables mainly (I’ve never had much of a problem with lists), but a “P.O.S”? I think that is over-egging the proverbial pudding.

I think you may have made your point - in this thread and others.

You are always more than welcome to ask; just bear in mind that we may not always be able to provide. And in this case, tables and bullet improvements are going to be post-3.0. As Hugh points out, there are many more features that are more important to more users.

I think you’ve made your point now. :slight_smile:

[Looks away politely. :slight_smile: ]

In summary: yes, better tables and lists would definitely be nice, and are still on the “future” list, but they are way down that list, I’m afraid.

All the best,
Keith