View previous topic :: View next topic |
Author |
Message |
R1_
Joined: 10 Apr 2015 Posts: 7
|
(Separately) Posted: Tue May 05, 2015 10:48 Post subject: Закрытие всех незапертых вкладок при запуске/закрытии TC |
|
|
Кроме закрепленных. Возможно такое? Спасибо.
! | Avada: | Заголовок темы приведён в более адекватный для удобства последующего поиска вид. Топик-стартеру на будущее: проблема должна быть нормально раскрыта и в заголовке (насколько позволяет место), и в тексте темы, а не разделяться на части. | |
|
Back to top |
|
|
Вахмурка
Joined: 27 Dec 2004 Posts: 2585 Location: Большая деревня Москва
|
(Separately) Posted: Tue May 05, 2015 12:05 Post subject: |
|
|
Способов много. Посмотри в сторону TCFS2 - этот монстр вообще способен творить всё на что фантазии хватит (ладно, почти всё), в том числе и при загрузке.
Twinkey тоже автоматически выполняет команды при загрузке.
Ну и я кое-что нарисовал. Подружи скрипт с вышеперечисленным. Правда, скрипт закрывает и запертые тоже (собственно, ради этого и писался), но допилить его - три минуты _________________ Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон) |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10315 Location: Россия, Саратов
|
(Separately) Posted: Tue May 05, 2015 12:27 Post subject: |
|
|
Вахмурка
В том-то и дело, что способов много, но все они касаются любых вкладок. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Tue May 05, 2015 12:29 Post subject: |
|
|
У TCFS2Tools появилась проверка на запертость, т.ч. можно попробовать соорудить. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
sa
Joined: 29 Apr 2009 Posts: 2624
|
(Separately) Posted: Tue May 05, 2015 16:15 Post subject: |
|
|
R1_
А вдруг подойдёт?!
Если закреплённые вкладки меняются не часто, то можно сохранить секции [lefttabs] и [righttabs] файла wincmd.ini в отдельный файл (tabs.ini), открыв его только для чтения, а в wincmd.ini указать редирект:
Code: | [lefttabs]
RedirectSection=%COMMANDER_PATH%\TABS\tabs.ini
[righttabs]
RedirectSection=%COMMANDER_PATH%\TABS\tabs.ini
|
|
|
Back to top |
|
|
R1_
Joined: 10 Apr 2015 Posts: 7
|
(Separately) Posted: Tue May 05, 2015 22:58 Post subject: |
|
|
sa
То, что нужно! Благодарю
Flasher
Avada
Вахмурка
Спасибо за участие! Я решил выбрать самый простой вариант. Главное меня устраивает. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed May 06, 2015 00:53 Post subject: |
|
|
Вариант действительно оптимальный.
А возвращаясь к тому, о котором я писал, то вот что выходит.
Берём последние бета-версии утилиты и модуля.
В секцию Items конфига TCFS2.ini добавляем
Quote: | lclose=loop(@<tcm(65582)+if(test(tcm(65586)),tcm(3005),tcm(3007))) ; Закрыть откреплённые вкладки слева
rclose=loop(@<tcm(65583)+if(test(tcm(65587)),tcm(3005),tcm(3007))) ; Закрыть откреплённые вкладки справа | Потом уже на выбор (запуск/завершение) пишем в autorun.cfg команду из кнопки:
Code: | TOTALCMD#BAR#DATA
%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe
/ef "msg($0B,0) if(eval(tcm(65551)), run_item(lclose)+tcm(4002)+run_item(rclose)+tcm(4001), run_item(rclose)+tcm(4001)+run_item(lclose)+tcm(4002)) msg($0B,1) redraw()"
wcmicons.dll,85
Закрыть все откреплённые вкладки |
Пока ещё не всегда всё стабильно закрывает, надо будет обдумать, где не успевает. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Wed May 06, 2015 22:02 Post subject: |
|
|
С 474 сборкой TCFS2 можно закрывать вкладки с помощью меню вкладки, не активируя их (прирост скорости +100500 для тормознутых путей).
Эта команда закрывает все неактивные вкладки на левой или правой панели (если в параметре 1, то на левой, если -1 - на правой):
Code: | allTabsClose=msg($433,3009,#1,1) delay(10) send(`{UP 2}{ENTER}`, 0) delay(10) send(`{ENTER}`, 0) ; В #1 передаётся индекс вкладки, для которой запрашивать меню: 1 - первая на левой панели, -1 - первая на правой панели |
Останется лишь проверить, заблокирована ли активная вкладка, и закрыть её. Эта команда закрывает вкладку с указанным индексом:
Code: | tabClose=msg($433,3009,#1,1) delay(10) send(`{UP 3}{ENTER}`, 0) ; В #0 передаётся индекс вкладки (1 и выше - левая панель, -1 и ниже - правая) |
_________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed May 06, 2015 22:19 Post subject: |
|
|
Code: | /ef "msg($0B,0) if(eval(tcm(65551)), run_item(allTabsClose,1)+tcm(4002)+run_item(allTabsClose,-1)+tcm(4001), run_item(allTabsClose,-1))+tcm(4001)+run_item(allTabsClose,1)+tcm(4002)) msg($0B,1) redraw()" | Что-то не хочет.. Теперь хочет.
/ef run_item(allTabsClose(1)) ругается. (неграмотная запись) _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Last edited by Flasher on Wed May 06, 2015 23:14; edited 1 time in total |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed May 06, 2015 23:12 Post subject: |
|
|
MVV wrote: | Так ведь нельзя! | Точно, из головы вылетело.
Да, весьма шустро. Впечатляет.
Но, увы, одна незалоченная вкладка остаётся активной и незакрытой.
MVV wrote: | Кстати, необязательно активировать вторую панель, команда открытия меню отлично работает для неактивной панели. | Но тогда бы работала такая команда: /ei allTabsClose(1) allTabsClose(-1). Но она не работает. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Wed May 06, 2015 23:18 Post subject: |
|
|
Quote: | Но тогда бы работала такая команда: /ei allTabsClose(1) allTabsClose(-1). Но она не работает. |
А почему у меня работает?
Quote: | Но, увы, одна незалоченная вкладка остаётся активной и незакрытой. |
Я говорил, что останется проверить, заблокирована ли текущая вкладка, и закрыть её. Можно тупо активировать следующую вкладку и повторить allTabsClose (ведь теперь активированной гарантированно окажется заблокированная). Опять же, переключать панели не требуется, активировать вкладки можно с помощью tt_LeftTabSetIndex/tt_RightTabSetIndex, а узнавать текущие индексы с помощью tt_LeftTabGetIndex/tt_RightTabGetIndex.
Или, что проще, активировать последние вкладки на обеих панелях, а затем вызвать allTabsClose(1) allTabsClose(-1). Из незаблокированных смогут выжить только самые правые вкладки (но тотал всё равно будет добавлять новые вкладки там, так что, думаю, одной незакрытой вкладкой в конце можно пренебречь). Активировать первые вкладки после закрытия несложно. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Wed May 06, 2015 23:33 Post subject: |
|
|
MVV wrote: | А почему у меня работает? | Не знаю, у меня только в активной закрытия происходят.
MVV wrote: | а узнавать текущие индексы с помощью tt_LeftTabGetIndex/tt_RightTabGetIndex | А номера у них какие? Ты же нигде не обнародовал.
И нельзя ли как-то победить смещение мышиного курсора? _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Thu May 07, 2015 01:04 Post subject: |
|
|
MVV wrote: | Да ладно! И в TCFS2.ini ты искать, похоже, не пробовал? | А вот и неладно. Их там нет. Смотрел сразу и там и там.
MVV wrote: | А какая команда смещает курсор? | Да хотя бы /ei allTabsClose(1). _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|