Автор: Максим Мишутин | 16.08.2012 | 11:11 | В рубриках: Новости, Программы, Файловые менеджеры

ridual

Автор: Riateche
Источник

Когда я только переходил на Linux, я пытался найти для себя удобный двухпанельный файловый менеджер. Оказалось, что для Linux полнофункциональных двухпанельников довольно мало, и все они по каким-то причинам меня не устроили. В итоге я расстался с этой идеей и стал пользоваться Nautilus и командной строкой.
Однако недавно Canonical объявила конкурс по разработке приложений для Ubuntu, и я решил попробовать сделать лучший файловый менеджер для Ubuntu.
Сейчас в Ridual еще не реализованы многие функции (и самая важная из них – управление файлами). Поэтому пользоваться им в полной мере нельзя. Однако я надеюсь, что читатели подскажут мне несколько ценных идей и скажут, в правильном ли направлении я движусь. Впрочем, этого поста бы не появилось, если бы не тот факт, что началось голосование, которое определит результаты конкурса.
Ridual написан на C++ с использованием Qt. Он распространяется под самой доброй лицензией MIT, исходные коды доступны на Github. Пользователи Ubuntu 12.04 могут установить программу из репозитория:[note color="#C7C7C7"]sudo add-apt-repository ppa:strahovp/ridual
sudo apt-get update
sudo apt-get install ridual[/note]Описание функций программы
Ridual использует системную цветовую тему. Никаких сумасшедших цветов. Мне кажется, любое приложение должно органично вписываться в окружение. Сравните скриншот Ridual в начале статьи со скриншотом Gnome Commander. Также корректно отображаются иконки файлов из системной темы. Почему-то в имеющихся двухпанельниках с этим проблемы.
Ridual позволяет выполнять любые действия с клавиатуры. Например, с помощью хоткея можно перевести фокус в строку адреса, чтобы скопировать или отредактировать его. В будущем можно будет выбирать варианты действий при ошибках копирования. Более того, вы можете изменить любое сочетание клавиш на то, что вам удобнее.
Все операции, связанные с файловой системой, выполняются в отдельных потоках. Это значит, что интерфейс программы никогда не зависнет, даже когда вы работаете с тормозящей файловой системой, например, сетевым ресурсом или неисправным жестким диском. Операции копирования, удаления файлов и т.п. можно запускать параллельно друг другу, а можно сложить их в одну очередь, чтобы выполнять действия друг за другом. (Я говорю об этом в настоящем времени, потому что система очередей уже реализована, хотя самих операций копирования и удаления еще нет.)
Программа умеет отображать список закладок Gnome и стандартных пользовательских папок («Документы», «Музыка» и т.п.). Поддерживается работа с виртуальными файловыми системами GIO/GVFS. Сюда входят различные сетевые ресурсы, подмонтированные по FTP, SFTP, Samba, Bluetooth и т.п. Также поддерживается работа с внешними носителями: можно посмотреть список носителей, подмонтировать и просмотреть содержимое носителя. Здесь Ridual использует то же API и предоставляет те же функции, что и Nautilus. Поддерживаются адреса вида «host.com/address», причем вы можете не только выбрать подмонтировать систему из списка, но и подмонтировать любую другую, указав соответствующий адрес. Мне кажется, ни один другой двухпанельный ФМ такого не умеет. Единственное ограничение: пока в Ridual не реализован диалог запроса пароля для GIO, поэтому можно использовать только ресурсы, не требующие пароля (например, публичные FTP), ресурсы, пароль для которых сохранен в системе или ресурсы, которые уже примонтированы через Nautilus.
В верхней части окна Ridual находится виджет, отображающий текущий адрес с помощью ряда кнопок. Нажатием на одну из них можно перейти в вышестоящую папку, а нажатие правой кнопкой вызывает меню, с помощью которого можно перейти в папку, соседнюю с выбранной.
А при копировании в нижней части окна появляется таблица текущих операций. Таким образом, всё важное всегда находится перед глазами, а не убегает вместе с диалоговым окном на задний план. Все основные элементы будут располагаться в одном окне, упрощая управление с клавиатуры.
Ridual поддерживает ассоциации файлов с программами. Здесь он работает так же, как Nautilus. По нажатию Enter открывается программа по умолчанию, а в контекстном меню можно выбрать
другие программы, поддерживающие этот тип файлов. Эта функция корректно работает и с сетевыми ресурсами, в то время как у Nautilus с этим наблюдаются проблемы (например, при открытии файлов в Audacious).
Файловые менеджеры (и опять я подразумеваю Nautilus) грешат тем, что медленно копируют папки с большим числом файлов. Это связано с тем, что они пытаются посчитать общее количество и размер файлов, а это длительная операция. В Ridual есть возможность включить или отключить такой предварительный просмотр. При его отключении выполнение операции ускоряется, но становится невозможно узнать, сколько осталось до конца операции. По умолчанию стоит автоматический режим, в котором предварительный просмотр производится, но отключается автоматически, если найдено более 1000 файлов.
Планы
Я планирую реализовать основные операции с файлами: копирование, перемещение, удаление, создание мягких и жестких ссылок. Будет и стандартная функциональность обработки ошибок копирования (кнопки «пропустить», «пропустить все», «повтор» и т.д.).
Еще я планирую реализовать функцию, идею для которой я подсмотрел в файловом менеджере Windows 7. При возникновении ошибки копирования сообщение с вариантами действий показывается пользователю, а программа в фоне продолжает выполнять операцию для тех файлов, для которых это возможно. У этой функции много плюсов, но спроектировать ее оказалось неожиданно сложно, так как возникает множество вопросов по алгоритму программы. Впрочем, я работаю над этим.
Также планируется поддержка просмотра и редактирования архивов без распаковки, поиск файлов, ограничение максимальной скорости копирования, возможности отменить предыдущие операции, хранение истории навигации и удобный переход к папкам, посещенным ранее.
Заключение
Надеюсь, из моего проекта получится что-то стоящее, а люди будут им пользоваться. Если кто-то захочет помочь в разработке программы, я буду очень рад. Кстати, нужна помощь в написании автоматических тестов для программы, у меня в этом деле совсем нет опыта.
Если вам понравилось мое начинание, оцените Ridual на этой странице. Проголосовать может любой, регистрация не нужна.
Спасибо за внимание

Оцените программу Ridual

Просмотреть результаты

Loading ... Loading ...

Эта запись была опубликована 16.08.2012в 11:35. В рубриках: Новости, Программы, Файловые менеджеры. Вы можете следить за ответами к этой записи через RSS 2.0. Вы можете оставить свой комментарий или трекбек со своего сайта.