Путь приложения
-
А у приложения прикомпилированная или подгруженная либа, которую писал совсем другой человек. И у которого совсем другие представления о том, в какой кодировке указан путь.
Ну так и что это меняет? Пусть либа читает кодировку из заголовка. Или ты собрался внезапно затереть заголовок?Serge wrote:подгруженная либа, которую писал совсем другой человек
0CodErr
А какая нибудь GLib имеет понятие о кодировке в заголовке ? Или LLVM или ещё терабайт опенсорсного кода ? Будешь все их проверять ?
А какая нибудь GLib имеет понятие о кодировке в заголовке ? Или LLVM или ещё терабайт опенсорсного кода ? Будешь все их проверять ?
Serge, ты лучше приведи конкретный пример, и я объясню тебе как можно сделать.
Библиотеки, они не сами по себе живут.
В любом случае должна быть согласованность между приложением и библиотекой.
Если твоя библиотека хочет, например, UTF16, то ты просто говоришь ядру посредством поля в заголовке приложения, что ты хочешь UTF16.
После этого ядро кладёт тебе путь\параметры в UTF16.
Затем ты передаёшь свои путь\параметры в UTF16 в библиотеку.
Ну и для ASCII\UTF8 аналогично.
Проблемы абсолютно никакой. Ещё раз, приводи пример, а я объясню тебе.
Pathoswithin, я всё же не понимаю, что должен означать ноль вот тутТы говорил, что это нужно для поддержки префиксов. Ну а кодировка-то какая будет? Если ASCII, то для него префикс не обязателен, и можно указать тогда 1, а не 0.
Я потому и писал ранее, что лучше было оставить как и было до твоих правок
Библиотеки, они не сами по себе живут.
В любом случае должна быть согласованность между приложением и библиотекой.
Если твоя библиотека хочет, например, UTF16, то ты просто говоришь ядру посредством поля в заголовке приложения, что ты хочешь UTF16.
После этого ядро кладёт тебе путь\параметры в UTF16.
Затем ты передаёшь свои путь\параметры в UTF16 в библиотеку.
Ну и для ASCII\UTF8 аналогично.
Проблемы абсолютно никакой. Ещё раз, приводи пример, а я объясню тебе.
Pathoswithin, я всё же не понимаю, что должен означать ноль вот тут
Code: Select all
======================================================================
== Function 70, subfunction 1 - read folder with long names support. =
======================================================================
.........................................................
* +8: dword: names encoding:
0 = default
1 = cp866
2 = UTF-16LE
3 = UTF-8
Я потому и писал ранее, что лучше было оставить как и было до твоих правок
Code: Select all
0 = cp866
1 = UTF-16LE
Я тебе долго пытался объяснить зачем там префикс, но похоже, что это невозможно viewtopic.php?f=2&t=3429&start=88
Кстати, ты так и не привёл конкретный пример обработки 100 ГБ символов в UTF-8.
В данном случае default = cp866, но может зависеть от той настройки, которую ты планировал реализовать.
Кстати, ты так и не привёл конкретный пример обработки 100 ГБ символов в UTF-8.
В данном случае default = cp866, но может зависеть от той настройки, которую ты планировал реализовать.
...а потом оказывается нужно использовать две библиотеки, одна из которых хочет UTF-8, а другая UTF-16.0CodErr wrote:Библиотеки, они не сами по себе живут.
В любом случае должна быть согласованность между приложением и библиотекой.
Если твоя библиотека хочет, например, UTF16, то ты просто говоришь ядру посредством поля в заголовке приложения, что ты хочешь UTF16.
После этого ядро кладёт тебе путь\параметры в UTF16.
Затем ты передаёшь свои путь\параметры в UTF16 в библиотеку.
Ну и для ASCII\UTF8 аналогично.
Мы не боимся трудностей, которые сами себе и создаём (c)
Сделаем мир лучше!
Без разницы, я их всё равно со временем удалю.Pathoswithin wrote:Так, вам осталось сделать свой вклад - выбрать номера двух новых функций для UTF-8 и UTF-16 (например 80 или 32).
Сделаем мир лучше!
А что ты планируешь сделать?
Останутся старые функции, которые будут принимать UTF-8.
Сделаем мир лучше!
А давайте вообще 10 библиотек и 10 разных кодировокCleverMouse wrote:...а потом оказывается нужно использовать две библиотеки, одна из которых хочет UTF-8, а другая UTF-16.
Вот-вот, не нужно лишних проблем создавать. Хотя, при работе с разными кодировками 99,99% что понадобится конвертер. А значит, проблемы снова никакой. Только вот далеко не всем нужно несколько библиотек и несколько кодировок.CleverMouse wrote:Мы не боимся трудностей, которые сами себе и создаём (c)
Ну и какой смысл тогда? 0 = 1 в данном случае. Зачем тогда ты сделал изменения? Ничего не улучшилось, удобнее не стало.Pathoswithin wrote:В данном случае default = cp866, но может зависеть от той настройки, которую ты планировал реализовать.
А я тебе говорил уже, что ты узко мыслишь. Ладно, вот тогда пример не от меня, от постороннего человека, только там уже не гигабайты, а терабайты http://www.linux.org.ru/forum/talks/9406274Pathoswithin wrote:Кстати, ты так и не привёл конкретный пример обработки 100 ГБ символов в UTF-8.
CleverMouse wrote:Без разницы, я их всё равно со временем удалю.
Это тогда сломает обратную совместимость. Вообще при такой тенденции есть вероятность, что KolibriOS просто переедет отсюда в другое место. А товарищи, без конца ломающие обратную совместимость, могут и дальше продолжать разрабатывать свою OS, только теперь уже based on KolibriOS. В KolibriOS обратная совместимость ломаться не будет. И, кстати, GPL не запрещает при желании использовать ещё чей-то код.CleverMouse wrote:Останутся старые функции, которые будут принимать UTF-8.
Необходимость конвертирования - это и есть проблема.0CodErr wrote:понадобится конвертер. А значит, проблемы снова никакой
Если всё будет в UTF-8, то большая часть, если не все, существующих программ вообще не заметит разницы.0CodErr wrote:Это тогда сломает обратную совместимость.
Сделаем мир лучше!
Ты сама себе противоречишь!CleverMouse wrote:Необходимость конвертирования - это и есть проблема.
CleverMouse wrote:...а потом оказывается нужно использовать две библиотеки, одна из которых хочет UTF-8, а другая UTF-16.
Они и так не заметят, потому что по умолчанию ASCII. UTF8 это лишние тормоза, которых можно избежать, если не ограничиваться только одной этой кодировкой.Если всё будет в UTF-8, то большая часть, если не все, существующих программ вообще не заметит разницы.
Last edited by 0CodErr on Fri Dec 23, 2016 3:57 pm, edited 1 time in total.
Так это же ты предлагаешь каждой библиотеке свою кодировку. Я как раз и говорю, что0CodErr wrote:Ты сама себе противоречишь!CleverMouse wrote:Необходимость конвертирования - это и есть проблема.CleverMouse wrote:...а потом оказывается нужно использовать две библиотеки, одна из которых хочет UTF-8, а другая UTF-16.
Сделаем мир лучше!
Это где это я такое говорил??? Ну-ка, ну-ка покажи-ка!!!CleverMouse wrote:Так это же ты предлагаешь каждой библиотеке свою кодировку.
Вон там viewtopic.php?f=2&t=3429&p=67721#p67721 я говорил
А ты хочешь искусственно ограничиться одной только UTF8.Но для обработки внутри программы советуют UCS2/UTF-16/UTF-32.
Ну вот прямо на этойпредыдущей странице:
0CodErr wrote:Но её можно будет(надеюсь ) задавать в заголовке приложения.
Если кодировка по всей системе одна, её нельзя задавать в заголовке приложения, и библиотека не может "хотеть" какую-то другую.0CodErr wrote:Если твоя библиотека хочет, например, UTF16, то ты просто говоришь ядру посредством поля в заголовке приложения, что ты хочешь UTF16.
Сделаем мир лучше!
Who is online
Users browsing this forum: No registered users and 7 guests