[WFX] Environment Variables Ex

Обсуждение только плагинов и утилит для Total Commander.

Модераторы: d-view, Моторокер, Avada, CaptainFlint, Nik

SPeller
Сообщения: 101
Зарегистрирован: Пн авг 21, 2006 07:57

[WFX] Environment Variables Ex

Сообщение SPeller »

http://wincmd.ru/plugring/envvars.html
Ссылка для скачивания: http://wincmd.ru/download.php?id=envvars
FS-плагин для Total Commander. Предназначен для просмотра и редактирования переменных окружения текущего процесса (TC), текущего пользователя и системы.

Сделан по образу и подобию плагина Environment Variables, но со следующими отличиями:

- Исправлена ошибка, из-за которой невозможно редактировать переменные с длинными значениями (например, PATH).
- Плагин полностью юникодный.
- Добавлена х64 версия.
- Добавлена поддержка файловых операций с переменными как с обычными файлами: копирование из и в плагин, переименование, перемещение. Поддерживается загрузка значений переменных как в кодировке ANSI, так и в Unicode (UCS-2).
- Добавлено отображение значения переменных в отдельной колонке для лучшей работы с файлами и показа значений переменных без преобразований.
- Добавлен диалог повышения прав, если их не хватает для редактирования переменной.
Прошу пощупать и проверить ) И отписаться о проблемах и предложениях.

Плагин имеет формат языковых файлов такой же, как и в оригинальном Environment Variables, с тем лишь отличием, что файлы в формате Unicode. Файл настроек тоже имеет тот же формат, но в юникоде и под другим именем. Поэтому если просто положить старые файлы - ничего не получится, нужно преобразовать в юникод (блокнот в помощь).

Ваши файлы локализации выкладывайте на форуме, или на мыло speller@yandex.ru
Последний раз редактировалось SPeller Чт май 31, 2012 18:32, всего редактировалось 3 раза.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Запрашивать права администратора умеет? Без этого в 7 уже никуда.

Удобно INI-файлы использовать для локализации и настроек - API одинаково хорошо читают как ANSI, так и Unicode-файлы.
Аватара пользователя
Mellomann
Сообщения: 709
Зарегистрирован: Пн сен 07, 2009 00:44

Сообщение Mellomann »

{ПКМ по envvars в fs-плагинах -> "Свойства"} не работает, и, следовательно, на русский переключить не представляется возможным.
Подсовывание конфиги от старой версии ничего не дало.
SPeller
Сообщения: 101
Зарегистрирован: Пн авг 21, 2006 07:57

Сообщение SPeller »

MVV
MVV писал(а):Запрашивать права администратора умеет? Без этого в 7 уже никуда.

Удобно INI-файлы использовать для локализации и настроек - API одинаково хорошо читают как ANSI, так и Unicode-файлы.
Не умеет, но можно и научить, в принципе. Пока целью было сделать рабочий аналог по функционалу. Но elevate тоже полезно будет сделать. Сам я пользуюсь исключительно стандартным функционалом, поэтому его пока и реализовал.

Про ини - давно решил послать лесом все национальные кодировки. Кроме utf-8 и ucs-2 ничего не признаю ) Поэтому настроек в ansi не будет ) Через системное апи читаю только конфиг, языковой файл уже руками парсится.

Mellomann
Mellomann писал(а):{ПКМ по envvars в fs-плагинах -> "Свойства"} не работает, и, следовательно, на русский переключить не представляется возможным.
Подсовывание конфиги от старой версии ничего не дало.
В Первом сообщении я написал:
Нет окошка настроек
Поэтому, идем в папку c плагином и ручками прописываем язык. Точнее, раскомментируем там одну строчку, которая русский и включит.
Старые файлы и не будет понимать, об этом в первом сообщении и писал, хоть и не прямо, сейчас поправил.
SPeller
Сообщения: 101
Зарегистрирован: Пн авг 21, 2006 07:57

