Страница 1 из 2

Переход в каталог а-ля Opera

Добавлено: Пт апр 16, 2010 18:13
DoctorIkari
Каким образом можно осуществить переход в каталог, путь которого хранится в буфере обмена.
Желательно, чтобы было так: Copy копируем путь, Ctrl+T новая вкладка, Ctrl+B переход в нужный каталог в текущей панели.

Как забиндить на хоткей через UltraTCEdidor известно, дело за малым)

Добавлено: Пт апр 16, 2010 18:21
D1P
Идея хорошая, но реализуется проще всего скриптами.
Я пока делаю так: копирую путь, в TC жму Home (курсор на [..]), F2, Ctrl+V, Enter.

Добавлено: Пт апр 16, 2010 18:41
CaptainFlint
DoctorIkari
Я обычно жму Ctrl+T, cd, Пробел, Ctrl+V, Enter. Не самый оптимальный путь, но мне не настолько часто это требуется, чтобы скриптами заморачиваться. Разумеется, мой метод не сработает, если быстрый поиск используется в режиме "Только буква".

Добавлено: Пт апр 16, 2010 18:51
flm
CaptainFlint писал(а):DoctorIkari
Я обычно жму Ctrl+T, cd, Пробел, Ctrl+V, Enter. Не самый оптимальный путь, но мне не настолько часто это требуется, чтобы скриптами заморачиваться. Разумеется, мой метод не сработает, если быстрый поиск используется в режиме "Только буква".
Аналогично. Только у меня комбинация выглядит как:
cd, пробел, shift+insert, enter, enter. Открывать новую вкладку обычно не надо; shift+insert ближе к enter'у и физически и исторически :); второй интер приходится нажимать из-за включенной опции "auto-complete paths".

Добавлено: Пт апр 16, 2010 20:20
MVV
У меня настроено редактирование текущего пути в заголовке по Alt+Вверх, поэтому в моем случае смена пути новой вкладки - это Alt+Вверх, [Ctrl+V | Shift+Insert] и Enter. Но такие действия делать не приходится.

Добавлено: Пт апр 16, 2010 21:04
Вахмурка

Добавлено: Пт апр 16, 2010 21:56
Tol!k

Код: Выделить всё

Option Explicit
Dim TCS
Set TCS = CreateObject("TCScript.Helper")

If WScript.Arguments.Count <> 0 Then
  TCS.SendCommand "cm_OpenNewTab", False
End If

TCS.SendCommand "cm_FocusCmdLine", False
TCS.SendKeystroke "cd " & TCS.GetTextFromClip
TCS.SendKeystroke "{ENTER}"

Set TCS = Nothing
Wscript.Quit
Любой аргумент = новая вкладка, без аргументов = в текущей

Добавлено: Пт апр 16, 2010 23:09
DoctorIkari
Все понял. Всем спасибо.
Остановился на варианте Tol!k'а
В ПоверПро еще не разобрался, вероятно поэтому этим методом не получился запуск.
Скрипт забиндил на Ctrl+B ... все летает)
Только еще такой вопрос: как скрыть консольное окно, которое мигает при выполнении скрипта.
(Параметры ставил, т.е. открывает в фоновой вкладке)

Добавлено: Пт апр 16, 2010 23:15
MVV
Создай ярлык для него и пропиши в нем запуск в свернутом виде. И бинди на Ctrl+B запуск ярлыка. Или же просто в юзеркоманде поставь запуск в свернутом виде.

Добавлено: Пт апр 16, 2010 23:38
Вахмурка
Так, на всякий случай, напомню - Ctrl+B по умолчанию соответствует cm_DirBranch. Осторожней надо с "родными" хоткеями. А то, к примеру, тебе напишут привычно "жми Ctrl+B", а ты и нажмешь... Может, Alt+B лучше?

Добавлено: Сб апр 17, 2010 07:05
DoctorIkari
)) Дык ясно это. Я привык "по-Оперовскому" контрол-б... а комбинацию ТК "все файлы без папок" перенес на шифт-б
------------
К тому же на Alt у меня стоит сокрытие/показ панели инструментов. Так что тут вопрос только в удобстве :)

Добавлено: Вс июн 13, 2010 13:26
DoctorIkari
Давно появился вопрос, но руки не доходили написать.
Проблема: скрипт выполняется только при ЕНГ-раскладке, при русской же либо выдает: "файл не найден", либо открывает вкладку диска на котором нах. пункт назначения с одновременным открытием окна закрузки (иногда происходит еще и в противоположной панели)
Как исправить?

Добавлено: Вс июн 13, 2010 15:37
Flasher
DoctorIkari
Это объясняется тем, что команда TCS.SendKeystroke вводит не заданные буквы, в имитирует нажатия заданных клавиш вне зависимости от раскладки. Поэтому "cd" и прописывается как "св". Я, честно говоря, не понимаю, зачем, находясь в Тотале, нужно копировать отдельно путь самому. Было бы логичней открывать активную папку в новой вкладке, либо в новой вкладке другой панели. У меня момент с "св" решается автокорректором текста/раскладки (в сети таких несколько). Только, чтобы он успел изменить текст на нужный, желательно перед TCS.SendKeystroke "{ENTER}" поставить TCS.Pause = 400 , ну или больше. Например, как у меня

Код: Выделить всё

'Открыть новую вкладку с путём активного каталога
Dim TCS
Set TCS = CreateObject("TCScript.Helper")
TCS.LockTC True
TCS.SendCommand "cm_CopySrcPathToClip"
TCS.SendCommand "cm_OpenNewTab"
TCS.SendCommand "cm_FocusCmdLine"
TCS.SendKeystroke "cd " & TCS.GetTextFromClip
TCS.Pause = 400
TCS.SendKeystroke "{ENTER}"
TCS.ClearClip
Set TCS = Nothing
Wscript.Quit

Добавлено: Вс июн 13, 2010 18:16
DoctorIkari
Flasher, это мне нужно в основном для взаимосвязи uTorrent и TC.
Поясню: пункт меню "открыть папку" для торрента в uT открывает через проводник. Например, мне нужно просмотреть файлы, которые скачал (естественно, не через проводник!). Тогда открываю папку, копирую адрес, вставляю в тотал, дальше все ясно (жаль, что не нашел решения для автоперехода по "открыть папку" в TC). Т.о. нужно избавиться от рутинной работы.

А насчет авторедактора: не нашел ничего) Пытаюсь подстроить ПунтоСвитчер.

Добавлено: Вс июн 13, 2010 19:31
Flasher
DoctorIkari
Ситуация ясна. Тогда конечно вариант Tol!k остаётся в силе с указанной мной строкой.
DoctorIkari писал(а):А насчет авторедактора: не нашел ничего)
Тут я немного наоффтопил по теме. :wink: