LINUX.ORG.RU

Форк Midnight Commander c поддержкой панельных плагинов

 , , , ,


4

2

https://www.opennet.ru/opennews/art.shtml?num=66018.

Выпущен консольный файловый менеджер Midnight Commander 6.0.3 (mc6), представляющий собой форк GNU Midnight Commander 4.8.33, расширенный поддержкой панельных плагинов и поставляемый со встроенным PTY-терминалом mcterm. Интегрированный в mc6 фреймворк панельных плагинов позволяет отображать в панелях не только файловые системы, но и контейнеры, Git-репозитории, базы данных и объекты удалённых хранилищ. Код проекта написан на языке Си и распространяется под лицензией GPLv3+. Готовые пакеты подготовлены для Debian и Ubuntu, Fedora и RHEL, а также Arch Linux в форматах DEB, RPM и pkg.tar.zst. Для Gentoo дополнительно предоставлен ebuild для установки через локальный overlay.

В состав выпуска вошли плагины для работы с архивами, FTP/SFTP/FTPS, Samba, Git, Docker, Kubernetes, MongoDB и S3-совместимыми хранилищами. Плагины поддерживают стандартные файловые операции, а переработанная поддержка архивов на базе libarchive заметно (в десятки или сотни раз) ускоряет обработку больших архивов.

Во встроенный текстовый редактор mcedit добавлены возможность сворачивания блоков кода, браузер истории Undo/Redo, средства управление макросами и поддержка сохранения файлов через sudo. В разы улучшена производительность при работе с очень длинными строками.

Просмотрщик mcview получил древовидное представление JSON, YAML и XML, интерактивную фильтрацию содержимого, базовую поддержку отображения разметки Markdown и режим воспроизведения файлов с ANSI-последовательностями.

В состав включён встроенный PTY-терминал mcterm с собственным эмулятором терминала, предназначенный для замены традиционного subshell-механизма.

★★★★★

Последнее исправление: dataman (всего исправлений: 1)
Ответ на: комментарий от tamo

Kitty terminal. Запускаю mc6 в zsh (Oh My Zsh). Жму Ctrl+O.echo $SHELL выдает /bin/zsh.Ctrl+R не работает. Поиск по истории, путем ввода части команды и нажатия стрелки вверх - не работает.История по стрелке вверх дает только то, что вводилось именно в этой сессии в mc6. При этом history выдает полный набор истории zsh.

ушатал полдня https://github.com/ilia-maslakov/mcdev/pull/208

angel_il ★★★★★
()

Раз идёт такая пьянка, добавлю свои пару центов.

Имеется косячок в выделении вертикальных блоков (коммит 9a25053028): если есть короткая строка, которая заканчивается раньше, чем начинается выделенный блок, то пустое место между концом строки и блоком закрашивается не тем цветом.

123456789
123
123456789
123

Выделяем, например, блок шириной 3 и высотой 4 строки, включающий цифры 789. Во второй и четвёртой строках пустое место окрашено чёрным вместо фонового дефолтового синего.

akk ★★★★★
()
Ответ на: комментарий от akk

но недочинил, воспроизводится

да, у меня скин с черным фоном и там не проявлялось, на дефолтном увидел.

Поправил тут https://github.com/ilia-maslakov/mcdev/pull/214 пока баловался с блоками нашел неприятную бяку с копирование верт. блоков, тоже фиксанул чтобы 2 раза не вставать.

angel_il ★★★★★
()
Ответ на: комментарий от angel_il

предлагаю попробовать мой плагин Git status

Я пробовал, конечно, но мне не подходит: слишком привык к tig и gitui. :)

Кстати, gitui в mcterm не работает, выдаёт:

Error: The cursor position could not be read within a normal duration


А git-плагин не будет быстрее с libgit2 вместо парсинга вывода git?

dataman ★★★★★
() автор топика
Ответ на: комментарий от dataman

Я пробовал, конечно, но мне не подходит: слишком привык к tig и gitui. :)

но там ведь нет сайд-бай-сайд сравнения, верно?

А git-плагин не будет быстрее с libgit2 вместо парсинга вывода git?

гляну, но вроде ничего не тормозит, но я на ядре линукса не проверял.

angel_il ★★★★★
()

Чего ещё мне всегда не хватало в MC, так это многих фаровских команд файловых панелей.
Особенно этих:

Пометить файлы с таким же расширением, как у текущего файла          Ctrl+<Gray +>
Снять пометку с файлов с таким же расширением, как у текущего файла  Ctrl+<Gray ->
Пометить файлы с именем, как у текущего файла                        Alt+<Gray +>
Снять пометку с файлов с таким же именем, как у текущего файла       Alt+<Gray ->
dataman ★★★★★
() автор топика
Ответ на: комментарий от dataman

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

yars068 ★★★★★
()
Ответ на: комментарий от dataman

Пометить файлы с таким же расширением, как у текущего файла Ctrl+<Gray +>

Снять пометку с файлов с таким же расширением, как у текущего файла Ctrl+<Gray ->

Пометить файлы с именем, как у текущего файла Alt+<Gray +>

Снять пометку с файлов с таким же именем, как у текущего файла Alt+<Gray ->

если бы это было возможно я сделал бы это лет 10 назад. это ограничение терминалов. эти сочетания не словить. (

angel_il ★★★★★
()
Ответ на: комментарий от dataman

А сортировка по ним в MC есть. :)

потому что сортировка по magic сигнатурам это дорого

angel_il ★★★★★
()
Ответ на: комментарий от dataman