Сообщение SPeller »

http://wincmd.ru/download.php?id=envvars

Обновил плагин.

Запилил диалог настроек, сделал отображение значений отдельной колонкой, добавил поддержку основных файловых операций: переименование, копирование, перемещение и т.п. Можно загружать в плагин обычные файлы - их содержимое будет занесено в переменную окружения с именем, равным имени файла. Как следствие - можно нажать F4, отредактировать значение в текстовом редакторе, сохранить, и загрузить обратно в плагин, чтобы применить изменения. Пока никаких проверок на содержимое не делается, кроме попытки определить загружаемый файл как Unicode путем поиска BOM. Если BOM не найден, то файл читается как ANSI. Размер ограничен в 4КБ (взял с потолка, если надо изменить - скажите). Создавать переменные по Shift+F4 нельзя - это ограничение ТС, только через внутренний диалог создания.
Аватара пользователя
mrmerak
Сообщения: 441
Зарегистрирован: Пн авг 20, 2007 03:48

Сообщение mrmerak »

SPeller
интересный плагин. При вызове настроек получаем это:
---------------------------
Total Commander 8.0
---------------------------
Exception in envvars.wfx:FsExecuteFile!
Access violation at address 00000000. Read of address 00000000
Windows 7 SP1 6.1 (Build 7601)

Please report this error to the Author, with a description
of what you were doing when this error occurred!

Windows exception: C0000005
Stack trace:
00000000
46E3A5 46E47E 4030D0 4030D0 653B88 655504
>555A03 63822A 447253 445D99 446716 423EA8
445CD7 423EA8 429574 42960C 6D7C34
Raw:
4030D0 46DCB9 46DCB9 425B84 40767A 46E3A5
46E3BB 40208E 4023DB 425B84 46E47E 4030D0
4030D0 410080 4030D0 46DCB9 444FFE 46DCB9
444FFE 445CD7 40767A 46E3A5 46E3BB 40208E
4023DB 445CD7 46E47E 4030D0 4030D0 653B88
6860C2 652F86 423EA8 6532C8 6533F1 446A8F
4447C5 4469E5 445D27 435E02 445D27 445D99
446716 446739 6D49F7 655504 445CD7 423EA8
6D454B 69AFFF 63006C 560066 63006C 560066
4079AA 4023DB 4026A4 4036AD 403796 407CC6

Press Ctrl+C to copy this report!
Continue execution?
---------------------------
Да Нет
---------------------------
TC 9.51 | Win10 1903
SPeller
Сообщения: 101
Зарегистрирован: Пн авг 21, 2006 07:57

Сообщение SPeller »

Интересно. Проверю. В 8-й версии не тестировал... Это сходу при вызове настроек такая беда?
Аватара пользователя
mrmerak
Сообщения: 441
Зарегистрирован: Пн авг 20, 2007 03:48

Сообщение mrmerak »

SPeller
да

+еще если выйти из ТС с запущенным плагином при след. запуске он ничего не будет отображать

Да, забыл сказать, я юзаю только один *.wfx-файл
Последний раз редактировалось mrmerak Ср май 30, 2012 13:28, всего редактировалось 1 раз.
TC 9.51 | Win10 1903
wOxxOm
Сообщения: 30
Зарегистрирован: Вс фев 12, 2006 22:10

Сообщение wOxxOm »

У меня в TC8 (релиз) настройки открываются, в списке, правда, только Default.
Если выйти с открытым плагом и запустить тотал, то при след запуске все показывается.
Есть проблемка - если настраивать ширину колонок вручную, то после перезапуска ТС первая колонка становится очень широкой и значения не видно в окошке ТС, а колонка с значениями опять становится стандартной ширины.

Плагин конечно стал гораздо удобнее оригинала благодаря отдельной колонке значений, круто!

