Горячие клавиши

Материал из TCKB 2.0
Перейти к:навигация, поиск

Total Commander позволяет настраивать горячие клавиши (или клавиатурные ярлыки) на вызов внутрених или пользовательских команд. В этой статье описан процесс назначения горячих клавиш, а также раскрываются некоторые нюансы этого процесса.

Назначение горячих клавиш

Настройка горячих клавиш в TC

Процесс назначения клавиатурных ярлыков в Total Commander последних версий очень прост: достаточно указать горячую клавишу, а затем указать, какое действие должно выполняться. В текущих версиях выбор команд производится через удобный инструмент, в старых версиях выбирать нужно было из огромного и неудобного списка. Уже имеющиеся горячие клавиши могут быть быстро выбраны из меню, доступного по нажатию на кнопку Down menu.png
Назначение горячих клавиш производится в настройках, в пункте "Разное". Для назначения доступны комбинации клавиш из представленного списка с модификаторами Ctrl, Alt, Shift и Win. Модификаторы могут комбинироваться в различной последовательности, либо вовсе не использоваться. Левые и правые модификаторы не различаются. Использование клавиш вне списка (в том числе расширенных мультимедийных клавиш) не поддерживается.
Для привязки выбранной команды к клавиатурному сочетанию нужно нажать кнопку Hk apply.png. Нажатие кнопок "Применить" и "ОК" влияния на настройки горячих клавиш не оказывает.

Исключения и конфликты

Клавиатурные ярлыки, совпадающие с системными горячими клавишами (например, Win+R или Win+Up в Windows 7), могут быть назначены, но работать не будут, поскольку будут перехвачены системой. То же касается горячих клавиш, используемых другими программами, перехватывающими глобальный ввод с клавиатуры (например Punto Switcher). В случае проблем с неработающими горячими клавишами всегда проверяйте, запущены ли такие программы. Наибольшее количество жалоб, к примеру, поступает на программу настройки видеокарт ATI, перехватывающую, в том числе, стандартное клавиатурное сочетание Alt+F5.
Нежелательно использовать горячие клавиши, которые не перехватываются системой, но используются как стандартные сочетания в различных элементах управления. Сюда, например, относятся команды быстрого перемещения по текстовым элементам (Ctrl+Left\Ctrl+Right), выделения (Ctrl+A) и редактирования (Del\Insert\Crtl+C\Ctrl+V и т.п.) текста, клавиша перемещения фокуса (Tab). В большинстве случаев переназначение клавиш будет работать, однако при этом потеряются стандартные функции. В других случаях переназначение просто не произойдёт.
Некоторые горячие клавиши не могут быть переназначены стандартными способами. В основном, такие сочетания включены во встроенных инструментах TC (F2 в инструменте мультипереименования), различных диалогах (F2 в диалоге копирования) и списках (Shift+Del в истории команд). Большинство таких клавиатурных ярлыков указано в списке стандартных горячих клавиш.

Стандартные горячие клавиши

Total Commander содержит значительное число клавиатурных сочетаний уже сразу после установки. Они не записаны в конфигурационном файле, и будут работать до тех пор, пока пользователь явно не переназначит их. Список стандартных горячих клавиш можно найти в файле KEYBOARD.TXT, находящемся в каталоге %commander_path%, либо в файле Keyb_rus.txt расширенного пакета русификации (дополненный русский вариант).

Назначение команд

Инструмент выбора и добавления команд

Назначение команд производится через специальный инструмент, в котором собраны и отсортированы по группам все встроенные команды TC. Инструмент поддерживает фильтрацию по названиям и описаниям команд, поэтому нахождение и выбор команды в нём не составляет труда.
Инструмент может быть вызван встроенной командой cm_CommandBrowser, например для поиска и просмотра нужной команды, либо для добавления пользовательских команд.

Пользовательские команды

Готовая пользовательская команда...
...и её привязка к горячей клавише

