FAR Manager — консольный файловый менеджер для операционных систем семейства Microsoft Windows и Linux.

FAR Manager
Логотип программы FAR Manager
Скриншот программы FAR Manager
Тип Файловый менеджер
Автор Евгений Рошал
Разработчики Евгений Рошал, FAR Group
Написана на C++[3]
Операционные системы 1.7x — Windows
2.0 — Windows 2000/XP/2003/Vista/2008/7/8
Linux (порт)
Языки интерфейса английский, белорусский, венгерский, испанский, итальянский, немецкий, польский, русский, словенский, украинский, чешский
Аппаратная платформа Windows
Последняя версия
Репозиторий github.com/FarGroup/FarM…
Лицензия с версии 1.75.2629 — Freeware[1]
с версии 2.0: Свободное ПО (BSDL)[2]
Сайт farmanager.com
Логотип Викисклада Медиафайлы на Викискладе

Автор программы — Евгений Рошал. С 18 июня 2000 года разработкой FAR Manager занимается группа FAR Group. Начиная с версии 2.0 программа распространяется под модифицированной лицензией BSD. Предыдущие версии имели проприетарную лицензию, по которой коммерческое использование программы являлось платным.

Программа FAR Manager наследует двухоконную идеологию, стандартную расцветку и управление с клавиатуры у известного файлового менеджера Norton Commander.

История

править
  • 10 сентября 1996 года — первая общедоступная версия 1.00 beta[4].
  • 26 июня 1997 года — «бутлег» 1.3 — версия, которую Евгений Рошал никогда не выпускал[5].
  • 22 мая 2000 года — Рошал предложил отдать исходные тексты FAR Manager 1.64 трём-четырём плагинописателям «в хорошие руки» на условиях «за спасибо»[6].
  • 18 июня 2000 года — на базе egroups.com заработал список рассылки для новых разработчиков FAR Manager. Эту дату можно считать зарождением FAR Group.
  • 23 июня 2000 года — Рошал выпускает «последнюю версию» 1.65[7], после чего версия FAR Manager начинается с 1.70.
  • 20 ноября 2000 года — первая бета 1.70[4].
  • 29 марта 2006 года — релиз 1.70[8].
  • 26 октября 2007 года — исходный код альфа-версии 1.80 (с поддержкой Юникода и несовместимая с Windows 9x) выпущен под модифицированной (без пункта о рекламе) лицензией BSD[9]. Это первая свободная версия Far Manager.
  • 13 декабря 2008 года — версия юникодного FAR изменена на 2.0[10].
  • 5 февраля 2011 года — версия юникодного FAR изменена на 3.0[11]. Начиная с build 1825, полностью переработан API плагинов. Плагины версии 1.x по-прежнему могут работать в FAR 3.0.
  • 19 марта 2011 года — для хранения всех настроек используется SQLite[11].
  • 30 сентября 2012 года — для макросов используется скриптовый язык Lua.
  • 4 ноября 2012 года — релиз 3.0[12].

В Windows 9x программа могла работать как в оконном, так и полноэкранном режиме. Некоторые недостатки интерфейса, схожие с DOS-программами в оконном режиме (невозможность произвольного изменения текстового разрешения окон, проблемы с закрытием при выключении системы), проявлялись в Windows 9x, но отсутствуют в семействе Windows NT.

Особенности реализации

править
 
Версия FAR Manager для Linux

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

FAR Manager был с самого начала ориентирован на платформу Windows, поддерживал длинные имена файлов. Время от времени пользователи высказывали просьбы сделать версии для других платформ (Linux и Mac OS). Разработчики утверждали, что код программы слишком специфичен для Windows, и портирование на другую платформу потребовало бы больших изменений.

С 2016 года существует форк FAR Manager для Linux, FreeBSD и MacOS, который активно развивается[13].

Подключаемые модули (плагины)

править
 
Редактор FAR с плагином Colorer
 
Окно FAR развёрнуто на весь экран, в одной панели открыт «быстрый просмотр». Используется плагин Multimedia viewer

