Двухпанельный файловый менеджер в духе Necromancer's DOS Navigator и Far Manager со встроенной консолью,
терминалами, просмотрщиком и редактором. Интерфейс – текстовый (TUI), но рисуется в обычном GUI-окне:
виртуальная сетка символов на холсте Delphi FireMonkey (Skia, с откатом на стандартный холст по --no-skia)
с TrueType-шрифтами, Unicode и 32-битным цветом.
Что нового в каждой версии – CHANGELOG.md.
- Панели: две панели с вкладками, Brief/Full/колоночные режимы, сортировка, быстрый поиск и живой фильтр, выделение по маске, сравнение каталогов, история и избранные папки, длинные пути (> MAX_PATH).
- Операции с файлами: копирование, перенос и удаление в фоновых заданиях с прогрессом, атрибуты и даты, ссылки, корзина, контрольные суммы, синхронизация каталогов.
- Консоль и терминалы: командная строка под панелями, настоящий ConPTY (cmd, PowerShell, pwsh, Git Bash, WSL,
SSH), ANSI/VT-разбор, альтернативный экран для TUI-программ, рабочие пространства терминалов.
Консольные программы, запущенные из панели или командной строки, работают во встроенной консоли, и их вывод
остаётся на экране (
Ctrl+O). - Просмотр и редактирование: встроенные Viewer (текст, hex, потоковое чтение больших файлов), Editor,
Quick View (
Ctrl+Q), просмотр Markdown, внешние просмотрщик/редактор. - Виртуальные ФС: архивы как папки (zip, 7z через
7z.dll), SFTP по SSH, плагинные VFS. - Настройка: переопределяемые клавиши (
keymap.json), темы из файлов (Far Classic, Total Commander, Dracula, Nord, Solarized, High Contrast и др.; свои – в редакторе тем), меню пользователя (F2), ассоциации файлов, контекстная справка F1 на русском и английском. - Плагины: нативные DLL и WebAssembly (через Wasmtime) – свои VFS-схемы и панели для них, пункты меню, привязки клавиш, шина сообщений. Протоколы диалогов, оверлеев и строк состояния для плагинов описаны, но пока доступны только самой программе – см. PLUGIN_BOUNDARIES.
- Обновления: раз в сутки проверка новой версии на GitHub; загрузка (с проверкой SHA-256), установка и перезапуск – только после вопроса пользователю. Меню ≡ → Обновления....
Сейчас поддерживается Windows x64; POSIX PTY и сборки под macOS/Linux – в планах.
Готовые сборки – на странице Releases:
MTN2-<версия>-win64.zip– настройки и история хранятся в%APPDATA%\MTN2;MTN2-<версия>-win64-portable.zip– переносная версия: всё хранится рядом сMTN2.exe.
Архив достаточно распаковать в любую папку и запустить MTN2.exe. Дальше программа обновляется сама
(меню ≡ → Обновления...). В комплект входит 7z.dll из 7-Zip (GNU LGPL; тексты лицензий – в
plugins\mtn.7z\license.txt, подробности – в THIRD-PARTY.md): с ней открываются архивы 7z и другие
форматы 7-Zip. Её можно заменить своей x64-версией в plugins\mtn.7z\; zip открывается и без неё.
Пре-релизные (dev) сборки публикуются после каждого изменения в main в отдельном репозитории
Laex/MTN2-dev. Чтобы получать их автоматически, откройте
≡ → Обновления... и включите флажок dev-канала; вернуться на стабильные релизы можно, сняв его.
Dev-сборки содержат свежие изменения и могут быть менее стабильными.
Нужны RAD Studio 13 (Delphi, Studio\37.0) и Windows x64; для WASM-плагина mtn.ws – Rust.
./src/build.ps1 -Config Release -Platform Win64 # bin\MTN2.exe + bin\plugins\
./src/tests/run-tests.ps1 # регрессионные тесты (DUnitX)Запуск: bin\MTN2.exe [--no-skia] [--fps] [путь]. Подробности – в docs/BUILDING.md.
| Путь | Содержимое |
|---|---|
src/Core |
ядро: панели, VFS, ConPTY, консоль, редактор, диалоги, плагинный хост |
src/Forms, src/dialogs, src/strings, src/Assets/themes |
главная форма, JSON-диалоги, локализация, встроенные темы |
src/plugins |
встроенные плагины (mtn.7z, mtn.tmp, mtn.ws, WASM-демо) |
src/tests |
регрессионные тесты DUnitX по группам и раннер run-tests.ps1 |
src/tools |
DialogDesigner, ExportDialogJson, группа проектов Group.groupproj, служебные скрипты |
bin/help |
справка F1 (ru/en), поставляется вместе с программой |
docs |
документация разработчика, скриншоты (docs/images) |
- SDS.md – полная спецификация: концепция, структуры данных, API, дорожная карта.
- ARCHITECTURE.md – слои, потоки данных и инварианты.
- BUILDING.md – сборка, тесты, CI/CD.
- DAILY_USE.md – аудит повседневных сценариев и план.
- THEMES.md – формат файла темы и роли цветов.
- HELP.md – исходный текст справки пользователя одним файлом.
- Плагинные контракты: PLUGIN_BOUNDARIES, PANEL, DIALOG, INPUT, OVERLAY, STATUS, TEXTAREA, TOOLBAR, UI_PRIMITIVES, PLUGIN_TRANSITION.
При разработке MTN2 использовались ИИ-ассистенты, в том числе собственной разработки. С их помощью созданы:
- предпроектная документация – спецификация (SDS.md), обзор архитектуры, описания протоколов
плагинов в
docs/; - отслеживание дорожной карты и планов работ;
- большинство комментариев в коде;
- регрессионные тесты на DUnitX (
src/tests); - выходная текстовая документация: справка F1 (
bin/help), CHANGELOG.md, описания выпусков.
