Re: [PyKDE] unicode two-way conversion
On Wednesday 26 October 2005 2:57 am, Sundance wrote: > I heard Sebastian Kügler said: > > So what I basically need is a two-way conversion between unicode > > strings and ascii (or at least something that is easily usable > > together with psycopg and postgres' character fields. from Unicode to 8Bit (UTF-8) -- someStr = unicode(QString("hello")) eightBitStr = someStr.encode('utf-8') from 8Bit (UTF-8) top Unicode -- read8Bit = unicodeStr = read8Bit.decode('utf-8') qString = QString(unicodeStr) eg. Pasted from Konsole -- >>> smeStr = str('൱') >>> smeStr.decode('utf-8') u'\u0d71' Rajeev J Sebastian ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
Re: [PyKDE] unicode two-way conversion
On Tuesday 25 October 2005 23:27, Sundance wrote: > You most probably want to read this: > http://www.joelonsoftware.com/articles/Unicode.html Thanks, it's a good read and filled me in on some wholes. Cheers, -- sebas http://www.kde.nl | http://vizZzion.org | GPG Key ID: 9119 0EF9 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - I don't know what weapons World War Three will be fought with, but World War four will be fought with sticks and stones. - Albert Einstein pgp7s1PkYSWnb.pgp Description: PGP signature ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
[PyKDE] SIP: difference between TransferBack and Factory
Hello, Having read the SIP documentation, it is not clear to me what is the difference between using TransferBack and using Factory as annotation for a function. It *looks* like Factory should be used for new objects, and TransferBack for objects that existed "before" (for some meaning of before). My doubt is: why does SIP care whether the function just created the object, or got it from somewhere else, as long as the semantic is that Python will own the object after the call? Why should it care whether it already seen it as a Python object or not? Can anybody elaborate a little? Giovanni Bajo ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
Re: [PyKDE] unicode two-way conversion
I heard Sebastian Kügler said: > So what I basically need is a two-way conversion between unicode > strings and ascii (or at least something that is easily usable > together with psycopg and postgres' character fields. Hello Sebastian, You most probably want to read this: http://www.joelonsoftware.com/articles/Unicode.html Seriously. It's not a very long read, and you'll never have a problem with Unicode ever again. And you'll get to appreciate how nice Python's Unicode support is, too. You'll see. It saved my day many times already. :) Ta ta, -- S. ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
Re: [PyKDE] unicode two-way conversion
On Tuesday 25 October 2005 14:39, Diez B. Roggisch wrote: > > Ah, that helps the problem in my test script. Now I'm encountering a > > problem encoding the input of a QLineedit: > > > > File "john.py", line 154, in dataFromGuiToUser > > self.user.data["achternaam"] = > > self.GAchternaam.text().encode('utf-8', 'strict') > > AttributeError: encode > > text() returns a QString, which you should look up in the > qt-reference-manual. That reveals the method > > QString::utf8() > > which returns a QCString. And that should be converted to a python byte > string (by means of sip I think) That doesn't seem to be the case, it's a QCString at that point. > Then you need to _decode_ it as utf-8 to yield a unicode object. So the > whole line should read > > self.user.data["achternaam"] = > self.GAchternaam.text().utf8().decode('utf-8') That throws me an AttributeError on encode(). However, if I use ascii(), it seems to work fine both ways: self.GAchternaam.text().ascii() Thanks for helping with that! -- sebas http://www.kde.nl | http://vizZzion.org | GPG Key ID: 9119 0EF9 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Natural selection won't matter soon, not anywhere as much as concious selection. We will civilize and alter ourselves to suit our ideas of what we can be. Within one more human lifespan, we will have changed ourselves unrecognizably. - Greg Bear pgpArEq2n2DT0.pgp Description: PGP signature ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
Re: [PyKDE] installig of SIP
On Tue, 25 Oct 2005 11:24:48, Nguessan KRE wrote: >Please help me. I can not installing SIP-4.3.1 on my >computer. bellow the message of error: > >[EMAIL PROTECTED] sip-4.3.1]# python configure.py -l qt >This is SIP 4.3.1 for Python 2.4.2 on linux2. [...] I may be completely wrong here, but have you tried running configure.py without specifying the "-l qt" option? David ___ $0 Web Hosting with up to 200MB web space, 1000 MB Transfer 10 Personalized POP and Web E-mail Accounts, and much more. Signup at www.doteasy.com ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
[PyKDE] installig of SIP-4.3.1
Hello, Please help me. I can not installing SIP-4.3.1 on my computer. bellow the message of error: [EMAIL PROTECTED] sip-4.3.1]# python configure.py -l qt This is SIP 4.3.1 for Python 2.4.2 on linux2. The SIP code generator will be installed in /usr/local/bin. The SIP module will be installed in /usr/local/lib/python2.4/site-packages. The SIP header file will be installed in /usr/local/include/python2.4. The default directory to install .sip files in is /usr/local/share/sip. Qt v3.3.2 free edition is being used. The Qt header files are in /usr/lib/qt-3.3/include. The qt Qt library is in /usr/lib/qt-3.3/lib. Qt's default platform/compiler configuration will be used. Creating sipconfig.py... Creating top level Makefile... Creating sip code generator Makefile... Creating sip module Makefile... [EMAIL PROTECTED] sip-4.3.1]# make make[1]: Entering directory `/home/kre/sip-4.3.1/sipgen' make[1]: « sip » est à jour. make[1]: Leaving directory `/home/kre/sip-4.3.1/sipgen' make[1]: Entering directory `/home/kre/sip-4.3.1/siplib' g++ -shared -Wl,-rpath,/usr/lib/qt-3.3/lib -Wl,--version-script=sip.exp -o sip.so siplib.o qtlib.o threads.o objmap.o -L/usr/lib/qt-3.3/lib -L/usr/X11R6/lib -lqt -lXext -lX11 -lm qtlib.o(.gnu.linkonce.t.__i686.get_pc_thunk.bx+0x0): dans la fonction « __i686.get_pc_thunk.bx »: /home/kre/sip-4.3.1/siplib/qtlib.cpp:103: définitions multiples de « __i686.get_pc_thunk.bx » siplib.o(.text.__i686.get_pc_thunk.bx+0x0):/home/kre/sip-4.3.1/siplib/siplib.c:2324: défini pour la première fois ici collect2: ld a retourné 1 code d'état d'exécution make[1]: *** [sip.so] Erreur 1 make[1]: Leaving directory `/home/kre/sip-4.3.1/siplib' make: *** [all] Erreur 2 [EMAIL PROTECTED] sip-4.3.1]# Thank you ___ Appel audio GRATUIT partout dans le monde avec le nouveau Yahoo! Messenger Téléchargez cette version sur http://fr.messenger.yahoo.com ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
Re: [PyKDE] Update on QStrings and PyQt4
> Phil Thompson <[EMAIL PROTECTED]> wrote: > >> A lot of interoperability improvements have been made in current PyQt3 >> snapshots. I've just implemented the buffer interface for QString and >> the >> following now work: >> >> f = open(QString("Qt"), "r") "foobar".find(QString("bar")) >> "fooxxx".replace(QString("xxx", QString("bar")) >> >> I've already mentioned that the following also now work: >> >> s = "Py" + QString("Qt") >> s = "Py"; s += QString("Qt") >> >> Unfortunately, this still doesn't work: >> >> QString("foo") in "foobar" >> >> I think this is actually a feature/bug in Python - for this operation, >> unlike other methods like find(), replace() etc., the buffer interface >> isn't used for some reason. I don't know if other string operations have >> a >> similar problem. > > Well, this is good news (especially if you're going to make a SIP/PyQt3 > release with this feature), since it's very handy. > As for the "in" operator, did you report this to the python-dev list? > Maybe > it's just a bug and can get fixed. I'm working on a patch at the moment (with Guido's blessing so it should go in). If it works Ok then I will go the duck typing route - and it would also go into PyQt3. I'll make the patch available for people to play with. Phil ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
Re: [PyKDE] unicode two-way conversion
Sebastian Kügler <[EMAIL PROTECTED]> wrote: > File "john.py", line 154, in dataFromGuiToUser > self.user.data["achternaam"] = self.GAchternaam.text().encode('utf-8', > 'strict') > AttributeError: encode > > So the problem is that I'm not able to convert the QString to utf-8 (without > making it a str first, which bails out on UnicodeDecodeError. See attached > snippet. > > Any idea? Quickly skimming through QString docs reveals a utf8() method. Otherwise, you can call unicode() just as you would call str(), and then using unicode.encode. -- Giovanni Bajo ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
Re: [PyKDE] unicode two-way conversion
Am Dienstag, 25. Oktober 2005 12:48 schrieb Sebastian Kügler: > On Tuesday 25 October 2005 12:28, Mateusz Korniak wrote: > > > > Encode to (and back from) utf-8. > > Remember only that utf-8 representation is longer than number of > > chars in unicode string if any non 7bit ascii char is used. > > Also make sure that Yours DB iface allows to use 8bit encoding > > (like iso-8859-1/2). > > File "john.py", line 154, in dataFromGuiToUser > self.user.data["achternaam"] = > self.GAchternaam.text().encode('utf-8', 'strict') > AttributeError: encode > > So the problem is that I'm not able to convert the QString to utf-8 > (without making it a str first, which bails out on > UnicodeDecodeError. See attached snippet. Consider using QString.utf8() method. Pete ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
Re: [PyKDE] Update on QStrings and PyQt4
Phil Thompson <[EMAIL PROTECTED]> wrote: > A lot of interoperability improvements have been made in current PyQt3 > snapshots. I've just implemented the buffer interface for QString and the > following now work: > > f = open(QString("Qt"), "r") "foobar".find(QString("bar")) > "fooxxx".replace(QString("xxx", QString("bar")) > > I've already mentioned that the following also now work: > > s = "Py" + QString("Qt") > s = "Py"; s += QString("Qt") > > Unfortunately, this still doesn't work: > > QString("foo") in "foobar" > > I think this is actually a feature/bug in Python - for this operation, > unlike other methods like find(), replace() etc., the buffer interface > isn't used for some reason. I don't know if other string operations have a > similar problem. Well, this is good news (especially if you're going to make a SIP/PyQt3 release with this feature), since it's very handy. As for the "in" operator, did you report this to the python-dev list? Maybe it's just a bug and can get fixed. -- Giovanni Bajo ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
Re: [PyKDE] unicode two-way conversion
Diez B. Roggisch <[EMAIL PROTECTED]> wrote: > Then you need to _decode_ it as utf-8 to yield a unicode object. So the > whole line should read > > self.user.data["achternaam"] = > self.GAchternaam.text().utf8().decode('utf-8') You're working way too hard to get an unicode string out of a QString: self.user.data["achternaam"] = unicode(self.GAchternaam.text()) But Sebastian wanted a UTF-8 string, so calling .utf8() on the QString should be sufficient. -- Giovanni Bajo ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
Re: [PyKDE] unicode two-way conversion
> Ah, that helps the problem in my test script. Now I'm encountering a > problem encoding the input of a QLineedit: > > File "john.py", line 154, in dataFromGuiToUser > self.user.data["achternaam"] = self.GAchternaam.text().encode('utf-8', > 'strict') > AttributeError: encode text() returns a QString, which you should look up in the qt-reference-manual. That reveals the method QString::utf8() which returns a QCString. And that should be converted to a python byte string (by means of sip I think) Then you need to _decode_ it as utf-8 to yield a unicode object. So the whole line should read self.user.data["achternaam"] = self.GAchternaam.text().utf8().decode('utf-8') Regards, Diez ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
Re: [PyKDE] unicode two-way conversion
On Tuesday 25 October 2005 12:28, Mateusz Korniak wrote: > > When I read the data from the widget, I'm not able to insert strings into > > the database using unicode. I can replace the offending characters with > > 'string'.encode('ascii', 'xmlcharrefreplace'). > > Encode to (and back from) utf-8. > Remember only that utf-8 representation is longer than number of chars in > unicode string if any non 7bit ascii char is used. > Also make sure that Yours DB iface allows to use 8bit encoding (like > iso-8859-1/2). Ah, that helps the problem in my test script. Now I'm encountering a problem encoding the input of a QLineedit: File "john.py", line 154, in dataFromGuiToUser self.user.data["achternaam"] = self.GAchternaam.text().encode('utf-8', 'strict') AttributeError: encode So the problem is that I'm not able to convert the QString to utf-8 (without making it a str first, which bails out on UnicodeDecodeError. See attached snippet. Any idea? -- sebas http://www.kde.nl | http://vizZzion.org | GPG Key ID: 9119 0EF9 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - A day without sunshine is like a day without orange juice. unicode-test.py Description: application/python pgpdx9YJ23sYh.pgp Description: PGP signature ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
[PyKDE] SIP Cygwin support [PATCH]
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 I'm attaching a patch for sip-4.3.1 which fixes compilation on Cygwin with our X11 port of Qt3. With this patch to sip, PyQt builds OOTB. Cygwin packages are available at: ftp://sunsite.dk/projects/cygwinports/release/KDE/qscintilla/ ftp://sunsite.dk/projects/cygwinports/release/python/sip/ ftp://sunsite.dk/projects/cygwinports/release/python/pyqt/ Or, using Cygwin setup.exe, by adding the following server: ftp://sunsite.dk/projects/cygwinports/ Yaakov Cygwin Ports -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.1 (Cygwin) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFDXAAXpiWmPGlmQSMRAs1aAJ415gRR7jYaXbozIc9dA5JfCBLl9QCg4j2M JrXoUXFUWCgA+RYSZ5/WoYY= =Ln3x -END PGP SIGNATURE- diff -urN -x .build -x .inst -x .sinst -x configure -x Makefile.in -x 'aclocal.m4*' -x ltmain.sh -x 'config.*' -x depcomp -x install-sh -x missing -x mkinstalldirs -x autom4te.cache sip-4.3.1-orig/siputils.py sip-4.3.1/siputils.py --- sip-4.3.1-orig/siputils.py 2005-09-10 11:31:24.0 -0500 +++ sip-4.3.1/siputils.py 2005-10-23 15:55:01.619125000 -0500 @@ -322,6 +322,11 @@ if self._python: incdir.append(self.config.py_inc_dir) +if sys.platform == "cygwin": +libdir.append(self.config.py_lib_dir) +py_lib = "python%u.%u" % ((self.config.py_version >> 16), ((self.config.py_version >> 8) & 0xff)) +libs.append(self.platform_lib(py_lib)) + if sys.platform == "win32": libdir.append(self.config.py_lib_dir) @@ -1048,6 +1053,8 @@ if not self.static: if self.generator == "MINGW" and self.config.sip_version < 0x04: self.LFLAGS.append("-Wl,--out-implib,%s.a" % self._target) +elif sys.platform == "cygwin": +self.LFLAGS.append("-Wl,--out-implib,lib%s.dll.a" % self._target) elif self.optional_string("AIX_SHLIB"): # AIX needs a lot of special handling. if self.required_string('LINK') == 'g++': @@ -1140,6 +1147,8 @@ else: if sys.platform == "win32": ext = "pyd" +elif sys.platform == "cygwin": +ext = "dll" elif sys.platform == "darwin": ext = "so" else: @@ -1325,6 +1334,9 @@ if sys.platform == "win32": exe = exe + ".exe" +if sys.platform == "cygwin": +exe = exe + ".exe" + # The command line. build = [] @@ -1417,6 +1429,9 @@ if sys.platform == "win32": target = target + ".exe" +if sys.platform == "cygwin": +target = target + ".exe" + mfile.write("TARGET = %s\n" % target) mfile.write("OFILES = %s\n" % self._build["objects"]) mfile.write("HFILES = %s\n" % self._build["headers"]) diff -urN -x .build -x .inst -x .sinst -x configure -x Makefile.in -x 'aclocal.m4*' -x ltmain.sh -x 'config.*' -x depcomp -x install-sh -x missing -x mkinstalldirs -x autom4te.cache sip-4.3.1-orig/specs/cygwin-g++ sip-4.3.1/specs/cygwin-g++ --- sip-4.3.1-orig/specs/cygwin-g++ 2005-09-10 11:31:24.0 -0500 +++ sip-4.3.1/specs/cygwin-g++ 2005-10-23 15:55:01.63475 -0500 @@ -22,7 +22,7 @@ QMAKE_CFLAGS_WARN_OFF = -w QMAKE_CFLAGS_RELEASE = -O2 QMAKE_CFLAGS_DEBUG = -g -QMAKE_CFLAGS_SHLIB = +QMAKE_CFLAGS_SHLIB = -DPIC QMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses QMAKE_CFLAGS_THREAD= -D_REENTRANT @@ -41,7 +41,7 @@ QMAKE_LIBDIR = QMAKE_INCDIR_X11 = /usr/X11R6/include QMAKE_LIBDIR_X11 = /usr/X11R6/lib -QMAKE_INCDIR_QT= $(QTDIR)/include +QMAKE_INCDIR_QT= /usr/include/qt3 QMAKE_LIBDIR_QT= $(QTDIR)/lib QMAKE_INCDIR_OPENGL= /usr/X11R6/include QMAKE_LIBDIR_OPENGL= /usr/X11R6/lib @@ -51,16 +51,16 @@ QMAKE_LFLAGS = QMAKE_LFLAGS_RELEASE = QMAKE_LFLAGS_DEBUG = -QMAKE_LFLAGS_SHLIB = -shared +QMAKE_LFLAGS_SHLIB = -shared -Wl,--enable-auto-image-base QMAKE_LFLAGS_PLUGIN= $$QMAKE_LFLAGS_SHLIB -QMAKE_LFLAGS_SONAME= -Wl,-soname, +QMAKE_LFLAGS_SONAME= QMAKE_LFLAGS_THREAD= -QMAKE_RPATH= -Wl,-rpath, +QMAKE_RPATH= QMAKE_CYGWIN_SHLIB = 1 QMAKE_CYGWIN_EXE = 1 QMAKE_LIBS = -QMAKE_LIBS_DYNLOAD = -ldl +QMAKE_LIBS_DYNLOAD = QMAKE_LIBS_X11 = -lXext -lX11 QMAKE_LIBS_X11SM = -lSM -lICE QMAKE_LIBS_QT = -lqt ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
[PyKDE] installig of SIP
Hello, Please help me. I can not installing SIP-4.3.1 on my computer. bellow the message of error: [EMAIL PROTECTED] sip-4.3.1]# python configure.py -l qt This is SIP 4.3.1 for Python 2.4.2 on linux2. The SIP code generator will be installed in /usr/local/bin. The SIP module will be installed in /usr/local/lib/python2.4/site-packages. The SIP header file will be installed in /usr/local/include/python2.4. The default directory to install .sip files in is /usr/local/share/sip. Qt v3.3.2 free edition is being used. The Qt header files are in /usr/lib/qt-3.3/include. The qt Qt library is in /usr/lib/qt-3.3/lib. Qt's default platform/compiler configuration will be used. Creating sipconfig.py... Creating top level Makefile... Creating sip code generator Makefile... Creating sip module Makefile... [EMAIL PROTECTED] sip-4.3.1]# make make[1]: Entering directory `/home/kre/sip-4.3.1/sipgen' make[1]: « sip » est à jour. make[1]: Leaving directory `/home/kre/sip-4.3.1/sipgen' make[1]: Entering directory `/home/kre/sip-4.3.1/siplib' g++ -shared -Wl,-rpath,/usr/lib/qt-3.3/lib -Wl,--version-script=sip.exp -o sip.so siplib.o qtlib.o threads.o objmap.o -L/usr/lib/qt-3.3/lib -L/usr/X11R6/lib -lqt -lXext -lX11 -lm qtlib.o(.gnu.linkonce.t.__i686.get_pc_thunk.bx+0x0): dans la fonction « __i686.get_pc_thunk.bx »: /home/kre/sip-4.3.1/siplib/qtlib.cpp:103: définitions multiples de « __i686.get_pc_thunk.bx » siplib.o(.text.__i686.get_pc_thunk.bx+0x0):/home/kre/sip-4.3.1/siplib/siplib.c:2324: défini pour la première fois ici collect2: ld a retourné 1 code d'état d'exécution make[1]: *** [sip.so] Erreur 1 make[1]: Leaving directory `/home/kre/sip-4.3.1/siplib' make: *** [all] Erreur 2 [EMAIL PROTECTED] sip-4.3.1]# Thank you ___ Appel audio GRATUIT partout dans le monde avec le nouveau Yahoo! Messenger Téléchargez cette version sur http://fr.messenger.yahoo.com ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
Re: [PyKDE] unicode two-way conversion
On Tuesday 25 of October 2005 12:13, Sebastian Kügler wrote: > Hi, > > (I'm posting to this list since I think it's likely that someone here ran > across the same problem.) > > I'm working on a database frontend for a postgresql database, and I'm > having an issue with unicode characters that I've put into the Qt UI. > > When I read the data from the widget, I'm not able to insert strings into > the database using unicode. I can replace the offending characters with > 'string'.encode('ascii', 'xmlcharrefreplace'). Encode to (and back from) utf-8. Remember only that utf-8 representation is longer than number of chars in unicode string if any non 7bit ascii char is used. Also make sure that Yours DB iface allows to use 8bit encoding (like iso-8859-1/2). > So what I basically need is a two-way conversion between unicode strings > and ascii (or at least something that is easily usable together with > psycopg and postgres' character fields. > > Attached scriptlet should show that problem. Another solution (and prolly better) to You, may be to create unicode Postgresql database and do not care about encoding anymore at all. -- Mateusz Korniak "Black holes are where God divided by zero." - Steven Wright ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
[PyKDE] unicode two-way conversion
Hi, (I'm posting to this list since I think it's likely that someone here ran across the same problem.) I'm working on a database frontend for a postgresql database, and I'm having an issue with unicode characters that I've put into the Qt UI. When I read the data from the widget, I'm not able to insert strings into the database using unicode. I can replace the offending characters with 'string'.encode('ascii', 'xmlcharrefreplace'). So what I basically need is a two-way conversion between unicode strings and ascii (or at least something that is easily usable together with psycopg and postgres' character fields. Attached scriptlet should show that problem. Thanks for enlightenment, -- sebas http://www.kde.nl | http://vizZzion.org | GPG Key ID: 9119 0EF9 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This joke was brought to you by the Department of Redundancy Department. unicode-test.py Description: application/python pgpBQc9LPOOsH.pgp Description: PGP signature ___ PyKDE mailing listPyKDE@mats.imk.fraunhofer.de http://mats.imk.fraunhofer.de/mailman/listinfo/pykde