PC Version?

I’m sure you’ve already answered this but I can’t find anything in the forums - are you planning on releasing a PC version?

I keep telling all my friends about this program becuase it’s clearly the best thing in the universe, and so far we’re all Mac users.

But I do have one lonely PC user friend who was just wondering…

Wouldn’t that be nice :slight_smile:

You might want to check this thread:


If a PC version ever becomes available, it will be via GnuStep. Scrivener uses too many Cocoa builtins for it to be ported to Win32 or Linux/UNIX. Since this project was born out of Keith’s desire to use it, and Keith doesn’t use Win32 or *NIX, don’t expect any serious work to go into porting it.

This used to bother me, as I cannot stand Apple’s laptop hardware and have to do a lot of linux<->os x file sharing, but the rumor mill has it that a 12" ultraportable is on the way. If it is a viable replacement for my 2-pound Sharp, I will be ditching the last of my non-apple daily use (well, non-server) hardware.

As edf says. :slight_smile: To port Scrivener to the PC properly would basically mean starting again. Sadly, there is no way to flip a few switches and get a Mac app running on a PC. There are three options for porting a Mac app to the PC:

  1. GNUStep, as edf mentions. Cocoa evolved from a programming framework called NeXTStep, and a bunch of open source coders decided to try to implement a free version of Cocoa called GNUStep which could be built on any platform. However, it is waaaay behind Cocoa. Its interface is hideous - very 1980s - and it has no web views, PDF views or anything like that, so a number of Scrivener’s features would either disappear straight away or I would have to rewrite code that Apple has already done! On top of this, Cocoa and GNUStep are not perfectly compatible. A number of file types are different, and so on and so forth. In short, GNUStep is not a serious possibility. I know of no popular Mac app that has been ported to another platform using GNUStep (in fact I know of none at all). That said, people are keeping one eye on GNUStep in the (perhaps vain) hope that it will one day evolve into a serious option.

  2. Write your app using a cross-platform framework such as REALBasic. A number of shareware apps take this approach - CeltX, for instance. If you do this, you really can just flick a switch and compile your app on any platform. Unfortunately, again, REALBasic doesn’t support many of the newer Cocoa features - web views, PDF views and so forth (I think - I may be wrong here). Worst of all, though, is that most users can spot a REALBasic app a mile off, because they don’t look like they belong on any platform. Their interfaces look a bit Mac-ish if compiled for the Mac, and a bit Windows-ish if compiled for Windows, but they look a bit toy-ish. Academic anyway, as Scrivener wasn’t done this way.

  3. The native approach. Truly “native” OS X programs are written using the Objective-C programming language and the Cocoa framework (Cocoa is written in Objective-C); native Windows applications are written using C++ and the MFC framework. So to make your program look really great on both platforms and work as smoothly and fast as possible, you would develop it in Cocoa on the Mac and using MFC on Windows. This is the route the big software houses take. (Actually, a number of them - such as Microsoft - use Carbon on the Mac, which is like Cocoa except it’s written in C, because it is a little easier to port C++ programs to Carbon, I believe.) But this means it takes twice the development time and you need to know both frameworks equally well - really, you need different developers for each platform. And obviously, I’m not going to invest another two years developing for a platform I don’t use… Of course, if there is a Windows programmer out there who wants to port Scrivener, I will happily license it… :slight_smile:

So, um, that was a long way of saying, “no”.


Actually, the options aren’t quite so bleak, though as far as Scrivener is concerned it would still require a rewrite to not use Mac stuff.

The best bet out there for cross-platform development (wiht or without a GUI) is Qt4, which builds native (Carbon) OS X apps:

torafugu.com/Trolltech/qt-4.0.0/ … ative.html

I’ve used Qt to build a Linux+Win32 GUI, but haven’t ventured into the Mac end of it yet (we don’t plan to ship Apple hardware). It’s a no-brainer; Qt wraps everything including filesystem access, threads, and so forth.

As for the stuff missing from GNUStep, there is an open source version of WebKit out there:


Quicktime and PDF will still be problems. Gnustep had a PdfKit, but this has been replaced by something called PopplerKit.

None of this is meant as any pressure Keith :slight_smile: