Как известно, драконов не существует. Эта примитивная констатация может удовлетворить лишь ум простака, но отнюдь не учёного, поскольку Высшая Школа Небытия тем, что существует, вообще не занимается; банальность бытия установлена слишком давно и не заслуживает более ни единого словечка.
Станислав Лем
TWinKey — мощное средство для расширения функциональности Total Commander (TC). Это своего рода надстройка над исходным интерфейсом, позволяющая пользователю решать разнообразные дополнительные задачи, связанные, например, с навигацией или сортировкой, и совершенствовать внешний вид окна TC. Предоставляемые TWinKey возможности в большинстве своём уникальны, они — за крайне редкими исключениями — не реализуются ни через стандартный инструментарий TC, ни через другие плагины/утилиты для Total Commander.
Наличие в дистрибутиве файлов с расширениями .wdx и .wdx64 говорит о принадлежности TWinKey к информационным (контентным) плагинам. Однако базовые возможности последних не играют здесь первостепенной роли (хотя могут использоваться, например, в наборах колонок), а интерфейс WDX-плагинов нужен в первую очередь затем, чтобы обеспечить (пусть и нетривиальным способом) должный уровень интеграции с Total Commander.
TWinKey поставляется с чрезвычайно удобной для быстрого изменения дополнительных параметров утилитой TWinKey Utilisator (имя файла — TwinkUtil.exe), организованной в виде многостраничного диалогового окна. В его заголовке указаны номера текущих версий TWinKey и — в скобках — самой утилиты. Команда Запустить Utilisator имеется в меню команд TWinKey, открываемом обычно щелчком средней кнопки мыши на заголовке любой файловой панели TC. Но, возможно, вам будет удобнее запускать конфигурационную утилиту кнопкой на панели инструментов TC или клавишами (в последнем случае потребуется создать пользовательскую команду с именем, например, em_TWinKey).
Начиная с версии 3.111 для работы TWinKey требуется Total Commander 8.0 и выше (32/64). Полная совместимость с TC 7.5x не гарантируется, ещё более ранние версии TC не поддерживаются. Предрелизное тестирование выполняется в основном на Windows 7 x64 и на Windows XP SP3 x86.
Эта программа и сопроводительные файлы поставляются по принципу «AS IS», при этом не даются и не подразумеваются какие-либо гарантии. Автор не несёт никакой ответственности за неправильное функционирование или возможный ущерб. Вы должны понимать, что используете это программное обеспечение на свой страх и риск.
Иначе говоря:
«Мы отклоняй претензий любой форма, любой размер, любой цвет». © Дж. Браннер
Внешний вид
Навигация и сортировка
Выделение объектов
Вкладки папок
Внутренний просмотр
Прочие функции
Функции плагинов 2-го уровня
Дополнительные возможности
TWinKey принадлежит к числу тех немногих плагинов, установку которых из-за специфической функциональности приходится выполнять не быстрым типовым подключением к Total Commander, а в несколько этапов. Точно следуйте описанному далее порядку действий!
Первый этап установки — автоматическое или ручное подключение TWinKey по обычным для информационного (контентного) WDX-плагина правилам. В результате в TC любой разрядности в секции [ContentPlugins] файла wincmd.ini должна появиться запись для 32-битной версии плагина (TWinKey.wdx). Вся информация, необходимая для использования 64-битного модуля (TWinKey.wdx64), вносится в секцию [ContentPlugins64] автоматически и участия пользователя обычно не требует.
Второй этап установки нужен, чтобы обеспечить автоматическую загрузку модуля при запуске Total Commander. С этой целью в текущую цветовую схему TC добавляется фиктивный элемент, обращающийся к TWinKey. Последовательно выполните следующие шаги:
Откройте основной конфигурационный диалог Total Commander.
Выберите в левой части окна страницу «Цвета».
Включите (если отключено) определение цветов для типов файлов и щёлкните по кнопке с этим текстом.
В открывшемся диалоге выберите в списке строку, ниже которой добавится новый элемент цветовой схемы.
Нажмите кнопку «Добавить».
Нажмите кнопку «Шаблон».
В диалоге «Выбор шаблона» перейдите на вкладку «Плагины».
Выберите в выпадающем списке плагинов строку twinkey.
Выберите в выпадающем списке свойств строку Autostart.
Выберите в выпадающем списке операций строку > и введите в следующем поле значение 0.
Нажмите кнопку «Записать» и назовите шаблон TWinKey (или так, как считаете нужным).
Далее последовательно нажимайте кнопку «OK» во всех диалогах настройки.
Если всё сделано правильно, на работу других элементов цветовой схемы эти изменения не повлияют. Их единственная цель — заставить TC при запуске автоматически загружать TWinKey. Поэтому назначенный шаблону цвет может быть как выбранным по умолчанию чёрным, так и любым другим.
Результат установки легко проверить, перезапустив TC и открыв мышью или клавишами Alt+F1/Alt+F2 выпадающий список дисков, поскольку внешний вид альтернативного списка заметно отличается от стандартного, а в настройках TWinKey эта функция включена по умолчанию.
Изредка даже после корректной установки плагина оказывается, что его 32-битная версия работает, а 64-битная — нет. Воспользуйтесь стандартным для подобных случаев приёмом: удалите из файла wincmd.ini всю секцию [ContentPlugins64], и перезапустите 64-битный Total Commander для её автоматического пересоздания.
При удалении TWinKey не забудьте, помимо стандартного отключения плагина в диалоге настроек информационных плагинов, удалить также добавленную строку из списка цветовых групп, а созданный вами шаблон — из их списка в диалоге поиска или выбора шаблона.
Файлы TWinKey.wdx, TWinKey.wdx64, TWinKey.ini и TwinkUtil.exe должны находиться в одном каталоге.
Все настройки, задаваемые через TWinKey Utilisator, сохраняются в файл TWinKey.ini. Хотя содержимое этого файла теоретически можно изменять и вручную, настоятельно рекомендуется использовать указанную конфигурационную утилиту, обеспечив возможность её быстрого вызова (см. преамбулу). Далее страницы этой утилиты рассматриваются в порядке их следования.
Последняя стабильная версия TWinKey всегда доступна по этой ссылке. Обсуждение ведётся в специальной теме на русском форуме поддержки пользователей Total Commander, там же публикуются ссылки на версии для публичного тестирования.
Самый простой способ обновления TWinKey с сохранением прежних настроек — стандартная для TC автоустановка новой версии поверх имеющейся, выполняемая при открытии архива. Любителям обновления вручную следует знать, что в открытом окне Total Commander некоторые прежние файлы (как минимум, TWinKey.wdx или, в 64-битном TC, TWinKey.wdx64) окажутся недоступны для перезаписи. Во избежание этого сделайте следующее:
Откройте в одной файловой панели TC рабочий каталог TWinKey, а в другой — архив с новой версией.
Выполните любым способом (через пункт главного меню, кнопку на панели инструментов и пр.) команду cm_UnloadPlugins для временной выгрузки плагинов TC.
Скопируйте (распакуйте) всё содержимое открытого архива, за исключением pluginst.inf, в рабочий каталог TWinKey.
Вновь загрузите TWinKey (для этого достаточно просто переключиться в любой из файловых панелей TC на другой каталог, находящийся не в архиве и не на FTP).
Трудности, возникающие при интеграции TWinKey в Total Commander, не всегда удаётся преодолеть идеально. В частности, связанные с отображением файловых списков функции (прикреплённые файлы, закладки, групповая сортировка и др.) могут несколько снижать быстродействие TC. Кроме того, работа некоторых функций TWinKey может быть ограничена рядом условий, которые не должны трактоваться как ошибки программы. Наиболее значимые для пользователя потенциальные проблемы далее упомянуты в описаниях соответствующих опций (как правило, в комментариях).
Здесь создаются и переопределяются используемые в TWinKey и Total Commander клавиатурные назначения. Вы сможете назначать клавиши для вызова команд TWinKey и TC, просматривать все текущие клавиатурные назначения для этих команд, удалять любое назначение, сделанное в TWinKey (но не в TC!), а также переопределять вашими клавишами любое стандартное или пользовательское назначение клавиш, заданное в TC. (Все назначения или переопределения, сделанные на данной станице настроек, будут работать только при загруженном TWinKey!) Имеется специальный режим назначения, позволяющий функционально различать левые и правые клавиши-модификаторы Win, Ctrl, Alt, Shift.
Дополнительно к набору клавиш, доступному в выпадающем списке на странице настроек «Разное» диалога конфигурации TC, TWinKey поддерживает альтернативное использование цифровой клавиатуры. Такие клавиши надо назначать и применять при активности функции NumLock, кроме клавиши Num5, работающей при любом состоянии NumLock. Кроме того, поддерживается переназначение клавиш Context, ScrollLock и Pause/Break.
В выпадающем списке команд доступны два режима отображения: либо команды TC (как встроенные, так и пользовательские), либо собственные команды TWinKey.
В расположенном ниже поле указывается путь к каталогу, куда установлен запущенный в данный момент TC. Эта информация, необходимая для обращения к настройкам TC, обычно определяется автоматически: она берётся из значения переменной %COMMANDER_PATH%, а если это не удаётся, то из реестра. Возможность задать путь к каталогу TC самостоятельно (с помощью кнопки слева) оставлена для случаев, когда автоопределение не даёт правильного результата. В режиме отображения команд TWinKey поле и кнопка недоступны.
Список команд TC разделён на категории согласно файлу totalcmd.inc. Для каждой встроенной команды с префиксом cm_ отображаются строковый и десятичный идентификатор, а также описание (встроенное английское или локализованное, в зависимости от настроек TC). Пользовательские команды с префиксом em_ завершают список как отдельная категория, общая для содержимого файла usercmd.ini и, если они используются, локальных файлов типа WCMD_EXT_RUS.ini. (Параметризованные команды TC в список не входят, поскольку непосредственно, без создания в TC соответствующей пользовательской команды, назначать им клавиши нельзя.)
Двойной щелчок на имени любой из указанных команд выбирает её для выполнения при запуске TC. После подтверждения выбора в промежуточном диалоге имя команды добавляется в поле ввода на странице Разное TWinKey Utilisator. На той же странице имеется опция, позволяющая использовать в ваших клавиатурных назначениях также и системные клавиши.
Назначения клавиш командам TWinKey (в большинстве своём представленным в меню команд) производятся только со страницы Клавиатура. Кнопка Переопределить на страницах Прикреплённые файлы и Закладки открывает страницу Клавиатура, где сразу же включается фильтр, позволяющий отображать в списке только нужную группу команд. Клавиши для функций плагинов 2-го уровня назначаются непосредственно на странице Плагины.
Длинное описание команды, превышающее ширину колонки, в списке показывается частично, с добавлением многоточия, а полностью отображается в виде подсказки при наведении на строку указателя мыши.
Язык описаний для команд TC соответствует текущим языковым настройкам Total Commander. Однако среди факультативных функций TWinKey есть запуск TwinkUtil.exe со специальными параметром, позволяющим открыть страницу Клавиатура с информацией, взятой из заданного INC-файла, невзирая на настройки TC. Язык описаний для команд TWinKey определяется его текущим языком, выбранным на странице Разное.
В отличие от стандартного функционала TC, для встроенных команд TC (cm_) отображаются не только пользовательские, но и стандартные назначения! Последние берутся из файла tc default hotkeys.hky, предназначенного в исходном виде для утилиты Hotkeys Editor из пакета Ultra TC Editors. Файл включён в дистрибутив TWinKey с любезного разрешения автора пакета Тахера Салема и всегда соответствует набору стандартных клавиш для последней стабильной версии TC.
Если при вызове TWinKey Utilisator вы получаете сообщение, что такая-то клавиша назначена для неизвестной команды с таким-то номером, то, скорее всего, используется не самая новая версия TC, где просто нет ещё такого стандартного назначения. Либо обновите TC (что предпочтительнее), либо удалите из файла tc default hotkeys.hky строку, начинающуюся с указанного номера команды.
Если встроенная команда в аналогичном сообщении указана в строковом виде с префиксом cm_, то либо здесь также используется ненадлежащая версия TC (команды нет в старом файле totalcmd.inc, пользовательское назначение для неё не будет работать), либо строка для клавиатурного назначения добавлялась в соответствующий INI-файл (wincmd.ini, TWinKey.ini) вручную и с ошибкой. Обновите TC или исправьте неверную запись в INI-файле.
Если сообщение получено для пользовательской команды с префиксом em_, это означает, что после её удаления/переименования указанного имени больше нет в файлах usercmd.ini, WCMD_EXT_RUS.ini и пр., а клавиатурные назначения в других файлах настроек остались прежними. Восстановите информацию о команде в их списке или исправьте неверную запись о клавиатурном назначении. Другой вариант причины — несоответствие языковых настроек: например, команды записаны в файл WCMD_EXT_RUS.ini, а язык интерфейса в TC — встроенный английский вместо русского. Перенесите команды в usercmd.ini или поменяйте язык интерфейса TC.
Если, наконец, в сообщении указано не имеющее префикса имя внутренней команды TWinKey, то вы используете версию, где этой внутренней команды ещё нет, с файлом TWinKey.ini для более новой версии. Обновите TWinKey или удалите неверную запись из секции [Keyboard] в TWinKey.ini.
Получив такое сообщение в первый или в очередной раз, вы можете нажать кнопку Да, чтобы продолжить проверку клавиатурных назначений, или кнопку Нет, чтобы прервать проверку и сразу перейти в окно TWinKey Utilisator.
При выборе команды курсором назначенные ей клавиши отобразятся в полях под списком. Строки с командами TC или TWinKey, которым не назначены клавиши, сохраняют стандартный цвет Windows для текста (чаще всего — чёрный).
В остальных случаях цвет строк означает следующее:
Тёмно-красный — Команды TC или TWinKey, клавиши которым назначены пользователем в TWinKey Utilisator.
Фиолетовый — Встроенные команды TC, клавиши которым назначены по умолчанию (информация из файла tc default hotkeys.hky).
Тёмно-зелёный — Команды TC, клавиши которым назначены пользователем без участия TWinKey (информация из файла wincmd.ini или его аналога).
Если для какой-то команды уже есть в TC стандартное или пользовательское клавиатурное назначение, а вы назначаете ей также клавиши в TWinKey, далее будут работать оба назначения (вы увидите их в подсказке к команде, наведя указатель мыши на строку списка). При этом соответствующая команда маркируется тёмно-красным цветом, а в полях под списком отображается только назначение TWinKey. Если же клавиатурное назначение для команды ранее делалось только в TWinKey, прежние клавиши при переназначении просто заменяются новыми.
При попытке назначить команде клавиши, уже используемые в TWinKey или TC для другой команды (например, чтобы с помощью F2 не перечитывать панель, а переименовывать файлы), вы будете предупреждены об этом и сможете подтвердить или отменить свой выбор. Такое поведение выгодно отличается от стандартного функционала Total Commander, где подобная замена происходит без всяких предупреждений. Прежняя команда данными клавишами, разумеется, вызываться больше не будет. Информация о назначении одинаковых клавиш разным командам отображается в специальном окне (см. далее).
Приведём также правила, по которым TWinKey обрабатывает в текущем поле ввода нажатие клавиш, назначенных для вызова какой-то команды:
Назначение на команду ТС работает в главном окне (командная строка, поле переименования), а в диалогах клавиши идут в поле ввода.
Назначение на команду TWinKey работает только для автоподстановки, в остальных случаях клавиши идут в поле ввода.
Назначение на команду дочернего плагина TWinKey работает в любом поле ввода.
(Из этого следует, что назначение команде клавиши с буквой или цифрой не позволит использовать её, например, в командной строке для ввода символа как такового, а назначение комбинации Shift+буква затруднит ввод заглавных букв.)
Для фильтрации списка команд есть два способа, они могут как использоваться по отдельности, так и комбинироваться.
Текстовый фильтр задаётся вручную в специальном поле ввода. В списке остаются только строки, содержащие в любой из трёх колонок указанный в поле текст. Например, в результате фильтрации списка команд TWinKey по Stick или Book там останутся только команды, отвечающие за работу, соответственно, с прикреплёнными файлами или закладками.
Фильтр по назначению выбирается в меню, открываемом щелчком по кнопке справа от вышеуказанного поля ввода. Вид кнопки отражает состояние фильтра: при наличии фильтрации кнопка выглядит нажатой, с зелёной стрелкой вверх на значке, при отсутствии фильтрации кнопка выглядит отжатой, с красной стрелкой вниз. Меню включает следующие пункты:
Все команды — отображаются все доступные команды безотносительно к клавиатурным назначениям (фильтр отключён, состояние по умолчанию).
Команды без клавиш — отображаются только команды, которым не назначены клавиши.
Все назначения — отображаются только команды, которым любым образом назначены клавиши.
Назначения в TWinKey — отображаются только команды, клавиши для которых назначены в TWinKey Utilisator.
Стандартные в TC — отображаются только команды с клавишами, работающими в ТС по умолчанию.
Пользовательские в TC — отображаются только команды с клавишами, назначенными в ТС самим пользователем.
Если выбран режим отображения команд TWinKey, из перечисленных выше пунктов меню показываются только три первых. При переключении списка команд фильтрация сохраняется по мере возможности. Если выбранный способ фильтрации невозможен (например, был выбран фильтр для стандартных клавиш ТС, а список команд переключается на TWinKey) то фильтр автоматически снимается.
В дополнение к указанным строкам меню фильтрации содержит строку Модификаторы <WCAS>. Она предназначена для фильтрации списка команд по наличию в клавиатурном назначении определённых клавиш-модификаторов. Выбрав эту команду, укажите в поле ввода символ W для клавиши Win, C для Ctrl, A для Alt и/или S для Shift. Порядок ввода символов значения не имеет, разделители не нужны, левые/правые клавиши не различаются. В результате в списке останутся только команды, в клавиатурных комбинациях для которых есть указанные модификаторы. Например, ввод CS позволит отобразить список комбинаций, обязательно содержащих Ctrl+Shift и могущих содержать любые другие клавиши.
По умолчанию страница Клавиатура всегда открывается с неотфильтрованным списком для команд TC. Для открытия её сразу со списком команд TWinKey и/или с предопределённым текстовым фильтром предназначена одна из факультативных функций — запуск TwinkUtil.exe со специальными параметрами.
Расположенная над полем Фильтр кнопка Дубликаты доступна, только если в TWinKey и/или в настройках TC какой-то команде были назначены клавиши, уже заданные для другой команды. Активная кнопка откроет выше окна TWinKey Utilisator дочернее окно со списком, где каждая строка содержит клавиши-дубликаты, 1-е назначение (имя команды, для которой эти клавиши назначались ранее) и 2-е назначение (имя новой команды). Если вы поменяли клавиатурные назначения TC местами (например, назначили вызов cm_SearchStandalone на Alt+F7, а cm_SearchFor на Alt+Shift+F7), в окне отобразятся оба переназначения. Двойной щелчок на имени команды переключает на строку с ней в основном списке команд. Имейте в виду, что если причиной дублирования стало двойное назначение в Total Commander, то и устранять его надо будет средствами TC, поскольку TWinKey может считывать содержимое файла wincmd.ini, но не изменять его.
Расположенное под списком команд слева поле Текущие клавиши отображает клавиши, назначенные выбранной (находящейся в списке под курсором) команде, либо остаётся пустым при их отсутствии.
Соседнее поле Новые клавиши предназначено для непосредственного назначения клавиш выбранной команде и работает в трёх режимах. Циклическое переключение между ними происходит при щелчке по квадратику в правой части окна. Цвет квадратика является индикатором текущего режима.
Тёмно-зелёный — Режим редактирования. Отображаются назначенные клавиши, а при их отсутствии — надпись < НЕТ >. Работает как обычное поле ввода. Можно непосредственно вводить имена клавиш, редактировать текущие клавиши или копировать назначения из одной команды в другую. Если ввод был корректным, отобразится новое назначение. Далее вы должны сохранить его или же отказаться от сохранения и вернуть поле ввода к исходному состоянию. Чтобы отменить назначение клавиш данной команде, достаточно очистить поле, после чего сохранить результат правки. Вы можете удалить только назначения, сделанные с помощью самого TWinKey!
Тёмно-красный — Режим нажатия клавиш, в котором парные клавиши-модификаторы считаются функционально равнозначными. Просто нажмите клавиши, которые вы хотите использовать для вызова команды. После нажатия основной клавиши сочетание будет запомнено, и поле автоматически перейдёт в режим редактирования.
Красно-синий — Расширенный режим нажатия клавиш. В отличие от предыдущего режима учитывается, какая клавиша-модификатор нажата — левая или правая. Именно она и будет использоваться для вызова данной команды, а аналогичное сочетание с парной клавишей можно будет, например, назначить в TC другой команде. Имени клавиши-модификатора в поле ввода будет предшествовать префикс L или R.
Тёмно-серый — Поле неактивно (в списке выбрано имя категории, а не команды).
Кроме того, нужный режим легко выбрать в контекстном меню, открываемом щелчком правой кнопки мыши на квадратике-индикаторе. Первые два пункта соответствуют режимам редактирования и нажатия клавиш. Если пункт Различать левые/правые отмечен галочкой, то при выборе пункта Режим нажатия клавиш будет открываться не простой, а расширенный вариант этого режима. (Галочка автоматически снимается при первом же переключении режима щелчком по квадратику.) Наконец, пункт Убрать назначение позволяет отменить назначение клавиш текущей команде без правки поля ввода.
В нижней части этой и всех прочих страниц имеются четыре кнопки:
OK — Сохранить сделанные изменения (если таковые есть) и закрыть окно TWinKey Utilisator. Аналог — клавиша Enter.
Отмена — Закрыть окно TWinKey Utilisator без сохранения сделанных изменений. Аналог — клавиша Esc.
Применить — Сохранить сделанные изменения, не закрывая окна. (Кнопка доступна только при наличии на текущей или другой странице изменённых настроек.)
Справка — Открыть файл справки. Аналог — клавиша F1.
ПРИМЕЧАНИЯ
Некоторым стандартным клавишам TC (например, F9, F10, Alt+F3, Shift+F3, Shift+F4, Ctrl+S, Ctrl+Shift+S) не сопоставлены никакие внутренние команды. Поскольку нет возможности получить информацию о текущей функции таких клавиш, их переназначение выполняется без предупреждения, а назначение прежней функции на другие клавиши невозможно. Будьте осторожны!
Даже разрешение на переназначение системных клавиш не гарантирует, что любые ваши клавиатурные назначения для TC/TWinKey будут доступны в текущей ОС или на конкретном ПК. Например, некоторые комбинации, идеально работающие в Windows XP, могут оказаться неприемлемыми в Windows 7. Поэтому рекомендуется тщательно проверить работоспособность ваших клавиш после переноса TC на другую ОС (в первую очередь это касается сочетаний с Win и Ctrl+Alt).
Здесь содержатся опции, существенно дополняющие стандартные возможности файловых панелей TC.
Прямоугольная область выделения
Проводник Windows позволяет выделять все объекты в прямоугольной области, растянутой из некоей начальной точки мышью при нажатой левой кнопке. В ходе выделения такая область выглядит как закрашенный прозрачным цветом участок с контрастной рамкой.
Эта опция позволяет использовать подобное «рамочное» выделение в Total Commander, добавляя также возможности, отсутствующие в Проводнике. Если опция включена, вы можете выбрать исходную точку в одной из строк файловой панели, а затем, нажав и удерживая среднюю кнопку мыши, сформировать прямоугольную область выделения. Подобный способ выделения работает в файловых панелях TC с любым режимом представления, кроме дерева.
В сравнении с Проводником вариант TWinKey имеет целый ряд преимуществ:
Можно выбирать разные режимы выделения и его снятия. Без клавиши-модификатора происходит инверсия выделения — новое устанавливается, а прежнее снимается. Если выполнять прямоугольное выделение при нажатой клавише Ctrl, то прежнее выделение, попавшее в «рамку», будет объединено с новым. Если же выполнять выделение при нажатой клавише Shift, то в «рамке» будет снято всё прежнее выделение без установки нового.
Формирование области выделения можно начинать на файловой панели из произвольной точки, включая имя файла/каталога.
Поскольку для «рамочного» выделения не используются ни левая, ни правая кнопки мыши, случайное перетаскивание объектов исключается.
Фактическое выделение выбранных файлов/каталогов происходит только по завершении формирования области выделения, т. е. при отпускании средней кнопки мыши.
Формирование области выделения можно отменить, если щёлкнуть правой кнопкой мыши, не отпуская среднюю кнопку.
Состояние выделения для файлов/каталогов, находящихся за пределами прямоугольной области, не изменяется.
При расширении выделения за пределы видимой области текущей панели поддерживается автоматическая прокрутка. Для этого необходимо в ходе выделения подвести указатель мыши к соответствующему краю панели. Если прокрутка остановилась раньше, чем вы хотите, для её продолжения просто немного подвигайте мышь.
В режимах представления с отображением в каждой строке только одного объекта (подробный режим, комментарии, пользовательские колонки) скорость прокрутки зависит от местоположения указателя мыши по горизонтали: в правой четверти панели выполняется ускоренная прокрутка (по 10 строк), а в остальной части панели — построчная.
Кроме того, с помощью опций Цвет и Непрозрачность вы можете задать цвет области выделения и оптимальный уровень её прозрачности. Последняя настраивается через изменение обратной величины — непрозрачности в пределах от 25 (максимальная прозрачность) до 250 (минимальная прозрачность). Текущее значение отображается при щелчке по бегунку.
ПРИМЕЧАНИЯ
В настоящее время у этой функции есть ограничения в режиме эскизов: работает только вариант с инвертированием прежнего выделения (клавиши Ctrl и Shift неприменимы); прямоугольное выделение ограничено видимой областью текущей панели (автоматическая прокрутка не поддерживается).
Щелчок средней кнопки мыши может включать в ряде программ (в том числе в TC) режим универсальной регулируемой автопрокрутки содержимого окна. При использовании прямоугольного выделения универсальная прокрутка останется доступной в файловых панелях TC только в режиме дерева.
Когда опция включена, TWinKey использует заданный пользователем способ индикации текущего (последнего выбранного) файла/каталога в неактивной файловой панели (или в обеих панелях, если фокус перешёл из окна TC в другое окно). Таким образом, мы фактически получаем по курсору в каждой из файловых панелей TC.
Способы индикации здесь доступны те же, что для прикреплённых файлов и закладок, но настраиваются абсолютно независимо. Вы можете задать цвет прикреплённого элемента и тип его отметки: альфа-градиент, рамка (по умолчанию), заливка, подчёркивание. При выборе альфа-градиента можно указать процент заполнения колонки с именем в файловой панели (по умолчанию 33%), либо, если ввести число без процента, ширину окрашенной области в пикселях безотносительно к ширине колонки.
Выбранный вариант неактивного курсора должен заметно отличаться от отметки прикреплённого файла и/или закладки, особенно когда эти функции относятся к одному и тому же объекту. В этой связи полезно знать, что цвет альфа-градиента смешивается (комбинируется) с цветом подчёркивания, а в случае, когда для неактивного курсора, прикреплённых файлов и/или закладок назначен один тип отметки разного цвета, объект маркируется по следующим правилам:
Если используются рамка, заливка и/или подчёркивание, приоритет имеет цвет неактивного курсора, затем цвет закладок и, наконец, прикреплённых объектов.
Если используется альфа-градиент, исходные цвета смешиваются.
В Total Commander 8.0 и выше реализована возможность отображать курсор в неактивной панели собственными силами. Однако такой курсор может выглядеть только как рамка разного цвета и стиля, изменение его вида через основной диалог настроек TC в настоящее время не предусмотрено, а для удобной настройки стиля рамки потребуются специальные инструменты (рекомендуется утилита Configuration Editor из пакета Ultra TC Editors).
ПРИМЕЧАНИЯ
Если функция активна, то после изменения некоторых цветовых параметров TC (символы/фон в файловых панелях, инверсный курсор) может потребоваться перечитывание настроек TWinKey (например, из меню команд). Это относится и к другим функциям, связанным с отрисовкой панелей (прикреплённые файлы, закладки, фоновый рисунок/цвет).
Если использование неактивного курсора задано как в TWinKey, так и в TC 8.0 и выше (с помощью ключа InactiveFocus), отображаются оба варианта курсора. Такое сочетание в большинстве случаев не имеет практического смысла, поэтому лучше оставить только какой-то один вариант индикации, отключив альтернативный.
Одноцветный фон в кратком режиме
В файловых панелях TC есть возможность отображать (за исключением режима эскизов) фон чётных/нечётных строк разным цветом. Эта опция позволяет не распространять такой способ отображения на краткий режим представления. Если в настройках TC задан специальный фон для чётных строк, он используется только там, где строка объекта занимает всю ширину панели (подробный режим, комментарии, дерево, пользовательские колонки). В кратком же режиме, где без «зебры» лучше обойтись, фон панели автоматически преобразуется в одноцветный.
Точная ширина колонок в кратком режиме
Ширина колонок в кратком режиме TC не является постоянной и автоматически устанавливается по самому длинному имени, содержащемуся в панели. Периодическое изменение ширины и числа колонок в ходе навигации по каталогам и при выполнении файловых операций нравится далеко не всем. Однако стандартными средствами TC (с помощью ключа BriefViewWidthLimit), можно лишь ограничить максимальную ширину колонок, причём одинаково с обеих сторон.
В TWinKey реализован более гибкий и удобный способ управления шириной колонок в кратком режиме. Вот как это делается:
Чтобы включить функцию в текущем сеансе TC, откройте меню команд TWinKey и поставьте галочку в строке Регулировать ширину колонок (по умолчанию она не отмечена).
Далее необходимо последовательно задать в обеих файловых панелях (или, если хотите, только в одной из них) точную ширину колонок. Пока это не сделано впервые, таковой будет при активности функции временно считаться ширина, используемая TC на момент перечитывания настроек TWinKey. Выберите в панели в кратком режиме местоположение правой границы первой колонки, щёлкнув средней кнопкой мыши при нажатой клавише Alt. Можно сделать это в произвольном месте панели, а затем, продолжая удерживать среднюю кнопку, переместить правую границу закрашенной прозрачным цветом области. (Её цвет и прозрачность — те же, что используются для функции прямоугольного выделения.)
Новая граница колонок в текущей панели фактически будет установлена и сохранена только при отпускании средней кнопки мыши. Изменение ширины колонок можно прервать, если щёлкнуть правой кнопкой мыши, не отпуская среднюю кнопку. В левой и правой панели вы можете установить как примерно (на глаз) одинаковую, так и совершенно разную ширину колонок. Нижний предел ширины — 50 пикселей, верхний — текущая ширина файловой панели.
Результаты предыдущих действий будут сохранены в файл TWinKey.ini значения ключей ColumnsWidth0 (для левой панели) и ColumnsWidth1 (для правой панели), означающие ширину колонок слева/справа в пикселях. Соответствующих опций в TWinKey Utilisator нет, для тонкой корректировки этих значений потребуется ручная правка INI-файла. Сохранённые значения на время работы функции имеют больший приоритет, чем стандартные параметры TC, включая и максимальную ширину колонок, заданную ключом BriefViewWidthLimit.
Опция Точная ширина колонок в кратком режиме на текущей странице управляет автозагрузкой функции при старте TC или после любого перечитывания настроек TWinKey, т. е. в следующих сеансах, в то время как пункт меню команд Регулировать ширину колонок определяет состояние функции только в текущем сеансе. По умолчанию опция выключена: установленные и сохранённые границы колонок работают до первого перечитывания настроек, а затем функция станет неактивной, и её надо будет снова включать установкой галочки в меню. Если же опция включена, фиксированная ширина колонок будет выставлена при запуске TC автоматически, безотносительно к состоянию функции на момент завершения предыдущего сеанса.
Специальная обработка клавиши Esc
Включение этой опции позволяет, максимально сохраняя обычную функциональность клавиши Esc, использовать её также как простой и удобный способ снять и/или восстановить выделение в активной файловой панели.
В Total Commander полное снятие выделения (как с папок, так и с файлов независимо от настроек) выполняется командой cm_ClearAll (клавиатурный стандарт Ctrl+Num -), а восстановление выделения, снятого, например, после выполнения файловой операции — командой cm_RestoreSelection (клавиатурный стандарт Num /). Клавиша же Esc обычно применяется в главном окне TC в совершенно иных целях:
для очистки командной строки без перехода в неё (с сохранением фокуса в файловой панели);
для скрытия диалога быстрой фильтрации (при этом фильтр останется активным), а при повторном нажатии — для сброса фильтрации;
для закрытия диалога быстрого поиска (пустого или с отключённой быстрой фильтрацией).
После включения опции алгоритм применения клавиши Esc будет следующим:
Если фокус находится не в файловой панели, то Esc работает обычным образом (закрывает диалоги, очищает командную строку и пр.).
Если в текущей файловой панели есть выделенные папки/файлы (в том числе и при включённом быстром фильтре), то нажатие Esc вызывает команду cm_ClearAll, снимающую всё выделение.
Если в текущей файловой панели нет выделения, и Esc нажимается в таком состоянии первый раз, то клавиша работает обычным образом (в зависимости от ситуации может, например, сбросить быстрый фильтр или очистить командную строку).
Если при отсутствии выделения в файловой панели Esc нажимается второй раз, то вызывается команда cm_RestoreSelection и восстанавливается последнее снятое выделение, если таковое имелось в данном каталоге.
Далее и вплоть до использования любой другой клавиши Esc будет циклически снимать/восстанавливать в данном каталоге сохранённое выделение.
Подтверждать новое имя щелчком мыши
Цель этой опции — помочь тем, кто хотел бы завершать непосредственное переименование в файловой панели мышью. Переименование, как правило, выполняется с клавиатуры, и стандартный функционал TC требует, чтобы результат операции подтверждался нажатием клавиши Enter. Но если, скажем, мы получили новое имя вставкой через контекстное меню поля редактирования, будет удобнее завершить переименование щелчком мыши в файловом списке (как, например, в Проводнике Windows). Однако в TC это действие трактуется исключительно как отмена переименования.
При включённой опции для сохранения нового имени достаточно щёлкнуть мышью в текущей файловой панели TC за пределами поля ввода. Щелчок в другой файловой панели или в командной строке по-прежнему вызывает отмену переименования.
Возможность подтверждать переименование мышью реализована, начиная с версии 8.0, и в самом Total Commander, но по-другому — щелчком по специальной кнопке рядом с полем редактирования. У вас есть возможность выбора: использовать ли только функцию TC, оба варианта подтверждения или только способ по стандарту Проводника (в последнем случае укажите в файле wincmd.ini строку InplaceOkButton=0).
ПРИМЕЧАНИЯ
Особенность функции в том, что по завершении операции курсор останется на файле с новым именем, а не перейдёт, как в Проводнике, на ту строку, по которой вы щёлкнули!
Предлагаемый способ подтверждения применим, в отличие от новаций TC 8.01 и выше, только к переименованию в самой файловой панели, но не к правке её заголовка.
Переход вверх из корневого каталога
Total Commander поддерживает несколько способов открытия системной папки Мой компьютер, однако перейти в неё из корня диска как в своего рода родительский каталог удаётся только двойным щелчком мыши или нажатием клавиши Enter на элементе [..], показ которого в корневом каталоге нужно прежде разрешить в настройках TC. Включение данной опции позволяет выполнять подобный «переход вверх» стандартными клавишами Ctrl+PgUp и BackSpace из любой строки списка в файловой панели, отображающей корневой каталог диска.
Переход мышью в начало/конец списка
Здесь вновь даётся возможность выполнить некое действие не клавишами, а мышью. Для перехода в начало файлового списка (т. е. на первый элемент), в Total Commander предусмотрена клавиша Home, а для перехода в конец списка — End. Альтернативный вариант перехода в начало списка — щелчок средней кнопкой мыши по кнопке со звёздочкой для открытия меню избранных каталогов. (Щелчок на том же элементе окна TC правой кнопкой мыши решает другую задачу, открывая список вкладок.) Соответственно, для перехода в конец списка предназначен щелчок средней кнопкой мыши по кнопке со стрелкой вниз для открытия истории каталогов.
Эта секция, включающая опции В начале списка и В конце списка, позволяет дополнить стандартную сортировку TC пользовательской сортировкой по файловым группам.
Собственными средствами Total Commander групповую сортировку не поддерживает, а с помощью WDX-плагинов (FileX, Group Sort, FileGroup и др.) этого можно добиться только в специально созданных пользовательских наборах колонок. TWinKey обеспечивает сортировку по группам в большинстве режимов файловых панелей TC.
Файлы, отвечающие указанным именам или маскам (например, descript.ion, Readme.* или *.rar), располагаются в начале файлового списка, сразу после каталогов и/или в конце списка, после всех прочих файлов. Файловые группы остаются в начале/конце списка при любом варианте используемой в TC сортировки (она может влиять лишь на порядок следования файлов внутри этих групп — см. далее). Более высокий приоритет по сравнению с объектами групповой сортировки имеют только прикреплённые файлы.
Для формирования групп сортировки укажите в соответствующем поле маски/имена файлов либо (с некоторыми ограничениями — см. примечания) имена шаблонов поиска или фильтрации из секции [Searсhes] файла wincmd.ini, разделяя группы вертикальной чертой, а маски/имена в группах — двоеточием. Поскольку ни пробел, ни точка с запятой в качестве разделителей не используются, они могут содержаться в самих масках.
Имя шаблона должно быть тем же, которое указано в настройках Total Commander (см. страницу Шаблоны поиска в диалоге TC Поиск файлов или Выбор шаблона), и предваряться знаком равенства. Группы на основе масок/имён или шаблонов могут присутствовать в поле ввода одновременно.
Пример: строка descript.ion|*.bat:*.cmd:*.com:*.exe|=Архивы в поле В начале списка означает, что первым в списке будет файл descript.ion, далее исполняемые файлы с указанными расширениями, затем архивы форматов, соответствующих сохранённому шаблону TC Архивы, а уже после них — все остальные файлы. Если же мы оставим в этом поле descript.ion|*.bat:*.cmd:*.com:*.exe и поместим строку =Архивы в поле В конце списка, то теперь все относящиеся к «архивному» шаблону расширения будут отображаться самыми последними в списке.
Слева и справа от каждого поля ввода имеются кнопки со стрелками влево/вправо на фоне листка бумаги. Это позволяет открыть меню с именами шаблонов поиска/фильтрации и быстро добавить выбранное имя в начало или в конец содержимого соответствующего поля. В меню отображаются только имена шаблонов, созданных на основе файловых масок (см. примечания).
Меню включает также — в виде специального подменю — готовые файловые маски, сохранённые в настройках TC в секции [Selection]. Строки, содержащие регулярные выражения и начинающиеся с символа <, не отображаются. Если шаблонов поиска в INI-файле TC нет, то содержимое подменю Файловые маски TC отображается как основное меню.
Выбранная строка при добавлении в поле ввода автоматически снабжается вертикальной чертой до или после шаблона/маски (в зависимости от места вставки), а имена шаблонов всегда вставляются с предшествующим знаков равенства.
Клавиатурная комбинация Alt+P (от «pattern») позволяет обращаться к тому же самому меню, но вставка выполняется не в начало/конец имеющейся строки, а в произвольной позиции курсора. Символ разделителя в этом случае следует добавлять вручную.
Сортировка по группам всегда идёт строго в заданном вами порядке их следования. В пределах каждой группы по умолчанию действует текущий режим сортировки TC без учёта последовательности имён/масок в поле ввода. Но если начать поле ввода закрывающей угловой скобкой (символом >), то имена/маски внутри каждой группы будут сортироваться именно в том порядке, как вы их задали. Следование файлов в группах, созданных на основе шаблонов, зависит только от текущей сортировки TC. Если маска принадлежит одновременно нескольким группам, принимается во внимание только первое её вхождение.
Для постоянного отключения функции групповой сортировки с сохранением содержимого полей ввода нужно просто снять отметку с одной или с обеих опций. Для временного отключения любой групповой сортировки (как глобальной, так и в визуальных схемах) вообще не требуется что-то изменять в опциях — достаточно в меню команд снять галочку со строки Включить файловые группы. Можно даже не заходить в меню, вызывая команду UseFileGrouping назначенными для этого клавишами. При перечитывании настроек TWinKey использование файловых групп автоматически разрешается, если на страницах TWinKey Utilisator включён хотя бы один вариант этой сортировки.
Глобально заданная сортировка по файловым группам менее приоритетна, чем определённая для одного или нескольких каталогов в визуальной схеме.
ПРИМЕЧАНИЯ
Групповая сортировка применима только к файлам и и поэтому не работает, например, в любых видах дерева каталогов. Кроме того, функция не работает в режиме эскизов.
Группы сортировки могут использоваться только с настоящими объектами файловой системы (для архивов, виртуальных папок, FS-плагинов и FTP-подключений функция неприменима).
Для групп сортировки применимы только шаблоны TC, созданные на основе файловых масок, но не даты/времени, размера, атрибутов или данных, полученных с помощью плагинов.
Использование файловых групп может препятствовать прокрутке при выделении или перетаскивании правой кнопкой мыши. Если вам нужен именно такой вариант выполнения этих операций, временно отключите групповую сортировку в меню команд TWinKey!
Применение групповой сортировки (как и некоторых иных функций) влияет на то, как выглядят результаты работы WDX-плагинов типа DirSizeCalc в наборах колонок: вход в другой каталог происходит после всех необходимых подсчётов, в то время как при отключённой функции каталог открывается сразу, после чего выполняются фоновые вычисления.
При удалении файла, входящего в группу сортировки, возможен переход курсора не на тот файл, который отображается следующим, а на тот, который при текущей сортировке в панели TC фактически следует за удалённым. Некорректный переход курсора возможен и в случае, когда в панели с группами сортировки выполняется быстрый поиск или быстрая фильтрация.
Эта опция позволяет задать фоновый рисунок сразу для обеих файловых панелей TC. В качестве источника поддерживаются файлы в формате BMP, GIF, PNG, JPG (*.jpg и *.jpeg), TIFF (*.tif и *.tiff). Вы можете указать имя нужного файла с полным путём непосредственно в поле ввода или выбрать в диалоге, открываемом кнопкой с кисточкой. Для отмены функции просто очистите содержимое поля.
Можно указать не только абсолютный, но и относительный путь к файлу с рисунком (например, .\folder.jpg). Если путь начинается с .\, то делаются последовательные попытки найти рисунок-источник, поднимаясь вверх от текущего каталога. Если же путь начинается с \, то сразу проверяется корень текущего диска. Если файл по указанному относительному пути не найден, фоновый рисунок в соответствующих каталогах не отображается.
Глобально заданный рисунок менее приоритетен, чем фоновый рисунок/цвет, определённый для одного или нескольких каталогов согласно визуальной схеме.
ПРИМЕЧАНИЯ
Рисунок, превышающий размер текущей панели, отображается частично. Если рисунок меньше панели, автоматически используется режим «мозаики».
Использование фонового рисунка при определённых условиях может вызывать нежелательные визуальные эффекты. Для их предупреждения при переключении между мониторами с разным разрешением экрана предназначены специальные настройки. Некоторые побочные явления (например, мелькание при выделении файлов курсорными клавишами при нажатой клавише Shift) полностью устранить пока не удаётся.
Включение в системе режима сглаживания шрифтов ClearType может ухудшить читабельность имён файлов, отображаемых на контрастном к их цвету участке рисунка.
При использовании этой функции может потребоваться перечитывание настроек TWinKey после изменения некоторых цветовых параметров TC (подробнее см. здесь).
Здесь содержатся опции, расширяющие возможности работы с вкладками TC (главным образом за счёт улучшения функциональности их заголовков).
Цветовая маркировка заголовка вкладки возможна не только при формировании визуальной схемы (через соответствующую опцию TWinKey Utilisator), но также более избирательно — непосредственно по щелчку на выбранной вкладке правой кнопкой мыши с нажатой клавишей Ctrl или (только для заголовка вкладки, открытой в активной панели!) по клавише, назначенной команде SelectTabColor на странице Клавиатура. В открывшемся окошке вы можете щелчком по кнопке с цветным квадратиком выбрать цвет из предлагаемого набора либо нажать кнопку Определить цвет… и перейти в системное диалоговое окно Цвет. Кнопка Отмена предназначена для возврата цветного заголовка вкладки к неокрашенному состоянию.
Результат применения этой функции имеет больший приоритет, чем цветные заголовки вкладок, заданные в визуальной схеме.
ПРИМЕЧАНИЯ
Стиль для цветных заголовков поддерживается только один — горизонтальный градиент.
При перетаскивании заголовка вкладки его цветовая маркировка отменяется автоматически, поскольку определяется порядковым номером вкладки.
Эта функция, как и ряд других функций TWinKey, связанных со вкладками, перестаёт работать в текущем сеансе Total Commander (до его перезапуска или перечитывания настроек TWinKey) после изменения в TC некоторых настроек вкладок (например, при отключении показа вкладок и последующем восстановлении их из TAB-файла).
Сохранять цвета заголовков
При включении этой дополнительной опции цвет, назначенный заголовку вкладки вручную, сохраняется и для следующих сеансов TC.
В корень вкладки — двойным щелчком
Опция позволяет быстро переходить в корень (исходный каталог) вкладки, заблокированной с возможностью смены каталога, двойным щелчком по её заголовку.
ПРИМЕЧАНИЕ
Пока эта опция включена, вы не сможете использовать в TC двойной щелчок для закрытия вкладок (причём любых, а не только частично заблокированных)!
Использовать значок из Desktop.ini
Как известно, средствами системы или с помощью специальных программ можно назначить той или иной папке пользовательский значок, который будет отображаться в файловых панелях вместо стандартного. Информация о значке сохраняется в файле Desktop.ini соответствующего каталога. При включении данной опции пользовательский значок, описанный в файле Desktop.ini уже открытого каталога, начинает немедленно отображаться в заголовке его вкладки. Значки в заголовках неактивных вкладок далее отобразятся либо постепенно — по мере открытия соответствующих каталогов, либо все сразу — после перезапуска TC. Прочая сохраняемая в Desktop.ini информация (например, о специфическом фоне данной папки) игнорируется.
ПРИМЕЧАНИЯ
При включении этой функции значок из Desktop.ini будет отображаться не только в заголовке вкладки, но и в списке вкладок текущей панели.
Опция не работает при отображении UNC-имени папки, в том числе в виртуальных папках. (Имя виртуальной папки. например, Desktop отображается в TC как \\Desktop, то есть неотличимо от имени открытого по сети компьютера.) Имя папки должно начинаться с буквы локального или сетевого диска!
Эта функция перестаёт работать в текущем сеансе Total Commander (до перезапуска TC или перечитывания настроек TWinKey) после изменения в настройках TC состояния опции Размещать вкладки в несколько рядов или Все вкладки имеют одинаковую ширину и в ряде других случаев (см. примечание к опции Цветные заголовки вкладок на данной странице).
Приоритет перед визуальной схемой
Если включить эту опцию (она доступна только при активности предыдущей), то значок в заголовке вкладки, взятый из файла Desktop.ini, имеет преимущество перед значком, назначенным для заголовка вкладки в визуальной схеме. По умолчанию (при выключенной опции) использование значка из файла Desktop.ini имеет, напротив, меньший приоритет, чем назначение значка в визуальной схеме.
Автопрокрутка к активному заголовку
Опция полезна только в случае расположения заголовков вкладок в одну строку (в настройках TC оно задано по умолчанию). Если вкладок много, а заголовок активной вкладки из-за прокрутки оказался вне поля зрения, он автоматически будет возвращён в отображаемую область при возврате фокуса в данную файловую панель.
Прокрутка заголовков колёсиком мыши
Включение этой опции, как и предыдущей, даст эффект только при расположении большого числа заголовков вкладок в одну строку. Поместив указатель мыши на заголовок любой вкладки, вы сможете выполнять их прокрутку колёсиком мыши, а не только стандартными кнопками со стрелками.
Это альтернативный вариант быстрой навигации по вкладкам, особенно удобный, когда часть заголовков находится вне отображаемой области. Щелчком по кнопке со звёздочкой (для открытия меню избранных каталогов) правой кнопкой мыши вы сможете открыть специальное меню, содержащее список всех вкладок, относящихся к текущей файловой панели, независимо от её активности. (Щелчок на том же элементе окна TC средней кнопкой мыши расширяет функциональность навигации в файловой панели.)
Щелчок по элементу списка делает активной соответствующую вкладку, а её заголовок, если он находился вне поля зрения, автоматически возвращается в отображаемую область. Вкладки следуют в списке согласно «однострочному» порядку их размещения над панелью. Если на странице настроек TC «Вкладки папок» разрешено отмечать заголовки заблокированных вкладки звёздочкой, вы увидите в списке эти отметки. Те вкладки, в заголовках которых предусмотрен с помощью TWinKey показ значков (при включении опции Использовать значок из Desktop.ini или в активной визуальной схеме), отобразятся с этими значками и в списке.
Кроме того, поддерживается клавиатурный вызов списка вкладок для левой/правой панели. Способ вызова команд ShowTabListLeft и ShowTabListRight определите на странице Клавиатура.
Сортировать список (по алфавиту)
Эта опция доступна только при активности предыдущей и позволяет отображать содержимое списка вкладок в алфавитном порядке. Следует учесть, что если в настройках TC разрешена маркировка заблокированных вкладок звёздочкой, алфавитный список разделяется на две группы: сначала идут все закреплённые вкладки (их имена отмечены звёздочкой), а затем все незакреплённые. Если же маркировка закреплённых вкладок в TC не используется, все вкладки текущей панели отображаются единым алфавитным списком.
Здесь включается и настраивается функция, позволяющая отображать вместо стандартного выпадающего списка дисков его улучшенный аналог, вызываемый точно таким же образом (например, по Alt+F1/Alt+F2). Альтернативный список дисков показывает свободное/общее дисковое пространство на постоянных и съёмных дисках, даёт возможность упорядочивать диски не только по буквам, но и по категориям (постоянные, съёмные, CD/DVD, сетевые), добавлять в список пользовательские пункты и/или значки. Как и в стандартном списке, здесь могут отображаться не только собственно диски, но и, например, установленные FTP-подключения или пункты для перехода в некоторые системные виртуальные папки — FS-плагины и сеть, а также (только в TC 8.50 и выше!) Мой компьютер и Мои документы. Имена системных папок указаны в том же виде, как в русифицированном TC, настоящие имена открываемых папок зависят от операционной системы.
Окно Список задаёт режимы применения функции:
Не использовать — Функция отключена, отображается стандартный список дисков TC.
Алфавитный — Сначала идут единым алфавитным списком диски с буквами (A–Z), затем системные папки, FTP-подключения в порядке открытия (0–9) и всё прочее.
По категориям — Съёмные диски, CD/DVD, сетевые элементы и системные папки вынесены из общего списка в отдельные категории.
Пункты для открытия папок Мой компьютер и Мои документы отображаются, как и аналогичные пункты стандартного списка, только в Total Commander 8.50 и выше. Их отображение регулируется настройками самого TC: ключ ShowExtraDrives, в файле wincmd.ini позволяет включать в список оба пункта (как по умолчанию), какой-то один или ни одного. В режиме показа по категориям эти пункты группируются отдельно под заголовком Системные папки.
При работе через удалённый рабочий стол, в терминальной сессии или в виртуальном режиме XP на Windows 7 с перенаправленными локальными дисками (\\tsclient) список этих дисков отображается как содержимое подменю TS Client, идущего последним в списке сетевых элементов.
Поддерживается удобный способ перехода к заданному диску простым вводом с клавиатуры соответствующей буквы, причём это можно делать и при текущей раскладке в кириллице (в стандартном списке дисков такая возможность реализована только начиная с TC 8.50). Ввод цифр от 0 до 9 позволяет переключаться между установленными FTP-соединениями или открывать их заново в другой файловой панели. Можно также открывать представленные в списке виртуальные папки простым вводом указанного для них в списке специального символа. Для папки (FS-плагины и сеть) это обратный слэш \, для папок Мой компьютер и Мои документы, соответственно, плюс и звёздочка, введённые с цифровой клавиатуры (Num + и Num *).
В секции Цвета и стили можно выбрать для обычных/выделенных элементов списка и для заголовков с именами категорий цвет текста/фона. Для этого щёлкните прямоугольник-индикатор или кнопку справа от него.
Также можно выбрать стиль фона списка: рамка, заливка, горизонтальный, вертикальный или цилиндрический градиент. По умолчанию для обычных элементов используется горизонтальный градиент, для выбранных элементов и заголовков категорий — заливка. Для фона левой части списка (со значками) всегда используется заливка.
Поля Цвет 1 и Цвет 2 при использовании градиента задают начальный и конечный цвета, а при использовании рамки — фон элемента списка и цвет рамки.
Важно знать, что цветовые настройки, заданные для списка дисков, автоматически распространяются также на меню команд TWinKey и на входящее в него подменю Закладки, которое может вызываться также как самостоятельное меню. Эта зависимость останется в силе и после отключения альтернативного списка дисков!
Вы можете дополнить основной список по своему усмотрению новыми пунктами, которые при включённой опции С пользовательскими пунктами (em_twdl_) будут отображаться самыми последними (после разделителя) и отсортированными по имени.
Чтобы новый пользовательский пункт появился в списке, предварительно сделайте следующее:
Откройте диалог TC «Выбор команды» (через пункт «Список команд TC» в расширенном русском меню, встроенной командой cm_CommandBrowser или иным способом).
Выберите в левой части окна категорию usercmd.ini, затем нажмите в нижней части окна кнопку «Новая».
Присвойте новой пользовательской команде имя. Сразу вслед за стандартным префиксом em_ обязательно нужно указать дополнительный префикс twdl_ и далее — то имя, под которым вы хотите видеть новый пункт в списке дисков. Пробелов в именах em-команд быть не должно. Если, например, мы укажем имя em_twdl_Моя_команда, то в список дисков добавится пункт Моя_команда.
В диалоге «Изменение пользовательской команды» введите по обычным правилам TC всю необходимую информацию для формирования новой команды. Указанный здесь значок будет отображаться для данного пункта в альтернативном списке дисков.
Добавочные команды могут использоваться для быстрого открытия конкретных FTP-соединений (FTPOPEN имя_соединения), монтирования дисков (например, с Daemon Tools или TrueCrypt) и для любых иных операций, вызов которых из списка дисков вы сочтёте уместным.
По умолчанию альтернативный список отображает значки, используемые текущей операционной системой. Однако при включённой опции С пользовательскими значками (twdl.icl) вы сможете использовать не системные, а собственные значки, взятые из внешней библиотеки, которая должна иметь строго определённые имя (twdl.icl) и местоположение (каталог TWinKey). Пример подобной библиотеки со стандартными дисковыми значками Total Commander вы найдёте в подкаталоге Examples.
По сравнению со значками, используемыми в TC, в ICL-библиотеке для TWinKey предусмотрен упрощённый набор значков (без значка недоступного сетевого диска и с единым значком для дисководов A: и B:). Вы можете отредактировать файл-образец или создать новую ICL-библиотеку, однако имейте в виду, что файл twdl.icl обязательно должен содержать точно в указанном порядке все следующие значки:
Жёсткий диск
Съёмный диск
CD-ROM
RAM-диск
Сетевой диск
Флоппи-диск (единый значок для A: и В:)
FTP
Мой компьютер
Мои документы
FS-плагины и сеть
Если вы хотите, чтобы список отображался вообще без значков, отметьте опцию Не показывать значки.
Окно предпросмотра всегда отображает условный нелокализованный список в режиме по категориям. Он включает не все возможные элементы, однако учитывает сделанные вами изменения цветов и стиля списка. Значки, если их показ не отключён, отображаются здесь в системном варианте, взятом из файла shell32.dll.
ПРИМЕЧАНИЯ
При открытии списка текущий диск курсором не помечается, однако можно отобразить и позиционировать курсор с помощью вертикальных курсорных клавиш или мыши.
Закрытое окно выбора диска данной функцией не обрабатывается и отображает значок, назначенный текущему диску в TC.
Перетаскивание объектов на закрытое окно выбора диска открывает не улучшенный, а стандартный список дисков.
Здесь включается и настраивается функция, позволяющая постоянно держать выбранные файлы/папки прикреплёнными в самом начале файлового списка (выше каталогов!), невзирая на текущий порядок сортировки (в том числе и заданной с помощью TWinKey групповой сортировки). Прикреплённые объекты отличаются в списке не только местоположением, но и цветом. Прикреплённое состояние файлов в каждой папке сохраняется и для следующих сеансов TC, пока вы его не отмените. Прикрепить можно только файл/папку под курсором, одновременное прикрепление сразу нескольких объектов в настоящее время не поддерживается.
Информация о прикреплённых объектах сохраняется в файле TWinKey.ini. Каждой папке, содержащей такие объекты, соответствует отдельная секция с полным путём к папке в качестве заголовка.
Опция Разрешить включает/отключает функцию в целом, не изменяя при этом её настроек.
Вы можете задать цвет прикреплённого элемента и тип его отметки: альфа-градиент (по умолчанию), рамка, заливка, подчёркивание.
Для альфа-градиента может быть задан процент заполнения колонки с именем в файловой панели (по умолчанию 33%), либо, если ввести число без процента, ширина окрашенной области в пикселях безотносительно к ширине колонки.
Опция Заполнение [%] настраивается для градиентной заливки прикреплённых файлов и закладок раздельно. (В версиях TWinKey по 1.114 поведение было иным: эти опции выглядели для прикреплённых файлов и закладок независимыми, но фактически сохраняли одно и то же значение.)
При выборе типа и цвета маркировки следует учитывать, что прикреплённый объект может быть также отмечен закладкой или курсором в неактивной панели (выше приведён алгоритм обработки подобных ситуаций).
Выбранный вами способ маркировки наглядно отображается справа в окне предпросмотра, общем для прикреплённых файлов и закладок. Это позволяет судить о том, насколько удачно тот или иной вариант будет смотреться в панелях TC. По умолчанию представлен небольшой фрагмент файловой панели с цветами по умолчанию и с нелокализованными именами условных файлов/папок.
Для опытных пользователей предусмотрена возможность оценить соответствие заданной индикации прикреплённых файлов и закладок актуальным цветовым и шрифтовым настройкам файловых панелей. Чтобы эта функция заработала, сделайте следующее:
В одной из файловых панелей TC сформируйте демонстрационный список, включающий элемент [..], две папки и два файла. Имена могут использоваться как настоящие, так и условные, явно указывающие на наличие/отсутствие маркировки (но устанавливать её в этом списке не нужно!). При использовании условных имён отсортируйте файлы и папки, чтобы они шли в таком порядке: прикреплённая папка, обычная папка, файл с закладкой, обычный файл.
Сделайте снимок экрана с окном TC и загрузите его в подходящую внешнюю программу (Paint, IrfanView и т. д.). Результатом обработки должен стать сохранённый в виде отдельного BMP-файла небольшой фрагмент файловой панели, содержащий заголовок табулятора «Имя» и уже названные строчки файлового списка.
Присвойте файлу имя по правилам, которые поясняет пример Old Good NC-38-16.bkg.bmp. Здесь .bkg.bmp — обязательная часть имени, Old Good NC — имя будущего шаблона для предпросмотра, 38 — расстояние в пикселях от верхней части рисунка до верхней границы строки с первой (прикреплённой) папкой, а 16 — высота одной строки списка в пикселях.
Поместите файл с указанным именем в каталог TWinKey.
Теперь предпросмотр будет отображать специальную маркировку файлов и папок именно для ваших панелей TC, а под картинкой для предварительного просмотра появится выпадающий список, содержащий имя шаблона. Если вы пользуетесь несколькими схемами интерфейса TC, то можете сформировать несколько шаблонов предпросмотра, чтобы переключаться между ними по мере необходимости. Несколько примеров файлов для разных интерфейсных схем вы найдёте в подкаталоге Examples.
При включённой по умолчанию опции Сортировать файлы по алфавиту прикреплённые файлы/папки также автоматически сортируются по имени в восходящем алфавитном порядке независимо от текущей сортировки в файловой панели. Если вы хотите, чтобы файлы шли не по алфавиту, а просто в порядке их прикрепления, или вам необходимо переупорядочить вручную уже прикреплённые объекты (см. далее), эту опцию следует отключить. Имейте в виду, что прикреплённые папки в любом случае отображаются в списке выше прикреплённых файлов!
Для управления функцией прикрепления вы можете назначить клавиши следующим командам:
Прикрепить файл — Команда StickIt. Папка/файл перепрыгивает вместе с курсором в начало списка и получает соответствующую метку.
Открепить файл — Команда UnStickIt. Папка/файл возвращается вместе с курсором на своё место согласно заданной в панели сортировке, метка снимается.
Упорядочить файлы — Команда StickConfig. Если в каталоге имеются прикреплённые папки/файлы, а в настройках не задана их автоматическая сортировка по именам, открывается диалог Сортировка прикреплённых файлов, отображающий список таких объектов в текущем каталоге. Вы можете переместить здесь любой элемент вверх/вниз или вообще убрать его из списка, т. е. открепить. (Учтите, что перемещать файлы выше папок бессмысленно: в файловых панелях TC это будет проигнорировано.) Если же автоматическая сортировка включена, выводится рекомендация отключить соответствующую опцию в настройках.
Прикрепить/Открепить файл — Команда ToggleStick. Альтернатива применению пары команд StickIt и UnStickIt: папка/файл под курсором прикрепляется и открепляется одной и той же командой, при этом курсор остаётся на прежнем месте, не перемещаясь с прикреплённым/откреплённым объектом.
Открепить все файлы — Команда ToggleStick. Все прикреплённые папки/файлы в текущем каталоге одномоментно возвращаются к обычному состоянию. Чтобы сделать это и в других каталогах, надо последовательно открыть их и применить ту же команду. Открепление сразу всех объектов во всех папках в настоящее время не поддерживается.
Все эти команды могут быть вызваны через меню команд TWinKey.
На странице имеется также поле Назначенные клавиши, где отображаются краткие описания перечисленных команд (английские или локализованные, в зависимости от настроек) с указанием назначенных клавиш. Кнопка Переопределить открывает на странице Клавиатура список команд для назначения им клавиш (тот же эффект даёт ввод текста Stick для команд TWinKey непосредственно в поле фильтрации на странице Клавиатура).
ПРИМЕЧАНИЯ
Функция не работает в режиме эскизов.
В режиме показа файлов без подкаталогов отображаются прикреплёнными только файлы из базового каталога. Прикрепить в этом режиме объекты, реально находящиеся в подкаталогах более низкого уровня, нельзя (при попытке это сделать выдаётся звуковой сигнал).
Не рекомендуется прикреплять/откреплять что-либо при наличии выделения в текущей файловой панели — оно будет снято без возможности восстановления!
Наличие в каталоге прикреплённых папок/файлов препятствует прокрутке при выделении или перетаскивании правой кнопкой мыши. Если вам нужен именно такой вариант выполнения этих операций, открепите все файлы в данном каталоге или временно отключите функцию в настройках TWinKey!
При использовании этой функции может потребоваться перечитывание настроек TWinKey после изменения некоторых цветовых параметров TC (подробнее см. здесь).
При удалении прикреплённого объекта переход курсора на следующий объект может сопровождаться тем же эффектом, что при групповой сортировке.
Прикрепление файлов влияет на фоновые вычисления с помощью WDX-плагинов наподобие DirSizeCalc точно таким же образом, как и групповая сортировка.
Включение в системе режима сглаживания шрифтов ClearType может ухудшить читабельность имён файлов при использовании в заливке или альфа-градиенте цвета, контрастного к цвету фона, заданного в ТС.
Здесь включается и настраивается функция, позволяющая использовать для визуальной индикации папок/файлов и быстрого перемещения между ними инструментарий закладок. Объект, на который поставлена закладка, получает специальную цветовую отметку и, в отличие от прикреплённых объектов, не изменяет своё положение в файловом списке.
Закладки могут как действовать только в текущей сессии TC (по умолчанию), так и запоминаться для следующих сеансов. Для быстрой очистки всех текущих закладок во всех папках сразу можно назначить клавишу или использовать команду в меню закладок. (Подробнее о вариантах настроек см. далее.)
Переход по закладкам может быть последовательным (к предыдущей/следующей закладке) или к конкретной закладке, выбранной в меню. Последовательный обход закладок выполняется в порядке их установки.
Закладки могут копироваться в текстовый буфер и вставляться оттуда посредством меню или назначенных этим операциям клавиш. Кроме того, можно вставлять как закладки любой текст, содержащий полные имена папок/файлов, или же, например, имена из списка результатов поиска, полученного с помощью WFX-плагина FSE (Fast Search Engine).
Опции, определяющие вид закладок, выглядят так же, как для прикреплённых файлов, но все настройки на этой и предыдущей странице — раздельные. (В версиях TWinKey по 1.114 поведение было иным: опции Заполнение [%] выглядели для прикреплённых файлов и закладок независимыми, но фактически сохраняли одно и то же значение.) При выборе типа и цвета маркировки следует учитывать, что объект с закладкой может быть также прикреплённым и/или находиться под курсором в неактивной панели (выше приведён алгоритм обработки подобных ситуаций).
Пользовательские настройки предпросмотра для закладок и прикреплённых файлов единые, их порядок описан выше.
Опция Разрешить включает/отключает функцию в целом, не изменяя при этом её настроек.
Опция Сохранять закладки в файл включает/отключает сохранение закладок в файл TWinKey.bkm, автоматически создаваемый в каталоге TWinKey при первом назначении закладок. В режиме сохранения все изменения в закладках (добавление, удаление, вставка из буфера) сразу записываются в этот файл, который обязательно должен быть юникодным (UTF-16LE). При включении опции пункт Сохранять закладки в специальном меню (см. далее) автоматически отмечается галочкой. Если и опция, и вышеуказанный пункт меню отключёны, закладки сохраняются в память и действуют только в текущем сеансе (до первого перечитывания настроек TWinKey).
Если вы отключили режим сохранения, не удалив закладки, то они останутся в файле и будут до тех пор, пока вы не очистите их при включённом режиме сохранения.
Для управления функцией закладок вы можете назначить клавиши следующим командам:
Вызвать меню — Команда JumpBookMark. Верхняя часть меню — список всех закладок в виде полных путей. Щелчок по имени любой закладки или (для первых 9 закладок) ввод отображаемой справа цифры закрывает меню и переключает на эту закладку. Нижняя часть меню — набор перечисленных далее команд, которые, таким образом, можно вызывать не только клавишами, но и непосредственно через меню.
Следующая закладка — Команда BookMarkNext. Переход к следующей по порядку закладке в списке (до конца списка и вновь с его начала). Каталоги и архивы при этом автоматически открываются.
Предыдущая закладка — Команда BookMarkPrev. Переход к предыдущей закладке в списке по правилам для предыдущей команды.
Поставить/Снять закладку — Команда ToogleBookMark. Ставит/снимает закладку для папки/файла под курсором. (Для группы выделенных объектов эта функция не поддерживается!)
Копировать закладки — Команда CopyBookMark. Имена всех имеющихся закладок копируются в буфер обмена в виде многострочного списка, где каждая строка — имя файла с полным путём.
Вставить закладки — Команда PasteBookMark. Все папки/файлы, чьи имена с полными путями содержатся в буфере обмена, получают закладки (при их отсутствии) или игнорируются (если закладка уже есть). Для вставки закладок можно использовать файловые имена, выбранные и скопированные в буфер не только в самом TC, но и в других программах (например, в Проводнике).
Выделить закладки — Команда Book2Selection. Имена всех файлов (не папок!) с закладками становятся выделенными, при этом сами закладки не снимаются. У имеющихся закладок обязательно должна быть общая точка в файловой структуре диска. Эта папка (текущая или вышележащая) автоматически открывается при преобразовании закладок в выделение и переключается в режим показа файлов без каталогов. При невозможности найти такую общую точку (например, при расположении файлов на разных дисках) пользователь будет уведомлен, что выполнить преобразование нельзя.
Убрать все закладки — Команда ClearBookMark. Все имеющиеся во всех каталогах закладки одномоментно снимаются, т. е. файл TWinKey.bkm очищается.
Сохранять закладки — Команда ToogleSaveBookMark. Режим сохранения закладок временно включается/отключается, не влияя на состояние опции для сохранения закладок в файл на странице настроек. Галочка в этой строке меню — индикатор включённого режима сохранения вкладок в файл; по умолчанию она установлена.
Допустим, вы хотите, не обращаясь к настройкам TWinKey Utilisator, создать несколько закладок, нужных только в текущем сеансе TC. Примените эту команду (снимите галочку) — и в следующем сеансе TC сделанные вами временные закладки исчезнут, поскольку записывались не в файл TWinKey.bkm, а в память.
Если выполнение команды в данном контексте невозможно, она отображается в меню как недоступная.
Вы можете вызывать меню для закладок и другим способом — открывать его как подменю Закладки в составе меню команд TWinKey.
На странице Закладки имеется также поле Назначенные клавиши, где отображаются краткие описания перечисленных команд (английские или локализованные, в зависимости от настроек) с указанием назначенных клавиш. Кнопка Переопределить открывает на странице Клавиатура список команд для назначения им клавиш (тот же эффект даёт ввод текста Book для команд TWinKey непосредственно в поле фильтрации на указанной странице).
ПРИМЕЧАНИЯ
Функция не работает в режиме эскизов.
Переход по закладкам поддерживается только для локальных папок/файлов, UNC-путей и FS-плагинов. Внутри архивов и на FTP этот переход не работает вообще, а в виртуальных папках работает некорректно. Поэтому в указанных случаях закладки лучше не использовать.
Применение закладок влияет на фоновые вычисления с помощью WDX-плагинов наподобие DirSizeCalc точно таким же образом, как и групповая сортировка.
При использовании этой функции может потребоваться перечитывание настроек TWinKey после изменения некоторых цветовых параметров TC (подробнее см. здесь).
Включение в системе режима сглаживания шрифтов ClearType может ухудшить читабельность имён файлов при использовании в заливке или альфа-градиенте цвета, контрастного к цвету фона, заданного в ТС.
Здесь создаются и настраиваются визуальные схемы, автоматически выбираемые при входе в определённые пользователем каталоги. С некоторыми оговорками функция применима также к архивам, виртуальным папкам, FS-плагинам и FTP-подключениям.
Визуальная схема — это настраиваемый набор, полностью или выборочно включающий следующие элементы интерфейса:
Вид представления в файловой панели TC (стандартный, кроме дерева, или пользовательский набор колонок).
Режим показа файлов без подкаталогов (в любом виде представления, кроме дерева).
Фоновый цвет или фоновый рисунок панели.
Цвет заголовка вкладки.
Значок в заголовке вкладки.
Способ сортировки (номер сортирующей колонки).
Группы сортировки, отображаемые в начале/конце файлового списка.
Кроме того, при использовании визуальной схемы может, по вашему желанию, выполняться автозапуск одной или нескольких команд TC.
На этой странице визуальные схемы создаются и настраиваются, а на следующей — определяются каталоги/архивы, где эти схемы должны применяться. Для правильной работы любой схемы необходимо тщательно выполнить все необходимые настройки на обеих страницах!
За конфигурирование элементов схемы отвечают опции в правой части страницы. Для доступа к ним просто выберите в списке нужную схему или создайте новую.
Элементы схемы, оставленные без изменения (в состоянии по умолчанию), будут отображаться в том виде, как указано в настройках самого TC, либо могут подпасть под действие одной из схем, указанных в списке следом за текущей.
Схемы проверяются на применимость в порядке их перечисления в списке. (По умолчанию это порядок их создания, который легко изменить, просто перетаскивая строки списка мышью.) Если найдена подходящая схема, она применяется, и дальнейшая проверка на применимость не производится.
Для создания новой схемы введите её имя в поле над списком, а затем нажмите кнопку с плюсом, чтобы добавить новое имя в список. Для удаления схемы из списка выберите её там и нажмите кнопку с косым крестиком.
Вы можете изменить имя схемы, превратив нужную строку списка в поле редактирования двойным щелчком или клавишей F2. Результат правки подтверждается клавишей Enter или щелчком в списке вне поля редактирования и отменяется клавишей Esc.
Создав или переименовав схему, не забудьте в квадратике перед её именем поставить галочку! Пока вы этого не сделаете, схема будет неактивна, хотя и доступна для настройки. Соответственно, для временного игнорирования схемы без её удаления достаточно убрать галочку в квадратике перед именем.
Поле Описание позволяет, если это необходимо, дать непосредственно на странице настроек краткие пояснения по схеме. К интерфейсу TC как таковому оно отношения не имеет.
Опция Режим TC представляет собой выпадающий список, состоящий из двух частей:
Обычные режимы TC: стандартные виды представления, кроме дерева, и режим Только файлы для показа файлов без подкаталогов.
Наборы колонок: все сконфигурированные в текущей копии TC наборы колонок.
Отличие режима Только файлы от всех прочих в том, что он сохраняет прежний вид представления, но преобразует обычный файловый список в «плоский», без подкаталогов. Если вам нужно вернуться в настройках схемы к обычному отображению файлов вместе с папками, повторно выберите в выпадающем списке строку Только файлы.
Фоновый рисунок выбирается по тем же правилам, что в аналогичной опции на странице Файловые панели. Если в визуальной схеме указаны как цвет фона файловой панели, так и фоновый рисунок, приоритет имеет фоновый цвет.
Если для схемы задан фоновый цвет, а в ТС используется двухцветный фон, то и TWinKey будет отображать чётные/нечётные строки по-разному, причём второй цвет генерируется автоматически (на 10% темнее назначенного в схеме). Если же фоновый цвет не задан, но указан фоновый рисунок, заданная в TC разная окраска чётных/нечётных строк просто игнорируется в пределах данной схемы.
Цвет вкладки как элемент визуальной схемы менее приоритетен, нежели цвет заголовка той же вкладки, заданный вручную (при включённой на странице Файловые панели опции Цветные заголовки вкладок).
Значок вкладки, заданный для её заголовка в визуальной схеме, приоритетнее значка, назначенного для той же вкладки иным способом и отображаемого при включённой на странице Файловые панели опции Использовать значок из Desktop.ini (если на указанной странице не включена также и опция Приоритет перед визуальной схемой).
Изменения значка и цвета на вкладках проявляются сразу только для активной вкладки. Для отображения изменений на других вкладках нужна их активизация или перезапуск TC. Все прочие изменения отобразятся при открытии соответствующего каталога.
Способ сортировки указывается вводом порядкового номера сортирующей колонки в данном виде представления или наборе колонок (например, 2 — для сортировки по расширению в подробном режиме). Направление сортировки устанавливается в вариант, автоматически применяемый TC для указанной в визуальной схеме колонки. При значении 0 данная визуальная схема исходную сортировку не меняет. Режим сортировки по нескольким колонкам (мультисортировка) не поддерживается.
Для каталога, соответствующего визуальной схеме, заданная в ней сортировка по файловым группам более приоритетна, чем глобальная групповая сортировка, заданная аналогичными опциями на странице Файловые панели. Если указать в поле В начале списка и/или В конце списка только обратный слэш \, то в данной визуальной схеме глобальная групповая сортировка в указанной части списка действовать не будет.
Опция Автозапуск команд позволяет при открытии определённого каталога автоматически запускать одну или несколько внутренних команд TC — как встроенных (cm_), так и и пользовательских (em_). Это полезно для более тонкой настройки заданного режима (например, чтобы одновременно с изменением вида представления перейти к показу файлов без подкаталогов или чтобы сразу же включить инверсное направление сортировки), а также для опосредованного (через пользовательские команды) автозапуска необходимых вам утилит, скриптов или BAT-файлов.
Вы можете вручную изменять порядок следования и, соответственно, выполнения команд, добавлять новые команды или удалять имеющиеся.
Если команд несколько, они должны быть записаны в поле ввода подряд, разделяясь символом вертикальной черты. Выполняться эти команды будут выполняться одна за другой без всякого периода ожидания.
Следует иметь в виду, что автозапуск команд выполняется однократно, при обращении только к первому каталогу, соответствующему данной визуальной схеме. Он не будет работать при последующей навигации по каталогам, пока вы не выйдете за пределы действия схемы и вновь не вернётесь в любой удовлетворяющий её правилам каталог.
(В отличие от аналогичной глобальной опции, управляющей запуском команд при старте TC, в визуальных схемах на данный момент не поддерживается быстрая вставка имён команд со страницы Клавиатура.)
Как и в аналогичной глобальной опции, путь к файлу с фоновым рисунком можно указывать как абсолютный, так и относительный (например, .\folder.jpg). Если путь начинается с .\, то делаются последовательные попытки найти рисунок-источник, поднимаясь вверх от текущего каталога до тех пор, пока мы остаёмся в рамках той же визуальной схемы. Если же путь начинается с \, то сразу проверяется корень текущего диска. Если файл не найден, то используется путь из глобальной опции.
Исключение элементов из визуальной схемы:
Режим: нажмите клавишу Пробел.
Цвет фона/вкладки: щёлкните по прямоугольнику-индикатору и выберите Не использовать.
Описание, фоновый рисунок: очистите поле ввода.
Значок в заголовке вкладки: в диалоге, открытом щелчком в поле значка, нажмите кнопку Убрать.
Сортирующая колонка: укажите в поле 0.
Группы сортировки: отключите опцию В начале списка / В конце списка или очистите поле ввода. О временном отключении см. выше.
Автозапуск команд: отключите одноимённую опцию и/или очистите поле ввода.
Для настройки автоматического переключения сформированных визуальных схем при смене каталогов перейдите на следующую страницу.
ПРИМЕЧАНИЯ
О зависимости отображения значка в заголовке вкладки от настроек TC см. примечание к опции Цветные заголовки вкладок на странице Файловые панели.
Об ограничениях, связанных с использованием рисунков, см. примечание к опции Фоновый рисунок на странице Файловые панели.
Об условиях применения групповой сортировки см. примечание к секции Файловые группы на странице Файловые панели.
Пользовательские колонки (и, соответственно, сортировка по ним) применимы в визуальных схемах только для физических каталогов, как и относительные пути к фоновому рисунку.
Режим показа файлов без подкаталогов не работает для виртуальных папок, FS-плагинов и FTP.
Здесь определяются условия автоматического применения визуальных схем, имена которых после назначения или правки на предыдущей странице отображаются в выпадающем списке Схема.
Опция Разрешить определяет активность функции автопереключения в целом, не изменяя больше никаких настроек. В отличие от других страниц настроек с таким глобальным переключателем, доступ к редактированию прочих настроек сохраняется и при запрете на автопереключение.
Для каждой выбранной вами схемы необходимо также создать фильтр, чтобы определить, в каких именно каталогах/архивах она должна автоматически применяться. Каждый фильтр является совокупностью шаблонов, разделённых символом вертикальной черты. Поле Фильтр можно редактировать непосредственно или формировать в нижележащем окне из отдельных шаблонов.
Чтобы добавить в этом окне шаблон к фильтру, прежде всего нажмите кнопку с плюсом для создания пустой строки. Далее для формирования новой строки-определения (как и для редактирования уже существующей) задайте содержимое колонок Условие и Шаблон.
В первой колонке открывается щелчком мыши выпадающий список, где выбирается одно из условий:
МОЖЕТ содержать ( в фильтре шаблону предшествует символ ?).
ДОЛЖЕН содержать (в фильтре шаблону предшествует символ !).
НЕ содержит (в фильтре шаблону предшествует символ ^).
Каждую строку второй колонки щелчком мыши можно превратить в поле ввода. Здесь условию сопоставляется шаблон, использующий фрагменты полного имени каталога в комбинации с подстановочными символами * и ?. Например, шаблон *Totalcmd* трактуется как каталог, содержащий «Totalcmd» либо в имени, либо в полном пути (т. е., например, подкаталог D:\Setup\Totalcmd\Download\ тоже соответствует этому шаблону).
В фильтре обязательно должен присутствовать хотя бы один шаблон с условием МОЖЕТ содержать (?xyz)! Шаблоны с ? объединяются через «или», все остальные добавляются через «и». Иными словами, выражение ДОЛЖЕН содержать в общем случае следует понимать как «а также должен содержать», а МОЖЕТ содержать означает «или может содержать». Порядок следования шаблонов в фильтре значения не имеет.
Вот пример работы фильтра. Предположим, мы хотим, чтобы визуальной схеме соответствовали каталоги, которые могут содержать слово «Download». Создаём шаблон ?*Download*. А ещё мы хотим, чтобы таким же образом обрабатывались каталоги со словом «Закачки». К фильтру добавляется шаблон ?*Закачки*.
Допустим, мы также решили ограничить область применения схемы только каталогами торрентов. Для этого, не меняя предыдущие шаблоны, добавляем к ним !*torrent*. Если же мы, наоборот, хотим исключить только каталоги торрентов, то добавляем ^*torrent*.
В результате имеем ?*Download*|?*Закачки*|!*torrent* для первого варианта фильтра и ?*Download*|?*Закачки*|^*torrent* для второго.
В определение для архива, разумеется, следует включать расширение. Например, автопереключение визуальной схемы при входе в архивы с расширениями ZIP, RAR, 7Z, CAB и EXE (в том числе во внутренние подкаталоги) мы обеспечим, создав следующий фильтр:
?*.zip|?*.zip\*|?*.rar|?*.rar\*|?*.7z|?*.7z\*|?*.cab|?*.cab\*|?*.exe|?*.exe\*
Для содержимого FTP-сервера можно назначить фильтр с использованием начальных цифр:
?0:*|?1:*|?2:*|?3:*|?4:*|?5:*|?6:*|?7:*|?8:*|?9:*
Шаблон ?\\* можно использовать для включения в схему виртуальных и сетевых папок, а шаблон ?\\\* — для плагинов файловой системы.
Полезен может быть и фильтр по умолчанию на основе маски *.*, обрабатывающий все каталоги, не подпадающие под действие остальных шаблонов. Допустим, шаблон ?*Download* задан для визуальной схемы с подробным режимом представления и сортировкой по колонке «Дата», а вне этой схемы мы хотим использовать краткий режим и сортировку по типу. Проблема в том, что в TC режим и сортировка сохраняются не для конкретной папки, а для всей текущей панели/вкладки. Поэтому они будут применяться, например, при переходе в вышележащий каталог, уже не описываемый данным шаблоном. Во избежание этого создадим визуальную схему с режимом и сортировкой по умолчанию, назовём её, например, Default и поместим в конец списка. Тогда фильтр Default=?*.* обеспечит автоматический возврат к постоянным параметрам файловой панели в любом каталоге вне пределов действия визуальных схем.
Кнопка с косым крестиком позволяет убрать из фильтра ненужные вам строки-определения.
Отключение опции Оставить режим, заданный вручную в этой области означает, что если после автопереключения пользователь вручную изменит в некоем каталоге какой-то параметр визуальной схемы (например, переключит режим ТС или сортировку) и затем перейдёт в другой каталог, относящийся к той же схеме, то она будет применена снова в неизменном виде. Если же опция включена, то подобные изменения параметров исходной визуальной схемы будут далее (до выхода из неё) учитываться при переходе между всеми каталогами, соответствующими тому же фильтру.
Таким образом, для правильного автопереключения всякой визуальной схемы должны быть соблюдены (на обеих страницах настроек) следующие условия:
Схема должна быть активна (включена в списке).
Схема должна иметь специфический (отличный от прочих) набор настроек.
Схема должна стоять в списке выше любых других схем, относящихся к тем же каталогам/архивам.
Функция автопереключения должна быть разрешена.
Фильтр (набор необходимых условий и шаблонов) должен быть задан правильно и соответствовать открываемому каталогу/архиву.
Здесь выполняются подключение плагинов 2-го уровня и настройка доступа к их командам. В дистрибутив TWinKey сейчас входят три дочерних плагина:
TCDirMenu.dll и TCDirMenu64.dll — Избранное и шаблоны.
ClockDLL.dll и ClockDLL64.dll — Секундомер.
muCalc.dll и muCalc64.dll — Калькулятор.
При автоустановке TWinKey указанные плагины будут скопированы в его каталог, но не подключены. Чтобы подключить все или только некоторые плагины, последовательно выберите нужные вам 32-битные DLL-библиотеки (без 64 в имени) в окне, открытом кнопкой с плюсом на текущей странице настроек. 64-битный файл каждого плагина должен находиться в одном каталоге со своим 32-битным аналогом. Он не требует специального подключения и загружается соответствующей версией TWinKey автоматически.
Каждый подключённый плагин будет представлен в списке несколькими строками — заголовком, содержащим имя плагина и путь к его файлу, и набором строк для команд (функций). Для каждой команды в соответствующих колонках отображаются её имя, порядковый номер (начиная с 1) и описание.
Чтобы работать с любым плагином, необходимо назначить всем или некоторым его командам клавиши вызова (в таком же поле ввода и по тем же правилам, как на странице Клавиатура).
Опция Разрешить включает/отключает функции сразу всех установленных дочерних плагинов, не изменяя при этом ни их список, ни настройки клавиш.
Цвет строк для команд означает следующее:
Тёмно-красный — Команды, которым в TWinKey Utilisator назначены клавиши.
Чёрный — Команды без клавиатурных назначений.
Если вы случайно назначили для вызова нескольких команд плагинов одни и те же клавиши, кнопка Дубликаты в верхней части страницы позволит открыть окно со списком, показывающим, для каких команд возникло дублирование клавиш. Команда плагина описывается здесь как полный путь к его файлу и (через запятую) внутренний номер команды в плагине.
Поскольку пути к плагинам сохраняются с поддержкой переменной %COMMANDER_PATH%, обычно нет необходимости редактировать эти пути при копировании каталога Total Commander на другой диск. Если же вам потребуется указать иной путь к плагину 2-го уровня, сохранив прежние вызывающие клавиши, просто повторно добавьте тот же плагин в список, выберите DLL-библиотеку с другим местоположением и подтвердите замену прежнего пути на новый.
Для отключения плагина выберите его 32-битную DLL-библиотеку в списке файлов, открытом кнопкой с косым крестиком. Все строки, относящиеся к этому плагину, будут удалены из списка. Если плагин не отключён, но его библиотека физически отсутствует по указанному пути, строка с заголовком плагина из чёрной станет красно-коричневой, перед путём к плагину появится слово Отсутствует, а команды плагина отображаться не будут.
Если для плагина предусмотрены пользовательские настройки, они выполняются только непосредственным редактированием соответствующего INI-файла. Для немедленного применения сделанных изменений воспользуйтесь командой Перечитать настройки в меню команд TWinKey.
ПРИМЕЧАНИE
В версиях TWinKey по 3.105 включительно для плагина-калькулятора использовалась 32-битная библиотека mcalc.dll, заменённая затем на muCalc.dll. Если более новая версия TWinKey устанавливалась в каталог с файлами одной из прежних версий, исправьте путь к плагину по описанной выше методике или уточните вручную значение ключа Calculator в секции [PluginList] файла TWinKey.ini, после чего удалите ненужный файл mcalc.dll из каталога TWinKey.
Этот плагин 2-го уровня существенно дополняет стандартный инструментарий пользовательских меню TC и позволяет вставлять в активное поле ввода разнообразную информацию из специальных меню. Эффект проявляется в любых элементах интерфейса TC, содержащих поля ввода: в диалогах операций (копирования, перемещения, упаковки/распаковки, создания каталога/файла и т. д.) и настроек (в основном диалоге, при настройке панели инструментов, избранных каталогов, меню «Запуск» и т. д.), непосредственно в файловой панели (при переименовании), в её заголовке (при правке пути), в диалоге редактирования комментариев, в окне быстрого поиска/фильтра, а также в командной строке TC. Вы сможете легко и быстро вставлять в поля ввода имена файлов/каталогов, метки даты/времени в разных форматах, компоненты параметризованных команд TC, имена переменных, произвольные строки из пользовательских списков… и многое другое.
Команда TC Favorites функционально достаточно проста. При её клавиатурном вызове вы откроете рядом с активном полем ввода меню, в основном повторяющее состав и структуру меню избранных каталогов, используемого в вашем TC и доступного только в главном его окне. Вы увидите, однако, не все пункты пункты исходного меню, а только записанные в формате cd имя_каталога и не содержащие псевдопеременных TC вида %$APPDATA% и т. п. Выбор того или иного пункта позволяет вставить в поле ввода полный путь к соответствующей папке. Системные и внутренние переменные (например, %TEMP% или %COMMANDER_PATH%) при этом автоматически раскрываются. Команда будет очень полезна, например, для тех, кто вызвал некую операцию (копирование, упаковку и пр.), не открыв предварительно в другой панели TC нужный целевой каталог, и хочет выбрать его непосредственно в диалоге операции.
Для отображения того же самого меню плагин поддерживает также альтернативный способ.
Самая интересная и важная из команд плагина — Templates. Её клавиатурный вызов позволяет отображать сколь угодно сложно организованное меню для вставки всевозможной информации в различные поля ввода. Структура и содержание меню полностью определяются пользователем в файле TCDirMenu.ini. Могут использоваться результаты работы описанных ниже специальных функций, позволяющих получать данные, например, из различных секций файла wincmd.ini (списки избранного, истории, шаблоны, имена псевдонимов и FS-плагинов) или из системных диалогов выбора папок/файлов. Кроме того, в меню могут отображаться произвольные текстовые фрагменты: наборы расширений, параметров, имён переменных и любые иные строки, которые пользователь счёл полезными для непосредственной вставки.
Любой текст вставляется в поле ввода автоматически выделенным. Это позволяет вам при необходимости сразу же скопировать его в буфер или (если, например, случайно была вызвана не та команда) удалить. Кроме того, это повышает наглядность операции, если поле ввода уже что-то содержало до вставки. Обратите внимание, что если в предыдущем содержимом поля ввода уже имелось выделение, оно будет замещено вставленным текстом!
Файл меню TCDirMenu.ini является обязательным для работы плагина, редактируется только вручную и должен находиться в одном каталоге с парой файлов TCDirMenu.dll и TCDirMenu64.dll (по умолчанию это основной каталог TWinKey). В дистрибутиве INI-файла с таким именем и расположением нет (во избежание перезаписи пользовательского файла меню одноимённым стандартным), однако в подкаталоге Examples вы найдёте после установки готовые образцы этого файла с другими именами: два стандартных (английский и русский, с простой конструкцией исходного меню) и расширенный (русский, с более сложной структурой меню). Чтобы не создавать собственный INI-файл с нуля, скопируйте один из файлов-образцов в каталог c TCDirMenu.dll и TCDirMenu64.dll, переименуйте в TCDirMenu.ini, а затем, чтобы сразу же использовать файл без перезапуска TC, перечитайте настройки в меню команд. Далее вы сможете свободно изменять содержимое меню согласно своим задачам и потребностям.
Шапка каждого из файлов-образцов вкратце содержит наиболее важную для работы с меню информацию. Здесь мы рассмотрим её подробнее.
Меню формируются из одной или нескольких секций. Заключённый в квадратные скобки заголовок каждой из них — это имя меню или подменю. Содержащиеся в секции строки обычно состоят из левой части с описанием команды или подменю, знака равенства и правой части с информацией для вставки.
Если в левой части строки присутствует амперсанд &, то следующий за ним символ отобразится в меню подчёркнутым, а команду можно будет вызывать нажатием соответствующей этому символу горячей клавиши. Чтобы увидеть в меню амперсанд как таковой, его символ следует удвоить.
Чтобы автоматически отделять вставляемый текст от уже имеющегося содержимого поля ввода, достаточно указать символ-разделитель сразу после знака равенства или, наоборот, в конце строки, в зависимости от предполагаемого места вставки. При использовании в качестве разделителя пробела следует заключить соответствующую часть строки в двойные кавычки.
Исходный вариант меню в стандартной русской версии INI-файла выглядит достаточно просто:
[Menu]
Переменные TC=$sub(Environement)
Дата (рус.)=$udt(%Y%m%d)
Дата (англ.)=$edt(%d-%b-%Y)
$sep=sep1
Имя&&Счётчик=$env(%username%)_$cnt
sep2=$sep
Имя последней папки=$dir
Путь последней папки=$path
Параметры=$sub(Parameters)
[Parameters]
%P%N - Текущий файл=%P%N
%T%N - Целевой файл=%T%N
[Environement]
COMMANDER_PATH=%COMMANDER_PATH%
COMMANDER_INI=%COMMANDER_INI%
Это, разумеется, лишь отправная точка для самостоятельного творчества. Дальнейшее совершенствование меню — полностью в ваших руках!
Для вставки доступны следующие предопределённые функции (скобки с параметрами, если они указаны, являются обязательной частью синтаксиса):
$edt(формат) — Вставить текущие дату/время (текстовые данные согласно английской локали).
$udt(формат) — Вставить текущие дату/время (текстовые данные согласно пользовательской локали).
$env(имя) — Вставить значение переменной окружения.
$cnt — Вставить счётчик.
$src — Вставить всё содержимое поля ввода, объединив его с заданным текстом или просто продублировав.
$sel — Вставить имеющееся в поле ввода выделение, объединив его с заданным текстом.
$clip(fileall|file|srcpath|trgpath) — Вставить через буфер обмена посредством одной из встроенных команд ТС информацию о выбранных объектах.
$cmd — Открыть диалог TC «Выбор команды» и вставить имя выбранной там команды.
$dbrowse() — Открыть диалог выбора папки и вставить выбранное там имя.
$fbrowse(маска) — Открыть диалог выбора файла и вставить выбранное там имя.
$dir — Последний открытый в TC каталог (только имя).
$path — Последний открытый в TC каталог (полный путь без буквы диска).
Используемый функциями $edt(формат) и $udt(формат) список кодов для даты/времени представлен далее, в отличие от шапки INI-файлов, в максимально полном виде (согласно списку кодов для функции strftime, приведённому на сайте MSDN):
%a — Сокращённое название дня недели (например, Чт для $udt на русской локали).
%A — Полное название дня недели (например, четверг для $udt на русской локали).
%b — Сокращённое название месяца (например, Октябрь для $udt на русской локали).
%B — Полное название месяца (например, окт для $udt на русской локали).
%c — Представление даты и времени в текущей локали (например, 23.10.2014 14:29:07 для $udt на русской локали).
%d — День месяца как десятичное число (01..31).
%H — Час в 24-часовом формате (00..23).
%I — Час в 12-часовом формате (01..12).
%j — День в году как десятичное число (001..366).
%m — Месяц как десятичное число (01..12).
%M — Минуты как десятичное число (00..59).
%p — Индикатор текущей локали для 12-часового формата времени (AM/PM).
%S — Секунды как десятичное число (00..59).
%U — Неделя в году как десятичное число (0..53; начало недели — воскресенье).
%w — День недели как десятичное число (0..6; воскресенье — 0).
%W — Неделя в году как десятичное число (0..53; начало недели — понедельник).
%x — Представление даты в текущей локали (например, 23.10.2014 для $udt на русской локали).
%X — Представление времени в текущей локали (например, 14:29:07 для $udt на русской локали).
%y — Год без столетия как десятичное число (00..99).
%Y — Год со столетием как десятичное число.
%z и %Z — Имя/аббревиатура часового пояса (зависит от региональных настроек, например, Московское время (зима) для $udt на русской локали).
На первый взгляд, код для вставки полной метки даты и/или времени предпочтительнее, чем сборка формата из разных кодов. Однако некоторые используемые в форматах даты/времени разделители (двоеточие, слэш) недопустимы в именах папок/файлов. Поэтому в соответствующих строках INI-файла вместо единого кода (%c, %x, %X) записывайте дату/время набором кодов с заданными вручную разделителями — например, вместо $udt(%X) указывайте $udt(%H.%M.%S).
Функция $env(имя) позволяет вставить в поле ввода именно значение переменной, т. е. раскрыть её. (Вставка имени переменной — другая задача, более простая и рассматриваемая отдельно.) Список доступных переменных можно получить, например, командой cmd /k set.
Значение вставляемого функцией $cnt счётчика начинается в текущем сеансе плагина с 1, увеличивается на единицу после каждого использования функции и сбрасывается к исходному по завершении работы плагина (чаще всего — при выходе из TC). Для управления работой счётчика используйте команду Set/Reset Counter (см. далее). Чтобы отделить результат применения счётчика от остальной части строки, целесообразно заключить имя функции в скобки или снабдить символом-разделителем.
Функции $src и $sel полезны при сборке командной строки, когда необходимо объединить вставляемый фрагмент со всем содержимым поля ввода или только с какой-то его выделенной частью. Имя функции можно указывать перед вставляемым текстом, после него или внутри — это местоположение показывает, где во вставленной строке будет находиться прежний текст. Допустим, в меню записано Скобки=($src) или Скобки=($sel). В этом случае прежнее содержимое поля ввода (всё или только выделенная часть) окажется внутри круглых скобок.
Если применить функцию $src без параметров, в месте вставки будет просто просто продублировано прежнее содержимое поля ввода. Функция $sel без параметров не работает.
Варианты применения функции $clip() связаны со встроенными командами TC следующим образом: с параметром fileall вставляется содержимое всех колонок (помещённых в буфер посредством cm_CopyFileDetailsToClip, 2036), с file — имена папок/файлов (cm_CopyNamesToClip, 2017), с srcpath — путь источника (cm_CopySrcPathToClip, 2029) и с trgpath — путь получателя (cm_CopyTrgPathToClip, 2030). Используя функцию $clip(file) или $clip(fileall) для вставки информации о большом числе объектов в командную строку, не забывайте, что на её максимальную длину есть ограничения (см. документацию TC).
Функция $cmd для доступа к диалогу TC «Выбор команды» полезна не только универсальностью (диалог может быть открыт из произвольного поля, а не только там, где есть стандартная кнопка с лупой), но и тем, что вставка выбранной команды в поле ввода не приводит, в отличие от функционала самого TC, к безусловному удалению предыдущего содержимого поля.
Функции $dbrowse() и $fbrowse(имя маски) позволяют легко получать доступ к именам и путям произвольных файлов и папок в тех диалоговых окнах TC, где такая возможность не обеспечена стандартно (типичный пример — диалог настройки избранных каталогов). Общий вид соответствующих окон определяется системой. В скобках после $dbrowse вы можете указать любой текст-подсказку, который отобразится в диалоге выбора папки, или не указывать ничего, но само наличие скобок необходимо.
В функции $fbrowse для управления фильтрацией файлов можно указывать как универсальную маску *.*, так и наборы масок, подходящие для конкретного случая. В простейшем случае при наличии строки, например, Графика=$fbrowse(*.bmp*;*.jpg;*.png) мы получим в окне выбора файла набор масок, выглядящий как *.bmp*;*.jpg;*.png.
Маску можно снабдить пояснением, и тогда, например, при записи функции в виде $fbrowse(Все файлы (*.*)|*.*) в диалоге отобразится строка Все файлы (*.*). В современных ОС правильно обрабатывается и упрощённый вариант записи наподобие $fbrowse(Все файлы|*.*), но первый вариант более универсален: он годится, скажем, и для Windows 7, и для Windows XP. А при необходимости делать выбор между несколькими наборами файловых масок, снабжёнными индивидуальным пояснениями, строка правее знака равенства будет выглядеть примерно так (даны оба варианта записи):
$fbrowse(Все файлы (*.*)|*.*|Графика (*.bmp*;*.jpg;*.png)|*.bmp*;*.jpg;*.png)
$fbrowse(Все файлы|*.*|Графика|*.bmp*;*.jpg;*.png)
В результате в окне выбора файла должно появиться выпадающее меню из двух пунктов:
Все файлы (*.*)
Графика (*.bmp*;*.jpg;*.png)
Как видим, при такой форме записи для каждой будущей строки в окне выбора файла потребуются два параметра : текстовая подсказка и набор соответствующих масок. Символ вертикальной черты используется как разделитель и поэтому, разумеется, не может входить в состав пояснений или масок.
Функции $dir и $path удобны для создания пустых каталогов или пустой структуры по образцу. Например, после вызова функции $path на другом диске останется лишь добавить к вставленному полному пути имя диска и получить на новом месте набор пустых каталогов, точно повторяющий исходную файловую структуру. Имя/путь последнего открытого каталога вставляются вне зависимости от того, активна ли сейчас панель, где он открывался. В качестве последнего открытого каталога не могут выступать корневые каталоги (поскольку у них нет имён), виртуальные папки и FS-плагины. Если последним открывался архив, для вставки предлагаются имя/путь содержащего этот архив каталога.
Для создания структуры меню есть отдельный набор псевдо-функций:
$sub(имя) — Отобразить как подменю содержимое секции из файла TCDirMenu.ini (имя — заголовок секции без квадратных скобок).
$sec(имя) — Отобразить как подменю содержимое стандартной секции из файла wincmd.ini (имя — заголовок секции без квадратных скобок).
$swat(параметры) — Отобразить как подменю содержимое секции из INI-файла (wincmd.ini или другого) в соответствии с пользовательскими параметрами.
$sep — Отобразить разделитель (строку можно записывать в виде $sep=, $sep=sep или sep=$sep).
Функция $sec, предназначена в первую очередь для отображения в меню секций файла wincmd.ini с историями. Например, добавив в меню строку Новые каталоги=$sec(MkDirHistory) с заголовком секции без квадратных скобок, вы получите подменю, отображающее историю создания каталогов. В принципе, так можно вызвать любую секцию wincmd.ini, в которой есть нумерация строк (разумеется, сами числовые ключи в меню не попадут). Например, может быть полезен доступ к содержимому секций [LeftHistory] и [RightHistory] с историями посещённых каталогов (со скрытием виртуальных папок и FTP-подключений). А запись Избранное=$sec(DirMenu) позволит отображать избранные каталоги TC не отдельным меню, вызываемым собственной командой TC Favorites (см. выше), а как подменю в составе главного или локального пользовательского меню.
Можно использовать, однако, и некоторые секции без нумерации строк. Подменю, отображающее содержимое секции [Alias], удобно для выбора из списка и быстрой вставки в командную строку любого назначенного в TC псевдонима. Вставка имён FS-плагинов, взятых из секции [FileSystemPlugins], поможет вам не только при навигации посредством командной строки, но также при создании кнопок и пользовательских команд. Доступ ко всем именам шаблонов из секции [Searches] ускорит подстановку параметров для команд loadsearch или cd (в последнем случае — для фильтрации по шаблону с навигацией или без неё). Точно так же информацию из секций [rename] и [SyncOptions] несложно будет превратить в параметры команд, соответственно, multirename и syncopen.
Функция $swat — это более мощный и гибкий аналог функции $sec для опытных пользователей, которые хотят самостоятельно определять, в каком файле искать секции, что именно брать из них для показа в меню и какую часть отображаемой информации вставлять в поле ввода. Используя $swat с тем или иным набором параметров, можно воспроизвести любой из вариантов работы предыдущей функции. А освоив инструментарий дополнительных настроек, вы сможете сделать и гораздо больше!
Полная форма записи этой функции выглядит в условном виде так:
$swat(<section>,<show>,<insert>,<filter>,<group>,<ini-file>)
Параметры (аргументы) разделяются запятыми. Обязателен только первый аргумент, отсутствие остальных равносильно использованию значений по умолчанию. Однако из записи должно быть понятно, каким по порядку аргументам соответствуют пользовательские значения. Поэтому, если вы хотите задать значение, например, третьего по порядку параметра, надо указать и значения обоих предыдущих, а без указания последующих можно обойтись.
Параметр section в нашей условной терминологии — это заголовок секции без квадратных скобок. Как было сказано, его наличие обязательно.
Параметр show определяет что должно отображаться в меню из содержимого секции:
1 (используется по умолчанию) — имя ключа или его часть в виде, например, имени шаблона.
2 — значение ключа.
3 — то и другое (ключ слева, значение справа).
Параметр insert определяет что вставлять в поле ввода при выборе соответствующего пункта меню:
0 — ничего (содержимое подменю отображается только в справочных целях).
1 — имя ключа или его часть в виде, например, имени шаблона.
2 (используется по умолчанию) — значение ключа.
Параметр filter — регулярное выражение, помогающее взять из секции не все ключи, а лишь некоторые, проигнорировав неподходящие строки. По умолчанию все ключи считаются подходящими. Информацию о стандартном синтаксисе регулярных выражений C++ можно получить на сайте MSDN.
Параметр group — порядковый номер группы захвата (подвыражения), т. е. заключённой в скобки части регулярного выражения, используемой параметрами show и insert, когда из полного имени ключа надо взять только некий фрагмент (как, например, для шаблонов поиска). Нумерация начинается с 1, при значении 0 выражение используется целиком (как по умолчанию).
Параметр ini-file — имя INI-файла с искомой секцией. Можно использовать переменные окружения (значение по умолчанию — %COMMANDER_INI%). Этот параметр понадобится для обращения к стандартному файлу wcx_ftp.ini или к любому иному файлу, содержащему полезную информацию.
Рассмотрение примеров начнём с достаточно простого случая. Предположим, мы хотим видеть в подменю для секции [Alias] не только левую часть строк, как в $sec(Alias), но и правую, чтобы получить своего рода справочник по соответствию псевдонимов командам, сохранив при этом возможность вставки псевдонима. Это легко сделать, указав в INI-файле строку Псевдонимы=$swat(Alias,3,1).
Чтобы упростить сборку параметризованной команды ftpopen, нужен доступ к секции [connections] в файле wcx_ftp.ini. В представленной ниже записи указаны все возможные параметры, с помощью регулярного выражения в секции отыскиваются все нумерованные строки, а отображаются и вставляются только имена FTP-подключений:
$swat(connections,2,2,\d+,0,%Commander_path%\wcx_ftp.ini)
Похожим образом записывается функция и в том случае, если потребуется не просто просматривать список используемых в TWinKey закладок (как в специальном меню), но и быстро вставлять полное имя какого-то объекта с закладкой в поле ввода:
$swat(BookMarks,2,2,\d+,0,%Commander_path%\Plugins\WDX\TWinKey\TWinKey.bkm)
Наконец, вот пример использования групп в регулярных выражениях: $swat(Searches,1,1,(.+)_SearchFor,1). Здесь информация о шаблонах поиска извлекается, во избежание дублирования, только из ключей вида <имя>_SearchFor, причём для просмотра и вставки берётся только текст из первой и единственной здесь группы, включающей всё, что предшествует _SearchFor в исходных строках. В функциональном плане это точный эквивалент применения $sec(Searches) для отображения шаблонов поиска — более синтаксически сложный, зато полностью настраиваемый.
Вернёмся, однако, к секциям самого файла TCDirMenu.ini. Помимо главного меню, отображающего содержимое секции [Menu] и предназначенного по умолчанию для любых полей ввода, в файле TCDirMenu.ini можно сформировать также набор локальных меню, содержимое которых будет зависеть от контекста и автоматически отображаться вместо главного меню при обращении к строго определённым элементам интерфейса Total Commander. Секции для таких меню должны иметь специальные заголовки:
CmdLineMenu — Командная строка.
CommentMenu — Диалог редактирования комментариев.
CopyMoveMenu — Диалоги копирования, перемещения, создания ярлыка.
NewDirFileMenu — Диалоги создания нового каталога (папки) и файла.
PackMenu — Диалоги упаковки и распаковки.
RenameMenu — Поле переименования в файловой панели или в её заголовке.
ToolbarMenu — Диалоги настройки панели инструментов, пользовательских команд, избранных каталогов и меню «Запуск».
Если для данного диалога локальное (контекстное) меню не предусмотрено или не сформировано, в полях ввода вызывается главное меню.
Как в главном, так и в любом из локальных меню может быть использован весь набор рассмотренных выше псевдо-функций — от простейших разделителей до обращения к содержимому произвольных INI-файлов. В частности, $sub позволит организовать подменю разного уровня вложенности, ссылающиеся на сформированные вами секции TCDirMenu.ini с полезной для просмотра и вставки информацией. Разумеется, в этих секциях также могут использоваться все типы псевдо-функций.
Вместо создания меню, специфичного для данного диалога, вы можете просто получить готовое меню из любой другой секции (неважно — для диалога или для подменю), если укажете в «родной» секции строку UseMenu=имя_другой_секции. Например, если в секцию [PackMenu] добавить строку UseMenu=CopyMoveMenu, то при упаковке/распаковке будет вызываться меню, созданное вами для операций копирования и перемещения, а содержимое секции [PackMenu] будет проигнорировано. Строка UseMenu=Menu, добавленная в любую специальную секцию, предписывает использовать в соответствующем диалоге главное меню вместо локального.
Поясним сказанное на примерах. Предположим, мы хотим в главном меню, открываемом по умолчанию, отобразить в виде подменю избранные каталоги TC и закладки TWinKey, получить доступ к информации о файлах и путях из буфера обмена, а списки переменных и параметров TC сделать более подробными. Для диалога упаковки создадим отдельное меню, куда войдёт и подменю с разными вариантами RAR-архивации, в том числе для создания архивов в новом формате RAR5. В диалогах для создания каталогов и файлов тоже будет собственное меню, где предусмотрим, в частности, быструю вставку перед новым именем текущей даты, отделённой пробелом. В диалоге создания текстового файла (по Shift+F4) очень пригодится список с неким типовым набором готовых расширений, чтобы не прописывать их каждый раз явным образом. В диалог копирования добавим проверку считываемости файлов и каталогов путём их копирования в NUL. В диалогах настройки панели инструментов, пользовательских меню и команд облегчим доступ ко всяческим параметрам и параметризованным командам. Для командной строки TC обеспечим отображение в виде подменю её истории и содержимого секций файла wincmd.ini для псевдонимов и FS-плагинов, а заодно упростим сборку команд для открытия папок этих плагинов. И, наконец, в отдельных меню организуем доступ к окнам для выбора папок и файлов, к диалогу TC «Выбор команды» и к некоторым секциям файла wincmd.ini, содержащим шаблоны.
Тогда после редактирования основная секция меню может принять в файле TCDirMenu.ini примерно такой вид:
[Menu]
Переменные TC=$sub(Environment)
$sep=
Параметры TC=$sub(Parameters)
$sep=
Избранное=$sec(DirMenu)
Закладки=$swat(BookMarks,2,2,\d+,0,%Commander_path%\Plugins\WDX\TWinKey\TWinKey.bkm)
$sep=
Выбор папки=$dbrowse(Выберите папку:)
Выбор файла=$fbrowse(Все файлы (*.*)|*.*)
$sep=
Все колонки=$clip(fileall)
Только имя=$clip(file)
Путь источника=$clip(srcpath)
Путь получателя=$clip(trgpath)
$sep=
Имя последней папки=$dir
Путь последней папки=$path
$sep=
Счётчик=($cnt)
Исходная строка=$src
Специальное меню для диалога упаковки начнётся, например, со строк:
[PackMenu]
Упаковка RAR=$sub(RAR_Pack)
Пользовательское меню для командной строки будет содержать дополнительные элементы:
[CmdLineMenu]
История команд=$sec(Command line history)
$sep=
Псевдонимы=$sec(Alias)
$sep=
Выбор команды=$cmd
Выбор папки=$dbrowse(Выберите папку:)
Выбор файла=$fbrowse(Все файлы (*.*)|*.*)
$sep=
FS-плагины=$sec(FileSystemPLugins)
Префикс FS-плагина=cd \\\ $sel
В меню для создания объектов мы включим, в числе прочего, подменю с набором готовых расширений и строку для вставки текущей даты:
[NewDirFileMenu]
Расширения=$sub(Extensions)
$sep=
Дата (рус., сокр.)="$udt(%y%m%d) "
В меню для копирования/перемещения добавим строку для копирования в NUL (чтобы замещать ей путь получателя):
[CopyMoveMenu]
Копирование в NUL=\\.\nul
В меню для диалогов настройки панели инструментов и пользовательских команд/меню добавим в том числе пункты:
[ToolbarMenu]
Команды с параметрами=$sub(Param_commands)
$sep=
Шаблоны поиска=$sec(Searches)
Шаблоны переименования=$sec(rename)
Шаблоны синхронизации=$sec(SyncOptions)
А секции, описывающие предусмотренные нами подменю, будут примерно такими:
[Environment]
Каталог TC=%COMMANDER_PATH%
Значение %Commander_Path%=$env(%COMMANDER_PATH%)
$sep=
Основной файл настроек TC=%COMMANDER_INI%
Исполняемый файл TC=%COMMANDER_EXE%
Диск, где запущен TC=%COMMANDER_DRIVE%
$sep=
Ваши данные приложений=%APPDATA%
Папка Program Files=%PROGRAMFILES%
Папка Windows=%WINDIR%
Папка для временных файлов=%TEMP%
[RAR_Pack]
Обычное сжатие=" -m3 -os -rr -cfg"
Обычное, непрерывный=" -m3 -os -s -rr -cfg"
Максимальное сжатие=" -m5 -os -rr -cfg"
Максимум, непрерывный=" -m5 -os -s -rr -cfg"
$sep=
RAR5, максимум=" -ma -m5 -os -cfg"
[Extensions]
TXT=.txt
INI=.ini
MNU=.mnu
RUS=.rus
[Param_commands]
Перейти в указанный каталог=cd
Восстановить вкладки (замена)=opentabs
Восстановить вкладки (добавление)=appendtabs
Открыть FTP-соединение=ftpopen …и так далее по списку подобных команд
[Parameters]
Выделенные файлы=$sub(Selected)
Файл-список=$sub(FileList)
$sep=
%P - Исходный каталог (путь с \ в конце)=%P
%N - Имя файла под курсором=%N …и так далее по списку параметров
Результат этих и других усовершенствований — демонстрационный расширенный файл меню TCDirMenu.Rus_ext.ini, о практическом применении которого рассказано выше.
Команда Set/Reset Counter предназначена для тех, кто использует в меню функцию счётчика $cnt. Одной и той же командой вы сможете, в зависимости от условий применения, либо принудительно сбросить текущее значение счётчика и начать новый отсчёт с единицы, либо задать новое произвольное начальное значение. Как и предыдущие, эта команда работает в любом активном поле ввода, способ её клавиатурного вызова определяется на странице Плагины. Алгоритм работы следующий:
Если в поле ввода что-то выделено, новое начальное значение счётчика ищется в начале выделения.
Если выделения нет, новое значение счетчика ищется в начале строки.
Если найдено какое-то число, оно и становится новым исходным значением счётчика (до конца текущего сеанса или до нового применения команды).
Если не найдено никакого числа, это трактуется как сброс счётчика, отсчёт вновь начинается с единицы.
Простейший случай применения: в пустом поле ввода команда сбрасывает счётчик, а если введено число, делает его начальным значением.
Секундомер, в отличие от прочих плагинов 2-го уровня, работающих только в активном поле ввода, может вызываться из любой области интерфейса Total Commander (в том числе при открытых модальных диалогах). В правом нижнем углу правой файловой панели TC открывается небольшое окошко, где сверху отображаются либо показания секундомера, либо текущая дата (в зависимости от команды вызова), а в основной части всегда отображается текущее время. Окошко можно передвинуть в произвольную точку экрана, но новое местоположение запоминается только для текущего сеанса TC, далее секундомер вновь будет открыт в позиции по умолчанию.
Поддерживаются команды запуска/остановки секундомера (Start/Stop), приостановки/возобновления отсчёта (Pause/Resume) и открытия/закрытия окошка (Show/Hide), которым следует назначить клавиши вызова.
Командой запуска окошко открывается с одновременным запуском секундомера. При остановке секундомера той же командой его показания сбрасываются и заменяются текущей датой. Для возврата в режим секундомера и начала нового отсчёта вновь примените команду запуска.
Команда открытия выводит окошко в режиме часов, где в дополнение к текущему времени отображается — вместо показаний секундомера — текущая дата. Повторное применение той же команды закрывает окошко. Для перехода в режим секундомера примените команду запуска.
Команда приостановки/возобновления позволяет поставить секундомер на паузу, а затем продолжить текущий отсчёт.
В правой верхней части окошка отображается индикатор и переключатель текущего состояния в виде маленького секундомера:
Без дополнительного значка — когда секундомер отключён.
Со значком воспроизведения — когда идёт отсчёт.
Со значком паузы — когда отсчёт приостановлен.
Щелчок на индикаторе, в зависимости от исходного его вида, запускает, приостанавливает или возобновляет отсчёт, а двойной щелчок отключает секундомер с переходом к показу текущей даты.
Закрыть окошко можно не только командой открытия/закрытия, но также щелчком на нём правой кнопки мыши.
Калькулятор — плагин 2-го уровня, простое средство в помощь как программистам на С/C++, так и обычным пользователям, работающее в режиме одной строки и дающее возможность вычислять символические выражения. Калькулятор реализован на основе библиотеки для быстрой обработки математических выражений — muParser, c некоторыми изменениями и дополнениями базовых возможностей. В настоящее время используется версия библиотеки 2.2.3.
Вычисления можно выполнять в любом поле ввода TC, но удобнее всего это делать в командной строке. Результат выводится в десятичном, шестнадцатеричном или двоичном формате (для этого предназначены, соответственно, команды Dec, Hex и Bin). Чтобы использовать калькулятор, назначьте этим командам клавиши вызова.
Для записи выражений используются имена функций, операторов, констант и переменных, а также соответствующие аргументы. Разделитель целой и дробной части числа — точка. Указав в поле ввода всё необходимое для вычисления и вызвав с клавиатуры ту или иную команду, вы получите результат в нужном вам формате.
Калькулятор можно использовать и для быстрого преобразования одного формата числовой записи в другой, чтобы, например, превращать десятичные идентификаторы команд TC в шестнадцатеричные, и наоборот.
При попытке выполнить недопустимое вычисление вы увидите запись ±1.#INF для ведущих к бесконечному результату выражений типа 2/0 или ±1.#IND для неопределенных выражений типа sqrt(-1).
Результат вычисления может быть сохранён в заданных пользователем переменных и использован в последующих вычислениях в текущем сеансе плагина (чаще всего — до перезапуска TC). Имена таких переменных (поименованных ячеек памяти) могут состоять только из цифр и/или латинских букв и должны начинаться с буквы. Калькулятор поддерживает любое их количество.
Например, вместо 5+2 запишем X1=5+2. Результат вычисления (7) будет показан как обычно, а также запомнен в ячейке памяти с именем X1. Теперь запишем Y1=6*X1. При этом будет использовано число 7, запомненное в X1. Результат (42) будет показан и запомнен в ячейке Y1. Если мы продолжим вычисления и запишем sqrt(Y1+X1), то получим квадратный корень из 49, т. е. 7.
Переменные используются и в цепочках вычислений, схему которых поясняет простейший пример: A=2,B=3,A*B (запятая служит разделителем). На практике, разумеется, такой вид вычислений более полезен при работе со сложными выражениями, когда хочется сделать запись нагляднее и минимизировать число возможных ошибок. Например, известная формула Герона для вычисления площади треугольника по длине его сторон может быть записана как p=(a+b+c)/2,sqrt(p*(p-a)*(p-b)*(p-c))) с условием, что в переменных a, b и c уже должны находиться нужные длины сторон.
Встроенные возможности калькулятора далее будут рассмотрены по необходимости кратко. (За дополнительными подробностями по работе стандартных операторов и функций обращайтесь к специальным справочным источникам.)
Вы можете выполнять бинарные арифметические операции в формате x<op>y, где <op> — оператор, а x и у — аргументы операции (операнды). Наряду с операциями сложения (оператор +), вычитания (оператор -), умножения (оператор *) и деления (оператор /) доступны также:
нахождение остатка от деления (деление по модулю): делимое указывается до оператора %, делитель после него
нахождение процента от числа: число указывается до оператора %%, процент после него
возведение в степень: число указывается до оператора ^^, степень после него; это эквивалент функции pow(x,y)
Калькулятор позволяет выполнять в C-cтиле:
бинарные операции сравнения: == (равно), != (не равно), <= (меньше или равно), >= (больше или равно), < (меньше), > (больше); результат — значение логического типа 1 (true, истинное) или 0 (false, ложное)
логические операции: && (логическое И), || (логическое ИЛИ); результат — значение логического типа 1 или 0
побитовые операции: & (побитовое И), | (побитовое ИЛИ), ^ (XOR, побитовое исключающее ИЛИ), << (левый сдвиг), >> (правый сдвиг); для операций сдвига первый аргумент — число, а второй — величина сдвига
Поддерживаются условные выражения, где условный (троичный) оператор ?: работает с тремя аргументами и, в зависимости от истинности или ложности некоего условия (логического выражения), вычисляет одно из двух выражений: <условие> ? <выражение1> : <выражение2>.
Для вычисления длины строки используется в виде оператора модификатор значения L, указываемый после строки, которую обязательно надо заключить в двойные кавычки. Например, при записи "абвгд"L+"ежз"L результатом будет 8. Это, кстати, тот редкий случай, когда для вычисления берутся не численные выражения.
Кроме того, стандартно поддерживаются в формате функция(x) или функция(x,y…), с указанием в скобках одного или нескольких аргументов:
функция возведения в степень: pow(x,y), где x — число, y — степень; это эквивалент оператора ^^
функция извлечения квадратного корня: sqrt
тригонометрические функции: sin — синус, cos — косинус, tan — тангенс, asin — арксинус, acos — арккосинус, atan — арктангенс, atan2 — арктангенс с двумя параметрами; расчёты ведутся в радианах
гиперболические функции: sinh — гиперболический синус, cosh — гиперболический косинус, tanh — гиперболический тангенс, asinh — гиперболический арксинус, acosh — гиперболический арккосинус, atanh — гиперболический арктангенс
логарифмические функции: log2 — двоичные логарифмы, log10 (log) — десятичные логарифмы, ln — натуральные логарифмы
сигнум-функция: sign (-1 при x<0, 0 при x=0, 1 при x>0)
экспоненциальная функция: exp
функция абсолютной величины числа: abs
функция округления до целого: rint
функции с произвольным числом аргументов: sum — сумма аргументов, avg — среднее арифметическое, min — наименьший аргумент, max — наибольший аргумент
При вычислениях также поддерживаются предопределённые константы «пи» (_pi=3.141592653589793238462643) и «е» (_e=2.718281828459045235360287).
Пользовательские функции, операторы и константы позволяют существенно расширить изначальную функциональность калькулятора. Вся дополнительная информация записывается в файл muCalc.ini, который обязателен в этом случае, редактируется только вручную и должен находиться в одном каталоге с парой файлов muCalc.dll и muCalc64.dll (по умолчанию это основной каталог TWinKey). В дистрибутиве TWinKey INI-файла с таким именем и расположением нет (во избежание перезаписи пользовательского файла меню одноимённым стандартным), однако в подкаталоге Examples вы найдёте образцы файлов с другими именами: два стандартных (английский и русский, с небольшим числом примеров) и расширенный (русский, с некоторыми изменениями и дополнениями). Для применения скопируйте один из этих файлов в каталог c muCalc.dll и muCalc64.dll, переименуйте в muCalc.ini, а затем перечитайте настройки TWinKey в меню команд. Далее вы можете изменять исходный INI-файл по своему усмотрению.
Как и в случае с TCDirMenu.ini, рассмотрим информацию, содержащуюся в шапке файлов-образцов, подробнее и с пояснениями на примерах.
Пользователь может определить неограниченное число констант и до 100 функций. Для имён функций и констант допустимы символы:
0123456789_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
Функции с двумя параметрами могут быть определены также как бинарные (двухместные) операторы, а функции с одним параметром — как унарные (одноместные) постфиксные операторы. Для операторов допустимы символы:
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ+-*^/?<>=#!$%&|~'_{}
Имена функций и констант чувствительны к регистру, как и операторы.
Для записи определяемых пользователем функций предназначена секция [Functions]. Каждая строка с описанием функции состоит из двух частей, разделенных первым по порядку знаком равенства. Слева записывается определение функции, состоящее из имени функции и заключённого в скобки необязательного списка параметров, справа — вычислительный блок, называемый телом функции. Ещё правее могут опционально записываться после особого разделителя комментарии для отображения их в специальном меню (далее мы рассмотрим это подробно). Если функцию поясняет в INI-файле обычная закомментированная строка (как в стандартных файлах-примерах), она в меню, разумеется, показана не будет.
В секцию [Operators1] записываются назначенные пользовательским функциям унарные постфикстные операторы, а в секцию [Operators2] — бинарные операторы. В каждой строке этих секций слева указывается имя функции, а справа, после знака равенства, назначенный ей оператор.
Наконец, в секцию [Constants] записываются данные о пользовательских константах. До знака равенства указывается имя константы, а после — значение. Как и функции, константы могут сопровождаться комментариями, предназначенными для отображения либо в специальном меню, либо непосредственно в INI-файле.
Формат вызова пользовательской функции в командной строке: функция(x,y,…) с числом параметров от 1 до 9; формат вызова бинарного оператора: x<op>y; формат вызова унарного постфиксного оператора: x<op>.
Поименованные значения внутри тела функции являются переменными. (Отметим, что константа — частный случай переменной, она может получить значение только один раз.)
Параметры (явно указанные в определении функции или подразумеваемые) — механизм, помещающий значения аргументов в переменные внутри тела функции.
Если функция определена с параметрами, то в момент её вызова соответствующие параметрам переменные в теле функции получат значения аргументов, указанных при вызове функции, причём количество аргументов должно быть равно количеству параметров, указанных в определении функции.
Если функция определена без параметров, то подразумевается, что у неё есть 9 параметров с предопределёнными именами p1, p2, … p9, а при вызове может быть указано произвольное число аргументов (от 1 до 9). Все необходимые параметры явным образом указываются в теле функции, а недостающие параметры считаются равными нулю. Цифра в имени предопределённого параметра указывает его порядковый номер при вызове функции.
Встроенная переменная _cnt (количество параметров) может использоваться для самых разных надобностей. Она позволяет, например, записать функции для определения среднего квадратичного или среднего гармонического:
sq=sqrt((p1^^2+p2^^2+p3^^2+p4^^2+p5^^2+p6^^2+p7^^2+p8^^2+p9^^2)/_cnt) — среднее квадратичное
Harm=_cnt/(h(p1)+h(p2)+h(p3)+h(p4)+h(p5)+h(p6)+h(p7)+h(p8)+h(p9)) — среднее гармоническое (здесь нам потребуется ещё вспомогательная функция h(x)=x==0?0:1/x — это, кстати, пример сочетания операции сравнения и условной операции)
Внутри функций можно пользоваться уже существующими переменными. Пусть, например, у нас есть функция func(x)=x*2+a. Если калькулятор сначала обработал строку а=2, а потом func(3), то в результате получим 8. Если же переменная не была создана до вызова функции, то её значение считается равным нулю, а итоговый результат будет 6.
Приведём некоторые другие примеры. Допустим, в INI-файл добавлена строка sum=p1+p2+p3+p4+p5+p6+p7+p8+p9. Параметров в определении функции нет, поэтому далее калькулятору можно давать, например, строку sum(1,2,3) или строку sum(3,6,9,12,15).
Теперь снова обратимся к формуле Герона. Для тела функции возьмём без изменений запись цепочного вычисления: Heron(a,b,c)=p=(a+b+c)/2,sqrt(p*(p-a)*(p-b)*(p-c)). В командной строке после подстановки вместо a, b и c нужных длин сторон получаем, например, Heron(3,4,5) и вычисляем результат 6. (Заметим, что если до вызова функции уже была создана переменная p, то после вычисления функции мы не только увидим окончательный результат, но и в переменной p останется значение полупериметра треугольника.) Можно было, однако, поступить иначе, определив функцию без параметров и записав строку так: Heron=p=(p1+p2+p3)/2,sqrt(p*(p-p1)*(p-p2)*(p-p3)). Тогда и в командной строке мы увидим имя функции Heron, к которому надо будет дописать аргументы в скобках, придя другим путём к той же записи Heron(3,4,5) и, соответственно, к тому же результату.
У заданных пользователем бинарных операторов есть ряд особенностей поведения:
Они имеют наивысший приоритет (равный оператору возведения в степень и более высокий, чем для умножения), т. е. x*y<op>z обрабатывается как x*(y<op>z).
Они имеют так называемую левую ассоциативность (вычисление происходит слева направо), т. е. x<op>y<op>z обрабатывается как (x<op>y)<op>z.
А теперь попробуем сформировать в файле muCalc.ini дополнительный набор функций, операторов и констант.
Допустим, мы хотим дополнить встроенную операцию вычисления процентов от заданного числа не менее полезным вычислением процентного соотношения двух чисел. Дадим новой функции имя pf (от percent fraction) и запишем соответствующую строку как pf(x,y)=x/y*100. Как видим, здесь используется вариант определения функции с параметрами в скобках, в таком виде он и будет вставлен в командную строку, так что останется только заменить параметры на аргументы.
Далее добавим строки для пересчёта градусов Фаренгейта в градусы Цельсия и обратно. Пусть это будут функции с именами, соответственно, f2c (Fahrenheit to Celsius) и c2f (Celsius to Fahrenheit), для которых после знака равенства укажем формулы пересчёта. Кроме того, для упрощения тригонометрических расчётов добавим преобразование градусов в радианы и обратно. В теле каждой из этих функций этой группы используем предопределённую переменную p1.
Теперь, вставив в командную строку определение любой вновь созданной функции и указав нужное число аргументов, мы сможем выполнять вычисления точно так же, как со встроенными функциями.
Но, возможно, мы захотим работать в калькуляторе не только с функциями, но и с аналогичными по предназначению операторами. Поэтому следующим шагом (полезным, хотя и необязательным) будет назначение новым функциям бинарных или унарных операторов, чтобы обеспечить альтернативный способ вычисления. Для функции pf, имеющей два параметра, потребуется бинарный оператор, записываемый в INI-файле в секцию [Operators2], для остальных созданных нами функций — унарные постфиксные операторы, записываемые в секцию [Operators1]. В нашем случае оператор для вычисления процентов записан с помощью двух символов, а остальные операторы — односимвольные.
Для вычисления процента от числа в калькуляторе имеется встроенный бинарный оператор, но нет соответствующей функции. Это несложно исправить, добавив в INI-файл нужную строку для новой функции. Для разнообразия запишем её определение без параметров, как pc (от percent count). А если, скажем, добавить в секцию [Operators2] строку pc=%%, мы увидим в меню не только новую функцию, но и встроенный оператор!
Наконец, несколько пополним число известных калькулятору констант. Возьмём, например, скорость света и постоянную Планка. По аналогии с уже существующими переменными обозначим их буквами с предшествующим знаком подчёркивания. Пример записи очень больших и очень малых величин — значение постоянной Планка, где 6.62606e-34 означает умножение 6.62606 на 10 в степени -34.
В конечном итоге рабочая часть нашего демонстрационного INI-файла примет, вместе в необязательными комментариями, следующий вид:
[Functions]
pf(x,y)=x/y*100• Процентное отношение
pc=p1*p2/100• Процент от числа
f2c=(p1-32)*5/9• Фаренгейт->Цельсий
c2f=(p1*9/5)+32• Цельсий->Фаренгейт
r2d=p1*180/_pi• Радианы->Градусы
d2r=p1*_pi/180• Градусы->Радианы
; Унарные постфиксные операторы
[Operators1]
f2c=F
c2f=C
r2d=R
d2r=D
; Бинарные операторы
[Operators2]
pf=/%
pc=%%
[Constants]
_h=6.62606E-34• Постоянная Планка
_c=299792458• Скорость света
; Настройки меню
[Config]
FunctionTextLimit=0
CommentTextLimit=
CommentDelimiter=•
SortbyName=0
Как видим, в демонстрационном файле присутствует неизвестная нам пока секция [Config], а часть комментариев записана в необычном формате прямо в строках с функциями и константами. Эти записи предназначены только для специального меню, к рассмотрению которого мы и переходим.
Меню содержит как встроенные функции и константы, так и все пользовательские дополнения. Это делает работу с калькулятором намного проще и удобнее. Если вы хотите пользоваться этой возможностью, откройте TWinKey Utilisator на странице Плагины и определите клавиатурный вызов для команды Var&Const.
В число секций меню входят, в порядке следования:
Постоянное подменю muParser, содержащее в алфавитном порядке имена всех встроенных функций калькулятора.
Список всех пользовательских функций. Порядок сортировки настраиваемый. Левая часть строки — имя функции (со списком параметров или без него) и оператор в квадратных скобках (если он был определён), правая — тело функции, после которого может отображаться комментарий.
Алфавитный список всех пользовательских переменных, заданных в текущем сеансе работы с плагином. Левая часть строки — имя переменной, правая — значение.
Постоянный алфавитный список встроенных констант. Левая часть строки — имя константы, правая — значение.
Список пользовательских констант. Порядок сортировки настраиваемый. Левая часть строки — имя константы, правая — значение, после которого может отображаться комментарий.
Отображаемые в меню имена функций, переменных, констант, операторов можно выбрать для быстрой вставки в текущее поле ввода.
Если вы хотите вставить в поле ввода вместо имени пользовательской функции определённый для неё оператор, делайте это при нажатой клавише Shift.
Поскольку отображение в меню встроенных операторов не предусмотрено, вы можете либо сделать так, как в приведённом выше примере с вычислением процента от числа, либо прибегнуть к помощи другого плагина 2-го уровня,включив в пользовательское меню командной строки необходимую текстовую заготовку.
В файле muCalc.ini можно создать секцию [Config] для регулирования отображаемой в меню информации. Здесь могут присутствовать следующие ключи:
FunctionTextLimit ограничивает отображаемую длину тела функции (в символах). По умолчанию ключ не имеет фиксированного значения, длина строки меню ограничивается только шириной экрана. Тело функции, длина которого превышает заданный ключом предел (например, 30 символов), отображается в меню частично с добавлением в конце многоточия. При значении 0 тело функции не отображается вообще.
CommentTextLimit работает по тому же принципу, что предыдущий ключ, только относится к отображаемой длине комментариев (как для функций, так и для констант). При значении 0 все комментарии скрыты полностью, включая и разделители.
CommentDelimiter определяет вид разделителя между телом функции (или значением константы) и комментарием. Перед разделителем в меню автоматически добавляется пробел. Используемые символы не должны встречаться ни в теле функции, ни в значении константы! Значение по умолчанию — ; (точка с запятой).
SortByName отвечает за вид сортировки в секциях с пользовательскими функциями и константами. Значение по умолчанию — 0 (порядок следования строк в секции меню тот же, что в INI-файле). При SortByName=1 сортировка выполняется по именам функций и констант.
Запись строки ключа без значения или её отсутствие в INI-файле трактуется как состояние по умолчанию. Решив заменить предопределённый разделитель на другой (в нашем примере — на символ маркера •), не забудьте указать новый разделитель в INI-файле не только перед всеми предназначенными для меню комментариями, но и в строке ключа CommentDelimiter. В расширенном файле-примере muCalc.Rus.Ext.ini в секции [Config] действительно необходимы только этот ключ и FunctionTextLimit=0, скрывающий в меню тело функции, а прочие ключи можно было бы не и указывать, поскольку они используются здесь в состоянии по умолчанию.
ПРИМЕЧАНИЯ
Пользовательские функции и соответствующие им операторы предназначены только для численных выражений.
Не пытайтесь переопределять встроенные бинарные операторы и константы пользовательскими, поскольку результат этого непредсказуем! (Пользовательское определение L как постфиксного унарного оператора возможно для числовых значений, не заключённых в кавычки.)
Содержит опции разнообразного назначения (например, для более удобной работы с окнами TC и внутреннего просмотрщика).
Эта опция позволяет временно фиксировать окно TC позади других, частично его перекрывающих, простым щелчком мыши либо в любой части окна, кроме заголовка, либо только в файловой панели (способ выбирается в выпадающем списке). Это исключает непреднамеренное перемещение активного окна TC на первый план и очень полезно, например, при перетаскивании объектов. Если вам всё же захочется переместить окно TC вперёд, щёлкните средней или правой кнопкой мыши в произвольном месте окна либо левой кнопкой — на его заголовке или просто за пределами файловых панелей (в зависимости от способа фиксации). Выбор в выпадающем списке строки Запретить (Никогда) отключает функцию.
Закрытие сразу всех окон Листера
Когда эта опция включена, вы сможете закрывать одной командой все открытые окна внутреннего просмотрщика (Lister). При включённой опции в системное меню управления окном внутреннего просмотрщика, открываемое щелчком по значку в заголовке окна или правой кнопкой мыши на кнопке/миниатюре в панели задач, добавляется пункт Закрыть все окна. На странице Клавиатура можно также назначить команде CloseAllListers клавиатурный вызов, но он будет доступен только в каком-то из открытых окон внутреннего просмотрщика, а не в главном окне TC.
ПРИМЕЧАНИЕ
Если несколько окон внутреннего просмотрщика запущено отдельным процессом (см. описание параметра командной строки /S=L в справке TC) то указанная команда закрывает не все окна, а только то, из которого вызвана.
Проверка Листера при выходе из TC
Стандартное поведение Total Commander, когда при выходе из него автоматически и без предупреждения закрываются и все окна внутреннего просмотрщика, удобно далеко не всегда. (Например, если файл был открыт для просмотра из архива, он в результате такого закрытия не удаляется из временного каталога.)
Включение опции позволяет контролировать подобные ситуации. При выходе из TC проверяется, имеются ли открытые окна внутреннего просмотрщика, и сообщается сколько их. Далее вы можете либо подтвердить выход из TC, либо отменить его, чтобы корректно завершить работу с внутренним просмотрщиком (например, командой, доступной после включения предыдущей опции).
ПРИМЕЧАНИЕ
Если внутренний просмотрщик запущен отдельным процессом (c параметрами /S=L), его окно останется открытым и после выхода из Total Commander. В этом случае проверка состояния внутреннего просмотрщика не имеет смысла и не выполняется.
Запрос на выход из группового просмотра
Когда эта опция включена, вы увидите специальное предупреждение при попытке (возможно, случайной) закрыть окно внутреннего просмотрщика в режиме просмотра группы файлов с возможностью переключения между ними. Этот режим доступен при просмотре подборки выделенных файлов (клавиша вызова назначается в настройках TC для опции Выделенные файлы — внутренней программой), а также в результате перехода по ссылке из открытого HTML-файла к другому файлу. Вы можете либо подтвердить закрытие окна просмотрщика, либо вернуться к просмотру нужных вам файлов.
Автоподстановка в стиле DOS/UNIX
Если при включённой опции ввести в поле ввода часть пути и нажать клавишу, назначенную на странице Клавиатура команде AutoCompletion, то прямо в этой строке будет выполняться в стиле DOS/UNIX циклический перебор подходящих имён файлов/папок (в порядке, предоставляемом системой, без разделения файлов и папок). У этой функции есть несколько принципиальных отличий от автоподстановки, используемой TC:
она может работать практически в любом диалоге TC, где есть поле, допускающее ввод пути;
она может использоваться в любом месте строки ввода, а не только в её конце;
она применима в путях, содержащих переменные (например, %COMMANDER_PATH% или %WINDIR%);
она подставляет в строку также и объекты, внесённые в список исключений TC.
Приведём пример работы функции. В командной строке TC вводим C:\Totalcmd\Plugins. Если в TC включены функции автозавершения путей и автоподстановки имён, то при вводе каждого из элементов пути они будут работать. Возвращаемся в середину командной строки и начинаем дописывать к C:\Totalcmd\, например, Utils. Стандартные «подсказки» ТС здесь уже не работают, но при серии нажатий (или при нажатии и удержании заданной клавиши) в строку последовательно подставляются имена файлов и папок, продолжающие часть пути, находящуюся левее позиции курсора. Если, скажем, было введено C:\Totalcmd\U, нам, помимо папки Utils, будут предлагаться также файлы unacev2.dll, unrar.dll и usercmd.ini.
При запуске TC выполнять команды
TWinKey позволяет автоматически запускать при старте ТС внутренние команды — как встроенные (с префиксом cm_), так и и пользовательские (с префиксом em_). Это полезно для автоматического включения тех опций, состояние которых не запоминается при выходе из программы (пример: автозапуск TC в режиме быстрого просмотра), а также для опосредованного (через пользовательские команды) автозапуска скриптов или BAT-файлов.
Если вы выбрали несколько команд, их следует указать в поле ввода подряд, разделяя символом вертикальной черты. Вы можете вручную изменять порядок их следования и, соответственно, выполнения, добавлять новые команды или удалять имеющиеся.
Новую команду можно добавить в конец списка автозапуска двойным щелчком на её имени в списке команд ТС на странице Клавиатура. Вертикальная черта, отделяющая новую команду от предыдущей, добавляется при этом автоматически.
Имейте в виду, что указанные команды будут выполняться одна за другой без всякого периода ожидания.
Чтобы временно отменить автозапуск команд, не очищая поле с их списком, достаточно снять отметку с этой опции.
(В визуальных схемах реализована похожая, но не тождественная функция — автоматическое выполнение команд при открытии определённых каталогов.)
Переназначать системные клавиши
Эта опция позволяет использовать в клавиатурных назначениях для команд TC и TWinKey также и клавиши, заданные для действий на системном уровне (например, Ctrl+Esc или Alt+Tab). К системным клавишам также относятся клавиши Проводника (Win+E, Win+M и т. д.). Пользуйтесь этой функцией с осторожностью!
Следующий плагин при быстром просмотре
Если при быстром просмотре в TC вы захотите выбрать для файла под курсором другой LS-плагин, придётся сначала переместить фокус из файловой панели в окно быстрого просмотра (на месте другой файловой панели), там нажать один или несколько раз клавишу 4, а для продолжения навигации по файлам снова вернуться в исходную панель. Предлагаемая функция позволяет во время быстрого просмотра переключаться с клавиатуры на следующий по порядку плагин внутреннего просмотрщика, не покидая исходной файловой панели. Способ вызова команды NextQuickView определите на странице Клавиатура.
Применять и для включения быстрого просмотра
Эта опция доступна только при активности предыдущей. Она позволяет с помощью команды NextQuickView не только переключаться между LS-плагинами, но и включать сам режим быстрого просмотра (в дополнение к Ctrl+Q и иным способам, предлагаемым TC). Выход из режима по-прежнему будет выполняться средствами TC.
Язык
В этом списке по умолчанию для всех элементов интерфейса предлагается встроенный английский язык. Выберите нужный вам языковой файл (например, Russian.ini). Он должен находиться в подкаталоге Language каталога TWinKey.
После выбора языкового файла и при наличии непосредственно в каталоге TWinKey Readme-файла с соответствующим именем (например, ReadMe_Russian.html для русского языка) именно он откроется с любой страницы TWinKey Utilisator кнопкой Справка или клавишей F1 в используемом по умолчанию браузере. Это произойдёт после показа промежуточного диалога, содержащего цитату из замечательного рассказа Р. Шекли «Верный вопрос» («Ask a foolish question») на языке оригинала. (Наиболее известный вариант русского перевода: «Чтобы правильно задать вопрос, нужно знать бо́льшую часть ответа».) При отсутствии в указанном месте локализованного файла документации будет автоматически открыта его англоязычная версия (ReadMe.html).
Здесь представлены люди, высказывания которых (приведённые на языке оригинала) послужили идейным обоснованием появления TWinKey (Курт Воннегут и Роберт Шекли) либо практическим руководством по его написанию (И. В. Мичурин и Н. В. Гоголь).
Это меню обеспечивает быстрый доступ к управлению настройками TWinKey, а также содержит практически полный набор команд для работы с прикреплёнными файлами и с закладками. Оно открывается щелчком средней кнопки мыши в произвольном месте заголовка любой файловой панели TC с именем текущего каталога. Вы также можете открывать меню из главного окна TC клавишами, назначенными для вызова команды ShowTWMenu.
В заголовке меню команд указан номер текущей версии TWinKey. Если для входящих в меню команд назначены клавиши, они будут показаны. Команды, выполнение которых в данном контексте невозможно, отображаются как недоступные.
Меню использует цветовые настройки, заданные для альтернативного списка дисков.
Управление функцией прикрепления файлов выполняется на верхнем уровне меню. Это уже описанные ранее команды Прикрепить/Открепить файл, Прикрепить файл, Открепить файл, Прикрепить и упорядочить и Открепить все файлы.
Команды для закладок собраны в подменю Закладки, идентичное по составу отдельному меню, открываемому командой Вызвать меню (JumpBookMark).
В меню присутствуют также специальные пункты для функций, текущее состояние которых определяется наличием/отсутствием галочки и может быть изменено щелчком в соответствующей строке:
Регулировать ширину колонок. Активизирует в обеих файловых панелях в кратком режиме представления режим фиксированной ширины колонок (постоянно либо до перечитывания настроек TWinKey — в зависимости от состояния опции Точная ширина колонок в кратком режиме на странице Файловые панели). Состояние по умолчанию зависит от того, включена или нет указанная опция. В других режимах представления команда недоступна.
Использовать файловые группы — команда UseFileGrouping (ей можно назначить клавиатурный вызов). Позволяет временно отключить/включить саму возможность любой сортировки по файловым группам (как глобальной, так и для визуальных схем), не изменяя опции конфигурационной утилиты. При первом же перечитывании настроек TWinKey (например, вследствие перезапуска TC) функция включается автоматически. Если сортировка по файловым группам запрещена настройками TC (у соответствующих опций нет галочек и/или пусты поля ввода), команда в меню недоступна. Это происходит и тогда, когда сортировка по группам задана только для неиспользуемой визуальной схемы (схема отключена и/или не разрешено автопереключение каталогов).
Кроме того, вы найдёте в меню пункты для общего управления настройками TWinKey:
Перечитать настройки — команда ReloadSettings (ей можно назначить клавиатурный вызов). Принудительное перечитывание настроек может быть очень полезно, например, если файлы TWinKey.ini или TWinKey.bkm редактировались вручную или восстанавливались из архивной копии. Кроме того, команда позволяет применить сразу же после ручной правки новые настройки плагина 2-го уровня. (С её помощью можно быстро обновить и сам дочерний плагин, поскольку перед считыванием файлов с настройками все эти плагины предварительно выгружаются.) Также вызов этой команды может потребоваться после изменения некоторых цветовых параметров Total Commander (подробнее см. здесь).
Запустить Utilisator. Это наиболее простой вариант быстрого вызова конфигурационной утилиты (TWinKey Utilisator), не требующий ни поиска её файла в каталоге TWinKey, ни создания для обращения к ней кнопки или комбинации клавиш с помощью инструментария Total Commander.
Обычный способ запуска команд TWinKey — вызов их с клавиатуры или (частично) из меню команд. Однако пользователю может понадобиться запуск тех или иных команд с панели инструментов TC, через скрипт или BAT-файл. Для этой цели следует применять специальную утилиту TWinCmd (её файл TWinCmd.exe по умолчанию находится непосредственно в каталоге TWinKey). Эта программа для вызова команд TWinKey должна запускаться только в среде TC.
Через TWinCmd могут вызываться только те команды TWinKey и плагины 2-го уровня, которые могут работать в главном окне TC и при этом не требуют активности какого-либо поля ввода. Из числа дочерних плагинов этим условиям в настоящее время удовлетворяет только секундомер.
Использование: TWinCmd <команда> или TWinCmd <имя_плагина>,<номер_функции>. На панели инструментов TC создайте кнопку для TWinCmd.exe и укажите команду/плагин в поле Параметры.
Команда — одна из перечисленных далее команд TWinKey:
StickConfig — Упорядочить прикреплённые файлы
StickIt — Прикрепить файл под курсором
ToggleStick — Прикрепить/Открепить файл под курсором
UnstickIt — Открепить файл под курсором
UnstickAll — Открепить все файлы в текущем каталоге
ToggleBookMark — Поставить/Снять закладку
BookMarkNext — Перейти к следующей закладке
BookMarkPrev — Перейти к предыдущей закладке
JumpBookMark — Показать меню закладок
Book2Selection — Преобразовать закладки в выделение
CopyBookMark — Копировать закладки в буфер обмена
PasteBookMark — Вставить закладки из буфера обмена
ClearBookMark — Убрать все закладки
ToggleSaveBookMark — Режим сохранения закладок (вкл/выкл)
NextQuickView — Следующий плагин при быстром просмотре
SelectTabColor — Выбрать цвет для текущей вкладки ТС
ReloadSettings — Перечитать настройки TWinKey
UseFileGrouping — Файловые группы (временно вкл/выкл)
ShowTWMenu — Показать меню команд TWinKey
Имя плагина (например, Stopwatch) — то, которое отображается на странице Плагины в TWinKey Utilisator или (при локализованном интерфейсе) указывается в языковом файле как имя секции плагина. Это не имя файла плагина! Номер функции — цифра, отображаемая для данной функции плагина во второй колонке на странице Плагины.
В подкаталоге Examples имеются дополнительные файлы, позволяющие быстро добавить в панель инструментов TC кнопку с функциональностью выпадающего меню для доступа к готовой панели со всеми вышеназванными командами, а также с набором команд для плагина-секундомера. Разумеется, это лишь демонстрационный вариант подобной панели, вы всегда сможете изменить её содержимое по своему усмотрению.
Код кнопки для копирования в буфер и вставки на панель инструментов TC:
TOTALCMD#BAR#DATA
%Commander_Path%\Plugins\Wdx\TWinKey\TWinKey.bar
%Commander_Path%\Plugins\Wdx\TWinKey\TwinkUtil.exe,5
Команды TWinKey
1
-1
В настройках кнопок предполагается, что TWinKey.bar и TWinCmd.icl скопированы в папку TWinKey, где размещается и TWinCmd.exe. Это не является обязательным, но если вы хотите поместить один или несколько из этих файлов в другую папку, вам придётся отредактировать код кнопки и/или содержимое BAR-файла.
Здесь перечислены связанные с TWinKey функциональные возможности, которые представляют интерес лишь для некоторой части пользователей и не могут быть реализованы через рассмотренные выше опции или команды.
Открытие списка команд TC/TWinKey с заданным фильтром
При запуске TWinKey Utilisator эта утилита открывается на странице Клавиатура, где по умолчанию отображается неотфильтрованный список команд TC. Вы можете, однако, запустить файл TwinkUtil.exe из командной строки со специальными параметрами, чтобы сразу открывался конкретный список команд. Можно также указать предопределённый текстовый фильтр (поиск соответствий будет вестись по всем колонкам списка). Синтаксис параметров следующий:
/tcmd=<текстовый фильтр> — Открытие списка, содержащего только команды TC с указанным текстом
/twin=<текстовый фильтр> — Открытие списка, содержащего только команды TWinKey с указанным текстом
Если указан только параметр без текста, отображается полный набор команд TC или TWinKey (без фильтрации). Если в командной строке задать через пробел оба параметра, то учитываться будет последний.
Считывание списка команд TC из указанного INC-файла
При открытии TWinKey Utilisator на странице Клавиатура список встроенных команд Total Commander по умолчанию отображается согласно текущему языку TC. Для локализации команд автоматически используется INC-файл, одноимённый с LNG-файлом (например, при стандартной русификации это файлы wcmd_rus.lng и wcmd_rus.inc). Однако может случиться так, что вам потребуется явное указание INC-файла (скажем, чтобы видеть в TWinKey Utilisator русский список команд в английском TC). Это можно сделать, запустив TwinkUtil.exe из командной строки с параметром /inc=<имя INC-файла с полным путём>.
Для отображения стандартного нелокализованного списка команд при русском интерфейсе TC укажите путь к файлу totalcmd.inc.
Прикреплённые файлы и закладки в наборах колонок
Помимо упоминавшегося ранее свойства Autostart, TWinKey как WDX-плагин имеет также свойства Order и Mark, позволяющие создать в TC специальный пользовательский набор колонок, чтобы отображать там порядковые номера, соответственно, прикреплённых папок/файлов и закладок по мере их добавления. Кроме того, вы сможете увидеть рядом все закладки текущего файлового списка, просто выполнив сортировку по колонке для них.
(Следует отметить, что создание набора колонок на основе одного или обоих указанных свойств позволяет, в принципе, загружать TWinKey даже при отсутствии фиктивной цветовой схемы — обычным переключением на соответствующий набор, но на практике такой способ не слишком удобен.)
При изменении статуса прикрепления/закладки информация в колонках изменится не сразу, а только после обновления любым способом (Ctrl+R и др.) содержимого панели TC!
Указание максимально возможного размера монитора
Если средствами TWinKey в файловой панели отображается фоновый рисунок, то при присоединении монитора с более высоким разрешением или перетаскивании окна ТС с меньшего монитора на больший не будет (до перечитывания настроек) автоматически перерисован фон панели. В результате может проявиться нежелательный визуальный эффект в виде чёрной полосы снизу в списке. Если вы часто сталкиваетесь с этой проблемой, попробуйте добавить вручную в секцию [Config] файла TWinKey.ini следующие строки:
CustomScreenX=<ширина в пикселях>
CustomScreenY=<высота в пикселях>
Укажите эти значения согласно самому большому разрешению,используемому на ваших мониторах.
Автор: MGP Software Ltd.
E-mail: support@mgpsoft.com
Русская версия Readme-файла: Вадим Казаков (Avada)
E-mail: avada1@yandex.ru
Последняя правка: 31.01.2015