LINUX.ORG.RU

Glade портит файлы в LC_NUMERIC=ru_RU.UTF-8

 ,


1

2

После открытия файла и его сохранения, все дробные значения сбрасываются до целого. Т.е. проблема в десятичном разделителе. Если запускать так $ LC_NUMERIC=en_US.utf-8 flatpak run org.gnome.Glade то работает нормально. Это баг или проблема на моей стороне?

★★★

$ LC_NUMERIC=en_US.utf-8 flatpak run org.gnome.Glade

Можешь сделать один раз $ flatpak --user override --env=LC_NUMERIC=en_US.utf-8 org.gnome.Glade

anonymous
()

Это баг?

Весь ваш опенсорц - большая ошибка.

anonymous
()

проблема на моей стороне?

угу, называется «русская локаль».

t184256 ★★★★★
()

"," проиграла, толстые страны используют ".". А вообще да, баг, должно принимать обе, ибо договорились ничего не улучшать. Как обычно.

DonkeyHot ★★★★★
()
Ответ на: комментарий от DonkeyHot

"," проиграла, толстые страны используют "."

Нельзя сказать, что проиграла. Половина мира использует запятую.

А у вас это проявляется в Glade?

nvl ★★★
() автор топика
Последнее исправление: nvl (всего исправлений: 1)

Кто ж LC_NUMERIC держит отличным от «C» или «POSIX»?

Хочешь геморроя на свою голову? Вот, смотри, какой должна быть правильная локаль:

locale
LANG=ru_RU.koi8r
LC_CTYPE="ru_RU.koi8r"
LC_NUMERIC=C
LC_TIME="ru_RU.koi8r"
LC_COLLATE="ru_RU.koi8r"
LC_MONETARY="ru_RU.koi8r"
LC_MESSAGES="ru_RU.koi8r"
LC_PAPER="ru_RU.koi8r"
LC_NAME="ru_RU.koi8r"
LC_ADDRESS="ru_RU.koi8r"
LC_TELEPHONE="ru_RU.koi8r"
LC_MEASUREMENT=C
LC_IDENTIFICATION="ru_RU.koi8r"
LC_ALL=

anonymous
()
Ответ на: комментарий от anonymous

Еще вопрос, где-то в спецификациях XML определено, что десятичный разделитель локалезависим или наоборот, что десятичный разделитель должен быть только «точка»?

nvl ★★★
() автор топика
Ответ на: комментарий от nvl

Ясен пень, баг glade, но этот баг свойственен 99% утилит. Взять тот же говноохфис: в «электронных таблицах» с русской локалью по умолчанию будет жесть! Но там хоть настройки есть по поводу разделителей.

Здесь же, похоже, он по локали преобразует разделитель, но затем обработчик вызывается другой, чуждый локали, и обрезает нафиг числа!

Поэтому всегда у себя сбрасывай локаль в правильную, чтобы не было косяков.

// когда этот бардак с использованием запятой вместо точки закончится, непонятно, но понятно, что урода, который первым «стандартизовал» в некоторых локалях запятую как точку, убить мало!!! Аналогично с уродами, которые придумали, что в килобайте 1000 байт, а не 1024, как было испокон веку!11

anonymous
()
Ответ на: комментарий от nvl

Да при чем здесь XML? ты смотри на конкретный парсер. А конкретный парсер может понимать приколы с запятой вместо точки, если у тебя локаль кривая, а может и не понимать...

Как вариант, запускай glade так: LC_ALL=C glade ...

Но лучше прекращай это говно пользовать, да и сам по себе GTK — это ж трешняк тот еще! Есть же всякие OpenGL'ные библиотеки UI, которые не требуют использовать содомитский glib, ваяя ООПщину на голом месте!

anonymous
()
Ответ на: комментарий от anonymous

Взять тот же говноохфис: в «электронных таблицах»

В таблицах это одно, тут средство разработки. И если Gtk-парсер жестко привязан к точке, то почему бы в Glade тоже жестко не прописать в main-фукции setlocale (LC_NUMERIC, "C")...

с уродами, которые придумали, что в килобайте 1000 байт, а не 1024, как было испокон веку!

Уроды — это те, кто наплевал на то, что «кило» — это десятичное 10^3 как было испокон веку. «киби» идеально решило это путаницу.

Поэтому всегда у себя сбрасывай локаль в правильную, чтобы не было косяков.

Не должна работоспособность софта зависеть от этого. Это должно быть решено в самом софте.

Но лучше прекращай это говно пользовать

Glade конечно далеко не лучший софт, очень многие возможности не реализованы. Но альтернатив нет.

сам по себе GTK — это ж трешняк тот еще

Не знаю, где ты в нем трешняк увидел. Gtk просто шикарен. Для десктопного софта альтернатив как-то не видно.

Есть же всякие OpenGL'ные библиотеки UI

Да кому они нужны кроме игроделов!?

nvl ★★★
() автор топика
Ответ на: комментарий от nvl

Пока я не суюсь в GUI, но если вдруг припрет, то уж точно говнотыком обмазываться не буду! Потому как если GTK2 был просто дерьмом, то GTK3 — это вообще дерьмище в кубе! Только OpenGL и остается как надежное средство рисования окон и всяких виджетов. Правда, есть один косяк: не работает по ssh в некоторых запущенных случаях.

anonymous
()
Ответ на: комментарий от nvl

Половина мира использует запятую

Если верить википедиям, индия, китай, штаты, австралия с точкой, Европы, южной америки, гренландии и тайги не хватит их переубедить - это сильно меньшая «половина».

А у вас

LANG=en.

Эта планета уже слишком мала для 2х языков.

DonkeyHot ★★★★★
()
Последнее исправление: DonkeyHot (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.