слишком привык к tig и gitui. :)

я пробовал tig-ом пользоваться но что то не зашел. А у gitui я кое какие фичи подрежу себе. Долго думал чего мне не хватает а тут все сложилось.

angel_il ★★★★★
()
Ответ на: комментарий от angel_il

это ограничение терминалов. эти сочетания не словить. (

Большинства терминалов, которые не поддерживают https://sw.kovidgoyal.net/kitty/keyboard-protocol/.
Кстати, в MC есть https://github.com/MidnightCommander/mc/pull/4769, который может и примут когда-нибудь. :)
A notcurses, которую я уже упоминал, поддерживает его «из коробки».


Кстати, для отладки нажатий клавиш рекомендую https://github.com/leo-arch/keypress, лучшего я пока ничего не знаю. :)

dataman ★★★★★
() автор топика
Последнее исправление: dataman (всего исправлений: 1)

@angel_il, а можно при добавлении директории в Directory hotlist, добавлять её не в конец списка, а после активного элемента?
А то часто приходится перемещать только что добавленный элемент в нужную позицию, утомляет. :)

dataman ★★★★★
() автор топика
Ответ на: комментарий от angel_il

немного расширить по возможностям

Кстати, я когда-то начинал делать поддержку сохранения в фаровском хотлисте путей на обеих панелях , но свалил с Винды. :)

dataman ★★★★★
() автор топика
Ответ на: комментарий от dataman

именно хотлист в фаре не помню как работал, я его когда то хотел повторить но быстро уперся в том что не получится навесить на сочетания связанные с цифрами и плюнул

angel_il ★★★★★
()
Ответ на: комментарий от angel_il

В https://github.com/blue-panels/mc6/wiki/Home-ru:

Программа ставится как mc6 рядом с системнымmc`

Разве бинарник уже переименован? А mcedit?


Если на запароленном архиве нажать F3 или Enter, а диалог ввода пароля отменить, то сообщается:

┌─────────────────────────── Error ────────────────────────────┐
│ The magic.ini operation arcmc:view cannot view WinRar_med.7z │
├──────────────────────────────────────────────────────────────┤

если будет желание новость написать

Сегодня не смогу.

dataman ★★★★★
() автор топика
Ответ на: комментарий от angel_il

Есть ли нужда в подкаталогах mc/ внутри */mc6? А то -git версия по-прежнему имеет умолчальный MC_PROFILE_ROOT=~/.mc6, в /etc/mc6/ лежит mc/, в /usr/share/mc6 тоже лежит mc/… Предлагаю переменную всё-таки немного переименовать в MC6_PROFILE_ROOT. А, и да, настройки из ~/.local/share/mc6 не подхватились.

yars068 ★★★★★
()
Последнее исправление: yars068 (всего исправлений: 2)

Почему-то казалось, что в mcedit есть опция показа и скрытия переводов строки, как во многих других редакторах. Хотелось бы. Как и команду Fold all.
Кстати, По Alt-F открывается меню File, а не выполняется Fold / Unfold block.

dataman ★★★★★
() автор топика
Ответ на: комментарий от dataman

Я об этой в том числе проблеме писал выше, когда речь про настройки хоткеев зашла. Это из-за того, что у меню приоритет выше, а хоткей один и тот же назначен.

yars068 ★★★★★
()
Ответ на: комментарий от dataman

Почему-то казалось, что в mcedit есть опция показа и скрытия переводов строки, как во многих других редакторах. Хотелось бы. Как и команду

во вьювере?

angel_il ★★★★★
()
Ответ на: комментарий от angel_il

Я так понял, что «И» там лишняя, то есть, «как команду Fold All». Думаю, это можно реализовать Lua-плагином

yars068 ★★★★★
()
Последнее исправление: yars068 (всего исправлений: 2)
Ответ на: комментарий от dataman

Кстати, хоткеи вполне следуют духу Linux/UNIX – регистр различается. Я оставил Alt-f для меню «Файл», а для сворачивания блоков поставил Alt+Shift+f, а это равнозначно Alt+F :)

yars068 ★★★★★
()
Ответ на: комментарий от yars068

Это если выбрать окончания строк DOS/Windows видно концы строк в mcedit.

а, понял ^M тогда можно, но через луа будет плохо, т.к. готового abi доступа к рендеру нет.

angel_il ★★★★★
()
Ответ на: комментарий от angel_il

blue-panels

плохое? )

Ностальгическое. :)

dataman ★★★★★
() автор топика

@angel_il, обнаружил, что в новом диалоге импорта пользовательского меню работает инвертирование отметки по *. Напрашивается пометка и снятие по + и - . :)
Я такое когда-то делал в фаровском макродвижке (ещё до Lua), но по Ctrl-+/Ctrl--. И Ctrl-A для максимального раскрытия меню по высоте.

dataman ★★★★★
() автор топика
Ответ на: комментарий от dataman

Чего очень не хватает — настройки цветов темы, как в Far.

Вот как выглядит в far2l: https://freeimage.host/i/ndzLfwl.

в этом хотел релизе, в виде луа скрипта или плагина чтобы в ядро не тащить факультативную вещь

angel_il ★★★★★
()
Ответ на: комментарий от dataman

https://ibb.co/tN1nQz8 Не глядя на заголовок, отличишь, где кто? Ярче или темней - это активный - неактивный.

Mc настраивал прямым редактированием файла темы. В фаре это возможно, но отвратительно. Поэтому пришлось пользоваться его настроечным меню. Но это не намного лучще.

andytux ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.