Менеджер переменных окружения

Здесь выкладываются готовые к использованию макросы и скрипты.
IgorZ
Posts: 463
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 6 times
Been thanked: 9 times

Менеджер переменных окружения

Post by IgorZ » Tue 15 Dec, 2015 07:10

Данный скрипт позволяет манипулировать переменными окружения: создавать, удалять, редактировать, сохранять в файл, читать из него.
Скрипт содержит один макрос.
Клавиша вызова: AltShiftE.

Требуемая версия Far 3.0.4000+.

Attachments
EnvManager.1.4.1.7z
(13.22 KiB) Downloaded 23 times
Last edited by IgorZ on Thu 21 Sep, 2017 06:33, edited 4 times in total.

IgorZ
Posts: 463
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 6 times
Been thanked: 9 times

Менеджер переменных окружения

Post by IgorZ » Wed 21 Jun, 2017 07:06

Latest post of the previous page:

Версия 1.3.2 - Исправлена ошибка с сохранением переменных окружения при непустом белом списке. Мелкие правки. В частности, редактирование значения переменной в редакторе из диалога редактирования можно вызвать не только по F4, но и по AltF4: F4 может перебивать макрос для DialogTools.

DV
Posts: 308
Joined: Mon 07 Aug, 2006 08:23
Has thanked: 2 times
Been thanked: 2 times

Менеджер переменных окружения

Post by DV » Fri 04 Aug, 2017 15:04

Макрос последней версии, внёс одну переменную в Black List, а убрать оттуда не могу :(
Если внести в Black List хотя бы две переменные, то сочетанием CtrlB Del Enter можно убрать одну из них, а оставшуюся (последнюю) не удаётся убрать никак.

DV
Posts: 308
Joined: Mon 07 Aug, 2006 08:23
Has thanked: 2 times
Been thanked: 2 times

Менеджер переменных окружения

Post by DV » Fri 04 Aug, 2017 15:14

И предложение на рассмотрение: добавить возможность временно "отключать" выбранные переменные (аналог "set var=" с помощью меню).

IgorZ
Posts: 463
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 6 times
Been thanked: 9 times

Менеджер переменных окружения

Post by IgorZ » Tue 08 Aug, 2017 06:53

Версия 1.3.3 - Исправлена ошибка с удалением всех переменных из чёрного списка, внесённая в версии 1.3.2. Оптимизация...
DV wrote:
Fri 04 Aug, 2017 15:14
И предложение на рассмотрение: добавить возможность временно "отключать" выбранные переменные (аналог "set var=" с помощью меню).
Не уверен. Может, используете имеющийся механизм сохранения/чтения переменных в/из файл?

DV
Posts: 308
Joined: Mon 07 Aug, 2006 08:23
Has thanked: 2 times
Been thanked: 2 times

Менеджер переменных окружения

Post by DV » Tue 08 Aug, 2017 20:16

Спасибо за обновление!
Сохранение/чтение в файл для "отключения" переменных долговато использовать. Я скорее представлял себе что-то наподобие "чёрного списка": к примеру, по Alt+D перемещаем переменную в список "отключенных", а по Ctrl+D убираем из этого списка. При этом "отключение" обычной переменной окружения предполагало бы запоминание её имени и текущего значения (например, туда же, куда сохраняются имена из "чёрного списка") и затем установку пустого значения для этой переменной. А "восстановление" - установку сохранённого значения. Переменные же из реестра можно было бы временно "скрыть" путём установки пустого значения переменной окружения с тем же именем - а восстановить, наверное, вновь прочитав её значение из реестра.

IgorZ
Posts: 463
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 6 times
Been thanked: 9 times

Менеджер переменных окружения

Post by IgorZ » Wed 09 Aug, 2017 05:00

DV wrote:
Tue 08 Aug, 2017 20:16
Спасибо за обновление!
Сохранение/чтение в файл для "отключения" переменных долговато использовать. Я скорее представлял себе что-то наподобие "чёрного списка": к примеру, по Alt+D перемещаем переменную в список "отключенных", а по Ctrl+D убираем из этого списка. При этом "отключение" обычной переменной окружения предполагало бы запоминание её имени и текущего значения (например, туда же, куда сохраняются имена из "чёрного списка") и затем установку пустого значения для этой переменной. А "восстановление" - установку сохранённого значения. Переменные же из реестра можно было бы временно "скрыть" путём установки пустого значения переменной окружения с тем же именем - а восстановить, наверное, вновь прочитав её значение из реестра.
Вообще-то, для отключения переменную надо полностью (в том числе, из реестра) удалять, а не менять её значение, иначе результат будет непредсказуем, но однозначно отличен от ожидаемого. То есть, отключение должно быть равнозначно сохранению переменной в файл с последующим удалением, а включение - чтению переменной из файла.
В ближайшее время я иду в отпуск, так что сейчас зачищаю перед ним хвосты, а потом, скорее всего, будет не до того. Так что ждать чего-то в ближайший месяц не советую. Потом - кто знает...

IgorZ
Posts: 463
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 6 times
Been thanked: 9 times

Менеджер переменных окружения

Post by IgorZ » Wed 20 Sep, 2017 11:18

Версия 1.4.0 - Добавлена возможность временно отключать переменные. Добавлена возможность загружать переменные из файла с командной строки. Переделана справка. Рефакторинг.
DV wrote:
Fri 04 Aug, 2017 15:14
И предложение на рассмотрение: добавить возможность временно "отключать" выбранные переменные (аналог "set var=" с помощью меню).
Проверяйте.

P. S. Уже выложив, задумался. Сейчас при загрузке переменных из файла с префикса выводится диалоговое окно выбора, какие переменные загружать. Может, имеет смысл при работе с командной строки не выводить диалог, а безусловно грузить все содержащиеся в нём переменные?

User avatar
John Doe
Бюрократ
Posts: 11433
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 17 times
Been thanked: 102 times

Менеджер переменных окружения

Post by John Doe » Wed 20 Sep, 2017 11:45

Как будет лучше по умолчанию судить не берусь, но полагаю, что не помешает ключ, управляющий этим поведением.

IgorZ
Posts: 463
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 6 times
Been thanked: 9 times

Менеджер переменных окружения

Post by IgorZ » Thu 21 Sep, 2017 06:44

Версия 1.4.1 - Добавлена возможность загружать переменные из файла с командной строки без диалога выбора переменных. Просто сделал ещё один префикс. Добавлена возможность удалять переменные при загрузке из файла, заодно и совместимость улучшилась. Если раньше конструкция set name= устанавливала значение переменной name в пустую строку, то теперь, как и стандартная команда ОС, удаляет такую переменную. Мелкие правки.

Post Reply

Return to “Полезные макросы и скрипты”