Пользовательские команды - инструмент, появившийся в TC 7.0. Он был призван избавить пользователя от страшно неудобного способа привязки пользовательских команд к горячим главишам, и успешно с этой задачей справился.
Пользовательские команды - алиасы (например, для вызова внешних программ), которые TC способен использовать также, как и встроенные команды. Основной способ их применения описан выше, кроме этого пользовательские команды могут применяться для назначения алиасов на внутренние команды, которые могут принимать дополнительные параметры (например OPENBAR).
Пользовательские команды хранятся в файлах usercmd.ini - глобальный список команд и WCMD_XXX.ini (например WCMD_RUS.ini) - список команд, зависящий от выбранной локализации. Последний файл не защищён от перезаписи при установке локализации и может быть перезаписан, поэтому все пользовательские команды лучше добавлять в usercmd.ini.

Для добавления пользовательской команды нужно выбрать пункт usercmd.ini в инструменте выбора команд, нажать кнопку "Новая", ввести название будущей команды (например em_calc), и настроить параметры команды. Настройка производится абсолютно аналогично настройке кнопок на панели инструментов. На скриншоте можно видеть пример команды, вызывающей стандартный калькулятор.

В дальнейшем пользовательская команда может использоваться наравне со встроенными командами, в том числе - для привязки к горячей клавише.

Горячие клавиши в меню

Открыв любой пункт главного меню Total Commander можно видеть, что ко многим его пунктам добавлены вызывающие их клавиатурные сочетания. На самом деле - это просто подсказки, добавление которых в меню никакого эффекта не даёт. Подробнее о добавлении горячих клавиш в пункты меню можно прочесть в статье "Своё меню: разбираемся за десять минут".

Настройка меню "Запуск" и горячих клавиш для него

Назначение горячих клавиш для меню "Запуск"

Меню "Запуск" долгое время предоставляло единственный способ назначения горячих клавиш на вызов различных команд. Во-первых, для каждого пункта этого меню можно назначить клавишу из предопределённого списка (сочетания функциональных клавиш с модификаторами Alt+Ctrl\Alt+Ctrl+Shift). Кроме того, настроенные команды меню "Запуск" (с первой по сто девяносто восьмой) получали внутренние алиасы cm_UserMenu1 - cm_UserMenu198, и, таким способом, могли быть привязаны к горячим клавишам обычным способом.
В настоящее время этот способ используется всё реже по причине замещения более удобным способом, однако всё ещё может встретиться в старых конфигурационных файлах.

wincmd.ini

Осталось только рассказать о том, в каком виде горячие клавиши хранятся в конфигурационном файле Total Commander.
Все настроенные клавиатурные сочетания, не использующие модификатор Win, записываются в секцию [Shortcuts], и имеют вид Сочетание модификаторов+Клавиша=Команда. Модификаторы записываются как A (Alt), C (Ctrl), S (Shift), например:

[Shortcuts]
AS+F11=cm_visTabheader
F1=cm_Maximize
S++=cm_SelectCurrentName
CS+Z=em_comment_editor

Клавиши, использующие модификатор Win, записываются в секцию [ShortcutsWin], и имеют вид Сочетание модификаторов+Клавиша=Команда (аналогично ключам в секции [Shortcuts]). Модификатор Win напрямую в ключи не добавляется, подразумевается, что он используется во всех ключах секции. Пример:

[ShortcutsWin]
F2=cm_VisBreadCrumbs
R=cm_SrcComments
S+R=em_calc

Горячие клавиши для элементов меню "Запуск" хранятся в секции [User] в виде ключей keyn=x, где n - порядковый номер пункта меню, а x - порядковый номер клавиатурного сочетания в списке (напомним, что все возможные сочетания для этого меню определены заранее). Пример:

[user]
menu1=Create NTFS link
cmd1=%commander_path%\SOFT\UTILS\NTFSLINKS\NtfsLinks.exe
param1=""%L" "%T\""
key1=5

Пятый элемент списка - сочетание Ctrl+Alt+F5.

Смотри также