View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001969 | Wishes | Settings | public | 2012-01-04 06:51 | 2013-02-03 00:33 |
Reporter | NightRoman | Assigned To | DrKnS | ||
Priority | normal | Severity | feature | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Product Version | 3.0 | ||||
Fixed in Version | 3.0 | ||||
Summary | 0001969: Отделить настройку "Сохранять состояние панелей" от остальных настроек и сделать локальной | ||||
Description | Состояние панелей (пути и текущие файлы) ближе к истории, чем к настройкам. В обычных случаях перенос этих данных с машины на машину вряд ли имеет смысл. Хотел выключить у себя автосохранение настроек (есть причины), мне не сложно сохранять их явно по ShiftF9. Выяснилось, что не могу, так как при этом и сохранение состояния панелей на выходе отключается тоже. А запоминание последних путей и текущих файлов для меня важно. Противоположный пример (Maximus5). Он любит, чтобы пути при старте были всегда одни и те же, то есть автосохранение выключено, конечно. Но тогда при реальном изменении какой-то настройки перед сохранением по ShiftF9 ему перед этим еще и пути на панелях приходится выставлять в те самые. Он нечасто меняет настойки и его это устраивает. Но неуклюже это как-то все равно, а для тех, кто часто меняет настройки - реально неудобно. Отделить настройку "Сохранять состояние панелей" от остальных настроек (нужна отдельная галка) и сделать локальной - это бы устранило неудобства во всех известных юз-кейсах, где неудобства имеются. | ||||
Tags | No tags attached. | ||||
Build | 3092 | ||||
|
Еще одно неудобство, связанное с этим. Периодически экспортирую настойки (естественно) и иногда сравниваю их. Данные состояния панелей при этом, конечно, почти всегда отличаются, что создает лишний шум при сравнении. (Попутно - а зачем их экспортировать в XML? Пользы вроде нет). |
|
Правильная мысль. Отдельная опция "[ ] Auto save panels state" обсуждалась на форуме http://forum.farmanager.com/viewtopic.php?f=6&t=6525 |
|
|
|
Попытка номер 1 - m1969.1.patch.7z Новая опция "Auto save panels state". |
|
Версия на пробу: https://github.com/downloads/Firebie/Far2bis.ext/far.m1969.1.7z |
|
Господа, опция автосейв - это хорошо. Но к тикету не имеет прямого отношения. Лично мне автосейв состояния нужен (опция мне не повредит тоже). Но неудобно, что это все летит в роуминг настройки, в экспорт, и создает немало именно "шума", как при работе с экспортированными настройками, так и при таскании с машину на машину, где пути с другой машины почти всегда нежелательны. |
|
Переделаю, что бы настройки панелей переехали в history.db. |
|
Denis, очень ценю эти усилия, а есть надежда, что это в основной Фар попадет? А то как бы не напрасно это оказалось. Понятно, что с патчем вероятность сильно возрастает, но если у команды в принципе нет цели такого изменения (мало ли почему), то жаль твоих трудов. |
|
Патч не займёт много времени. Да и мне пригодится. Будем надеяться, что с наличием патча вероятность попадания фичи в основной trunk гораздо выше. Или же будет версия "bis", как у Maximus'a :) |
|
|
|
Вторая попытка (m1969.2.patch.7z). Теперь текущий каталог и файл для каждой панели хранятся в history.db, и, соответственно, в импорт/экспорт не попадают. Попробовать здесь: https://github.com/downloads/Firebie/Far2bis.ext/far.m1969.2.7z |
|
Так это пожелание в принципе будет учтено? (Вопрос практический, изобретать самому обходные пути или нет). P.S. Еще одно неудобство было упомянуто - хранение настроек в папке SkyDrive или DropBox. Идея сама по себе весьма хорошая. А на деле, то и дело там изменения настроек по пустякам и дергание синхронизации с облаками. Удобная вещь не особо применима получается. |
|
2 Denis Можешь актуализировать свой патч для текущей версии ? И добавить краткое описание - что там делается (новые опции, таблицы в БД...) |
|
Можно, но займёт пару дней. |
|
Если кто будет переделывать - не надо в history.db. Надо 'локальное' воплощение 'generalconfig.db', т.е. базу с тем же форматом и логикой, но в %farlocalprofile%. |
|
Т.е. отдельный файл чисто для пути на панели и файла под курсором (для каждой из панелей)? |
|
Дальше таких рантаймовых настроек может стать больше. Архитектурно мне отдельный файл нравится сильно больше, чем таблица general_config в history.db. Ну и код, наверное, проще будет. А в опции тогда смысла не вижу, оно точно надо? |
|
|
|
m1969.3.patch.7z: пишем в отдельный файл localconfig.db, храним его рядом с history.db. Описание: CurFile & Folder для каждой из панелей храним в новом файле, сохранение происходит одновременно с сохранением остальных опций. Структура нового localconfig.db совпадает с generalconfig.db (copy&paste). Грубо говоря, опции просто переехали в новый файл, который находится в %LOCALAPPDATA%. |
|
Звучит хорошо. Denis, спасибо за работу! Коллеги из команды, ждем вашего хода. Заранее спасибо. Это очень хороший прогресс. |
|
Ой, зачем же столько копипасты :) 3087. |
|
Хорошее начало. Но перенесены только Panel.Left │CurFile Panel.Left │Folder Panel.Right│CurFile Panel.Right│Folder А там ведь и другие состояния панели - сортировка, показ скрытых, и прочие. Надо все настройки по состоянию панелей перенести в локальные. |
|
Вопрос немного спорный. Я за "локальность" текущих путей и файлов (как уже сделано), но против "локальности" настроек панелей. |
|
Да, тут не может быть однозначного ответа. Все зависит от стиля работы на разных машинах, между которыми шарятся или кочуют настройки. По моему стилю режим панели нередко зависит от папки - в одной мне нужны скрытые, в другой - нет, в одной папке нужна такая сортировка, в другой - другая. И т.д. Но текущие папки теперь в локальных настройках, с этим решено. Получается, что у меня режимы панелей, которые зависят от текущих папок, кочуют, а сами папки - нет. Нелогично. |
|
Как вариант - ещё один "локальный" файл panelconfig.db. |
|
Может логичнее новую группу настроек, определяющих какие опции считать локальными, а какие нет. Возможно даже стоит дать возможность пользователю ЛЮБУЮ существующую опцию сделать локальной (например поставив ей соответствующий признак в far:config) |
|
Настройку на каждую настройку, где хранить настройку :) |
|
Не, так как-то уже сложно, из пушки по воробьям (да и не совсем я понял, зачем это). Лучше просто, как есть сейчас. Кроме того, надо еще поработать и присмотреться. |
|
Технически вроде не сложно. Завести в таблице general_config новое bool поле 'local', и, если оно установленно, читать/писать настройку из/в localconfig.db. |
|
И еще нередкое дергание настроек происходит из-за Layout LeftHeightDecrement и RightHeightDecrement (высота панелей). Актуально для тех, кто любит их поелозить вверх-вниз то и дело. P.S. Но так-то тикет вроде решен, можно закрывать, наверное. |
|
Фокус теперь тоже в локальных настройках. Остальное трогать пока что не вижу необходимости. Но в идее "завести в таблице general_config новое bool поле 'local'" что-то есть, это можно пообсуждать в рамках отдельного бага. |
Date Modified | Username | Field | Change |
---|---|---|---|
2012-01-04 06:51 | NightRoman | New Issue | |
2012-03-03 15:25 | NightRoman | Note Added: 0008677 | |
2012-03-04 12:05 | JohnDoe | Note Added: 0008679 | |
2012-03-04 13:34 | Denis | File Added: m1969.1.patch.7z | |
2012-03-04 13:36 | Denis | Note Added: 0008680 | |
2012-03-04 13:41 | Denis | Note Added: 0008681 | |
2012-03-04 16:49 | NightRoman | Note Added: 0008682 | |
2012-03-04 17:04 | Denis | Note Added: 0008683 | |
2012-03-04 17:55 | NightRoman | Note Added: 0008684 | |
2012-03-04 18:10 | Denis | Note Added: 0008685 | |
2012-03-04 18:58 | Denis | File Added: m1969.2.patch.7z | |
2012-03-04 19:01 | Denis | Note Added: 0008686 | |
2013-01-15 11:35 | NightRoman | Note Added: 0010005 | |
2013-01-15 12:01 | 2useven10 | Note Added: 0010006 | |
2013-01-15 12:32 | Denis | Note Added: 0010007 | |
2013-01-15 19:59 | DrKnS | Note Added: 0010010 | |
2013-01-15 20:00 | DrKnS | Note Edited: 0010010 | |
2013-01-15 20:02 | Denis | Note Added: 0010011 | |
2013-01-15 20:19 | DrKnS | Note Added: 0010012 | |
2013-01-16 16:58 | Denis | File Added: m1969.3.patch.7z | |
2013-01-16 17:00 | Denis | Note Added: 0010022 | |
2013-01-16 17:01 | Denis | Note Edited: 0010022 | |
2013-01-16 17:03 | Denis | Note Edited: 0010022 | |
2013-01-16 17:10 | Denis | Note Edited: 0010022 | |
2013-01-16 17:11 | Denis | Note Edited: 0010022 | |
2013-01-16 17:11 | Denis | Note Edited: 0010022 | |
2013-01-16 17:12 | Denis | Note Edited: 0010022 | |
2013-01-16 17:29 | NightRoman | Note Added: 0010023 | |
2013-01-16 17:31 | Denis | Note Edited: 0010022 | |
2013-01-16 20:04 | DrKnS | Assigned To | => DrKnS |
2013-01-16 20:04 | DrKnS | Status | new => assigned |
2013-01-16 21:01 | DrKnS | Note Added: 0010027 | |
2013-01-16 21:01 | DrKnS | Status | assigned => feedback |
2013-01-17 00:12 | NightRoman | Note Added: 0010028 | |
2013-01-17 00:12 | NightRoman | Status | feedback => assigned |
2013-01-17 10:11 | Denis | Note Added: 0010031 | |
2013-01-17 10:11 | Denis | Note Edited: 0010031 | |
2013-01-17 10:12 | Denis | Note Edited: 0010031 | |
2013-01-17 12:05 | NightRoman | Status | assigned => resolved |
2013-01-17 12:21 | NightRoman | Note Added: 0010033 | |
2013-01-17 12:28 | Denis | Note Added: 0010034 | |
2013-01-17 12:28 | Denis | Note Edited: 0010034 | |
2013-01-17 12:30 | JohnDoe | Note Added: 0010035 | |
2013-01-17 12:32 | JohnDoe | Note Edited: 0010035 | |
2013-01-17 12:32 | Denis | Note Added: 0010036 | |
2013-01-17 12:32 | JohnDoe | Note Edited: 0010035 | |
2013-01-17 12:33 | NightRoman | Note Added: 0010037 | |
2013-01-17 12:39 | Denis | Note Added: 0010038 | |
2013-01-17 15:24 | NightRoman | Note Added: 0010039 | |
2013-01-17 15:25 | NightRoman | Note Edited: 0010039 | |
2013-01-17 21:44 | DrKnS | Note Added: 0010041 | |
2013-01-17 21:45 | DrKnS | Build | => 3092 |
2013-01-17 21:45 | DrKnS | Status | resolved => closed |
2013-01-17 21:45 | DrKnS | Resolution | open => fixed |
2013-01-17 21:45 | DrKnS | Fixed in Version | => 3.0 |
2013-02-03 00:33 | alexy | Severity | minor => feature |