Giter VIP home page Giter VIP logo

cloudmailru's Introduction

Плагин Total Commander для работы с cloud.mail.ru

Описание

Плагином поддерживаются:

  • Работа с несколькими аккаунтами
  • Навигация по каталогам
  • Скачивание файлов из облака
  • Заливка файлов в облако
  • Удаление файлов в облаке
  • Переименование/перемещение файлов в облаке
  • Просмотр свойств файла в облаке через набор дополнительных колонок TC
  • Работа с правами доступа на каталоги и файлы
  • Работа с публичными ссылками в режиме только для чтения

Реализован только Unicode-набор функций, на не NT-версиях Windows плагин работать не будет. Поддержка x64-версии TC имеется.

Перед использованием ознакомьтесь с лицензионным соглашением по использованию Сервиса Облако@mail.ru

Установка и использование

Скачайте текущий стабильный релиз, распакуйте его, и подключите плагин MailRuCloud.wfx/MailRuCloud.wfx64. Вызовите настройки плагина (Alt+Enter), и добавьте все необходимые аккаунты.
Внимание: сохраняемые пароли будут храниться в открытом виде!

Пароли аккаунтов можно не указывать, в этом случае они будут запрашиваться при каждом подключении.
Также возможно использование встроенного в TC менеджера паролей (опции "Store password in TC password manager" в настройках и в диалоге запроса пароля).

Стандартные и публичные аккаунты

Плагин поддерживает два варианта работы с Облаком. Стандартный - когда у вас есть логин и пароль от аккаунта, и публичный - когда у вас есть публичная ссылка вида https://cloud.mail.ru/public/ABCD/NhEYwQELx. В первом случае будут доступны все возможности облака, во втором - будет доступно только чтение каталогов и скачивание файлов.

Настройки плагина

Load SSL libraries only from plugin directory

При включении опции плагин будет пытаться загрузить SSL-библиотеки из собственного каталога, в случае существования подкаталогов /x32 и /x64 - загрузка будет производиться из каталога по соответствию разрядности используемой версии плагина. Если опция отключена, то плагин попытается загрузить библиотеки, найденные в системе.

###Preserve file creation time При включении опции плагин будет пытаться устанавливать для всех скачиваемых файлов время создания, время изменения и время последнего доступа равными тому, что установлены в облаке (время загрузки файла в облако). В противном случае будет установлено текущее время.
Важно: установка времени файлов в облаке не поддерживается API, эта опция работает только при скачивании.

###Descript.ion files support При включении опции плагин будет пытаться получить комментарии из файла descript.ion (если он существует в текущем каталоге облака) и вывести содержимое комментария в контентное поле description.

###Copying/moving between accounts via public link По умолчанию в плагине отключены файловые операции между аккаунтами (см обсуждение). Однако имеется возможность копирования/перемещения файлов через временные публичные ссылки, включаемая опцией "Copying/moving between accounts via public link". При её включении плагин будет пытаться выполнить операции с файлами, создавая для каждого из них публичную ссылку (если она отсутствует у файла). После завершения операции ссылка удаляется (если до этого она не существовала).

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

###Ask to stop downloads/uploads on any error Стандартное поведение плагина при ошибке скачивания/заливки файлов - запись в протокол и продолжение операции. Поведение изменяется включением этой опции: при любой ошибке плагин остановит работу и сделает запрос на остановку или продолжение операции.

###Override split file size to Облако ограничивает максимальный размер файла для бесплатных аккаунтов. Официально это ограничение указано как 2GiB, но по факту оно всегда чуть меньше (по всей видимости, в этот размер включена длина имени файла). Поэтому плагин считает таким ограничением величину 2147483392 байт (2GiB - 256). Если включить опцию "Split large files to 2Gb parts", плагин будет разбивать закачиваемый файл на части именно этого размера.
При необходимости существует возможность переопределить эту величину. Для этого задайте этому параметру необходимое значение в байтах, например 200000000.

###Overwrite splitted chunk mode: При включении опции "Split large files to 2Gb parts" возможна ситуация, когда части разбитого файла уже существуют в Облаке. Поскольку невозможно выдать запрос на перезапись файла в этом случае (Total Commander ничего не знает о разбиении файла, для него вся операция происходит атомарно), поведение плагина будет определяться этой настройкой. По умолчанию все существующие части файла будут перезаписаны.

