Total Commander/Псевдопеременные окружения
Псевдопеременные окружения (pseudo environment variables) — текстовые переменные, поддерживаемые Total Commander, но в отличие от настоящих переменных окружения не наследуемые дочерними процессами.
Применение
правитьПсевдопеременные были реализованы в версии 6.5 для удобства навигации по пользовательским папкам. Например, папка "Мои документы" в зависимости от локализации или желания пользователя может находиться по различным адресам. В версиях Windows ниже Vista единственный способ узнать ее реальный адрес – это прочитать значения ключа "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Personal".
Синтаксис и использование
правитьОбратиться к псевдопеременной окружения можно следующим образом:
cd %$PERSONAL%[1]
Имя псевдопеременной всегда должно набрано в верхнем регистре. Этим можно воспользоваться, если нужно обратиться к одноименной переменной среды, например
%$PERSONAL% – имя псевдопеременной TC %$personal% – переменной среды Windows[2]
Использовать псевдопеременные можно только в пределах Total Commander, а именно:
- в ключах wincmd.ini, где указаны какие-либо файловые пути
- например расположение плагинов, локализаций, иконок и т. д. или текущие директории;
- в ком. строке в сочетаниях с "cd" и "md";
- в пользовательских командах, пунктах меню "запуск" и "избранные каталоги", кнопках меню в графах "Команда", "Путь запуска", "Файл значка".
Нельзя использовать
- в настройках плагинов, тем более внешних утилит;
- в ком. строке, кроме как в сочетаниях с "cd" и "md";
- в пользовательских командах, пунктах меню "запуск" и "избранные каталоги", кнопках меню в графе "Параметры".
Редактировать псевдопеременные напрямую нельзя.
Список псевдопеременных
правитьTotal Commander определяет псевдопеременные следующим образом:
- из одноименных параметров в реестре берутся адреса:
папок текущего пользователя[3]
Имя | Описание | Пример |
---|---|---|
%$APPDATA% | Application Data | C:\Documents and Settings\MAIN\Application Data |
%$DESKTOP% | Рабочий стол | C:\Documents and Settings\MAIN\Рабочий стол |
%$PERSONAL% | Мои документы | C:\Documents and Settings\MAIN\Мои документы |
%$PROGRAMS% | Главное меню\Программы | С:\Documents and Settings\MAIN\Главное меню\Программы |
%$STARTMENU% | Главное меню | С:\Documents and Settings\MAIN\Главное меню |
%$STARTUP% | Главное меню\Программы\Автозагрузка | С:\Documents and Settings\MAIN\Главное меню\Программы\Автозагрузка |
%$MYPICTURES% | Мои рисунки | С:\Documents and Settings\MAIN\Мои документы\Мои рисунки |
%$MYMUSIC% | Моя музыка | С:\Documents and Settings\MAIN\Мои документы\Моя музыка |
%$MYVIDEO% | Мое видео | С:\Documents and Settings\MAIN\Мои документы\Мое видео |
%$LOCAL_APPDATA% | Local Settings\Application Data | С:\Documents and Settings\MAIN\Local Settings\Application Data |
%$FONTS% | Шрифты | С:\WINDOWS\Fonts |
общих папок[4]
Имя | Описание | Пример |
---|---|---|
%$COMMON_APPDATA% | Application Data | C:\Documents and Settings\All Users\Application Data |
%$COMMON_DESKTOPDIRECTORY% | Рабочий стол | C:\Documents and Settings\All Users\Рабочий стол |
%$COMMON_DOCUMENTS% | Документы | C:\Documents and Settings\All Users\Документы |
%$COMMON_PROGRAMS% | Application Data | C:\Documents and Settings\All Users\Application Data |
%$COMMON_STARTMENU% | Рабочий стол | C:\Documents and Settings\All Users\Рабочий стол |
%$COMMON_STARTUP% | Документы | C:\Documents and Settings\All Users\Документы |
%$COMMON_PICTURES% | Рисунки | C:\Documents and Settings\All Users\Документы\Мои рисунки |
- на основании доступных переменных среды создаются одноименные псевдопеременные, не создаются дубликаты для переменнных определяемых при обращении, например:
%$WINDIR% = %WINDIR% = C:\WINDOWS %$RANDOM% – не определена
Псевдопеременные определяются один раз – при запуске, и до нового запуска TC не изменяются.
Примечания
править- ↑ "%" здесь используется по аналогии с переменными среды Windows, "$" – по аналогии с признаком переменной в Unix-подобных оболочках.
- ↑ Стоит сказать, что лично я не встречал ни одной программы, которая бы давала переменным имена, начинающиеся со знака "$". Так что практической пользы от этого свойства немного.
- ↑ Ключ HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\.
- ↑ Ключ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\.