Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

[WCX] CopyTree - копирование с сохранением структуры
Goto page Previous  1, 2, 3 ... 19, 20, 21 ... 23, 24, 25  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Mon Dec 11, 2017 15:57    Post subject: Reply with quote

Что-то у вас тут жуткое затевается... Very Happy

ingerard wrote:
Сейчас все работает как надо, но можете еще добавить /c:0 - копировать включая букву диска.

Не лучше ли сделать консистентно с плагином, чтобы буква диска копировалась при значении -1?
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
ingerard



Joined: 04 Dec 2016
Posts: 128

Post (Separately) Posted: Mon Dec 11, 2017 16:33    Post subject: Reply with quote

MVV
Скрипт от Флешера как альтернатива, на всякий случай, а приоритет все же на связке TCFS2 + CopyTree, так намного быстрее реакция.
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Mon Dec 11, 2017 18:28    Post subject: Reply with quote

Вот в альтернативе, думается, имеет смысл сохранять смысл основных ключей...
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Mon Dec 11, 2017 20:17    Post subject: Reply with quote

MVV
У меня 3 режима. Исходным был а), которого у тебя не было. В случае -1 исключается одна папка из относительного пути. За негодностью двух минусов для одного ключа я компенсировал этот момент отсутствием знака для в), где задаём число на отъём слева. Т.е. при нуле отъём отсутствует.

ingerard
Мой ник попрошу писать как полагается, а не в искажённой траскрипции.
По каким критериям реакция определялась? Например, при /s:0,0000001 ?
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.


Last edited by Flasher on Mon Dec 11, 2017 21:33; edited 1 time in total
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Mon Dec 11, 2017 20:52    Post subject: Reply with quote

Quote:
Исходным был а), которого у тебя не было.

Если правильно понял описание, б) и в) - это положительные и отрицательные значения DefaultCopyLevel? А что именно делает а)?
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Mon Dec 11, 2017 20:58    Post subject: Reply with quote

MVV wrote:
А что именно делает а)?
Что и написано:
C:\5\4\3\2\1 << \X\Y\Z\name.ext
+1: 1\X\Y\Z\name.ext
+2: 2\1\X\Y\Z\name.ext
+3: 3\2\1\X\Y\Z\name.ext

Во всех 3-х режимах контроль идёт не по всему пути, а по пути источника или относительному пути, чтобы не зацепить лишнего. В случае DefaultCopyLevel так? По описанию не совсем ясно.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
ingerard



Joined: 04 Dec 2016
Posts: 128

Post (Separately) Posted: Mon Dec 11, 2017 22:23    Post subject: Reply with quote

Quote:
По каким критериям реакция определялась? Например, при /s:0,0000001 ?

Не совсем понял о чем речь, сравнивал по визуальной задержки. Через скрипт скопированная папка появляется на секунду дольше, чем через CopyTree, плюс еще большой минус в том, что не видно прогресса копирования, очень существенно при объемных файлах...
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Mon Dec 11, 2017 23:08    Post subject: Reply with quote

Flasher wrote:
MVV wrote:
А что именно делает а)?
Что и написано:
C:\5\4\3\2\1 << \X\Y\Z\name.ext
+1: 1\X\Y\Z\name.ext
+2: 2\1\X\Y\Z\name.ext
+3: 3\2\1\X\Y\Z\name.ext

Не пойму, куда потом идёт такой симбиоз двух путей (источника и получателя), и почему недостаточно только регулировки числа копируемуых уровней источника.

Flasher wrote:
Во всех 3-х режимах контроль идёт не по всему пути, а по пути источника или относительному пути, чтобы не зацепить лишнего. В случае DefaultCopyLevel так? По описанию не совсем ясно.

Если DefaultCopyLevel не задан или положителен, он задаёт число дополнительных верхних уровней для копирования относительно базового (в случае плоского режима) или первого безопасного (из результатов поиска) варианта:
C:\Target << Z\name.ext
0: C:\Target\Z\name.ext
1: C:\Target\Y\Z\name.ext
А если DefaultCopyLevel отрицателен, он задаёт число пропускаемых уровней от корня:
C:\Target << D:\X\Y\Z\name.ext
-1: C:\Target\D\X\Y\Z\name.ext
-2: C:\Target\X\Y\Z\name.ext
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Dec 12, 2017 01:49    Post subject: Reply with quote

ingerard wrote:
Не совсем понял о чем речь, сравнивал по визуальной задержки.
Я же привёл значения для ключа, чтобы сверить.
ingerard wrote:
Через скрипт скопированная папка появляется на секунду дольше, чем через CopyTree
И как вы это определили? То, что ТС не успевает обновлять панель, не значит, что папка не скопировалась.
ingerard wrote:
плюс еще большой минус в том, что не видно прогресса копирования, очень существенно при объемных файлах.
Не спорю. С другой стороны прогресс съедает скорость. Мне оповещения хватает. Множественный прогресс делать не хочу, а общий, если брать средства из коробки, будет не так чисто всплывать.

