Re: UTF8 with BOM support in psql
Andrew Dunstan <andrew@dunslane.net>
From: Andrew Dunstan <andrew@dunslane.net>
To: Itagaki Takahiro <itagaki.takahiro@oss.ntt.co.jp>
Cc: Peter Eisentraut <peter_e@gmx.net>, pgsql-hackers@postgresql.org
Date: 2009-11-17T00:51:26Z
Lists: pgsql-hackers
Itagaki Takahiro wrote: > Peter Eisentraut <peter_e@gmx.net> wrote: > > >> OK, I think the consensus here is: >> - Eat BOM at beginning of file (as you implemented) >> - Only when client encoding is UTF-8 --> please fix that >> > > Are they AND condition? If so, this patch will be useless. > Please remember \encoding or SET client_encoding appear > *after* BOM at beginning of file. I'll agree if the condition is > "Eat BOM at beginning of file and <<set client encoding to UTF-8>>", > like: > Defining Python Source Code Encodings: > http://www.python.org/dev/peps/pep-0263/ > As previously discussed we should not be automagically setting the client encoding, nor inferring it from the presence of a BOM. As for when it can be set, unless I'm mistaken you should be able to set it before any file is opened, if you need to, using PGOPTIONS or psql "dbname=mydb options='-c client_encoding=utf8'". Of course, if the server encoding is utf8 then, in the absence of it being set using those methods, the client encoding will start as utf8 also. cheers andrew