Возможности FAR существенно расширяются благодаря плагинам различного назначения:

  • управление принтерами, как подключёнными к ПК, так и сетевыми;
  • подсветка синтаксиса в исходных текстах программ;
  • работа с FTP-серверами (с поддержкой доступа через различные типы прокси, автоматической докачкой и прочее);
  • работа с SFTP-серверами (плагин WinSCP);
  • работа с любым ssh-сервером по протоколу FISH (только в far2l);
  • поиск и замена символов одновременно во множестве файлов с применением регулярных выражений;
  • средства переименования групп файлов с возможностью использования сложных составных масок из символов подстановки и шаблонов;
  • NNTP-/SMTP-/POP3-/IMAP4-клиенты и отправка сообщений на пейджер;
  • работа при нестандартных размерах текстового экрана;
  • перекодировка текстов с учётом национальных кодовых таблиц;
  • манипуляции с содержимым корзины;
  • управление приоритетами процессов на локальном или на сетевом ПК;
  • автозавершение слов в редакторе и работа с шаблонами;
  • редактирование реестра Windows;
  • создание и изменение ярлыков Windows;
  • всевозможные манипуляции с файлами и текстом, делающие комфортной работу с фидонетовскими материалами;
  • кодирование и декодирование файлов в формате UUE;
  • симметричное и асимметричное шифрование файлов;
  • управление программой Winamp и модификация комментариев MP3-файлов;
  • просмотр и редактирование содержимого ресурсов различных игр;
  • работа с различными серверами через ODBC + работа с серверами Oracle через OCI[англ.];
  • управление службой RRAS;
  • запуск внешних программ (компиляторов, конвертеров и проч.) при редактировании текстов в редакторе FAR;
  • отображение содержимого файлов справки Windows (.hlp и .chm);
  • калькуляторы с разными возможностями;
  • различные игры;
  • функции проверки орфографии при обработке текста в редакторе FAR;
  • работа с файл-образами дисков для ZX Spectrum и ПК Вектор-06Ц;
  • подготовка каталога сменных накопителей;
  • вычисление и проверка CRC и криптографических хеш значений файлов (SHA-1; SHA-2; Whirlpool и других).
  • Отображение скрытой файловой системы на сотовых телефонах SonyEricsson.

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

Большинство плагинов написано на Си/C++ и Паскале с использованием оригинального FAR API. Существуют и современные альтернативы: FarNet предоставляет API и инструменты для написания .NET-модулей; модуль PowerShellFar реализует поддержку Windows PowerShell и открывает объектную модель FarNet для управления из скриптов или командной строки; модуль LuaFAR предоставляет API для написания скриптов и плагинов на языке Lua.

Portable-версия

править

Для запуска со сменных носителей (USB-винчестеров, флешек и т. д.) существует так называемая portable-версия, применяемая для работы без инсталляции (как правило, недолгой) для выполнения задач типа переноса данных, поиска, проведения ремонтных работ и т. д.[14][15]

Unicode-версия

править

26 октября 2007 года был открыт публичный доступ к SVN-репозиторию с Unicode-версией менеджера.

Версия для Linux, macOS и BSD

править

В рамках проекта far2l разрабатывается порт Far Manager для Linux, macOS и BSD систем. На 20 сентября 2016 года порт запускается и работает, доступна основная функциональность Far Manager как менеджера файлов и архивов. Также портированы и работают плагины FarFTP, Colorer, MultiArc, TmpPanel. По состоянию на ноябрь 2020 года добавлен плагин NetRocks (аналог NetBox, работают протоколы FTP, FISH, SCP, SFTP, SMB, NFS и WebDAV), поддерживается работа в графическом и консольном режимах, портировано не менее 13 плагинов оригинального Far Manager[16]. На январь 2022 года проект перешёл в стадию beta[17], добавлена поддержка скриптов на python[18] и lua[19].

far2l также поддерживает так называемые расширения терминала. Хотя сам FAR2L является TUI-приложением, он может работать с двумя бэкендами: GUI и TTY. Хотя бэкэнд TTY может работать в любом терминале (например, xterm), он также может работать и внутри встроенного терминала GUI-версии far2l, приобретая возможности, недоступные на «обычных» терминалах (например, распознавание всех возможных комбинаций клавиш клавиатуры с поддержкой не только событий нажатия, но и событий отпускания клавиш). Также GUI-far2l может обеспечивать доступ к общему буферу обмена и уведомлениям на рабочем столе. Эти расширения можно использовать, запустив TTY far2l внутри сеанса ssh-клиента, открытого в GUI-far2l (или используя протоколы SFTP/SCP в NetRocks для удаленного запуска far2l с помощью функции «выполнить удаленную команду»)[16][20].

