TheBarmaley
Platinum Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору alens Цитата: можно ли в воровайку добавить опцию бэкапа и восстановления настроек? | можно, думал уже над этим, есть несколько вариантов, все достаточно компактные, общий код не так уж сильно распухнет.. наиболее простой метод - копипаста через json-формат (не совсем удобно, но не ежесекундно же)), это делается парой строк кода.. можно и с "фенечками" - со стандартным диалогом выбора файла, через тот же json-формат, но это чуть побольше пары строк..) т.ч. принципиальной проблемы нет, просто в менюшку добавится ещё один пунктик для запуска импорт/экспорта.. ну а не сделано это до сих пор по одной причине - кмк, практически нет настроек, которые юзер меняет от умолчательных, разве что переключение отдельных дефольтных опций да собственные разделители (тоже, как думаю, редко кто меняет).. тем более - в процессе текущей работы эти параметры тоже могут меняться (под текущие задачи), т.ч. особого смысла в бэкапе даже месячной давности я не вижу.. в текущей версии, правда, добавилась ещё настройка папки для загрузок, но даже для переноса меж разными машинами/браузерами оно малосущественно - несложно ведь один раз ввести желаемое имя папки..) вопчем, если "общессность требует" - на попробу можно как угодно сделать..) для начала упрощённо - бэкап с копипастой или с выводом в файл, рестор/импорт - с копипастой* содержимого бэкапа в поле ввода.. в этом случае не обязательно хранить кучу настроек в разных файлах, можно, например, содержимое разных бэкапов сохранять для себя в одном файле (типа, для разных профилей или задач, ну и т.д.) * поясню почему не через файл - в этом случае потребуется достаточно объёмный кусок кода, связанный с выбором, запросом, загрузкой, чтением этого файла и последующим парсером текстовки в ключи локал-стораджа.. ну и + проверка валидности всех импортированных ключей в соответствии с текущей версией (они ведь периодически добавляются или меняются, т.е. бэкап годичной давности придётся конвертировать в текущие ключи/опции).. и проще тут никак, механизм работы с файлами в браузере достаточно сложный, парой строк его не решить.. и второй момент - ещё придётся учитывать и текущие изменения политик безопасности браузера (гугел ведь "постоянно думает о нас")).. т.е. то, что будет без проблем работать, скажем, в 70-й версии, отвалится в 93-й (к примеру), потому как "а теперь так низзя".. поэтому, сам понимаешь, ради хранения пары галочек (к тому же ещё и дефольных в большинстве случаев)) нет никакого смысла огород городить для достаточно редкой задачи, юзеру проще пару раз мышом тыкнуть при настройке свежеустановленной копии, особенно - с учётом того, что все параметры по дефольту уже достаточно "сбалансированы" под большинство задач, они же опробованы многолетним опытом и выставлены под максимально часто встречающиеся задачи.. а при копипасте не нужен самый объёмный кусок (выбор файла, запрос/загрузка, чтение) и остаётся только парсер + проверка ключей, но это в любом случае придётся делать, чтоб не "побилось всё"..) ..хотя, с другой стороны, раз код уже "распилен" на модули - можно для импорт/экспорта просто ещё один отдельный модуль запилить..) в памяти он не будет болтаться постоянно, т.ч. размер и сложность кода в целом тут пофиг - это разовая операция, тормозов не будет.. ладно.. раз уж вопрос поднят - я подумаю, как тут "покрасивше" сделать..)) Try_Bul_Bul Цитата: Зачем же крохотную програмулину доводить чуть ли ни до комбайна? | так она давно уже в комбайн превратилась..)) фичей больше/меньше - хуже не будет..
|