Зато нет никаких мельканий и есть автопереименование для совпавших по имени файлов. Smile


MVV wrote:
Не пойму, куда потом идёт такой симбиоз двух путей (источника и получателя)
В указанный получатель. Там же в параметрах написано. И откуда здесь симбиоз? Это путь источника и относительный к объекту. Тут нет получателя.
MVV wrote:
и почему недостаточно только регулировки числа копируемуых уровней источника.
В каком смысле "недостаточно"? В двух режимах этот контроль и осуществляется. В б) контролируется относительный путь.

MVV wrote:
1: C:\Target\Y\Z\name.ext
Откуда папка Y взялась? См. как у меня.
MVV wrote:
А если DefaultCopyLevel отрицателен, он задаёт число пропускаемых уровней от корня:
Это не отвечает на мой вопрос. Где тут общий для DirBranch каталог-источник? Что будет при -4, -5, -6?
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Tue Dec 12, 2017 11:21    Post subject: Reply with quote

Flasher wrote:
В указанный получатель. Там же в параметрах написано. И откуда здесь симбиоз? Это путь источника и относительный к объекту. Тут нет получателя.

CopyTree копирует файлы из папки-источника в папку-получатель с сохранением структуры. Относительным путём к копируемому объекту является его путь относительно базовой папки, которая по умолчанию является папкой, в которой юзер нажал Ctrl+B, и которая может быть изменена пользователем или опцией DefaultCopyLevel.

Flasher wrote:
Это не отвечает на мой вопрос. Где тут общий для DirBranch каталог-источник? Что будет при -4, -5, -6?

Твой пример я вообще не понял, ты копируешь файл \X\Y\Z\name.ext в папку C:\5\4\3\2\1, но зачем-то потом используются пути относительно папки C:\5\4\3\2\1 - куда они дальше идут, непонятно...
Однако я просто показал, что делает опция DefaultCopyLevel: положительные значения увеличивают число дублируемых уровней (понижают выбранный по умолчанию пункт в диалоге выбора глубины), отрицательные задают абсолютное значение числа уровней до базовой папки (фактически, задают номер выбранного пункта в диалоге, начиная с конца). При -4 базовым путём будет D:\A\B\C, при слишком большом - максимально возможное (хотя, тут возможно имеет смысл показывать диалог).

Flasher wrote:
В каком смысле "недостаточно"? В двух режимах этот контроль и осуществляется. В б) контролируется относительный путь.

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

Flasher wrote:
Откуда папка Y взялась? См. как у меня.

У тебя папка Y является надпапкой Z, я и показал, что будет, если мы копируем файл из Z при различных значениях параметра (разве что явно не сказал, что текущая папка Z).
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Dec 12, 2017 11:46    Post subject: Reply with quote

MVV wrote:
CopyTree копирует файлы ...
Я это прекрасно знаю. Как это относится к приведённой цитате?

MVV wrote:
Твой пример я вообще не понял, ты копируешь файл \X\Y\Z\name.ext в папку C:\5\4\3\2\1
См. внимательно, что я пишу:
Flasher wrote:
Это путь источника и относительный к объекту. Тут нет получателя.
Получатель указывается 3-м параметром, посмотри описание параметров хоть.

MVV wrote:
отрицательные задают абсолютное значение числа уровней до базовой папки
Вот. Я это и хотел увидеть. Т.е. от относительно папки не отнимаются? Но ведь в диалоге такой выбор есть. Question

MVV wrote:
При -4 базовым путём будет D:\A\B\C, при слишком большом - максимально возможное (хотя, тут возможно имеет смысл показывать диалог).
Давай по-другому. Базовый путь - D:\X (ты писал "C:\Target << D:\X\Y\Z\name.ext"). Так что будет при -3, -4, -5?

MVV wrote:
У тебя папка Y является надпапкой Z
У тебя-то её нет:
MVV wrote:
C:\Target << Z\name.ext

_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Tue Dec 12, 2017 12:58    Post subject: Reply with quote

Flasher wrote:
Вот. Я это и хотел увидеть. Т.е. от относительно папки не отнимаются? Но ведь в диалоге такой выбор есть. Question

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

Flasher wrote:
Я это прекрасно знаю. Как это относится к приведённой цитате?

Это было объяснение терминов издалека.

Flasher wrote:
Давай по-другому. Базовый путь - D:\X (ты писал "C:\Target << D:\X\Y\Z\name.ext"). Так что будет при -3, -4, -5?

При -3 будет D:\X\Y, если все выделенные файлы находятся внутри этой папки, в противном случае будет выбрана менее глубокая базовая папка (D:\X, или вообще D:\, если в списке копируемых файлов есть, скажем, файлы D:\A1\file1.txt и D:\A2\file2.txt). Тут вообще вопрос, каким должно быть поведение плагина в такой ситуации.

