[1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2018-08-09 Thread Austin Group Bug Tracker


A NOTE has been added to this issue. 
== 
http://austingroupbugs.net/view.php?id=1122 
== 
Reported By:joerg
Assigned To:
== 
Project:1003.1(2016)/Issue7+TC2
Issue ID:   1122
Category:   System Interfaces
Type:   Enhancement Request
Severity:   Editorial
Priority:   normal
Status: New
Name:   Jörg Schilling 
Organization:
User Reference:  
Section:3 + 4 
Page Number:1102...and others 
Line Number:somewhere in section 3 and 4 
Interp Status:  --- 
Final Accepted Text: 
== 
Date Submitted: 2017-02-28 16:51 UTC
Last Modified:  2018-08-09 21:40 UTC
== 
Summary:POSIX should include gettext() and friends
== 

-- 
 (0004081) bhaible (reporter) - 2018-08-09 21:40
 http://austingroupbugs.net/view.php?id=1122#c4081 
-- 
What APIs would be useful in POSIX instead?

- For all functions that are affected by the current locale (from mbrtowc
to fprintf), there should be variants suffixed with _l that additionally
take a locale_t argument.
- There should be an accessor that returns the external name (e.g. "ll_CC")
of a locale_t with respect to a certain category.
- There should be a way for a library to install a hook (callback) that
gets invoked when the global locale changes (through a call to
setlocale()).
- The locale_t type should be made extensible, like the "facets" in the C++
std::locale type.

These are the real problems around locales in POSIX currently! 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2017-02-28 16:51 joerg  New Issue
2017-02-28 16:51 joerg  Name  => Jörg Schilling 
2017-02-28 16:51 joerg  Section   => 3 + 4   
2017-02-28 16:51 joerg  Page Number   => 1102...and others
2017-02-28 16:51 joerg  Line Number   => somewhere in
section 3 and 4
2017-03-01 16:05 steffenNote Added: 0003575  
2017-03-01 16:54 shware_systems Note Added: 0003576  
2017-03-01 17:10 joerg  Note Added: 0003577  
2017-03-01 17:10 joerg  Note Edited: 0003577 
2017-03-01 17:11 steffenNote Added: 0003578  
2017-03-01 17:13 steffenNote Added: 0003579  
2017-03-01 17:23 joerg  Note Added: 0003580  
2017-03-01 17:27 joerg  Note Edited: 0003580 
2017-03-01 18:09 joerg  Note Edited: 0003580 
2017-03-01 22:37 steffenNote Added: 0003581  
2017-03-02 06:39 shware_systems Note Added: 0003582  
2017-03-02 09:09 joerg  Note Added: 0003583  
2017-03-02 09:40 keld   Note Added: 0003584  
2017-03-02 09:56 keld   Note Added: 0003585  
2017-03-02 14:41 steffenNote Added: 0003586  
2017-03-02 17:01 keld   Note Added: 0003587  
2017-03-03 04:42 shware_systems Note Added: 0003588  
2017-03-03 16:44 joerg  Note Added: 0003596  
2017-03-03 21:21 EdSchouten Note Added: 0003603  
2017-03-05 00:12 keld   Note Added: 0003608  
2017-03-05 00:13 keld   Note Edited: 0003608 
2017-03-05 00:14 keld   Note Edited: 0003608 
2017-03-05 00:17 keld   Note Edited: 0003587 
2017-03-06 10:28 joerg  Note Added: 0003609  
2017-03-06 10:28 joerg  Note Edited: 0003609 
2017-03-06 10:33 joerg  Note Added: 0003610  
2017-03-06 10:33 joerg  Note Edited: 0003610 
2017-04-05 05:49 shware_systems Note Added: 0003659  

[1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2018-08-09 Thread Austin Group Bug Tracker


A NOTE has been added to this issue. 
== 
http://austingroupbugs.net/view.php?id=1122 
== 
Reported By:joerg
Assigned To:
== 
Project:1003.1(2016)/Issue7+TC2
Issue ID:   1122
Category:   System Interfaces
Type:   Enhancement Request
Severity:   Editorial
Priority:   normal
Status: New
Name:   Jörg Schilling 
Organization:
User Reference:  
Section:3 + 4 
Page Number:1102...and others 
Line Number:somewhere in section 3 and 4 
Interp Status:  --- 
Final Accepted Text: 
== 
Date Submitted: 2017-02-28 16:51 UTC
Last Modified:  2018-08-09 21:39 UTC
== 
Summary:POSIX should include gettext() and friends
== 

-- 
 (0004080) bhaible (reporter) - 2018-08-09 21:39
 http://austingroupbugs.net/view.php?id=1122#c4080 
-- 
Should the gettext() function family be added to POSIX, in the current
state? As a former GNU gettext maintainer, I believe: NO.

1) Applications which need the API and tools can simply install the GNU
gettext package. This works even on platforms which have the API already
implemented by the system, namely Solaris and NetBSD. There are some small
integration issues between the system libc and the GNU libintl, but they
are small enough to not cause trouble in real applications.

2) Like EdSchouten says (0003603), there are already too many APIs in POSIX
that depend on global state. While gettext() can be implemented in a
multithread-safe way, by use of locks, it still costs CPU cycles to do so.
(Recently I stumbled across a program that was spending 29% of its time
fetching the current locale and computing a property of it - simply because
there is no way for a program to attach information to a locale_t object.)
So, a gettext_l function would be necessary.

3) Web servers and application servers want to do translations based on
user preferences, and the administrators of such servers don't want to
install all possible locales of the world. But when you don't have the
locale data for locale ll_CC installed, a
newlocale(LC_MESSAGES,"ll_CC",NULL) call will fail, thus you can't use
gettext() or gettext_l() for that locale.

4) Each time ISO C or POSIX has standardized something regarding
internationalization, the result was moderately or highly unusable 10 to 20
years later. wchar_t strings, from the ISO C Amendment (1995), are
ill-designed as described in
https://www.gnu.org/software/libunistring/manual/html_node/The-wchar_005ft-mess.html#The-wchar_005ft-mess
. locale_t is ill-designed because it is not extensible. The POSIX locale
specifies character classes, but no system I know of makes the Unicode
properties of characters accessible through the wctype() and iswctype()
functions.
Probably the reason is that the standardization committees didn't (and
couldn't) foresee the developments that took place in the next 20 years,
but the standard couldn't evolve since it's a standard. 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2017-02-28 16:51 joerg  New Issue
2017-02-28 16:51 joerg  Name  => Jörg Schilling 
2017-02-28 16:51 joerg  Section   => 3 + 4   
2017-02-28 16:51 joerg  Page Number   => 1102...and others
2017-02-28 16:51 joerg  Line Number   => somewhere in
section 3 and 4
2017-03-01 16:05 steffenNote Added: 0003575  
2017-03-01 16:54 shware_systems Note Added: 0003576  
2017-03-01 17:10 joerg  Note Added: 0003577  
2017-03-01 17:10 joerg  Note Edited: 0003577 
2017-03-01 17:11 steffenNote Added: 0003578  
2017-03-01 17:13 steffenNote Added: 0003579  
2017-03-01 17:23 joerg  Note Added: 0003580  
2017-03-01 17:27 joerg  Note Edited: 0003580 
2017-03-01 18:09 joerg  Note Edited: 0003580 
2017-03-01 22:37 steffen   

