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 

[Plugin Request] Работа с подпапками

 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Baz



Joined: 06 Mar 2006
Posts: 34

Post (Separately) Posted: Wed Sep 12, 2012 14:36    Post subject: [Plugin Request] Работа с подпапками Reply with quote

Здравствуйте.
Хочу предложить (попросить) сделать плагин. Некоторые функции уже встречались, но весь набор возможностей надеюсь нет.
Идея плагина в том, что бы можно было искать, перемещать и переименовывать файлы с учётом их расположения. Написал всё что смог придумать. Если придумаете лучше или другие подходящие по теме функции - пишите.

Буду описывать функции подразумевая что уровни папок нумеруются сверху вниз: 1 - верхняя, 2 - нижняя.
В основе, кроме определения уровня вложенности файла должна определяться базовая верхняя папка для всех выделенных файлов.
Основная польза плагина - при работе с файлами "перенесёнными на панель" из поиска. Плагин должен работать как со всеми файлами в папке, так и только с выделенными.
При переименовании и перемещении надо учитывать что имя верхней папки может измениться.


Функции плагина:

1. На главной панели новые имена столбцов:
1) номер уровня
2) относительный номер уровня от базовой папки

2. Дополнение к поиску:
1) поиск в рамках от А до Б уровней. А может указываться как от текущей папки, так и в обратном порядке начиная с последней подпапки (с конца). Если пусто В, то подразумевается поиск до конца. Должен быть предусмотрен символ указывающий счётчику уровней работать не с локальными а с глобальными номерами папок. На последнем указанном уровне должны отображаться и файлы и папки.

3. В окне пакетного переименования должны быть доступны:
1) номер уровня (глобальный и локальный до базовой папки)
2) имя папки на N уровней выше (верхняя папка, надверхняя, и т.д. до базовой или до корня диска)
3) все имена папок от уровня N до уровня K с разделителем X (разделитель можно указать).
4) счётчик со сбросом номера в каждой отдельной папке (счётчик выбирает файлы из одной папки, переименовывает их, сбрасывается до начального номера и снова начинает выбирать файлы из одной папки)
-в пунктах 2 и 3 должна быть возможность указывать глобальные номера уровней. Или можно сделать отдельные функции для локального и глобального номеров, например: "имя папки пятого уровня" и "имя папки на 5 уровней выше данного файла".

4. Сделать новую функцию перемещения и копирования со следующими возможностями:
1) Переместить на N уровеней вверх
2) Переместить до К-го уровня вверх. Этот параметр должне работать одновременно с первым. В качестве уровеня желательно иметь возможность указывать базовый.


Last edited by Baz on Wed Sep 12, 2012 16:18; edited 2 times in total
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10284
Location: Россия, Саратов

Post (Separately) Posted: Wed Sep 12, 2012 15:42    Post subject: Reply with quote

Всё это, конечно, очень здорово, только вот ни одному из реально существующих типов плагинов TC запрошенный функционал (кроме первого пункта со столбцами, применимого, естественно, только в пользовательских колонках) не соответствует. Слишкеом много всего и слишком всё это разное. Пока, по моим представлениям, речь может идти по некоторым позициям либо о каких-то гипотетических многофункциональных дочерних плагинах для Autotun или TWinKey, либо о некой взаимодействующей с TC спецутилите. Впрочем, пусть выскажутся специалисты.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
Baz



Joined: 06 Mar 2006
Posts: 34

Post (Separately) Posted: Wed Sep 12, 2012 16:35    Post subject: Reply with quote

Avada, дополнения к поиску и переименованию работают вместе и идут как контекстные плагины (WDX) с параметрами. А для копирования можно сделать архивный плагин (вместо архивирования перемещать).
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10284
Location: Россия, Саратов

Post (Separately) Posted: Wed Sep 12, 2012 17:05    Post subject: Reply with quote

Baz
По-моему, первый пост — это запрос на один плагин, а не на набор плагинов разных типов, не так ли?
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
MVV



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

