Настройка горячих клавиш для Windows 7 Tortoise

Как можно настроить некоторые горячие клавиши для обычно используемых действий SVN, таких как diff?

В настоящее время для просмотра diff я должен выбрать файл (ы), затем щелкнуть правой кнопкой мыши, перейти в TortoiseSVN, а затем выбрать Diff action. Довольно много шагов для часто используемого использования.

Вместо этого я хотел бы выбрать файл и использовать горячую клавишу (например, Ctrl-Alt-F), чтобы выполнить одно и то же действие Diff.

Поиск решений, я нашел некоторых людей, которые запускали скрипты AutoHotKey, чтобы делать подобные вещи, но это похоже на перебор.

Я сделал ярлык горячих клавиш (используя стандартный метод Win 7 для создания ярлыка, затем настроил его свойства), чтобы запустить TortoiseMerge, который является инструментом, который отображает diff, но такой ярлык игнорирует текущий выбор файла и отображает пустой TortoiseMerge.

Любые идеи попробовать?

Ответ 1

Вы можете изменить контекстное меню TortoiseSVN и поместить свои любимые команды в корень контекстного меню. Таким образом, вам нужно дважды щелкнуть пробел для разницы. Думаю, не так уж много.

TortoiseSVN Settings - Context Menu

Другой вариант - использовать расширенный диспетчер файлов (например, Total Commander или FreeCommander), который позволяет вам определять пользовательские команды меню с помощью настраиваемых горячих клавиш.

В Total Commander это будет "Change Start Menu":

  • Команда: C:\Program Files (x86)\TortoiseSVN\bin\TortoiseProc.exe
  • Параметры: /command:diff /path:%P\%N
  • Клавиша быстрого доступа: CRTL+ALT+F1

Если контекстное меню оболочки или горячая клавиша, вам нужно выполнить не менее 2 шагов для выполнения команды TortoiseSVN:

  • Выберите файл (выбор и щелчок правой кнопкой мыши для открытия контекстного меню - это одно действие)
  • Запустите команду (щелкните элемент контекстного меню или нажмите клавишу быстрого доступа)

С этой точки зрения это просто вопрос ваших личных предпочтений: нужно ли я дважды щелкнуть или мне нужно щелкнуть один раз и оставить мышь для нажатия клавиши? ;-)

Ответ 2

Вы можете попробовать напрямую вызвать процесс с правильными параметрами, а не беспокоиться о контекстных меню контекстного меню.

Например, мне удалось настроить ярлык непосредственно на следующий элемент:

"C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:update /path:"c:\Source"

Оттуда вы можете вызывать этот ярлык из вашей программы горячих клавиш или, если вы предпочитаете готовое решение, сопоставить папку непосредственно на панели задач (я обозначил мой "o" для эстетики) и придерживался этот ярлык в этой папке.

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

Ответ 3

Глядя на проблему в более общем плане, я бы сказал, что это проблема рабочего процесса. Предположительно, причина, по которой вы хотите найти более быстрый способ поиска diff, заключается в том, что вы хотите сделать это для нескольких файлов. В этом случае перейдите в корень рабочей копии и выберите TortoiseSVN -> Check for modifications. Это покажет вам список измененных файлов. Получите разницу, просто дважды щелкните по каждому.

Ответ 4

Autohotkey является излишним для одного ключа, но вы можете собирать горячие клавиши для действий, которые вы могли бы выполнять в любом типе окна, всего в одном script. В результате вы можете иметь горячие клавиши для выполнения довольно сложных действий в одном классе окон, а те же самые горячие клавиши выполняют разные действия в другом типе окна с помощью директивы '#IfWinActive'.

Например, этот URL упоминает добавление горячих клавиш для фиксации и обновления; вы можете добавить ключ для вашей потребности в diff и, возможно, один для журнала или какой-либо другой параметр svn, который вы часто выполняете.

По какой-то причине воссоздание контекстного меню проводника для меня в Windows 7 медленное. Добавление этих горячих клавиш действительно улучшило мой рабочий процесс.

Примечание. Вы также можете префикс кода кода URL следующим образом:

GroupAdd explorers, ahk_class ExploreWClass
GroupAdd explorers, ahk_class CabinetWClass

#IfWinActive ahk_group explorers

И суффикс:

#IfWinActive

И эти специальные горячие клавиши будут выполнять команды, специфичные для TortoiseSVN, когда проводник Windows будет иметь фокус и будет передан во всех других случаях.

Ответ 5

Установите StExBar, затем добавьте команды для diff/update/commit/... и укажите соответствующую команду TortoiseProc.exe. И, конечно, назначьте горячую клавишу для команды.

Ответ 6

Вы можете использовать ярлыки контекстного меню. Просто откройте папку кода в проводнике и используйте ниже:

Commit: alt + F + C
update: alt + F + U
Check for updates: alt + F + T + F

Таким образом, вы можете нажать выше сочетаний клавиш для фиксации вместо того, чтобы иметь право щелкнуть каталог и нажать фиксацию.