###Delete file after upload mode: Эта опция определяет поведение плагина в случае, когда перемещаемый из локальной файловой системы файл невозможно удалить (например, при наличии у него атрибута Read Only). По умолчанию плагин запросит выбор действия у пользователя.

###Overwrite local files mode: Эта опция позволяет переопределить стандартное поведение плагина при попытке перезаписи существующего локального файла (это может быть полезно при синхронизации и других длительных операциях). По умолчанию поведение не переопределяется (плагин будет запрашивать выбор действия у пользователя).

###Plugin icons mode: Эта опция переключает режимы отображения иконок для специальных каталогов (в скобках дано название внешнего файла иконки): каталог аккаунта (cloud.ico), каталог публичного аккаунта (cloud_public.ico), каталоги с публичным доступом (shared.ico), каталоги с общедоступной публичной ссылкой (shared_public.ico).

Доступны следующие режимы:

  • System default: отображается стандартная системная иконка для всех каталогов.
  • Internal icons: для специальных каталогов отображаются только встроенные иконки.
  • Internal icons overlay: встроенные иконки накладываются на стандартную системную иконку каталога.
  • External icons: иконки специальных каталогов подгружаются из подкаталога icons в каталоге плагина.
  • External icons overlay: иконки специальных каталогов подгружаются из подкаталога icons в каталоге плагина и накладываются на стандартную системную иконку каталога.

Важно: при использовании режимов с наложением иконок плагин по умолчанию использует маленькую (16x16) системную иконку каталога в качестве фона для наложения. Это подходит для случая, когда в Total Commander также используются иконки соответствующего размера. Если вы предпочитаете иконки 24x24 или больше, то можно использовать в качестве фона для наложения стандартную (32x32) иконку, для этого добавьте в файл MailRuCloud.global.ini ключ IconsSize со значением 1.

Для применения этой настройки требуется перезапуск TC.

###Disable background operations support Эта опция отключает поддержку фоновых операций в плагине (для применения требуется перезапуск TC).

###Network operations timeout (ms) Позволяет переопределить таймауты сетевого подключения. Большое значение таймаута может предотвратить обрыв связи при плохом соединении , малое - остановить операцию при перегруженном канале. В случае, если указано любое значение меньше 0, используются стандартные системные настройки параметра.

Команды плагина

  • rmdir dirname - быстрое удаление каталога dirname, находящегося в текущем каталоге (полный путь к удаляемому каталогу набирать не нужно). При этом не производится рекурсивное удаление содержимого каталога, что экономит время.
  • clone link - склонировать в текущий каталог содержимое публичного каталога, доступного по ссылке weblink.

#Многопользовательские настройки Плагин поддерживает хранение настроек в каталоге пользователя (%APPDATA%\MailRuCloud). Этот каталог выбирается по умолчанию в том случае, если файл настроек MailRuCloud.global.ini отсутствует в каталоге плагина, а сам каталог плагина недоступен для записи. В противном случае проверяется значение параметра IniPath:
0: Будут использоваться только настройки из каталога плагина (значение по умолчанию).
1: Будут использоваться только настройки из каталога %APPDATA%\MailRuCloud.
2: В случае, если каталог плагина доступен для записи, будут использоваться настройки из него, в противном случае - из каталога %APPDATA%\MailRuCloud.
Важно: права доступа к самим файлам настроек не проверяются. Настройка IniPath может изменяться только прямым редактированием MailRuCloud.global.ini (предполагается, что её будет использовать только администратор системы).

Ограничение максимально поддерживаемых путей.

Максимально поддерживаемая длина путей в Облаке составляет 1024 байта. API FWX также поддерживает пути до 1024 байт длиной, однако из-за того, что часть этого объёма используется под хранение имён соединений, фактический максимум пути в каждом аккаунте будет уменьшен на длину его имени. Таким образом файлы, путь к которым превышает этот максимум, могут быть недоступны через плагин.