Flasher wrote:
У тебя-то её нет:

Я на примере твоей структуры, где папка Z лежит в папке ...\X\Y, рассмотрел ситуацию копирования в случае, когда мы нажали Ctrl+B в папке Y.

Flasher wrote:
См. внимательно, что я пишу:
Flasher wrote:
Получатель указывается 3-м параметром, посмотри описание параметров хоть.

Это по-прежнему не объясняет, зачем от пути получателя отщеплять уровни. Или у тебя в примере C:\5\4\3\2\1 - это начало пути источника, а ёлочки означают вовсе не направление копирования файла? Поясни тогда, как будут вести себя три режима в случае, когда мы копируем файл D:\A\B\C\X\Y\Z\file.txt в папку C:\Target, если Ctrl+B мы нажали в папке D:\A\B\C.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Dec 12, 2017 13:26    Post subject: Reply with quote

MVV wrote:
но не вижу в этом особого смысла
Зачем тогда добавлял?

MVV wrote:
При -3 будет D:\X\Y, если все выделенные файлы находятся внутри этой папки
Не понимаю. Я спрашиваю про результат копирования. Получатель у тебя C:\Target. База — D:\X. При чём тут D:\X\Y?

MVV wrote:
Я на примере твоей структуры, ... когда мы нажали Ctrl+B в папке Y.
Вообще-то в моём случае это было в папке C:\5\4\3\2\1.

MVV wrote:
Это по-прежнему не объясняет, зачем от пути получателя отщеплять уровни.
Я тебе в очередной раз пишу, что в примере нет получателя, а ты опять пишешь, что я от него что-то отщепляю.

MVV wrote:
Или у тебя в примере C:\5\4\3\2\1 - это начало пути источника, а ёлочки означают вовсе не направление копирования файла?
Именно. Стрелки показывают, с какой стороны прибавляются папки.

MVV wrote:
Поясни тогда, как будут вести себя три режима в случае, когда мы копируем файл D:\A\B\C\X\Y\Z\file.txt в папку C:\Target, если Ctrl+B мы нажали в папке D:\A\B\C.
Code:
а)    +1:  C:\Target\C\X\Y\Z\file.txt
а) +4|+9:  C:\Target\D\A\B\C\X\Y\Z\file.txt
б)    -1:  C:\Target\Y\Z\file.txt
б) -3|-9:  C:\Target\file.txt
в)     1:  C:\Target\А\B\C\X\Y\Z\file.txt
в)   4|9:  C:\Target\X\Y\Z\file.txt
Можешь дать аналогичный пример?
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Tue Dec 12, 2017 14:10    Post subject: Reply with quote

Quote:
Не понимаю. Я спрашиваю про результат копирования. Получатель у тебя C:\Target. База — D:\X. При чём тут D:\X\Y?

При том, что параметр задаёт новую базу. Вспомни старый плагин TreeCopyPlus, у него был только 1 параметр - число уровней от корня до базы, то же самое здесь достигается отрицательными значениями DefaultCopyLevel.

Quote:
Зачем тогда добавлял?

Может, кто-то захочет себе в ногу выстрелить, или слить похожие структуры файлов, находящиеся в разных папках...

Quote:
Можешь дать аналогичный пример?

ОК, для различных DefaultCopyLevel:
Code:
   1:  C:\Target\C\X\Y\Z\file.txt
≥  4:  C:\Target\D\A\B\C\X\Y\Z\file.txt
  -1:  C:\Target\D\A\B\C\X\Y\Z\file.txt
  -2:  C:\Target\A\B\C\X\Y\Z\file.txt
≤ -8:  C:\Target\file.txt

_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Dec 12, 2017 14:46    Post subject: Reply with quote

MVV wrote:
При том, что параметр задаёт новую базу.
Я то писал не про базу, а про результат добавления.
MVV wrote:
Может, кто-то захочет себе в ногу выстрелить
Я поэтому и колебался, делать б) или нет. А ты пишешь, что у тебя в ini его и нет.

Code:
  -1:  C:\Target\D\A\B\C\X\Y\Z\file.txt
  -2:  C:\Target\A\B\C\X\Y\Z\file.txt
Тут логика где-то зависает. Вроде надо 1/2 папки убрать, а убирается 0/1.
Code:
≤ -8:  C:\Target\file.txt
Вот. А пишешь:
MVV wrote:
отрицательные задают абсолютное значение числа уровней до базовой папки
число уровней от корня до базы
Так не до, а совместно. Меня как раз такой вариант не устраивает. "До" как раз у меня.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3 ... 19, 20, 21 ... 23, 24, 25  Next
Page 20 of 25

 
Jump to:  
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