Board.KolibriOS.org

Официальный форум KolibriOS
Текущее время: Чт дек 13, 2018 7:36 pm

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 236 сообщений ]  На страницу Пред. 14 5 6 7 816 След.
Автор Сообщение
 Заголовок сообщения: Re: Путь приложения
СообщениеДобавлено: Сб ноя 26, 2016 3:43 am 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Чт мар 26, 2015 5:16 pm
Сообщения: 1257
Цитата:
ввод пути это отдельная тема, здесь обсуждается получение приложением пути запуска
Вот теперь немного поработай мозгами и подумай, что я хотел этим сказать. Как путь в UTF-8 без префикса будет работать с 70 функцией? Как твой вариант поможет существующим приложениям?


Вернуться к началу
 Заголовок сообщения: Re: Путь приложения
СообщениеДобавлено: Сб ноя 26, 2016 3:54 am 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1499
Pathoswithin писал(а):
Как путь в UTF-8 без префикса будет работать с 70 функцией?

Ты там чем читаешь-то? :mrgreen:
0CodErr писал(а):
Pathoswithin, если уж так хочется засунуть байт кодировки и передавать в SysFn70, то засунь его знаешь куда? Вон туда, например
Код:

* +20 = +0x14: ?: path - zero terminated string
or
* +20 = +0x14: byte: 0 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
* +21 = +0x15: dword: pointer to string


Цитата:
Вот теперь немного поработай мозгами и подумай, что я хотел этим сказать.
Ту уж сначала сам разберись, что ты там хотел сказать.


Вернуться к началу
 Заголовок сообщения: Re: Путь приложения
СообщениеДобавлено: Сб ноя 26, 2016 4:01 am 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Чт мар 26, 2015 5:16 pm
Сообщения: 1257
А теперь финальный вопрос! Как байт кодировки там окажется?


Вернуться к началу
 Заголовок сообщения: Re: Путь приложения
СообщениеДобавлено: Сб ноя 26, 2016 4:04 am 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1499
И, кстати, этот вариант хорош ещё и тем, что значения будут совпадать с
Код:
  * +8: dword: encoding:
    * 0 = cp866 -> byte per char
    * 1 = UTF-16LE -> word per char
Путаницы будет меньше, потому что и там, и там будет только одна константа для каждой кодировки.


Вернуться к началу
 Заголовок сообщения: Re: Путь приложения
СообщениеДобавлено: Сб ноя 26, 2016 4:08 am 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1499
Pathoswithin писал(а):
Как байт кодировки там окажется?
Так а до тебя что ли не дошло ещё до сих пор? Или опять дурачка включаешь? Ладно, я пишу для всех. Может и ещё кому вдруг непонятно.

Ну, разумеется, этот байт туда положит программист. И всего-то!


Вернуться к началу
 Заголовок сообщения: Re: Путь приложения
СообщениеДобавлено: Сб ноя 26, 2016 4:15 am 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Чт мар 26, 2015 5:16 pm
Сообщения: 1257
Цитата:
Как твой вариант поможет существующим приложениям?
А ты говоришь про ввод пути при написании новых программ.


Вернуться к началу
 Заголовок сообщения: Re: Путь приложения
СообщениеДобавлено: Сб ноя 26, 2016 4:20 am 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1499
Pathoswithin писал(а):
А ты говоришь про ввод пути при написании новых программ.
Ну так я на твой вопрос отвечаю.
Цитата:
Как твой вариант поможет существующим приложениям?
Они не поломаются. Если вдруг им требуется поддержка юникода, которой в них ещё не было, то тогда в любом случае необходима правка программы с последующей перекомпиляцией.


Вернуться к началу
 Заголовок сообщения: Re: Путь приложения
СообщениеДобавлено: Сб ноя 26, 2016 4:27 am 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Чт мар 26, 2015 5:16 pm
Сообщения: 1257
Ты разве ещё не понял? Уже сейчас все существующие приложения получают путь запуска в UTF-8, и продолжают работать благодаря маркеру. А последнее изменение починило те, что поломались.


Вернуться к началу
 Заголовок сообщения: Re: Путь приложения
СообщениеДобавлено: Сб ноя 26, 2016 4:31 am 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1499
Да это похоже, ты ещё не понял. Мой вариант не создаёт потенциальные проблемы в будущем.
А у тебя опять всё префиксы какие-то :lol:

Просто теоретически. Программа может хотеть знать устройство, с которого запущена.
Раньше устройство было сразу после первого слэша. Теперь это не так. Потом, если будут ещё какие-то проблемы, ты, вероятно, ещё какой-нибудь костыль придумаешь с путём.

А мой вариант свободен от таких проблем.


