DrKnS wrote: ↑Thu 22 Jul, 2021 19:30
А он и не делает:
Я провёл полный факторный эксперимент по
А. Какая из двух разных машин: сборка 5718 под Win 8.1 и сборка 5845 под Win 10.
Б. Включен ли в ярлыке QEM до запуска Фара — колонка QEM 0 в таблице ниже.
В. Включено ли в Фаре использование мыши — колонка Mouse в таблице ниже.
Подготовка: скопировал созданный установщиком Фара ярлык себе на рабочий стол, настроил там запуск без плагинов.
Собственно эксперимент (для каждого сочетания факторов):
1. Выставляю в ярлыке QEM из колонки QEM 0.
2. Сохраняю в конфигурацию Фара не-/использование мыши из колонки Mouse.
3. Запускаю Фар ярлыком.
4. Открываю свойства консольного окна, смотрю значение QEM и заношу его в колонку QEM 1 таблицы ниже.
5. Перещёлкиваю QEM на противоположное значение, нажимаю OK.
6. Снова открываю свойства консольного окна, смотрю значение QEM и заношу его в колонку QEM 2 таблицы ниже.
7. Отменяю диалог свойств консоли, выхожу из Фара.
8. Открываю свойства ярлыка, смотрю значение QEM и заношу его в колонку QEM 3 таблицы ниже.
╔═════════════╤═════╤═════╦═════╤═════╤═════╗
║FAR build, OS│QEM 0│Mouse║QEM 1│QEM 2│QEM 3║
╟─────────────┼─────┼─────╫─────┼─────┼─────╢
║b5718 Win 8.1│ N │ N ║ N │ N │ Y ║
║ │ N │ Y ║ N │ N │ Y ║
║ │ Y │ N ║ Y │ Y │ N ║
║ │ Y │ Y ║ N │ N │ Y ║
╟─────────────┼─────┼─────╫─────┼─────┼─────╢
║b5845 Win 10 │ N │ N ║ N │ N │ Y ║
║ │ N │ Y ║ N │ N │ Y ║
║ │ Y │ N ║ Y │ Y │ N ║
║ │ Y │ Y ║ N │ N │ Y ║
╚═════════════╧═════╧═════╩═════╧═════╧═════╝
1. Из противоположности QEM 2 и QEM 3 во всех случаях делаю вывод, что Фар отлавливает приданное окну значение QEM не только на старте, но и «по ходу дела», и применяет его при выходе.
2. Из совпадения QEM 1 и QEM 2 во всех случаях делаю вывод, что Фар полностью управляет значением QEM независимо от использования мыши — это впрямую противоречит процитированному выше утверждению.
Таким образом, моё предложение остаётся в силе. Или я где-то ошибся в эксперименте или в интерпретации результатов?
У консольного окна есть состояние. При создании консоли оно иницализируется тем, что в ярлыке, если запускали ярлыком, или тем, что в подходящем подключе HKCU\Console, если он есть, или тем, что непосредственно в HKCU\Console, если такого подключа нет.
Far при запуске считывает это состояние, запоминает его в переменную и строит на его основе свое, которое потом применяет на каждый чих (надо бы это пересмотреть, наверное).
При запуске процессов в той же консоли восстанавливается изначальное состояние, при выходе тоже.
Когда вы открываете свойства консольного окна, вам показывается не то, что было в ярлыке или еще где, а текущее состояние.
Когда вы что-то там меняете и нажимаете ОК, изменения пишутся в ярлык или в подключ HKCU\Console.
Если вы открыли свойства не через properties, а через defaults, то вам показывается не текущее состояние, а то, что в HKCU\Console. Изменения пишутся туда же.
Вывод 1 объясняется пунктом 4.
Вывод 2 объясняется пунктом 2.
Насколько я понимаю, вам хочется, чтобы пункт 2 звучал как "...и строит на его основе свое, которое потом применяет на каждый чих, объединяя с текущим состоянием QEM, если в настройках отключена мышь", так?
DrKnS wrote: ↑Fri 23 Jul, 2021 00:00
вам хочется, чтобы пункт 2 звучал как "...и строит на его основе свое, которое потом применяет на каждый чих, объединяя с текущим состоянием QEM, если в настройках отключена мышь", так?
Почти. Я предлагаю, чтобы Фар по возможности отслеживал изменение состояния консоли (в частности, QEM) пользователем и своевременно обновлял своё хранимое представление. Это позволило бы и избежать недоумения, почему, изменив QEM у окна, я вижу результат только после выхода из Фара, и удовлетворить потребность, описанную в начальном посте этой темы, и не пожертвовать возможностью использовать мышь в запускаемых консольных программах.