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 

NTLinks + NTLinksMaker: создание и инфо о ссылках NTFS
Goto page Previous  1, 2, 3 ... 33, 34, 35, 36  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Flasher



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

Post (Separately) Posted: Wed Jul 31, 2019 00:56    Post subject: Reply with quote

MVV wrote:
я её специально не исправлял вроде, сама поправилась.
Ну, ты в истории отметь хотя бы.

Да, сейчас вижу — имя у одиночника в режиме без подкаталогов остаётся. Гуд.

Но что-то у нас с какой-то версии тихий режим поломался:
/q /s? /r="%P" "@%WL" "%T*" — выпадает окно ошибки с кракозябрами у первых 4-х символов в пути назначения (в предыдущей версии создаёт папку с кракозябрами спереди в имени, а в ней ссылку с откусанным расширением), без звёздочки — молчит и ничего не создаёт.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
MVV



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

Post (Separately) Posted: Wed Jul 31, 2019 11:36    Post subject: Reply with quote

Спасибо, поправил баг с кракозябрами в случае одного объекта и баг с громким тихим режимом.

NTLinksMaker Beta 428

И твой предыдущий баг понятнее описал в истории.
_________________
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: 13839
Location: Москва

Post (Separately) Posted: Wed Jul 31, 2019 11:55    Post subject: Reply with quote

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



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

Post (Separately) Posted: Wed Jul 31, 2019 13:21    Post subject: Reply with quote

Поправил.

NTLinksMaker Beta 430
_________________
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: 13839
Location: Москва

Post (Separately) Posted: Wed Jul 31, 2019 14:00    Post subject: Reply with quote

Вместе с постом — в третий раз. Wink
ОК. Баг исчез. Теперь почти всё отлично! Smile

Вот ещё что.
С:\меняем\тут\каталоги\*\FileName.ext — работает.
С:\*\меняем\тут\каталоги\FileName.ext — пишет:
Quote:
Сохранение путей относительно базового каталога будет отключено, т.к. имя файла не начинается со звёздочки.
Нельзя исправить?

И ещё бы хотелось в случае /q в "Команда:" и /q- в "Параметры:" автоматически пропускать одноимёнки как без /q-. В 15-ом ты делал это для [..].
Вдобавок было бы, конечно, здорово ключом /c добавлять счётчик к имени в случае, если одноимёнка не является ссылкой на объект.
Кстати, /q[-] стоит добавить в окошко при вызове без параметров.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
MVV



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

Post (Separately) Posted: Wed Jul 31, 2019 23:44    Post subject: Reply with quote

Quote:
Вместе с постом — в третий раз.

Да ты прямо считал! И не в третий, я после второго удалил пост и написал новый. Cool

Quote:
Нельзя исправить?

Я долго думал, есть ли смысл добавлять каталоги после звёздочки, и не нашёл этого смысла. Найдёшь - обсудим. Сейчас \*\ может стоять только перед маской имени файла.

Quote:
И ещё бы хотелось в случае /q в "Команда:" и /q- в "Параметры:" автоматически пропускать одноимёнки как без /q-.

Что за одноимёнки? Ты про автопереименование файлов, если таковые уже существуют? Или о чём вообще?

Quote:
В 15-ом ты делал это для [..].

Не понял, что есть 15 (год?) и что есть [..]...
_________________
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: 13839
Location: Москва

Post (Separately) Posted: Thu Aug 01, 2019 00:11    Post subject: Reply with quote

MVV wrote:
Найдёшь - обсудим.
Смысл такой же как и перед \*\. Никакого преимущества у цепочки перед на цепочкой после скрытой под * нет. В равной степени полезно может быть и то и другое.
MVV wrote:
Ты про автопереименование файлов, если таковые уже существуют?
В цитате написано "автоматически пропускать". Про счётчик автопереименования написано уже следом.
MVV wrote:
Не понял, что есть 15 (год?) и что есть [..]...
Год. Только тогда касалось вызова справки, а сейчас — тихой работы в целом после создания ссылок с диалогом.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
MVV



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

Post (Separately) Posted: Thu Aug 01, 2019 10:09    Post subject: Reply with quote

