Настройка -> Сортировка
Модератор: motyara
-
- Охотник за багами
- Сообщения: 1199
- Зарегистрирован: Вс янв 31, 2010 12:12 am
Окрашивание файлов
После добавления шаблонов для групп сортировки возникает вопрос об окрашивании файлов. Логично красить группу, поэтому надеюсь, что в стилях оформления расширения будут также дополнены масками (без использования поисковых запросов). Предлагаю именно дополнить, а не заменить. Всё-таки мне кажется, со временем Вы добавите шаблоны расширений, как более естественный вариант...
PS: Интересно, когда появится соответствующий билд. Или придётся ждать версию 0.97?
PS: Интересно, когда появится соответствующий билд. Или придётся ждать версию 0.97?
-
- Автор программы
- Сообщения: 3432
- Зарегистрирован: Пт окт 12, 2007 3:26 pm
К сожалению по этому направлению есть проблемы в плане совместимости, ведь если сохранять не расширения а шаблоны, то нужно еще модифицировать скрипты на сайте, которые отвечают за раздачу стилей... то есть "новый" стиль без коррекции не сможет быть воспринят старой версией программы.Qwertiy писал(а):После добавления шаблонов для групп сортировки возникает вопрос об окрашивании файлов. Логично красить группу, поэтому надеюсь, что в стилях оформления расширения будут также дополнены масками (без использования поисковых запросов). Предлагаю именно дополнить, а не заменить. Всё-таки мне кажется, со временем Вы добавите шаблоны расширений, как более естественный вариант...
Будет еще билд текущей версии.Qwertiy писал(а):PS: Интересно, когда появится соответствующий билд. Или придётся ждать версию 0.97?
-
- Охотник за багами
- Сообщения: 1199
- Зарегистрирован: Вс янв 31, 2010 12:12 am
Не очень представляю, как работает эта система, но мне кажется, что можно было бы скопировать скрипт, изменив только его имя и источник стилей... Тогда новые версии будут обращаться к новому скрипту, а старые - к старому. Принцип "Новые стили только достаточно новым версиям" здесь в самый раз.Max Diesel писал(а):К сожалению по этому направлению есть проблемы в плане совместимости, ведь если сохранять не расширения а шаблоны, то нужно еще модифицировать скрипты на сайте, которые отвечают за раздачу стилей... то есть "новый" стиль без коррекции не сможет быть воспринят старой версией программы.
Немного хуже с отправкой стиля в старом формате, но можно просто периодически запускать конвертор старых стилей в новые.
-
- Автор программы
- Сообщения: 3432
- Зарегистрирован: Пт окт 12, 2007 3:26 pm
Получается что и база стилей должна быть отдельной (и, что особенно неприятно, нужно еще и стили вручную отправлять в разные базы, автоматической системы проверки стилей пока что нет и вряд ли появится, ведь алгоритм оценки красивости стиля не так уж прост чтобы можно было его сделать за час). Впрочем над вопросом о расширениях и шаблонах я еще поразмыслю.Qwertiy писал(а):Не очень представляю, как работает эта система, но мне кажется, что можно было бы скопировать скрипт, изменив только его имя и источник стилей... Тогда новые версии будут обращаться к новому скрипту, а старые - к старому. Принцип "Новые стили только достаточно новым версиям" здесь в самый раз.
-
- Охотник за багами
- Сообщения: 1199
- Зарегистрирован: Вс янв 31, 2010 12:12 am
Такое ощущение, что Вы опять не поняли мою идею...Max Diesel писал(а):Получается что и база стилей должна быть отдельной (и, что особенно неприятно, нужно еще и стили вручную отправлять в разные базы, автоматической системы проверки стилей пока что нет и вряд ли появится, ведь алгоритм оценки красивости стиля не так уж прост чтобы можно было его сделать за час). Впрочем над вопросом о расширениях и шаблонах я еще поразмыслю.Qwertiy писал(а):Не очень представляю, как работает эта система, но мне кажется, что можно было бы скопировать скрипт, изменив только его имя и источник стилей... Тогда новые версии будут обращаться к новому скрипту, а старые - к старому. Принцип "Новые стили только достаточно новым версиям" здесь в самый раз.
Насколько я понял, после нажатия на кнопку Скачать/Закачать, выполняется некоторый скрипт на сайте. Если просто добавить точно такие же скрипты, но с обращением к другому источнику стилей, то старые версии UC не будут знать о существовании этих скриптов и будут продолжать использовать старые, соответственно при этом все стили будут взяты из старой базы и добавлены в неё же. А новой версии UC не следует знать о существовании старых скриптов, она будет работать с новыми, т. е. обращаться только к новой базе.
Здесь нет никакого "ручного выбора" базы, сама программа (не скрипт) знает только о тех скриптах, которые соответствуют нужному ей формату стилей.
Единственным, что стоит добавить при такой реализации - синхронизацию баз (вероятно, одностороннюю), которую можно проводить по расписанию.
-
- Автор программы
- Сообщения: 3432
- Зарегистрирован: Пт окт 12, 2007 3:26 pm
Сначала пользователи присылают стили, затем я проверяю стили на корректность (это делается вручную, так как это проще чем написание алгоритма оценки красивости стиля), затем я добавляю стили в базу, лишь после этого скрипт может эти стили раздавать. Соответственно я и должен тогда следить за тем чтобы стиль попал в нужную базу... вот что я имел в виду.Qwertiy писал(а):Здесь нет никакого "ручного выбора" базы, сама программа (не скрипт) знает только о тех скриптах, которые соответствуют нужному ей формату стилей.
-
- Охотник за багами
- Сообщения: 1199
- Зарегистрирован: Вс янв 31, 2010 12:12 am
Не ожидал... Я считал, что все отправленные стили доступны для скачивания сразу.Max Diesel писал(а):Сначала пользователи присылают стили, затем я проверяю стили на корректность (это делается вручную, так как это проще чем написание алгоритма оценки красивости стиля), затем я добавляю стили в базу, лишь после этого скрипт может эти стили раздавать. Соответственно я и должен тогда следить за тем чтобы стиль попал в нужную базу... вот что я имел в виду.
-
- Автор программы
- Сообщения: 3432
- Зарегистрирован: Пт окт 12, 2007 3:26 pm
-
- Охотник за багами
- Сообщения: 1199
- Зарегистрирован: Вс янв 31, 2010 12:12 am
-
- Автор программы
- Сообщения: 3432
- Зарегистрирован: Пт окт 12, 2007 3:26 pm
-
- Охотник за багами
- Сообщения: 1199
- Зарегистрирован: Вс янв 31, 2010 12:12 am
-
- Автор программы
- Сообщения: 3432
- Зарегистрирован: Пт окт 12, 2007 3:26 pm
Не разделяю эту точку зрения...Qwertiy писал(а):По-моему 1/3 вполне достаточно, чтобы кидать в базу всё без разбора... К тому же, ведь тому, кто их отправил, они нравятся, может понравятся и кому-то ещё...
Полагаю этот не тот вопрос, по которому следует проводить голосование.Qwertiy писал(а):PS: Было бы интересно посмотреть на голосование по этому вопросу...
-
- Охотник за багами
- Сообщения: 1199
- Зарегистрирован: Вс янв 31, 2010 12:12 am
Группы сортировки
Очень обрадовался, увидев шаблоны для групп сортировки, но, к сожалению, там имеется несколько недоработок:
1. Если имя файла начинается с цифры, то номер группы (который превращается в цифру) соединяясь с именем файла образует некоторое число, которое при использовании сортировки с учётом числовых значений помещается не туда, куда надо... Проверил на файлах, созданных с помощьюДумаю, самым простым вариантом будет вместо цифр использовать буквы латинского алфавита - тогда они не будут сливаться в числа с цифрами имени, количество необходимых символов не изменится, а количество возможных групп возрастёт c 10 до 25 (26-я - для остальных файлов).
2. При попытке добавления чего-либо в группу с помощью диалога настроек сразу ставится "*.", что подразумевает расширение. У меня так и не получилось написать там что-то нормальное (правда, я и не особо старался - менял руками в ini-файле)...
3. Файлы без расширения (в т. ч. ".name") не попадают ни в одну группу (даже ::*:)... Случайно какой-нибудь проверки на существование расширения от предыдущего варианта не осталось?
4. Вероятно, файлы с именем ".name" не должны попадать в группу сортировки для такого расширения, поэтому предлагаю заменить дефаултный шаблон для расширения с "*.ext" на "*?.ext". Именно "*?", а не "?*", т. к. алгоритм оптимизирован для комбинации ":*".
5. При установке (поверх 782) в uncom.ini получились строки видат. е. стоят ';' вместо ':'...
1. Если имя файла начинается с цифры, то номер группы (который превращается в цифру) соединяясь с именем файла образует некоторое число, которое при использовании сортировки с учётом числовых значений помещается не туда, куда надо... Проверил на файлах, созданных с помощью
Код: Выделить всё
#include <cstdio>
int main(void)
{
char ch, s[32];
unsigned q;
for(ch='A'; ch<='J'; ++ch)
{
printf("SGexts%u=::*.%c:\n", ch-'A', ch);
sprintf(s, "Temp\\QQQ (%u).%c", ch-'A', ch);
fclose(fopen(s,"w"));
for(q=0; q<11; ++q)
{
sprintf(s, "Temp\\%uQQQ (%u%u).%c", q, ch-'A', q, ch);
fclose(fopen(s,"w"));
}
}
getchar();
return 0;
}
2. При попытке добавления чего-либо в группу с помощью диалога настроек сразу ставится "*.", что подразумевает расширение. У меня так и не получилось написать там что-то нормальное (правда, я и не особо старался - менял руками в ini-файле)...
3. Файлы без расширения (в т. ч. ".name") не попадают ни в одну группу (даже ::*:)... Случайно какой-нибудь проверки на существование расширения от предыдущего варианта не осталось?
4. Вероятно, файлы с именем ".name" не должны попадать в группу сортировки для такого расширения, поэтому предлагаю заменить дефаултный шаблон для расширения с "*.ext" на "*?.ext". Именно "*?", а не "?*", т. к. алгоритм оптимизирован для комбинации ":*".
5. При установке (поверх 782) в uncom.ini получились строки вида
Код: Выделить всё
SGexts0=::*.EXE;*.MSI;*.COM;*.BAT;*.CMD:
-
- Автор программы
- Сообщения: 3432
- Зарегистрирован: Пт окт 12, 2007 3:26 pm
1 - судя по всему нужно более наглядное представление результатов опыта, нежели краткое словесное описание...Qwertiy писал(а):Очень обрадовался, увидев шаблоны для групп сортировки, но, к сожалению, там имеется несколько недоработок:
1. Если имя файла начинается с цифры, то номер группы (который превращается в цифру) соединяясь с именем файла образует некоторое число, которое при использовании сортировки с учётом числовых значений помещается не туда, куда надо...
Думаю, самым простым вариантом будет вместо цифр использовать буквы латинского алфавита - тогда они не будут сливаться в числа с цифрами имени, количество необходимых символов не изменится, а количество возможных групп возрастёт c 10 до 25 (26-я - для остальных файлов).
2. При попытке добавления чего-либо в группу с помощью диалога настроек сразу ставится "*.", что подразумевает расширение. У меня так и не получилось написать там что-то нормальное (правда, я и не особо старался - менял руками в ini-файле)...
3. Файлы без расширения (в т. ч. ".name") не попадают ни в одну группу (даже ::*:)... Случайно какой-нибудь проверки на существование расширения от предыдущего варианта не осталось?
4. Вероятно, файлы с именем ".name" не должны попадать в группу сортировки для такого расширения, поэтому предлагаю заменить дефаултный шаблон для расширения с "*.ext" на "*?.ext". Именно "*?", а не "?*", т. к. алгоритм оптимизирован для комбинации ":*".
5. При установке (поверх 782) в uncom.ini получились строки видат. е. стоят ';' вместо ':'...Код: Выделить всё
SGexts0=::*.EXE;*.MSI;*.COM;*.BAT;*.CMD:
2 - если вписывая "что-то нормальное" вставить точку, то картина предположительно изменится... согласно алгоритму проверяется отсутствие точки, а также астериска.
3 - файлы без расширения в глазах программы всегда являлись и являются "особенными", подозреваю что с этим нужно смириться... можно конечно использовать что-то для принудительного определения этих файлов, но это снизит скорость сортировки, а при учете количества файлов без расширений по отношению к общему количеству файлов это просто нерационально.
4 - с одной стороны это логично, но с другой - это больше запутает пользователя... поэтому на мой взгляд рациональнее оставить "*.ext", но каждый желающий (и при этом разбирающийся в вопросе) сможет добавить знак "?".
5 - я исправил эту странность. Фактически после первого же запуска окна настроек строка исправляется до нужного вида.
-
- Охотник за багами
- Сообщения: 1199
- Зарегистрирован: Вс янв 31, 2010 12:12 am
1. Компилируете код (из предыдущего моего сообщения), создаёте папку с именем Temp (или добавляете вызов "system("md Temp");" в программу), после чего запускаете. То, что выведено на экран делаете группами сортировки, затем открываете папку Temp в UC и убеждаетесь, что файлы отсортированы по значению в скобках.Max Diesel писал(а):1 - судя по всему нужно более наглядное представление результатов опыта, нежели краткое словесное описание...
2 - если вписывая "что-то нормальное" вставить точку, то картина предположительно изменится... согласно алгоритму проверяется отсутствие точки, а также астериска.
3 - файлы без расширения в глазах программы всегда являлись и являются "особенными", подозреваю что с этим нужно смириться... можно конечно использовать что-то для принудительного определения этих файлов, но это снизит скорость сортировки, а при учете количества файлов без расширений по отношению к общему количеству файлов это просто нерационально.
4 - с одной стороны это логично, но с другой - это больше запутает пользователя... поэтому на мой взгляд рациональнее оставить "*.ext", но каждый желающий (и при этом разбирающийся в вопросе) сможет добавить знак "?".
2. После набора точки, точка в шаблоне исчезает, но звёздочка остаётся...
3. Функция проверки на соответствие имени строке масок работает независимо от наличия у файла расширения. Не понимаю, чем отсутствие проверки на наличие расширения снизит скорость сортировки...
4. Об оптимизации функции для ":*" мало кто знает...