Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bQ717-00085Q-08 for pgsql-translators@arkaria.postgresql.org; Thu, 21 Jul 2016 05:59:29 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1bQ715-0001bJ-V7 for pgsql-translators@arkaria.postgresql.org; Thu, 21 Jul 2016 05:59:27 +0000 Received: from makus.postgresql.org ([2001:4800:1501:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1bQ715-0001bC-FY for pgsql-translators@postgresql.org; Thu, 21 Jul 2016 05:59:27 +0000 Received: from mail-lf0-x229.google.com ([2a00:1450:4010:c07::229]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1bQ712-0003uZ-Lk for pgsql-translators@postgresql.org; Thu, 21 Jul 2016 05:59:26 +0000 Received: by mail-lf0-x229.google.com with SMTP id b199so52834538lfe.0 for ; Wed, 20 Jul 2016 22:59:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=p9o4BMRzO+OVKH4pxZRl3AMFm86rYq62MTuaqYBsg+8=; b=WRwXbnpx8Pb9/x2EkVXmBg3+CvWoabS+SFeKAiTurkl347uXBR6ZZdzVx7KuVZT/dm M+qwE1Zj3xS77JEUfCCBcxMn8ZCZdR9jq3Ben1l6d3g6J70J9FZg9EVzKPF0+AlyDDlC lthEHFIcAONe7CBFbhPKm7gMCuWLK8jBrLCn0vcA3D4kmNEb0QGapgndyN9AtowrGkUq IIr8+6vqczUGG+7CJFslTc9MMmOLpgD9cd26FB203QyqIk4KbtEdroo7q8UG2YRp2k+X bptDQrZTRM8xx7WPfmPAa763O/SCDaoq5ceRu2yUFfQhqCJhiObj3YZaPsTRC6qCJpub jqUQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=p9o4BMRzO+OVKH4pxZRl3AMFm86rYq62MTuaqYBsg+8=; b=BKuzLaX1CATxP2fIWB2VYAeVaCXM9KSMxmoiBb0halH4HxFFWQmHZy+ix1d4mXDI6g vJavqEw8lYwSR8SE2DxXZTPxOdjLK8p7NL7czt/MViVcOX1c/u8MFLbnCrjCQpR6udpO jksWQh7dSPDma9XPuGlVUGD0q0hxgtnK6mobYHJP1efTCrufBaZ7t2QRc72+Umt/ZvNl DXRAymWkaKlApYvsn7LZV9r/f7w7OfsY7jV1advIfYy6RwZsMyA7wtDs6xfx4pnnT3RO +vGCbz7h0uTqQY+IYyCICCnl6raC6J7P39hNIw1MYlo5X/c2PzIDGvYwpbderL9PHOaR 95XA== X-Gm-Message-State: ALyK8tItXZXXMysh19BVTfM0ab7BaGOPWgBstdzKyHEE+O5qIx0n1V+huLK9xFrRUQDaBg== X-Received: by 10.25.219.11 with SMTP id s11mr12919956lfg.129.1469080761979; Wed, 20 Jul 2016 22:59:21 -0700 (PDT) Received: from [1.0.0.7] ([109.196.196.52]) by smtp.gmail.com with ESMTPSA id f40sm1229469lji.46.2016.07.20.22.59.20 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 20 Jul 2016 22:59:21 -0700 (PDT) Subject: Re: Problem with error messages To: Peter Eisentraut , pgsql-translators@postgresql.org References: <337ce77f-4159-0f43-cdb7-fcac30e3e219@2ndquadrant.com> <578F1B63.5000301@gmail.com> <2177748d-ff90-535c-080c-5ee0f399f4af@2ndquadrant.com> Cc: Walter Willmertinger From: Alexander Law Message-ID: <579064B8.3060205@gmail.com> Date: Thu, 21 Jul 2016 08:59:20 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.8.0 MIME-Version: 1.0 In-Reply-To: <2177748d-ff90-535c-080c-5ee0f399f4af@2ndquadrant.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Pg-Spam-Score: -2.7 (--) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgsql-translators Precedence: bulk Sender: pgsql-translators-owner@postgresql.org 21.07.2016 02:45, Peter Eisentraut wrote: > On 7/20/16 2:34 AM, Alexander Law wrote: >> echo 'HINWEIS: Tabelle »mickeymouse« existiert nicht, wird übersprungen' | iconv -f UTF-8 -t ASCII//TRANSLIT >> HINWEIS: Tabelle >>mickeymouse<< existiert nicht, wird ubersprungen >> >> Is much better and still better than to show untranslated message with >> the notice about failed conversion. > Right, but we don't have that functionality in PostgreSQL. It would > have to be implemented, and the transliteration tables provided. > It seems, that the gettext functionality could be used for that conversion. I wrote a simple test: bindtextdomain("postgres-9.5","/usr/share/locale"); bind_textdomain_codeset("postgres-9.5", "ASCII"); textdomain("postgres-9.5"); printf(gettext("table \"%s\" does not exist, skipping"), "missing"); It prints: >LANG=de_DE.UTF-8 ./testgettext Tabelle ,,missing" existiert nicht, wird uebersprungenuser Or with LATIN9: LANG=de_DE.UTF-8 ./testgettext | iconv -f LATIN9 Tabelle »missing« existiert nicht, wird übersprungenuser So if we know what encoding to use when translating the server messages, may be we should just specify it in bind_textdomain_codeset. I see that the server itself can have some different encoding for the logs (which is?), but may be it could be converted such way too. Best regards, Alexander -- Sent via pgsql-translators mailing list (pgsql-translators@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-translators