Страница 7 из 11

Добавлено: Вс окт 09, 2011 09:02
Flasher
sa писал(а):Говоря о предложенной замене, я говорил о предлагавшейся мной замене (для лаконичности) сравнения расширений на сравнение файлов, а ты о своих коррекциях скрипта на TCKB.
Смотря в каком контексте. Я говорил и о том, и о другом.
sa писал(а):А мой скрипт тоже срабатывает неправильно или сейчас не до него?
Я уже заведомо знаю, что он будет срабатывать неверно, т.к. вижу, что GetSrcSelectedFiles используется повторно. Я уже раньше пытался экспериментировать с таким подходом, но последующие значения в большинстве случаев равнялись самому первому. Т.е. курсор с такой записью будет при переходе на 3-ю/4-ю серию файлов передвигаться на первый файл. В т.ч. повторно проверять отработку сравнения имён (Sn=Sp), а не раширений не вижу смысла - в указанных режимах курсор, как минимум, при первом нажатии будет оставаться в конце списка, если будет его достигнут, разумеется.

Добавлено: Вс окт 09, 2011 09:11
sa
Flasher писал(а):Я уже заведомо знаю, что он будет срабатывать неверно
Спасибо! :D

Добавлено: Вс окт 09, 2011 09:16
Flasher
На здоровье! :D Если тебе полегчает, и ты сам у себя проверить не можешь, то подтвеждаю вышеизложенное на практике.

Добавлено: Вс окт 09, 2011 09:21
sa
Flasher писал(а):и ты сам у себя проверить не можешь,
Уже проверил, мой барахлит, а оригинальный срабатывает!

Добавлено: Вс окт 09, 2011 09:25
Flasher
sa писал(а):а оригинальный срабатывает!
Если речь об этом, то как можно сравнивать срабатывание на предмет цикличности, если он этого лишён? :? Он вообще к предмету разговора не относится...

Добавлено: Вс окт 09, 2011 09:33
sa
Flasher писал(а):как можно сравнивать срабатывание
Пожалуй, сравнивать стоит только работающие по основному назначению скрипты (переход к следующему расширению).

Добавлено: Вс окт 09, 2011 09:36
Flasher
sa
Если тебе это интересно, то без меня. Это как сравнивать табуретку с массажным креслом...

Добавлено: Вс окт 09, 2011 09:45
sa
Flasher писал(а):Если тебе это интересно, то без меня. Это как сравнивать табуретку с массажным креслом...
Договорились.

Добавлено: Пн окт 10, 2011 10:39
sa
Flasher писал(а):Нужно было в DirBranch и "Файлы на панель" пробовать
Верное замечание. Чтобы сравнение файлов работало и для этих случаев нужно отбросить путь к файлу:

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

If FSO.GetFileName (P) = .GetTextFromClip Then .SendCommand 2050

Добавлено: Пн окт 10, 2011 11:46
Flasher
Ок, сделай у себя, если тебе от сокращения кода на неск. символов станет легче. Скорость срабатывания от этого точно не возрастёт.

Добавлено: Пн окт 10, 2011 12:49
sa
Flasher писал(а):Ок, сделай у себя, если тебе от сокращения кода на неск. символов станет легче.
Тут уже разговор шёл не столько о сокращении кода, сколько о самой идее сравнения имён файлов, которая подвергалась сомнению:
Flasher писал(а):Не лучше, т.к. следующие файлы с тем же расширением могут иметь другое имя
Flasher писал(а):В т.ч. повторно проверять отработку сравнения имён (Sn=Sp), а не раширений не вижу смысла - в указанных режимах курсор, как минимум, при первом нажатии будет оставаться в конце списка

Добавлено: Сб окт 15, 2011 03:36
Andrey_A
Хотелось бы ещё один параметр чтобы можно было выбрать - переход к следующему расширению (вниз) есть - переход к предыдущему расширению (хотелось бы).

===========
Добавлено через час
Проверил все три скрипта - и все три дают нестабильный результат
Я пользуюсь переходом на другое расширение при Ctrl+B
проверял на небольшом к-ве файлов 2500
и почему то все скрипты не переходят на следующее расширение , а перебрасывают курсор на первый файл. могут два три раза сработать, а затем опять на первый файл, хотя расширений куда надо переходить ещё уйма. пытался поймать систему - так и не нашёл. Старый вариант хоть и моргает - но стабильно переходит куда надо.

============
добавлено через час: мне не нужна цикличность, немножко прикинув, вообще отказался от скриптов

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

TOTALCMD#BAR#DATA
"%COMMANDER_PATH%\Utilities\TotalCom\TCMC\TCMC.exe"
10 CM527 CM525 CM2053 CM524
%COMMANDER_PATH%\TOTALCMD.EXE,3
Перейти к следующему типу файлов (вниз)


-1

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

TOTALCMD#BAR#DATA
"%COMMANDER_PATH%\Utilities\TotalCom\TCMC\TCMC.exe"
10 CM527 CM525 CM2054 CM524
%COMMANDER_PATH%\TOTALCMD.EXE,3
Перейти к предыдущему типу файлов (вверх)


-1
с "морганием" даже веселей

Добавлено: Сб окт 15, 2011 09:45
sa
Andrey_A писал(а):пытался поймать систему - так и не нашёл.
Скорее всего, причина кроется в запуске очередной копии скрипта до того момента как отработала предыдущая (в частности, по этой же причине становится заметным "моргание выделения"). В этом случае первый для сравнения файл (%N у Flasher или Sp у меня), может определяться неверно, поскольку предыдущий скрипт ещё не успевает закончить свою работу). И если его расширение (или он сам в моём варианте) случайно совпадёт со вторым сравниваемым FSO.GetExtensionName(.GetTextFromClip) у Flasher или Sn у меня), то и происходит возврат в начало списка. Я этот эффект тоже замечал. А в оригинальном варианте такого сравнения нет и стабильность выше.
Andrey_A писал(а):Хотелось бы ещё один параметр чтобы можно было выбрать - переход к следующему расширению (вниз) есть - переход к предыдущему расширению (хотелось бы).
Так вроде уже было? "Я сделал два скрипта - один вверх находит следующее расширение, другой вниз."

Добавлено: Сб окт 15, 2011 12:16
Flasher
Andrey_A писал(а):мне не нужна цикличность
Тогда зачем вопрос поднял?
Andrey_A писал(а):немножко прикинув, вообще отказался от скриптов
Я бы раcсмотрел такой вариант, если бы в TCMС был аналог LockTC. Смотреть на моргания как-то не доставляет удовольствия.
sa писал(а):Скорее всего, причина кроется в запуске очередной копии скрипта до того момента как отработала предыдущая.
Нет, проблема в том, что в переменную передаётся только часть буфера, команда TC не успевает отработать на больших списках. Поставил True.

Добавлено: Сб окт 15, 2011 12:25
sa
Flasher писал(а):Поставил True.
Всё равно слетает в начало списка. Даже на небольших списках без Ctrl+B.