Как насчет опции, чтобы сразу показывались переменные последней использовавшейся ветки? Ну или выбранной в опциях ветки (с папками перехода на другие ветки вверху)?
Аватара пользователя
Mellomann
Сообщения: 709
Зарегистрирован: Пн сен 07, 2009 00:44

Сообщение Mellomann »

wOxxOm писал(а):Есть проблемка - если настраивать ширину колонок вручную, то после перезапуска ТС первая колонка становится очень широкой и значения не видно в окошке ТС, а колонка с значениями опять становится стандартной ширины.
Подтверждаю, настройки вообще не сохряняются после выхода (ни в wincmd ни в конфиге плагина). Пожелания - сохранять настроеное значение в конфиге плагина и сделать ширину колонок где-то около "250,40,300".
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Вы правда верите, что тотал сообщает плагину, какие ширины колонок ставит пользователь? :D
И более того, даже если плагин захочет их узнать, он никак не сможет этого сделать.

Пробуйте сохранять настройки в тотале после изменения ширины колонок.
wOxxOm
Сообщения: 30
Зарегистрирован: Вс фев 12, 2006 22:10

Сообщение wOxxOm »

Сохранил - не помогло...
А может ли плагин задавать сам ширины колонок? Тогда можно было бы ввести опцию "растягивать колонки во всю ширину окна"
SPeller
Сообщения: 101
Зарегистрирован: Пн авг 21, 2006 07:57

Сообщение SPeller »

Mr.Merak писал(а):+еще если выйти из ТС с запущенным плагином при след. запуске он ничего не будет отображать
Это колонки почему-то расползаются... Еще не понял, отчего так у меня получилось...
Mellomann писал(а):Подтверждаю, настройки вообще не сохряняются после выхода (ни в wincmd ни в конфиге плагина).
Должно в конфиге плагина сохранять, я там их однажды даже видел, но вот сейчас, видимо, где-то что-то поправил не туда, и вот такие траблы...
wOxxOm писал(а):А может ли плагин задавать сам ширины колонок?
Вообще - может, но я еще не понял, когда и как. При первом запуске - точно. А вот дальше - не понятно.

Добавлено спустя 18 минут:
wOxxOm писал(а):настройки открываются, в списке, правда, только Default.
Архив собирал ночью и как-то так получилось, что папку Lang в него не добавил... )

Добавлено спустя 9 минут:

http://wincmd.ru/download.php?id=envvars

Сделал еще обновку. Поправил работу с файлами (были косяки, что не всегда копировало-перемещало), попробовал побороть косяк с колонками, прошу проверить. Если будет по старому - попробуйте удалить плагин из ТС, а потом установить снова.

Добавлено спустя 7 минут:
wOxxOm писал(а):Как насчет опции, чтобы сразу показывались переменные последней использовавшейся ветки?
Сделаю, но уже после релиза. Сейчас пока основной функцинал надо отладить.
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Вообще, единственное место, где плагин может указать тоталу набор колонок - это при первом входе в папку плагина. Тотал тогда вызывает функцию FsContentGetDefaultView, которая может вернуть пользовательский режим колонок. Там можно задавать ширину полей, но нельзя растянуть поле на всю доступную ширину окна, т.к. ширина окна плагину неизвестна.
SPeller
Сообщения: 101
Зарегистрирован: Пн авг 21, 2006 07:57

Сообщение SPeller »

ТС каждый раз эту функцию вызывает, при каждом входе в плагин. Ширину панели плагин - да, не знает. Сохранить настройки - можно, через меню Save position. Но при запуске плагина снова вызывается FsContentGetDefaultView и снова дефолтные настройки применяются... В общем, как-то там мудрённо сделано, еще не разобрался до конца.

Добавлено спустя 6 минут:

Чтобы настройки сохранялись - надо зайти в редактирование колонок "Configure this custom columns view" и сохранить изменения. После этого ширина колонок будет сохраняться и при ручном изменении и вызове меню Save Position.
Ответить