far2l доступен в Ubuntu Linux, начиная с версии 24.04. Его можно установить командой sudo apt install far2l[21].

Лицензия

править

В версиях до 1.75.2629 FAR распространялся как shareware (некоторые функции работали только после прохождения платной регистрации), при этом существовала бесплатная так называемая «xUSSR-регистрация» для жителей России и других стран бывшего Советского Союза. В ней в качестве пароля для регистрации требовалось ввести русскими буквами название текущего дня недели. Такая регистрация позволяла использовать версии FAR по 1.61 включительно полностью бесплатно[22], в более поздних версиях требовалась платная регистрация для коммерческого использования.

Начиная с версии 1.75.2629, FAR не требует регистрации и распространяется бесплатно под модифицированной лицензией BSD[23]. В связи с этим, начиная с 18 мая 2010 года, компания RARLabs прекратила продажу Far Manager[24].

Версии 1.8.х, 2.x и 3.x, имеющие поддержку юникода, распространяются бесплатно и с открытым исходным кодом под модифицированной лицензией BSD[25].

Примечания

править
  1. Far Manager 1.75 теперь распространяется бесплатно. Официальный форум. Архивировано 11 июля 2012 года.
  2. Far Manager Official Site : исходный код. Архивировано 19 июля 2012 года.
  3. The farmanager Open Source Project on Open Hub: Languages Page — 2006.
  4. 1 2 История версий. Архивировано из оригинала 8 июля 2012 года.
  5. far 1.3 — fido7.far.support Google Groups. Архивировано из оригинала 9 июля 2012 года.
  6. New FAR — fido7.far.support Google Groups. Архивировано из оригинала 9 июля 2012 года.
  7. FAR 1.65 отличается от 1.64 исправлением модуля печати.
  8. Far Manager Official Site : загрузить. Дата обращения: 23 марта 2021. Архивировано 30 апреля 2021 года.
  9. forum.farmanager.com • View topic — Open Source — Unicode Far. Архивировано из оригинала 8 июля 2012 года.
  10. История изменений. Архивировано из оригинала 8 июля 2012 года.
  11. 1 2 История изменений. Архивировано из оригинала 8 июля 2012 года.
  12. Far Manager Official Site : новости. Дата обращения: 2 июня 2013. Архивировано из оригинала 24 апреля 2013 года.
  13. GitHub — elfmz/far2l: Linux port of FAR v2. Дата обращения: 7 сентября 2016. Архивировано 7 сентября 2016 года.
  14. Farmanager-форум: Portable Far. Дата обращения: 19 июня 2013. Архивировано 4 марта 2016 года.
  15. Отдельная сборка под portable версию. Дата обращения: 19 июня 2013. Архивировано 16 мая 2013 года.
  16. 1 2 Линукс-порт Far Manager: прогресс за 4 года. habr.com. Дата обращения: 12 ноября 2020. Архивировано 1 ноября 2020 года.
  17. Merge branch 'test-β' · elfmz/far2l@3159e21 (англ.). GitHub. Дата обращения: 16 января 2022. Архивировано 18 января 2022 года.
  18. far2l/python at master · elfmz/far2l (англ.). GitHub. Дата обращения: 16 января 2022. Архивировано 13 января 2022 года.
  19. LuaFAR for Far2L · Discussion #1197 · elfmz/far2l (англ.). GitHub. Дата обращения: 16 января 2022. Архивировано 18 января 2022 года.
  20. far2l/FarRus.hlf.m4 at master · elfmz/far2l · GitHub
  21. Ubuntu – Подробная информация о пакете far2l в noble. packages.ubuntu.com. Дата обращения: 9 июня 2024. Архивировано 9 июня 2024 года.
  22. forum.farmanager.com • View topic — Лицензия. Архивировано из оригинала 11 июля 2012 года.
  23. Модифицированная лицензия BSD. Архивировано из оригинала 18 сентября 2012 года.
  24. Softkey-Россия: Far Manager стал бесплатным. Архивировано из оригинала 18 сентября 2012 года.
  25. Far Manager Official Site : лицензия. Архивировано из оригинала 7 июля 2012 года.

Ссылки

править
  NODES
Project 1