Quote:
Смысл такой же как и перед \*\. Никакого преимущества у цепочки перед на цепочкой после скрытой под * нет. В равной степени полезно может быть и то и другое.

Нет, подожди. Вставлять уровни перед непосредственно маской имени - это переносить всю иерархию как есть в другое место, это вполне осмысленно. А вот указание дополнительных уровней - это уже нарушение иерархии. Я не вижу смысла во второй операции:

Code:
Базовая папка:
C:\Files

Исходные файлы:
C:\Files\ File1.txt
C:\Files\ Dir1\ Dir1File.txt
C:\Files\ Dir1\Dir2\ Dir12File.txt

Результат при создании ссылок в C:\FooFiles\*\*.*
C:\FooFiles\ File1.txt
C:\FooFiles\ Dir1\ Dir1File.txt
C:\FooFiles\ Dir1\Dir2\ Dir12File.txt

Результат при создании ссылок в C:\BarFiles\*\Bar\*.*
C:\BarFiles\ Bar\ File1.txt
C:\BarFiles\ Dir1\ Bar\ Dir1File.txt
C:\BarFiles\ Dir1\Dir2\ Bar\ Dir12File.txt


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: 13839
Location: Москва

Post (Separately) Posted: Thu Aug 01, 2019 10:25    Post subject: Reply with quote

MVV wrote:
Я не вижу смысла во второй операции:
Почему же? Не вижу принципиальной разницы. Если ты создаёшь цепочки справа от относительного пути, то что мешает делать то же самое, но слева? Это по сути одна операция, если работать с полными именами, как в случае md. Иногда ведь нужно создавать подпапки (хотя бы по одной).
MVV wrote:
Code:
Результат при создании ссылок в C:\BarFiles\*\Bar\*.*
C:\BarFiles\ Bar\ File1.txt
C:\BarFiles\ Dir1\ Bar\ Dir1File.txt
C:\BarFiles\ Dir1\Dir2\ Bar\ Dir12File.txt
Ну, да. Только чаще это будет без BarFiles\.
И потом, предупреждение появляется и в случае обычного режима с подкаталогами. А там относительных путей не будет, и закономерность добавки для тихого комбо-режима становится более очевидна.

MVV wrote:
То есть, молча пропускать уже существующие объекты?
Не просто существующие, а одноимённые. С добавкой /с[1|2] — сперва проверять, что одноимёнка не является ссылкой, или что ссылка (хард/сим — любая) не соответствует источнику, и тогда создавать ссылку с добавкой счётчика в скобках. 1|2 — выбор начала счётчика.
MVV wrote:
А сейчас не так?
С диалогом — нет.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.


Last edited by Flasher on Sat Aug 03, 2019 12:50; edited 1 time in total
Back to top
View user's profile Send private message
MVV



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

Post (Separately) Posted: Thu Aug 01, 2019 11:48    Post subject: Reply with quote

Quote:
Не просто существующие, а одноимённые.

Это уже очевидно, остальные нас в принципе не интересуют.

Quote:
С добавкой /с[1|2] — сперва проверять, что одноимёнка не является ссылкой, или что ссылка (хард/сим — любая) не соответствует источнику, и тогда создавать ссылку с добавкой счётчика в скобках. 1|2 — выбор начала счётчика.

Слишком сложно и экзотично. Жёсткие ссылки в принципе не детектируются, можно разве что по индексу сравнить, на тот же объект она ссылается или нет, и далее пропускать или удалять+пересоздавать, читать символьные или точки соединения слишком сложно, проще сразу либо пропускать, либо удалять и создавать заново (чтобы гарантированно соответствовали источнику). Но если существующий объект - непустая папка, её просто так не удалишь. Мне не очень хочется заниматься проверкой ссылок, это уже слишком серьёзно и ситуативно, чтобы автоматизировать. А добавить автопереименование со счётчиком по стандартной схеме можно.

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: 13839
Location: Москва

Post (Separately) Posted: Thu Aug 01, 2019 11:59    Post subject: Reply with quote