Post (Separately) Posted: Wed Sep 12, 2012 17:33    Post subject: Reply with quote

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



Joined: 06 Mar 2006
Posts: 34

Post (Separately) Posted: Wed Sep 12, 2012 17:45    Post subject: Reply with quote

Avada
Я напоминал каким плагинам соответствует "запрошеный функционал" и да, предпологается один плагин.
Даже если обязательно надо делать отдельные плагины, то пожалуй их проще сделать одному человеку за раз, чем разделять на несколько тем и несколько людей.

MVV
определять что они взяты с панели поиска и не нужно, а вот проанализировать весь список - да. И что значит передаёт по одному? - способен обрабатывать только один за раз? Работа с базовой папкой не самая важная часть и при очень больших проблемах её можно не делать, хотя тот же вопрос появится в счётчике со сбрасывателем, а он бы очень пригодился.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Wed Sep 12, 2012 19:41    Post subject: Reply with quote

Baz wrote:
определять что они взяты с панели поиска и не нужно
Если нельзя определить базовую папку, то какая разница? Запрос, где она должна учитываться, уже отклоняется по сути.

Что касается перемещения/копирования, то это никак не комбинирует с вышестоящими пожеланиями. Запрос больше на подобную автоматизацию тянет.

Baz wrote:
Даже если обязательно надо делать отдельные плагины, то пожалуй их проще сделать одному человеку за раз, чем разделять на несколько тем и несколько людей.
Это почему же проще? Больше функций - больше работы. А поскольку описанные функции не могут предполагать создания одного плагина, то логично, что разговор может идти только о разделении. Если запрос бы был на утилиту, то другое дело.

Last edited by Flasher on Wed Sep 12, 2012 20:11; edited 1 time in total
Back to top
View user's profile Send private message
Baz



Joined: 06 Mar 2006
Posts: 34

Post (Separately) Posted: Wed Sep 12, 2012 19:54    Post subject: Reply with quote

Flasher wrote:
Если нельзя определить базовую папку, то какая разница? Запрос, где она должна учитываться уже отклоняется по сути.
Ещё раз: определение базовой папки не главная идея - там есть ещё много разных функций. К тому же, как я понял по словам MVV, можно сначала получить список файлов и проанализировать, а затем обработать.
Flasher wrote:
Что касается перемещения/копирования, то это никак не комбинирует с вышестоящими пожеланиями....
Baz wrote:
Даже если обязательно надо делать отдельные плагины, то пожалуй их проще сделать одному человеку за раз, чем разделять на несколько тем и несколько людей.
Это почему же проще? Больше функций - больше работы. А поскольку описанные функции не могут предполагать создания одного плагина, то логично что разговор может идти только о разделении.
Одна тема, схожие функции - поэтому и всё вместе. И не думаю что есть большая разница между созданием разных типов плагинов если ты ваобще умеешь их делать.
Flasher wrote:
Если запрос бы был на утилиту, то другое дело.
Почему вы считаете что мне известна разница?
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Wed Sep 12, 2012 20:09    Post subject: Reply with quote

Baz wrote:
Ещё раз: определение базовой папки не главная идея
Ещё раз:
Baz wrote:
где она должна учитываться

Baz wrote:
Одна тема, схожие функции - поэтому и всё вместе.
Моё видение ситуации - одна тема, которой суждено при таком подходе свернуться.
Baz wrote:
И не думаю что есть большая разница между созданием разных типов плагинов если ты ваобще умеешь их делать.
Большое заблуждение. Для каждого типа есть куча своих функционально-зависимых особенностей. При умении писать один, другой написать сходу не получится, и это только заложенной Гислером базы касается. Ну, о реальных сроках на обучение тут есть кому рассказать.

Baz wrote:
Почему вы считаете что мне известна разница?
Я этого не писал...
Back to top
View user's profile Send private message
Baz



Joined: 06 Mar 2006
Posts: 34