[1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2018-08-09 Thread Austin Group Bug Tracker


A NOTE has been added to this issue. 
== 
http://austingroupbugs.net/view.php?id=1122 
== 
Reported By:joerg
Assigned To:
== 
Project:1003.1(2016)/Issue7+TC2
Issue ID:   1122
Category:   System Interfaces
Type:   Enhancement Request
Severity:   Editorial
Priority:   normal
Status: New
Name:   Jörg Schilling 
Organization:
User Reference:  
Section:3 + 4 
Page Number:1102...and others 
Line Number:somewhere in section 3 and 4 
Interp Status:  --- 
Final Accepted Text: 
== 
Date Submitted: 2017-02-28 16:51 UTC
Last Modified:  2018-08-09 16:06 UTC
== 
Summary:POSIX should include gettext() and friends
== 

-- 
 (0004076) eblake (manager) - 2018-08-09 16:06
 http://austingroupbugs.net/view.php?id=1122#c4076 
-- 
Also needed: ngettext(), dngettext(), dcngettext() for properly translating
pluralized strings 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2017-02-28 16:51 joerg  New Issue
2017-02-28 16:51 joerg  Name  => Jörg Schilling 
2017-02-28 16:51 joerg  Section   => 3 + 4   
2017-02-28 16:51 joerg  Page Number   => 1102...and others
2017-02-28 16:51 joerg  Line Number   => somewhere in
section 3 and 4
2017-03-01 16:05 steffenNote Added: 0003575  
2017-03-01 16:54 shware_systems Note Added: 0003576  
2017-03-01 17:10 joerg  Note Added: 0003577  
2017-03-01 17:10 joerg  Note Edited: 0003577 
2017-03-01 17:11 steffenNote Added: 0003578  
2017-03-01 17:13 steffenNote Added: 0003579  
2017-03-01 17:23 joerg  Note Added: 0003580  
2017-03-01 17:27 joerg  Note Edited: 0003580 
2017-03-01 18:09 joerg  Note Edited: 0003580 
2017-03-01 22:37 steffenNote Added: 0003581  
2017-03-02 06:39 shware_systems Note Added: 0003582  
2017-03-02 09:09 joerg  Note Added: 0003583  
2017-03-02 09:40 keld   Note Added: 0003584  
2017-03-02 09:56 keld   Note Added: 0003585  
2017-03-02 14:41 steffenNote Added: 0003586  
2017-03-02 17:01 keld   Note Added: 0003587  
2017-03-03 04:42 shware_systems Note Added: 0003588  
2017-03-03 16:44 joerg  Note Added: 0003596  
2017-03-03 21:21 EdSchouten Note Added: 0003603  
2017-03-05 00:12 keld   Note Added: 0003608  
2017-03-05 00:13 keld   Note Edited: 0003608 
2017-03-05 00:14 keld   Note Edited: 0003608 
2017-03-05 00:17 keld   Note Edited: 0003587 
2017-03-06 10:28 joerg  Note Added: 0003609  
2017-03-06 10:28 joerg  Note Edited: 0003609 
2017-03-06 10:33 joerg  Note Added: 0003610  
2017-03-06 10:33 joerg  Note Edited: 0003610 
2017-04-05 05:49 shware_systems Note Added: 0003659  
2018-08-09 16:06 eblake Note Added: 0004076  
==




Re: [1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2017-04-05 Thread Anton Khikhlukha

Ьь
Отправлено с моего смартфона BlackBerry 10.
  Исходное сообщение  
От: Austдбк₽ууцin Group Bug Tracker
Отправлено: средууяяцчкч5 апреля 2017 г., 8:51
Кому: austin-group-l@opengroup.org
Тема: [1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and 
friends


A NOTE has been added to this issue. 
==
http://austingroupbugs.net/view.php?id=1122 
==
Reported By: joerg
Assigned To: 
==
Project: 1003.1(2016)/Issue7+TC2
Issue ID: 1122
Category: System Interfaces
Type: Enhancement Request
Severity: Editorial
Priority: normal
Status: New
Name: Jörg Schilling 
Organization: 
User Reference: 
Section: 3 + 4 
Page Number: 1102...and others 
Line Number: somewhere in section 3 and 4 
Interp Status: --- 
Final Accepted Text: 
==
Date Submitted: 2017-02-28 16:51 UTC
Last Modified: 2017-04-05 05:49 UTC
==
Summary: POSIX should include gettext() and friends
==

-- 
(0003659) shware_systems (reporter) - 2017-04-05 05:49
http://austingroupbugs.net/view.php?id=1122#c3659 
-- 
Re: 3596
It was asked, so I put a few reasons I thought were obvious. Ed S. brought
up another of them. I'm not trying to solve those issues here, simply
pointing them out. It doesn't matter whether an individual or application
does or doesn't consider the concerns raised here are issues because the
package works well enough for their purposes, enough variants of the
package or gencat already exist because people have considered them issues
and done something about it. Some variants are wrappers of gettext, some
use other logical models; the Mono runtime does both. Just as we look at
how different shells do things, there's reason to expect those variants
will be considered in due time also so the standard can be said to at least
acknowledge existing practice, even if it doesn't get included. 

Most shell maintainers have already made formal statements concerning a
willingness to adapt to how we modify the shell's requirements, so
discussion here is relevant; gettext and those variants haven't. Their
maintainers, not us, have to decide whether they want to produce and
propose an Issue 8 conforming package that includes their extensions and
maybe addresses those concerns. The GNU people at FSF are aware of what's
involved for packages being conforming interfaces and utilities, i.e. the
general implications of POSIXLY_CORRECT, and further discussion should be
on their lists, not here. The evidence is more they don't want to with
gettext or it could have been part of the standard already for Issue 7.
Similar discussion on the Solaris lists for what Sun did can also be
started, if they want that to be considered part of the standard. 

Issue History 
Date Modified Username Field Change 
==
2017-02-28 16:51 joerg New Issue 
2017-02-28 16:51 joerg Name => Jörg Schilling 
2017-02-28 16:51 joerg Section => 3 + 4 
2017-02-28 16:51 joerg Page Number => 1102...and others
2017-02-28 16:51 joerg Line Number => somewhere in
section 3 and 4
2017-03-01 16:05 steffen Note Added: 0003575 
2017-03-01 16:54 shware_systems Note Added: 0003576 
2017-03-01 17:10 joerg Note Added: 0003577 
2017-03-01 17:10 joerg Note Edited: 0003577 
2017-03-01 17:11 steffen Note Added: 0003578 
2017-03-01 17:13 steffen Note Added: 0003579 
2017-03-01 17:23 joerg Note Added: 0003580 
2017-03-01 17:27 joerg Note Edited: 0003580 
2017-03-01 18:09 joerg Note Edited: 0003580 
2017-03-01 22:37 steffen Note Added: 0003581 
2017-03-02 06:39 shware_systems Note Added: 0003582 
2017-03-02 09:09 joerg Note Added: 0003583 
2017-03-02 09:40 keld Note Added: 0003584 
2017-03-02 09:56 keld Note Added: 0003585 
2017-03-02 14:41 steffen Note Added: 0003586 
2017-03-02 17:01 keld Note Added: 0003587 
2017-03-03 04:42 shware_systems Note Added: 0003588 
2017-03-03 16:44 joerg Note Added: 0003596 
2017-03-03 21:21 EdSchouten Note Added: 0003603 
2017-03-05 00:12 keld Note Added: 0003608 
2017-03-05 00:13 keld Note Edited: 0003608 
2017-03-05 00:14 keld Note Edited: 0003608 
2017-03-05 00:17 keld Note Edited: 0003587 
2017-03-06 10:28 joerg Note Added: 0003609 
2017-03-06 10:28 joerg Note Edited: 0003609 
2017-03-06 10:33 joerg Note Added: 0003610 
2017-03-06 10:33 joerg Note Edited: 0003610 
2017-04-05 05:49 shware_systems Note Added: 0003659 
==





[1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2017-03-06 Thread Austin Group Bug Tracker

A NOTE has been added to this issue. 
== 
http://austingroupbugs.net/view.php?id=1122 
== 
Reported By:joerg
Assigned To:
== 
Project:1003.1(2016)/Issue7+TC2
Issue ID:   1122
Category:   System Interfaces
Type:   Enhancement Request
Severity:   Editorial
Priority:   normal
Status: New
Name:   Jörg Schilling 
Organization:
User Reference:  
Section:3 + 4 
Page Number:1102...and others 
Line Number:somewhere in section 3 and 4 
Interp Status:  --- 
Final Accepted Text: 
== 
Date Submitted: 2017-02-28 16:51 UTC
Last Modified:  2017-03-06 10:33 UTC
== 
Summary:POSIX should include gettext() and friends
== 

-- 
 (0003610) joerg (reporter) - 2017-03-06 10:33
 http://austingroupbugs.net/view.php?id=1122#c3610 
-- 
Re http://austingroupbugs.net/view.php?id=1122#c3608

I believe that gettext(3), xgettext(1) and friends support all encodings
that are based on 8-bit character streams.

I am not shure whether I did ever see a real life program that included
wide character string constants that are subject for translation. If so,
we may need to add a wgettext() entry ;-) 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2017-02-28 16:51 joerg  New Issue
2017-02-28 16:51 joerg  Name  => Jörg Schilling 
2017-02-28 16:51 joerg  Section   => 3 + 4   
2017-02-28 16:51 joerg  Page Number   => 1102...and others
2017-02-28 16:51 joerg  Line Number   => somewhere in
section 3 and 4
2017-03-01 16:05 steffenNote Added: 0003575  
2017-03-01 16:54 shware_systems Note Added: 0003576  
2017-03-01 17:10 joerg  Note Added: 0003577  
2017-03-01 17:10 joerg  Note Edited: 0003577 
2017-03-01 17:11 steffenNote Added: 0003578  
2017-03-01 17:13 steffenNote Added: 0003579  
2017-03-01 17:23 joerg  Note Added: 0003580  
2017-03-01 17:27 joerg  Note Edited: 0003580 
2017-03-01 18:09 joerg  Note Edited: 0003580 
2017-03-01 22:37 steffenNote Added: 0003581  
2017-03-02 06:39 shware_systems Note Added: 0003582  
2017-03-02 09:09 joerg  Note Added: 0003583  
2017-03-02 09:40 keld   Note Added: 0003584  
2017-03-02 09:56 keld   Note Added: 0003585  
2017-03-02 14:41 steffenNote Added: 0003586  
2017-03-02 17:01 keld   Note Added: 0003587  
2017-03-03 04:42 shware_systems Note Added: 0003588  
2017-03-03 16:44 joerg  Note Added: 0003596  
2017-03-03 21:21 EdSchouten Note Added: 0003603  
2017-03-05 00:12 keld   Note Added: 0003608  
2017-03-05 00:13 keld   Note Edited: 0003608 
2017-03-05 00:14 keld   Note Edited: 0003608 
2017-03-05 00:17 keld   Note Edited: 0003587 
2017-03-06 10:28 joerg  Note Added: 0003609  
2017-03-06 10:28 joerg  Note Edited: 0003609 
2017-03-06 10:33 joerg  Note Added: 0003610  
==




[1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2017-03-04 Thread Austin Group Bug Tracker

A NOTE has been added to this issue. 
== 
http://austingroupbugs.net/view.php?id=1122 
== 
Reported By:joerg
Assigned To:
== 
Project:1003.1(2016)/Issue7+TC2
Issue ID:   1122
Category:   System Interfaces
Type:   Enhancement Request
Severity:   Editorial
Priority:   normal
Status: New
Name:   Jörg Schilling 
Organization:
User Reference:  
Section:3 + 4 
Page Number:1102...and others 
Line Number:somewhere in section 3 and 4 
Interp Status:  --- 
Final Accepted Text: 
== 
Date Submitted: 2017-02-28 16:51 UTC
Last Modified:  2017-03-05 00:12 UTC
== 
Summary:POSIX should include gettext() and friends
== 

-- 
 (0003608) keld (reporter) - 2017-03-05 00:12
 http://austingroupbugs.net/view.php?id=1122#c3608 
-- 
Case conversion and collation is handled by the locale, which also chooses
which message catalogue to use. Quite elaborate schemes for case
conversions and also collation can be specified with current glibc (ISO
30112) functionality, and that is indeed in widespread use - building on
ISO 14651 for the collation.

Where is the need for u8"" or u"" support? Gettext handles localization of
a program, where the strings to be translated are just given to the API as
native strings, which are character encoding independent, and you can port
the program to another environment with another internal encoding. 

I believe \U and \u escapes are available as normal native string
processing.

For UTF-16 or other 16-bit handling, I believe the normal libc APIS treat
16 bits as one byte, but I am not sure. I believe IOS is using UTF-16 so
there must be a lot of experience of porting normal standard C/C++/POSIX
utilities to that environment. Does anybody know how this is done? 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2017-02-28 16:51 joerg  New Issue
2017-02-28 16:51 joerg  Name  => Jörg Schilling 
2017-02-28 16:51 joerg  Section   => 3 + 4   
2017-02-28 16:51 joerg  Page Number   => 1102...and others
2017-02-28 16:51 joerg  Line Number   => somewhere in
section 3 and 4
2017-03-01 16:05 steffenNote Added: 0003575  
2017-03-01 16:54 shware_systems Note Added: 0003576  
2017-03-01 17:10 joerg  Note Added: 0003577  
2017-03-01 17:10 joerg  Note Edited: 0003577 
2017-03-01 17:11 steffenNote Added: 0003578  
2017-03-01 17:13 steffenNote Added: 0003579  
2017-03-01 17:23 joerg  Note Added: 0003580  
2017-03-01 17:27 joerg  Note Edited: 0003580 
2017-03-01 18:09 joerg  Note Edited: 0003580 
2017-03-01 22:37 steffenNote Added: 0003581  
2017-03-02 06:39 shware_systems Note Added: 0003582  
2017-03-02 09:09 joerg  Note Added: 0003583  
2017-03-02 09:40 keld   Note Added: 0003584  
2017-03-02 09:56 keld   Note Added: 0003585  
2017-03-02 14:41 steffenNote Added: 0003586  
2017-03-02 17:01 keld   Note Added: 0003587  
2017-03-03 04:42 shware_systems Note Added: 0003588  
2017-03-03 16:44 joerg  Note Added: 0003596  
2017-03-03 21:21 EdSchouten Note Added: 0003603  
2017-03-05 00:12 keld   Note Added: 0003608  
==




[1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2017-03-03 Thread Austin Group Bug Tracker

A NOTE has been added to this issue. 
== 
http://austingroupbugs.net/view.php?id=1122 
== 
Reported By:joerg
Assigned To:
== 
Project:1003.1(2016)/Issue7+TC2
Issue ID:   1122
Category:   System Interfaces
Type:   Enhancement Request
Severity:   Editorial
Priority:   normal
Status: New
Name:   Jörg Schilling 
Organization:
User Reference:  
Section:3 + 4 
Page Number:1102...and others 
Line Number:somewhere in section 3 and 4 
Interp Status:  --- 
Final Accepted Text: 
== 
Date Submitted: 2017-02-28 16:51 UTC
Last Modified:  2017-03-03 21:21 UTC
== 
Summary:POSIX should include gettext() and friends
== 

-- 
 (0003603) EdSchouten (reporter) - 2017-03-03 21:21
 http://austingroupbugs.net/view.php?id=1122#c3603 
-- 
What I think is pretty bad about gettext(): modern code tends to be written
in such a way that it doesn't keep track of global state. This makes APIs
by definition thread-safe, easier to reuse, potentially easier to test,
etc. gettext() doesn't offer anything in this regard. For example,
gettext() doesn't allow you to write a networked service that returns
different responses, based on a per-user language preference, as the
interface depends on the process-wide locale.

Lots of effort has been spent within this working group to add APIs that
are thread-safe. The POSIX 2008 locale_t work is a good example of that.
Though I have no objection against standardising tools like msgfmt, etc. I
think that adding the C APIs (in their current shape) doesn't make any
sense at all. 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2017-02-28 16:51 joerg  New Issue
2017-02-28 16:51 joerg  Name  => Jörg Schilling 
2017-02-28 16:51 joerg  Section   => 3 + 4   
2017-02-28 16:51 joerg  Page Number   => 1102...and others
2017-02-28 16:51 joerg  Line Number   => somewhere in
section 3 and 4
2017-03-01 16:05 steffenNote Added: 0003575  
2017-03-01 16:54 shware_systems Note Added: 0003576  
2017-03-01 17:10 joerg  Note Added: 0003577  
2017-03-01 17:10 joerg  Note Edited: 0003577 
2017-03-01 17:11 steffenNote Added: 0003578  
2017-03-01 17:13 steffenNote Added: 0003579  
2017-03-01 17:23 joerg  Note Added: 0003580  
2017-03-01 17:27 joerg  Note Edited: 0003580 
2017-03-01 18:09 joerg  Note Edited: 0003580 
2017-03-01 22:37 steffenNote Added: 0003581  
2017-03-02 06:39 shware_systems Note Added: 0003582  
2017-03-02 09:09 joerg  Note Added: 0003583  
2017-03-02 09:40 keld   Note Added: 0003584  
2017-03-02 09:56 keld   Note Added: 0003585  
2017-03-02 14:41 steffenNote Added: 0003586  
2017-03-02 17:01 keld   Note Added: 0003587  
2017-03-03 04:42 shware_systems Note Added: 0003588  
2017-03-03 16:44 joerg  Note Added: 0003596  
2017-03-03 21:21 EdSchouten Note Added: 0003603  
==




Re: [1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2017-03-03 Thread Steffen Nurpmeso
 |http://austingroupbugs.net/view.php?id=1122 
 |-- 
 | (0003588) shware_systems (reporter) - 2017-03-03 04:42
(P.S.: i don't plan it, actually.  Just in case you think that.)
 | http://austingroupbugs.net/view.php?id=1122#c3588 

And on top of that i think your strategy to provide "programmer's
tools" is wrong, and i want to give you a real life example from
just this very day, even if that is completely off-topic, but in
the end it takes the same line that your post.
So once upon a time, in my private life...

▸N   63 me   2017-03-03 13:29  25/   1362 Bestellnummer: 94556

  Hallo!
[I say hello.]

  Ich warte auf irgendeinen Fortschritt bei dieser Bestellung.
[As you can see, I am awaiting progress of my order.]
  Die Bareinzahlung wurde noch ... getätigt, allerdings überwies
  ich 55.- nicht 53,35.-, da ich den exakten Betrag dummerweise
  vergessen hatte.
[So i transfered all the money, cash, but not the exact value,
which i had forgotten, so i have chosen to drive 55, which i knew
was sufficient.]

  Das klingt jetzt vielleicht komisch, aber ich befürchte, daß die
  von Ihnen ... beauftragte ... in Schockstarre verfallen ist, und
  im Moment alptraumhafte Erfahrungen macht, schließlich ist der
  Betrag ja 53,35.- und nicht, ich wiederhole, _nicht_ 55.-!

[Yes, so i am suspecting, even if it sounds curious, that the
partially outsourced financial administration of this company is
paralyzed from shock, making nightmarish experiences, BECAUSE
i did not transfer 53,35.- Euro, but 55.-!  Note that this part of
the company is outsourced to Baden-Wuerttemberg (Heidelberg, to
be exact).]

  Bitte erlösen Sie die Krämerseelen,...
[I solicit for salvation of the small-minded persons in the
financial administration.]
  Mit vielem Dank im Voraus, und mit freundlichen Grüßen, und
  überhaupt:

  Tschüß!
[And this is a very friendly farewell.]

 O   62 them 2017-03-03 13:47  39/   2513 Statusänderung zur Bestellung ...
 N   64 me   2017-03-03 13:56  23/   1174 ┕▸

  Hallo.

  ... wrote:
...
   |Der Status Ihrer Bestellung mit der Bestellnummer: 94556 vom  26-02-2017 \
   |hat sich geändert. Der neue Status lautet nun Komplett bezahlt.

  Es ist wirklich ein Wahnsinn wie schnell Ihr seid.
  Vielen, vielen Dank!

Just like i have said: it _has_ been paid completely!
And note i praise the client service, it is incredible how fast it
is, many, many thanks!
(And note it is the - i suspect wealthy - boss which answers here.)

 O   65 them 2017-03-03 14:00  68/   3326  ┖▸

  Ja, ich habe es gerade prüfen lassen.
[Yes, i have ordered a verification.]
  In der Tag wurde die Bestellung nicht unter komplett bezahlt angezeigt.
[Indeed the order has not been advised as completely payed.]
  Die Ware geht gleich raus!!!
[The goods will be send away promptly.]

Isn't that a fantastic example for multiple things:
  - Don't use Python.  [Very subjective.]
  - Don't store money amounts as floating point or complex
numbers!  Simply use integers, and scale them.  [Subjective.]
  - Don't think that in a modern world credit cards are used by
everybody so that accounts are only on accounts, or 0 at best.
[Ha!  Thanks to above this software did neither drive an
airplane nor a nuclear plant!  Dammit!!  I am pretty sure it
can control your coffee machine, though, but in my opinion
that would not have been its job, because:]
  - You can end up with credit!
[Not in New York, though, to the best of my knowledge.  At
least not with a regular work, that is to say.]

Conclusion: gettext() does its job, and much better than those
unmaintainable catalogues ever did.
Greetings to New York.

--steffen



[1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2017-03-03 Thread Austin Group Bug Tracker

A NOTE has been added to this issue. 
== 
http://austingroupbugs.net/view.php?id=1122 
== 
Reported By:joerg
Assigned To:
== 
Project:1003.1(2016)/Issue7+TC2
Issue ID:   1122
Category:   System Interfaces
Type:   Enhancement Request
Severity:   Editorial
Priority:   normal
Status: New
Name:   Jörg Schilling 
Organization:
User Reference:  
Section:3 + 4 
Page Number:1102...and others 
Line Number:somewhere in section 3 and 4 
Interp Status:  --- 
Final Accepted Text: 
== 
Date Submitted: 2017-02-28 16:51 UTC
Last Modified:  2017-03-03 16:44 UTC
== 
Summary:POSIX should include gettext() and friends
== 

-- 
 (0003596) joerg (reporter) - 2017-03-03 16:44
 http://austingroupbugs.net/view.php?id=1122#c3596 
-- 
Could we please change the way to discuss the topic?

Please do not claim "gettext() is bad - I know that", but rather
explain a specific real issue. It is then possible to reply to
such a description and either explain why this is no problem, 
explain how to solve the problem or mark it as an issue that
really has not yet been solved.

Thank you! 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2017-02-28 16:51 joerg  New Issue
2017-02-28 16:51 joerg  Name  => Jörg Schilling 
2017-02-28 16:51 joerg  Section   => 3 + 4   
2017-02-28 16:51 joerg  Page Number   => 1102...and others
2017-02-28 16:51 joerg  Line Number   => somewhere in
section 3 and 4
2017-03-01 16:05 steffenNote Added: 0003575  
2017-03-01 16:54 shware_systems Note Added: 0003576  
2017-03-01 17:10 joerg  Note Added: 0003577  
2017-03-01 17:10 joerg  Note Edited: 0003577 
2017-03-01 17:11 steffenNote Added: 0003578  
2017-03-01 17:13 steffenNote Added: 0003579  
2017-03-01 17:23 joerg  Note Added: 0003580  
2017-03-01 17:27 joerg  Note Edited: 0003580 
2017-03-01 18:09 joerg  Note Edited: 0003580 
2017-03-01 22:37 steffenNote Added: 0003581  
2017-03-02 06:39 shware_systems Note Added: 0003582  
2017-03-02 09:09 joerg  Note Added: 0003583  
2017-03-02 09:40 keld   Note Added: 0003584  
2017-03-02 09:56 keld   Note Added: 0003585  
2017-03-02 14:41 steffenNote Added: 0003586  
2017-03-02 17:01 keld   Note Added: 0003587  
2017-03-03 04:42 shware_systems Note Added: 0003588  
2017-03-03 16:44 joerg  Note Added: 0003596  
==




[1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2017-03-02 Thread Austin Group Bug Tracker

A NOTE has been added to this issue. 
== 
http://austingroupbugs.net/view.php?id=1122 
== 
Reported By:joerg
Assigned To:
== 
Project:1003.1(2016)/Issue7+TC2
Issue ID:   1122
Category:   System Interfaces
Type:   Enhancement Request
Severity:   Editorial
Priority:   normal
Status: New
Name:   Jörg Schilling 
Organization:
User Reference:  
Section:3 + 4 
Page Number:1102...and others 
Line Number:somewhere in section 3 and 4 
Interp Status:  --- 
Final Accepted Text: 
== 
Date Submitted: 2017-02-28 16:51 UTC
Last Modified:  2017-03-02 17:01 UTC
== 
Summary:POSIX should include gettext() and friends
== 

-- 
 (0003587) keld (reporter) - 2017-03-02 17:01
 http://austingroupbugs.net/view.php?id=1122#c3587 
-- 
The different texts for singular and plural (and other cases) are dealt
with by gettext, you declare which scheme to be used in the header of the
po
file and then you just list the cases for the translated texts like
msgstr[0] and
msgstr[1] 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2017-02-28 16:51 joerg  New Issue
2017-02-28 16:51 joerg  Name  => Jörg Schilling 
2017-02-28 16:51 joerg  Section   => 3 + 4   
2017-02-28 16:51 joerg  Page Number   => 1102...and others
2017-02-28 16:51 joerg  Line Number   => somewhere in
section 3 and 4
2017-03-01 16:05 steffenNote Added: 0003575  
2017-03-01 16:54 shware_systems Note Added: 0003576  
2017-03-01 17:10 joerg  Note Added: 0003577  
2017-03-01 17:10 joerg  Note Edited: 0003577 
2017-03-01 17:11 steffenNote Added: 0003578  
2017-03-01 17:13 steffenNote Added: 0003579  
2017-03-01 17:23 joerg  Note Added: 0003580  
2017-03-01 17:27 joerg  Note Edited: 0003580 
2017-03-01 18:09 joerg  Note Edited: 0003580 
2017-03-01 22:37 steffenNote Added: 0003581  
2017-03-02 06:39 shware_systems Note Added: 0003582  
2017-03-02 09:09 joerg  Note Added: 0003583  
2017-03-02 09:40 keld   Note Added: 0003584  
2017-03-02 09:56 keld   Note Added: 0003585  
2017-03-02 14:41 steffenNote Added: 0003586  
2017-03-02 17:01 keld   Note Added: 0003587  
==




[1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2017-03-02 Thread Austin Group Bug Tracker

A NOTE has been added to this issue. 
== 
http://austingroupbugs.net/view.php?id=1122 
== 
Reported By:joerg
Assigned To:
== 
Project:1003.1(2016)/Issue7+TC2
Issue ID:   1122
Category:   System Interfaces
Type:   Enhancement Request
Severity:   Editorial
Priority:   normal
Status: New
Name:   Jörg Schilling 
Organization:
User Reference:  
Section:3 + 4 
Page Number:1102...and others 
Line Number:somewhere in section 3 and 4 
Interp Status:  --- 
Final Accepted Text: 
== 
Date Submitted: 2017-02-28 16:51 UTC
Last Modified:  2017-03-02 09:56 UTC
== 
Summary:POSIX should include gettext() and friends
== 

-- 
 (0003585) keld (reporter) - 2017-03-02 09:56
 http://austingroupbugs.net/view.php?id=1122#c3585 
-- 
In gettext, there are easy ways to differentiate between different meanings
of the same text string, and there are practices established for that. An
easy way is to mark the msgid with a tag and explain this tag in an
accompanying comment, and then translate the string into the target
language (which may be English, even if the msgid is in English too).

There is Unicode support in gettext, indeed most corpora is in Unicode. It
is mostly UTF-8. I believe you can also use UTF-16 and others, you just
decalre this in the header of the .po-file.

I am puzzled to hear that gettext should not support r2l languages
sufficiently. Myriads of programs are translated in adequate ways for
Arabic and Hebrew languages. 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2017-02-28 16:51 joerg  New Issue
2017-02-28 16:51 joerg  Name  => Jörg Schilling 
2017-02-28 16:51 joerg  Section   => 3 + 4   
2017-02-28 16:51 joerg  Page Number   => 1102...and others
2017-02-28 16:51 joerg  Line Number   => somewhere in
section 3 and 4
2017-03-01 16:05 steffenNote Added: 0003575  
2017-03-01 16:54 shware_systems Note Added: 0003576  
2017-03-01 17:10 joerg  Note Added: 0003577  
2017-03-01 17:10 joerg  Note Edited: 0003577 
2017-03-01 17:11 steffenNote Added: 0003578  
2017-03-01 17:13 steffenNote Added: 0003579  
2017-03-01 17:23 joerg  Note Added: 0003580  
2017-03-01 17:27 joerg  Note Edited: 0003580 
2017-03-01 18:09 joerg  Note Edited: 0003580 
2017-03-01 22:37 steffenNote Added: 0003581  
2017-03-02 06:39 shware_systems Note Added: 0003582  
2017-03-02 09:09 joerg  Note Added: 0003583  
2017-03-02 09:40 keld   Note Added: 0003584  
2017-03-02 09:56 keld   Note Added: 0003585  
==




[1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2017-03-02 Thread Austin Group Bug Tracker

A NOTE has been added to this issue. 
== 
http://austingroupbugs.net/view.php?id=1122 
== 
Reported By:joerg
Assigned To:
== 
Project:1003.1(2016)/Issue7+TC2
Issue ID:   1122
Category:   System Interfaces
Type:   Enhancement Request
Severity:   Editorial
Priority:   normal
Status: New
Name:   Jörg Schilling 
Organization:
User Reference:  
Section:3 + 4 
Page Number:1102...and others 
Line Number:somewhere in section 3 and 4 
Interp Status:  --- 
Final Accepted Text: 
== 
Date Submitted: 2017-02-28 16:51 UTC
Last Modified:  2017-03-02 09:40 UTC
== 
Summary:POSIX should include gettext() and friends
== 

-- 
 (0003584) keld (reporter) - 2017-03-02 09:40
 http://austingroupbugs.net/view.php?id=1122#c3584 
-- 
I agree that gettext and friends should be added. It is a much more used
set of APIs than catgets(), indeed most of the GUIs in Linux, like KDE and
Gnome are built with gettext(), and also POSIX shell utilities.


I would then like to see the APIs specified in a thread-safe version. 

Is there text which we can use as a base for normative wording in POSIX? 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2017-02-28 16:51 joerg  New Issue
2017-02-28 16:51 joerg  Name  => Jörg Schilling 
2017-02-28 16:51 joerg  Section   => 3 + 4   
2017-02-28 16:51 joerg  Page Number   => 1102...and others
2017-02-28 16:51 joerg  Line Number   => somewhere in
section 3 and 4
2017-03-01 16:05 steffenNote Added: 0003575  
2017-03-01 16:54 shware_systems Note Added: 0003576  
2017-03-01 17:10 joerg  Note Added: 0003577  
2017-03-01 17:10 joerg  Note Edited: 0003577 
2017-03-01 17:11 steffenNote Added: 0003578  
2017-03-01 17:13 steffenNote Added: 0003579  
2017-03-01 17:23 joerg  Note Added: 0003580  
2017-03-01 17:27 joerg  Note Edited: 0003580 
2017-03-01 18:09 joerg  Note Edited: 0003580 
2017-03-01 22:37 steffenNote Added: 0003581  
2017-03-02 06:39 shware_systems Note Added: 0003582  
2017-03-02 09:09 joerg  Note Added: 0003583  
2017-03-02 09:40 keld   Note Added: 0003584  
==




[1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2017-03-02 Thread Austin Group Bug Tracker

A NOTE has been added to this issue. 
== 
http://austingroupbugs.net/view.php?id=1122 
== 
Reported By:joerg
Assigned To:
== 
Project:1003.1(2016)/Issue7+TC2
Issue ID:   1122
Category:   System Interfaces
Type:   Enhancement Request
Severity:   Editorial
Priority:   normal
Status: New
Name:   Jörg Schilling 
Organization:
User Reference:  
Section:3 + 4 
Page Number:1102...and others 
Line Number:somewhere in section 3 and 4 
Interp Status:  --- 
Final Accepted Text: 
== 
Date Submitted: 2017-02-28 16:51 UTC
Last Modified:  2017-03-02 09:09 UTC
== 
Summary:POSIX should include gettext() and friends
== 

-- 
 (0003583) joerg (reporter) - 2017-03-02 09:09
 http://austingroupbugs.net/view.php?id=1122#c3583 
-- 
Re http://austingroupbugs.net/view.php?id=1122#c3581
SCO used catgets() in their Svr4 product and managed the numbers for
catgets()
manually in include files. I know this because I wrote the ISO-9660:1999
and 
Joliet drivers for SCO and needed to enhance the mount program.

I am not sure whether a user of catgets wrote an automated mapping
program.

The problem with the ambiguous english language cannot be circumvented
by comments in the source code as long as there are two or more identical
strings intended to mean something different. 

Once you manages to have different strings for different meaning, you
could add such special commands and GNU xgettext has an option to tell
it to transfer such a comment into thr .po file.

If you provide a English -> English .po file for your program, you may
handle the problem with non-7-Bit-ASCII texts in case you use the 
encoding tags in the  .po file.

Here is a sample .po file with the typical mime based hints that
are encoded into the .mo file:

# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR , YEAR.
#
#, afuzzy
msgid ""
msgstr "Project-Id-Version: BLA 9.99\n"
"Report-Msgid-Bugs-To: me@\n"
"POT-Creation-Date: 2010-12-19 22:23+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=iso-8859-1\n"
"Content-Transfer-Encoding: 8bit\n"

#: cdrecord.c:319
#, c-format
msgid "This is an evaluation version of cdrecord,\n"
msgstr "Dies ist eine Beurteilungsversion von cdrecord\n"
...

The fact that mime is used here allows to add more enhancements
in the future. 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2017-02-28 16:51 joerg  New Issue
2017-02-28 16:51 joerg  Name  => Jörg Schilling 
2017-02-28 16:51 joerg  Section   => 3 + 4   
2017-02-28 16:51 joerg  Page Number   => 1102...and others
2017-02-28 16:51 joerg  Line Number   => somewhere in
section 3 and 4
2017-03-01 16:05 steffenNote Added: 0003575  
2017-03-01 16:54 shware_systems Note Added: 0003576  
2017-03-01 17:10 joerg  Note Added: 0003577  
2017-03-01 17:10 joerg  Note Edited: 0003577 
2017-03-01 17:11 steffenNote Added: 0003578  
2017-03-01 17:13 steffenNote Added: 0003579  
2017-03-01 17:23 joerg  Note Added: 0003580  
2017-03-01 17:27 joerg  Note Edited: 0003580 
2017-03-01 18:09 joerg  Note Edited: 0003580 
2017-03-01 22:37 steffenNote Added: 0003581  
2017-03-02 06:39 shware_systems Note Added: 0003582  
2017-03-02 09:09 joerg  Note Added: 0003583  
==




[1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2017-03-01 Thread Austin Group Bug Tracker

A NOTE has been added to this issue. 
== 
http://austingroupbugs.net/view.php?id=1122 
== 
Reported By:joerg
Assigned To:
== 
Project:1003.1(2016)/Issue7+TC2
Issue ID:   1122
Category:   System Interfaces
Type:   Enhancement Request
Severity:   Editorial
Priority:   normal
Status: New
Name:   Jörg Schilling 
Organization:
User Reference:  
Section:3 + 4 
Page Number:1102...and others 
Line Number:somewhere in section 3 and 4 
Interp Status:  --- 
Final Accepted Text: 
== 
Date Submitted: 2017-02-28 16:51 UTC
Last Modified:  2017-03-01 22:37 UTC
== 
Summary:POSIX should include gettext() and friends
== 

-- 
 (0003581) steffen (reporter) - 2017-03-01 22:37
 http://austingroupbugs.net/view.php?id=1122#c3581 
-- 
Hm, with charset agnostic i referred to the fact that the "char const
*MSGID", the message itself, is used as the key of the message, so this is
just a NUL terminated byte stream; which is then either mapped to a
different byte stream that has been loaded from a LC_MESSAGES dependent
database file, or can simply be returned "as-is".

Too much time has passed, i cannot say anything to the actual plain text
input format of .po files, without rereading all the available information
that is.

 |TW: the main problem with catgets() is that it needs a globally
maintained message number.

I agree.  It is in practice unmaintainable unless you have software which
generates the MESSAGE-NUMBER = STRING mappings in an automated way.  POSIX
does not include such software, and it is, also in practice, not as easy as
it seems to write such a software, let alone portably, since strings can
come from preprocessor expansions, spread across several lines, ..
whatever.

 |This problem may however be circumvented by avoiding english texts
 | that may have more than one meaning, by either using better wording
 | or by adding more text to differentiate and by translating the long
 | english text into the short and ambiguous english text.

The usual way is normally to put a specially crafted comment on the line
before the string is defined, something like

  colour.c: /* I18N: ..of colour mapping */
  colour.c- n_err(_("`colour': %s: invalid precondition: %s\n"),

or

  send.c:  /* I18N: Filename input prompt with file type indication */
  send.c-  str_concat_csvl(, _("Enter filename for part "),

Most others use "L10N:" instead, however, for "localization".

And iconv(3) on the fly so that a german LATIN1 message catalog can be used
in a german UTF-8 locale thus seems to be common.  I think conversion
errors should be ignored in, hopefully uncommon, translator-error cases. 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2017-02-28 16:51 joerg  New Issue
2017-02-28 16:51 joerg  Name  => Jörg Schilling 
2017-02-28 16:51 joerg  Section   => 3 + 4   
2017-02-28 16:51 joerg  Page Number   => 1102...and others
2017-02-28 16:51 joerg  Line Number   => somewhere in
section 3 and 4
2017-03-01 16:05 steffenNote Added: 0003575  
2017-03-01 16:54 shware_systems Note Added: 0003576  
2017-03-01 17:10 joerg  Note Added: 0003577  
2017-03-01 17:10 joerg  Note Edited: 0003577 
2017-03-01 17:11 steffenNote Added: 0003578  
2017-03-01 17:13 steffenNote Added: 0003579  
2017-03-01 17:23 joerg  Note Added: 0003580  
2017-03-01 17:27 joerg  Note Edited: 0003580 
2017-03-01 18:09 joerg  Note Edited: 0003580 
2017-03-01 22:37 steffenNote Added: 0003581  
==




[1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2017-03-01 Thread Austin Group Bug Tracker

A NOTE has been added to this issue. 
== 
http://austingroupbugs.net/view.php?id=1122 
== 
Reported By:joerg
Assigned To:
== 
Project:1003.1(2016)/Issue7+TC2
Issue ID:   1122
Category:   System Interfaces
Type:   Enhancement Request
Severity:   Editorial
Priority:   normal
Status: New
Name:   Jörg Schilling 
Organization:
User Reference:  
Section:3 + 4 
Page Number:1102...and others 
Line Number:somewhere in section 3 and 4 
Interp Status:  --- 
Final Accepted Text: 
== 
Date Submitted: 2017-02-28 16:51 UTC
Last Modified:  2017-03-01 17:11 UTC
== 
Summary:POSIX should include gettext() and friends
== 

-- 
 (0003578) steffen (reporter) - 2017-03-01 17:11
 http://austingroupbugs.net/view.php?id=1122#c3578 
-- 
No, you may feel the desire to turn gettext() into a Waldorf Astoria, but i
am afraid you will neither be able to close its doors for renovation, nor
turn it into a set of nice Unicode luxury apartments: because gettext() is
the actual workhorse of internationalisation in Unix C programs, and
charset agnostic.  Compare this with catgets(), which is simply not used in
any software that i know, except old and practically unmaintained codebases
that still use it, but are asleep development-wise, except maybe for
adjusting slightly to avoid the bitrot that modern compilers, well, not
reveal, but rather generate.  Ah, and the ISO C standard committee is not
to be forrotten. 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2017-02-28 16:51 joerg  New Issue
2017-02-28 16:51 joerg  Name  => Jörg Schilling 
2017-02-28 16:51 joerg  Section   => 3 + 4   
2017-02-28 16:51 joerg  Page Number   => 1102...and others
2017-02-28 16:51 joerg  Line Number   => somewhere in
section 3 and 4
2017-03-01 16:05 steffenNote Added: 0003575  
2017-03-01 16:54 shware_systems Note Added: 0003576  
2017-03-01 17:10 joerg  Note Added: 0003577  
2017-03-01 17:10 joerg  Note Edited: 0003577 
2017-03-01 17:11 steffenNote Added: 0003578  
==




[1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2017-03-01 Thread Austin Group Bug Tracker

A NOTE has been added to this issue. 
== 
http://austingroupbugs.net/view.php?id=1122 
== 
Reported By:joerg
Assigned To:
== 
Project:1003.1(2016)/Issue7+TC2
Issue ID:   1122
Category:   System Interfaces
Type:   Enhancement Request
Severity:   Editorial
Priority:   normal
Status: New
Name:   Jörg Schilling 
Organization:
User Reference:  
Section:3 + 4 
Page Number:1102...and others 
Line Number:somewhere in section 3 and 4 
Interp Status:  --- 
Final Accepted Text: 
== 
Date Submitted: 2017-02-28 16:51 UTC
Last Modified:  2017-03-01 17:10 UTC
== 
Summary:POSIX should include gettext() and friends
== 

-- 
 (0003577) joerg (reporter) - 2017-03-01 17:10
 http://austingroupbugs.net/view.php?id=1122#c3577 
-- 
Why do you believe that gettext() is obsolete?

Why do you believe that gettext() relies in non-conforming GNU
extensions()

gettext() was designed by Sun Microsystems in the 1980s and I see no
problems with it. 

There are a few GNU enhancements that are worth ti be included but these
extensions still are not non-conforming. 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2017-02-28 16:51 joerg  New Issue
2017-02-28 16:51 joerg  Name  => Jörg Schilling 
2017-02-28 16:51 joerg  Section   => 3 + 4   
2017-02-28 16:51 joerg  Page Number   => 1102...and others
2017-02-28 16:51 joerg  Line Number   => somewhere in
section 3 and 4
2017-03-01 16:05 steffenNote Added: 0003575  
2017-03-01 16:54 shware_systems Note Added: 0003576  
2017-03-01 17:10 joerg  Note Added: 0003577  
==




[1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2017-03-01 Thread Austin Group Bug Tracker

A NOTE has been added to this issue. 
== 
http://austingroupbugs.net/view.php?id=1122 
== 
Reported By:joerg
Assigned To:
== 
Project:1003.1(2016)/Issue7+TC2
Issue ID:   1122
Category:   System Interfaces
Type:   Enhancement Request
Severity:   Editorial
Priority:   normal
Status: New
Name:   Jörg Schilling 
Organization:
User Reference:  
Section:3 + 4 
Page Number:1102...and others 
Line Number:somewhere in section 3 and 4 
Interp Status:  --- 
Final Accepted Text: 
== 
Date Submitted: 2017-02-28 16:51 UTC
Last Modified:  2017-03-01 16:54 UTC
== 
Summary:POSIX should include gettext() and friends
== 

-- 
 (0003576) shware_systems (reporter) - 2017-03-01 16:54
 http://austingroupbugs.net/view.php?id=1122#c3576 
-- 
While this looks obvious, certainly, catgets() and gettext() both are
already obsolete, in terms of thoroughness, since before C99 came out. The
gettext package's utilities rely on GNU extensions that make them
non-conforming anyways, so isn't suitable to replace cat*() to begin with.
Gettext is usable for a variety of languages, but it's still a subset of
the languages currently in use. Both models, as compiler and implementation
extensions, leave as application-defined aspects of language translation
Unicode addresses in a more systematic fashion. Unicode also has known
omissions, noted on their to do lists, but not as many. I believe this was
touched upon in rejecting Bug 861, which also mentions gettext. 

Imo, Issue 8 should include something, and I have a tentative design in
mind (that includes Bug 861), but addressing this completely is part of
Phase 3 or later, to account for how POSIX adds the Unicode requirements,
so this can be part of a POSIX Option Group. I consider forward usability,
as the final design implemented will be invention, as more important than
backwards compatibility. Only a bulk conversion utility for msg and po
files, and Win mc sources as a cross platform consideration, is planned for
upgrading current applications. Source code and cat/mo file conversions I
consider compiler and platform dependent, as does the standard, and overly
impractical to automate. An application using gettext or catgets now won't
have to upgrade, but those that choose to refactor their source files will
stand a much better chance of being certified as Conforming with
Extensions. 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2017-02-28 16:51 joerg  New Issue
2017-02-28 16:51 joerg  Name  => Jörg Schilling 
2017-02-28 16:51 joerg  Section   => 3 + 4   
2017-02-28 16:51 joerg  Page Number   => 1102...and others
2017-02-28 16:51 joerg  Line Number   => somewhere in
section 3 and 4
2017-03-01 16:05 steffenNote Added: 0003575  
2017-03-01 16:54 shware_systems Note Added: 0003576  
==




[1003.1(2016)/Issue7+TC2 0001122]: POSIX should include gettext() and friends

2017-03-01 Thread Austin Group Bug Tracker

A NOTE has been added to this issue. 
== 
http://austingroupbugs.net/view.php?id=1122 
== 
Reported By:joerg
Assigned To:
== 
Project:1003.1(2016)/Issue7+TC2
Issue ID:   1122
Category:   System Interfaces
Type:   Enhancement Request
Severity:   Editorial
Priority:   normal
Status: New
Name:   Jörg Schilling 
Organization:
User Reference:  
Section:3 + 4 
Page Number:1102...and others 
Line Number:somewhere in section 3 and 4 
Interp Status:  --- 
Final Accepted Text: 
== 
Date Submitted: 2017-02-28 16:51 UTC
Last Modified:  2017-03-01 16:05 UTC
== 
Summary:POSIX should include gettext() and friends
== 

-- 
 (0003575) steffen (reporter) - 2017-03-01 16:05
 http://austingroupbugs.net/view.php?id=1122#c3575 
-- 
I posted on the ML (which does no longer include a sequence number, the
resent-message-id was "dhdJXC.A.-oG.z8rtYB"@Phoebe.vpn.opengroup.org), a
superset of what follows:

  [..]it definitely must be possible to implement this as a macro,
  that is to say.  And possibly GETTEXT() should at least be
  reserved, just in case ISO C does not go that route, so that
  GETTEXT(target-store, msgid) can be a #define with do{}while(0).[..]

This is because implementations of gettext() (-alike interfaces) have been
seen, or may still exist, which avoid successive, and therefore practically
always unnecessary database lookups by injecting code into compilation
units (e.g., a modification-counter reference and a character pointer, both
"static", to be initialized first, and only comparing the reference against
the database-specific counter). 

Issue History 
Date ModifiedUsername   FieldChange   
== 
2017-02-28 16:51 joerg  New Issue
2017-02-28 16:51 joerg  Name  => Jörg Schilling 
2017-02-28 16:51 joerg  Section   => 3 + 4   
2017-02-28 16:51 joerg  Page Number   => 1102...and others
2017-02-28 16:51 joerg  Line Number   => somewhere in
section 3 and 4
2017-03-01 16:05 steffenNote Added: 0003575  
==