pyCommander расширяемый файловый менеджер на Python [intro][description][binds][download][screenshots][todo][plugins] |
© 2005 by Anton Korenyushkin aka blacktiger tiger@rt.mipt.ru |
Introduction
pyCommander - это расширяемый файловый менеджер, написанный на Python с использованием библиотеки Tkinter. Я не хочу рассыпаться в похвалах ему, расписывая, какой он замечательный и как он много умеет, тем более пока что он умеет не так уж много. Гораздо логичнее, по-моему, описать причины его создания, идеологию и те возможности (возможно, пока не реализованные), которые из этой идеологии вытекают.
Итак, о причинах. К сожалению, мне не удалось найти файловый менеджер под Linux, который удовлетворял бы моим потребностям работы с файлами. Сразу оговорюсь:
1)то, что я его не нашел не значит, что его не существует
2)то, что я его не нашел ПОД LINUX, не значит, что для других платформ их куча - просто я не пользуюсь другими платформами.
Многие UNIX-оиды сразу скажут мне, что лучший файловый менеджер - это bash (ну или какой-то другой *sh). Да, для многих задач ничего лучше не придумаешь. Но не для всех. Примеры:
-упорядочивание музыкальных файлов, разложенных по множеству дирректорий на диске
-желание посмотреть из сети "какой-нибудь" фильм, если не знаешь какой, и поэтому читаешь отзывы.txt к каждому (написанные, кстати, в win-1251)
-запись файлов на CD, консольным cdrecord-ом пользоваться все-таки утомительно, а различные front-end'ы мне почему-то ставить лень
Этот список можно продолжать и продолжать, причем каждый может его продолжить по-своему. Поэтому я решил, что нужен файловый менеджер, который может легко расширить любой желающий. Менеджер который сможет просто выделять какие-то множества файлов, а затем "подсовывать" их для обработки другим программам (cp, mplayer, cdrecord etc.). Так как все задачи, требующие хорошей оптимизации, выполняют сторонние утилиты, то менеджер логично писать на скриптовом языке - это упростит расширяемость и ускорит разработку. Я посчитал Python оптимальным выбором.
Такая идеология, по-моему, полностью соответствует понянию UNIX-way. Менеджер умеет только отмечать файлы, а работают с ними уже те программы, которые умеют только что-то одно, но делают это хорошо. Из этого вытекают все преимущества UNIX-way.
Так как используется Python, то программа будет кроссплатформенной. Однако, использование ее, например, под Windows будет весьма затруднительным. Не потому, что пару форков в программе придется переделать в spaw, или что там у них. Просто под Windows нет утилит, делающих хорошо маленькое дело (вернее есть, но они далеко не стандартны), а на этом построена, фактически вся программа. Однако, под Windows работает весьма малая часть целевой аудитории pyCommander'а, поэтому я не очень расстраиваюсь из-за отсутствия здесь переносимости. Впрочем, если найдутся желающие - я буду только рад.
Итак, главное, в чем сейчас нуждается pyCommander - это пользователи-разработчики. Я написал это через дефис потому, что в данном случае одно плавно перетекает в другое. Человек, который напишет полезный плагин, внесет в развитие программы большой вклад, но люди, которым просто чего-то не хватает и они могут выразить это что-то словами нужны pyCommander'у не меньше. Так что пишите мне на tiger@rt.mipt.ru. Те, кто хочет принять участие в разработке могут на TODO на этом сайте, могут реализовать и что-то свое, но перед тем, как браться за клавиатуру, тапишите мне по мылу - обсудим вашу идею.