Post (Separately) Posted: Wed Sep 12, 2012 20:42    Post subject: Reply with quote

Flasher, Учитывать базовую(в смысле общую) папку - это удобная, но дополнительная информация. Это без труда можно исключить из функционала.
Flasher wrote:
Моё видение ситуации - одна тема, которой суждено при таком подходе свернуться.
Пообсуждаем, послушаем экспертов и узнаем есть ли смысл делать, или то что останется от идеи не стоит работы.
А делать плагин или плагинную утилиту - разработчикам виднее.[/quote]
Back to top
View user's profile Send private message
MVV



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

Post (Separately) Posted: Wed Sep 12, 2012 21:27    Post subject: Reply with quote

Получить весь список сразу может лишь архиваторный плагин, и только при операции упаковки, контентному плагину тотал передаёт файлы по одному (путь к файлу и номер поля, которое нужно вернуть). Сомневаюсь, что будет удобно каждый раз что-то дополнительное делать, чтобы получить поля.

А если не учитывать базовую папку, то действительно, как заметил Flasher, большая часть первого поста отпадает.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…


Last edited by MVV on Wed Sep 12, 2012 21:31; edited 1 time in total
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10284
Location: Россия, Саратов

Post (Separately) Posted: Wed Sep 12, 2012 21:29    Post subject: Reply with quote

Baz wrote:
А делать плагин или плагинную утилиту - разработчикам виднее.

И делать ли вообще что-то... С учётом того, что такого понятия как "плагинная утилита" в природе не существует. Есть плагины (особым образом поключаемые к TC дополнительные модули) с функционалом, ограничиваемым возможностями каждого типа плагинов. И есть утилиты (внешние программы) с теоретически произвольным функционалом, которые при этом как-то надо подружить с TC. На уровне общего плагина задача с таким набором условий, ИМХО, нерешаема. А для того, чтобы делать такую утилиту, у самого разработчика должна быть как минимум немалая личная заинтересованность в её создании.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
Baz



Joined: 06 Mar 2006
Posts: 34

Post (Separately) Posted: Thu Sep 13, 2012 13:51    Post subject: Reply with quote

MVV wrote:
А если не учитывать базовую папку, то действительно, как заметил Flasher, большая часть первого поста отпадает.
Где вы видели что отпадает много? Почти все предложенные функции будут работать и без определения общей папки для списка файлов.
Avada wrote:
... такого понятия как "плагинная утилита" в природе не существует. ... И есть утилиты (внешние программы) с теоретически произвольным функционалом, которые при этом как-то надо подружить с TC.
Если утилита заранее планируется, разрабатывается и затачивается под работу плагином в ТС - это я и назвал плагинной утилитой. И утилита конечно удобнее, потому что может быть применена многократно с разными программами, но у тотала своя система копирования, которая вряд ли будет доступна из утилиты.
Avada wrote:
...для того, чтобы делать такую утилиту, у самого разработчика должна быть как минимум немалая личная заинтересованность в её создании.
Разве?
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10284
Location: Россия, Саратов

Post (Separately) Posted: Thu Sep 13, 2012 14:44    Post subject: Reply with quote

Baz wrote:
Если утилита заранее планируется, разрабатывается и затачивается под работу плагином в ТС - это я и назвал плагинной утилитой.

Назвать можно что угодно чем угодно, но никакой заточки утилит под работу плагинами в TC в реальности нет. Это разные классы программ. (Плагин может пользоваться услугами какой-то утилиты, но это совсем другое.) И есть достаточно примеров утилит, именно для TC и сделанных. В том числе вторгающихся в область файловых операций (TC UP New, например). Это так, в порядке информации.

Baz wrote:
Разве?

Разве. Потому что написание и дальнейшее сопровождение такой программы — это работа, которая не делается за пять минут на коленке и которой не занимаются исключительно от глубокого безделья без серьёзных моральных (а бывает, что и материальных) стимулов и без готовности продолжать это дело всерьёз и надолго.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
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
Page 1 of 1

 
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