On Thu, 2004-11-25 at 02:06, Henry Hartley wrote: > I've just installed Fedora Core 3 and am revisiting my calendar > script. Although it didn't work in my old configuration, it's > working now with international (i.e. Unicode) characters. I'm not > sure what changes, specifically, fixed this but the changes and > comments made by Elmar Jobs and others here certainly helped.
That's interesting. I should note, by the way, some discussion about calendier.py in bugs that you may find useful: http://bugs.scribus.net/view.php?id=1287 In addition, there have been some changes in the scripter recently that may affect scripts, though generally only if they were doing something that wouldn't work anyway: http://bugs.scribus.net/view.php?id=1283 You may also find the draft scripter FAQ and 'boilerplate' script useful: http://bugs.scribus.net/view.php?id=1317 In particular, using '#!/usr/bin/env python' is strongly recommended over '#!/usr/bin/python', as that way the python interpreter may be anywhere on the user's path. It's also well worth wrapping 'import scribus' in a try/catch block to explain to users why the script doesn't work when you run it on the command line, and how to run it correctly. > * There are a few new font, size and color settings. For instance, > you don't have to use the same font for everything and you can set > the color, thickness and shading of the lines. One of the Scripter changes means that Scribus will now raise an exception if you attempt to set the font to a font that's not available on the local system. It used to just ignore your request without telling you. This means that if you want to continue running and ignore the failure, you need to do something like: try: setFont(fontname, framename) except scribus.ScribusException,err: print "Failed to set font on %s to %s: %s" % (fontname, framename, err) If you use 'from scribus import' not 'import scribus', you don't need the 'scribus' prefix. I don't much like from import myself, but many do use it. Hmm. This code won't work for 1.2 users, as scribus.ScribusException isn't defined in 1.2 . To retain 1.2 compatiblity you might need to do something near the start of your script like: if not hasattr(scribus, "ScribusException"): class ScribusException(Exception): pass scribus.ScribusException = ScribusException (untested). This defines an exception your code can match on, though the Scribus module will never actually throw it. > As a side note, http://www.scribus.org.uk doesn't seem to be > responding. Problems? Yeah, I think the server has melted :-( . Paul Johnson is looking into it - he posted here a day or two ago about it. -- Craig Ringer