#Копирование между аккаунтами. Копирование/перемещение из аккаунта в аккаунт не поддерживается плагином, несмотря на то, что Total Commander поддерживает такие операции в виртуальных файловых системах посредством использования файлового буфера в локальной файловой системе. Причина в том, что список аккаунтов представлен каталогом первого уровня в файловой системе плагина, и нет способа уведомить Total Commander об этом.
При необходимости, можно обойти это ограничение: нужно установить вторую копию плагина, и осуществлять копирование между разными копиями. В этом случае TC сможет задействовать локальный буфер.
Однако, в любом случае рекомендуется использовать файловые операции посредством ссылок (Copying/moving between accounts via public link).

Часто задаваемые вопросы

Как и куда правильно жаловаться на проблемы?

Перед тем, как сообщать о проблеме, соберите следующую информацию:

  • Версию плагина (если брали из релизов, убедитесь, что в версии из master ошибка всё ещё присутствует).
  • Версию и разрядность вашей операционной системы, например Windows 8.1 x64 или Windows XP SP3 x32.
  • Версию и разрядность Total Commander, например Total Commander 8.52a x64.
  • Протокол работы плагина, содержащий код ошибки. Протокол пишется в текстовом окошке, появляющемся над файловыми панелями при соединении; полное содержимое открывается по двойному щелчку. Файл протокола обычно сохраняется в каталоге %temp%\_tc\ с именем вроде wcftplog.???.
    Важно: проблемы со сборками и репаками TC не принимаются. Убедитесь, что проблема воспроизводится на оригинальной немодифицированной установке Total Commander.
  • Последовательность действий, приводящих к ошибке, ожидаемый результат и результат полученный.

Жаловаться можно в issues или в тему на форуме. Пожалуйста, убедитесь, что похожая проблема не зарегистрирована.

Как и где сделать запрос на добавление функционала?

В issues или в тему на форуме. Пожалуйста, убедитесь, что похожих запросов не зарегистрировано (в т.ч. в закрытых issues).

Я установил плагин, но возникает ошибка "Could not load SSL library".

В случае, если в системе уже присутствуют (и загружены в память) библиотеки libeay32.dll/ssleay32.dll нужной разрядности, плагин использует их. Это происходит в большинстве случаев, т.к. эти криптографические библиотеки используются во многих программах. В случае, если библиотеки отсутствуют в памяти, произойдёт попытка загрузки их из каталога Total Commander, затем - из каталога плагина. Убедитесь, что файлы libeay32.dll/ssleay32.dll присутствуют в этих каталогах.
Если библиотеки libeay32.dll/ssleay32.dll установлены, но ошибка повторяется, убедитесь, что они имеют нужную разрядность.
Будьте внимательны: цифры 32 в имени файлов libeay32.dll/ssleay32.dll не означают разрядность библиотек, т.е. их x32 и x64 версии называются одинаково.
Также можно принудительно использовать только библиотеки, находящиеся в каталоге плагина (например, во избежание проблем совместимости). Для этого включите в настройках плагина опцию "Load SSL libraries only from plugin directory".
Полезно: для разделения x32 и x64-версий библиотек поместите их в подкаталоги x32 и x64 соответственно.

Плагин требует msvcr110.dll или другую библиотеку.

Используемая сборка SSL-библиотек собрана с зависимостью от библиотек Microsoft C++ run-time. Если они отсутствуют в системе, вам понадобится установить в систему соответствующий распространяемый пакет Microsoft Visual C++, либо заменить SSL-библиотеки на собранные без этой зависимости.

Плагин показывает пустой список каталогов.

Вы подключили его к старой версии Total Commander, не поддерживающей Unicode. Минимальная требуемая версия Total Commander - 7.5, однако некоторые возможности не будут работать (или будут работать некорректно) на версиях ниже 8.5.

Работает ли плагин в программе %software_name%?

Некоторые файловые менеджеры поддерживают файлсистемные плагины от Total Commander, но работоспособность гарантируется только для Total Commander. В случае возникновения проблем при использовании с другими программами обращайтесь к их разработчикам.

Licence

GNU GPL v3.0

cloudmailru's People

Contributors

alexx2000 avatar pozitronik avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.