MVV wrote:
и экзотично.
Создавать линки без создания дубликатов — вполне прозрачная задача, никакой экзотики.
MVV wrote:
можно разве что по индексу сравнить
Я об этом сразу и подумал. Это просто.
MVV wrote:
читать символьные или точки соединения слишком сложно
.ExtendedProperty("LinkTarget") — разве не простой вариант? Или подвязаться к NTLinks.wdx64 (как TCFS2 подвязывается к TCFS2Tools.dll)?
MVV wrote:
либо удалять и создавать заново
Нет, это не годится. Там может иная папка фигурировать.

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



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

Post (Separately) Posted: Thu Aug 01, 2019 13:37    Post subject: Reply with quote

Quote:
.ExtendedProperty("LinkTarget") — разве не простой вариант? Или подвязаться к NTLinks.wdx64 (как TCFS2 подвязывается к TCFS2Tools.dll)?

И то и другое - слишком сложно, чтобы я мог это представить в этой утилите. Первое привязывает к COM-интерфейсам и непонятно что вернёт, путь может быть записан по-разному, второе требует привязки к плагину и поддержки его интерфейса.

Quote:
Нет, это не годится. Там может иная папка фигурировать.

А что ты хочешь в результате? Вариант 1: пропустить все дубликаты, вариант 2: перезаписать все дубликаты, вариант 3: автопереименовать все дубликаты, ещё есть разумные варианты? Или ты в варианте 3 хочешь проверять и не автопереименовывать совпадающие?

Quote:
Я вообще о показе окна ошибки как такового. С /q оно не выводится.

На то он и интерактивный режим, чтобы хотя бы раз сообщить об ошибке. Но добавить опцию для переопределения поведения в случае ошибки можно, она пригодится и для тихого режима (прерывать при ошибке или пропускать всё).
_________________
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: 13839
Location: Москва

Post (Separately) Posted: Thu Aug 01, 2019 18:34    Post subject: Reply with quote

MVV wrote:
и непонятно что вернёт
Полное имя источника.
MVV wrote:
путь может быть записан по-разному
Ты про относительный? Вернёт в любом случае полный.

MVV wrote:
вариант 2: перезаписать все дубликаты
Если не проверять на тип/источник, то замена по сути вредна.
MVV wrote:
автопереименовать все дубликаты
Автопереименовывать можно только имеющиеся одноимёнки. Это не требуется. Требуется именовать новые ссылки с добавкой счётчика.
MVV wrote:
Или ты в варианте 3 хочешь проверять и не автопереименовывать совпадающие?
Совпадающие по указанным мной признакам — пропускать, конечно, но никак не заменять и не сигналить ошибкой.

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



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

Post (Separately) Posted: Fri Aug 02, 2019 14:43    Post subject: Reply with quote

Quote:
Ты про относительный? Вернёт в любом случае полный.

А промежуточные ссылки пораскрывает?

Quote:
Если не проверять на тип/источник, то замена по сути вредна.

Если проверять только тип и перезаписывать только ссылку ссылкой, то замена не так уж и вредна, сделает то же самое, что и удаление дубликатов в папке назначения плюс обычный запуск.

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: 13839
Location: Москва

Post (Separately) Posted: Fri Aug 02, 2019 15:28    Post subject: Reply with quote

Quote:
А промежуточные ссылки пораскрывает?
Не в курсе, о чём ты. У Sym/RP такие есть?
Quote:
сделает то же самое, что и удаление дубликатов в папке назначения плюс обычный запуск.
Что за запуск? Удаление одноимёнок без проверки вредно. Я же выше объяснял. Ссылка может вести на другой источник. Это не будет равноценной заменой.

Quote:
Именовать новые с добавкой счётчика - разве не в этом суть автопереименования в случае, когда объект по пути создаваемой ссылки уже сущестуует?
Какой объект? Одноимённый? Разберись в терминах. Я всё чётко расписал. Точнее вряд ли уже получится. Автопереименовывать существующие объекты не имеет смысла (хотя в ряде ренеймеров такая опция имеется). Новые объекты нельзя в принципе переименовывать, так как они ещё не появились на свет, им можно только присвоить имена (именовать) с добавкой счётчика или без. Ты же не будешь сперва создавать их с рандомным именем, а потом переименовывать под совпадения со счётчиком.
_________________
Автору сборки 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 ... 33, 34, 35, 36  Next
Page 34 of 36

 
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