Вернуться к началу
 Заголовок сообщения: Re: Путь приложения
СообщениеДобавлено: Сб ноя 26, 2016 4:42 am 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1499
Ну и, как я считаю, лучше всё же не UTF-8, а UTF-16. Почему я так считаю, я написал там viewtopic.php?f=2&t=3433&p=67432#p67432 но кое-что продублирую сюда, пожалуй
Цитата:
Ну а за UTF-16 я потому что в ней символ может состоять или из 2-ух, или из 4-ёх байтов. В то время как в UTF-8 4 варианта(1|2|3|4). Это дополнительные проверки в коде, меньше производительность. Хуже, наверное, только EBCDIC.
В плане совместимости, файловые функции уже давно поддерживают UTF-16.
И потом, если кто захочет, просто сделает UTF16ToASCII(в зависимости от локали) или UTF16ToUTF8, или ещё куда-нибудь.


Вернуться к началу
 Заголовок сообщения: Re: Путь приложения
СообщениеДобавлено: Сб ноя 26, 2016 1:31 pm 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Чт мар 26, 2015 5:16 pm
Сообщения: 1257
*facepalm* Твой вариант не создаёт потенциальные проблемы в будущем, он сломает совместимость прямо сейчас.


Вернуться к началу
 Заголовок сообщения: Re: Путь приложения
СообщениеДобавлено: Сб ноя 26, 2016 1:59 pm 
Не в сети

Зарегистрирован: Вт мар 08, 2016 11:00 pm
Сообщения: 417
Вот, придумал - пусть будут префиксы.

Но приложению передавать указатель на путь после префикса. Старые не сломаются, а новые пусть анализируют по смещению -1 или -2.


Вернуться к началу
 Заголовок сообщения: Re: Путь приложения
СообщениеДобавлено: Сб ноя 26, 2016 2:23 pm 
Не в сети

Зарегистрирован: Вс окт 30, 2011 6:43 pm
Сообщения: 1499
Pathoswithin писал(а):
*facepalm* Твой вариант не создаёт потенциальные проблемы в будущем, он сломает совместимость прямо сейчас.
Мдам... нет, ты не включил дурака, ты и есть дурак!!!
Цитата:
он сломает совместимость прямо сейчас
Которая уже и так была тобой сломана. А будет восстановлена.

А перекомпиляция в любом случае нужна. Так как для 1024 символов юникода 1024 байтов уже недостаточно. Поэтому, если уж делать, то по-нормальному.
Siemargl писал(а):
Вот, придумал - пусть будут префиксы.
Ты не придумал. Оно так и есть сейчас. Но оставлять это, плохая идея. Одна из возможных проблем там viewtopic.php?f=2&t=3429&start=75#p67405 и вон там viewtopic.php?f=2&t=3429&start=90#p67456

Можно, кстати, сделать, чтобы ядро само выделяло нужный буфер и перезаписывало указатель в заголовке. Имею в виду, если он со знаком "-" будет записан.
Заодно можно поправить ситуацию и с параметрами. То есть, сделать похожим образом. Знак "-" будет означать UTF16, а ядро само выделит буфер и перезапишет указатель. Потому что, то, как сделано там сейчас(если никто, конечно не правил больше), это странно. Должен быть указатель на буфер в bss, а там структура и необходимость её инициализации(я сам не проверял, может оно даже и не совсем так работает).


Вернуться к началу
 Заголовок сообщения: Re: Путь приложения
СообщениеДобавлено: Сб ноя 26, 2016 4:54 pm 
Не в сети
Designer
Аватара пользователя

Зарегистрирован: Чт янв 25, 2007 3:33 pm
Сообщения: 4879
0CodErr
Давай без оскорблений.

_________________
Через тернии к звездам


Вернуться к началу
 Заголовок сообщения: Re: Путь приложения
СообщениеДобавлено: Сб ноя 26, 2016 5:25 pm 
Не в сети
Mentor/Kernel Developer
Аватара пользователя

Зарегистрирован: Чт мар 26, 2015 5:16 pm
Сообщения: 1257
0CodErr
Сам ты дурак, я тебе пытаюсь что-то объяснить, а ты ещё и не доволен. Зачем я вообще с тобой разговариваю? Мог бы тебя игнорировать.
Сейчас всё работает. Там, где раньше был путь в cp866, сейчас путь в utf-8. Существующие приложения редактируют конец строки и передают её в 70 функцию, которая определяет строку как utf-8 благодаря префиксу в начале. Как это будет работать без префикса?
Откуда ты взял 1024 символов? Ограничение в байтах.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 236 сообщений ]  На страницу Пред. 14 5 6 7 816 След.

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB