Pull to refresh
271
-7
Иван Сорокин @unxed

веб

Send message
Пожалуй, одна из лучших «фишек» Far Manager v2.0 — наличие работающей Linux-версии :)
Ого, в mc будет смотрелка картинок? Здорово!
Не вникал глубоко, релевантный код живет здесь, гляньте!
Честно, не знаю. Могу предположить, что запил тикета в far2l и тэгание автора вот этого PR может помочь.
Вы будете очень смеяться, когда я покажу workaround, которым пользуюсь, чтобы быстро понять, что на картинке, когда сижу в far2l на другом конце глобуса:

chafa -c 16 --color-space=din99d --dither=ordered -w 9 --symbols all --fill all !.! && read -n1 -r -p ""

Если эту строчку прописать в «кастомные ассоциации», фар заменит !.! на имя файла. Ну и чафу надо саму поставить, конечно.

А вообще, конечно, такая штука обсуждалась. Там есть два принципиально возможных подхода к такому: 1) через sixel-графику, вот тикет 2) через развитие идеи far2l terminal extensions, чтобы удаленный фар мог так слать графическую картинку локальному.

Думаю, вряд ли elfmz станет заниматься этим до стадии беты, но в перспективе отчего ж не сделать, конечно :) Или же сами можете попробовать — если уж я со своим «знанием» сей смог патчи писать для far2l, то и вы сможете!
Вот как раз 7z тянем статически вкомпиленную ради запароленных архивов, например. В libarchive, которая могла бы быть альтернативой, и есть в зависимостях, их поддержку добавили только в совсем свежих версиях, которых нет в дистрибутивах.

А вообще, как показывает практика, сделать хороший именно менеджер архивов для *nix — не такая тривиальная задача, как кажется на первый взгляд. Дьявол в деталях, мы эти детали улучшаем понемножку одну за другой :)
Ага. Так тоже можно, да. Я про эту фишку узнал уже после того, как в far2l удаленный клипборд завезли.

А ещё есть OSC52, который не поддерживается почти нигде, кроме Microsoft'овского терминала, и при этом он выглядит как идеалогически верный способ реализации того же самого. Но ни гномовская терминалка, ни кдешная в него пока не умеют. Тем более они этого не умели, когда far2l делать начинали.
Про зипы в тикете, который в mc отправлен, всё написано, с примерами. Это действительно апстримовые баги, при этом пользователю от этого не легче.

Про буфер обмена очень интересно, с удовольствием расскажу. Как это работает в mc? Он стучится в локальные иксы и спрашивает «а дайте мне буфер, пожалуйста!». Естественно, на сервере, куда вы по ssh зашли, и где никаких локальных иксов нет, такое из коробки работать не будет.

В far2l механика другая. 1) Запускаем графический far2l (мы же на десктопе иксовом работаем, раз нам клипбоард понадобился, верно?) 2) В нём делаем «ssh example.com» 3) На example.com запускаем местный far2l 4) Удаленный текстовой far2l и локальный графический far2l договариваются между собой о доступе к буферу обмена и клавиатуре с помощью хитрых специальных escape-последовательностей 5) в итоге вы пользуетесь удаленным far2l так же, как будто бы он работал на вашей родной системе в графическом режиме — с клипбордом и расширенной поддержкой сочетаний клавиш.

Разумеется, если запустить удаленный far2l под любой другой терминалкой (кроме встроенной в графический far2l), он тоже будет работать. Но без клипборда, и часть хоткеев (Ctrl+цифры и может ещё что-то, сходу не соображу) отвалятся.
far2lc устаревшая история, она была нужна, когда для sftp нужно было gvfs-плагином пользоваться. Сейчас есть NetRocks и это всё не нужно. Можно просто «far2l --tty» запускать.

А насчёт сообщения, которое вы видите, это прикольная фишка, кстати. Допустим, вы зашли на сервер по ssh и гоняете там far2l. А потом у вас сдохла батарейка в ноуте, и сессия оборвалась. Так вот, при таком раскладе far2l не умирает, а остается ждать переподключения, и при последующем запуске попробует восстановиться.

Но эта фишка может быть не совместима с far2lc, я не тестировал это. Так что попробуйте запускать просто как «far2l --tty».
Отличный вопрос! К сожалению, чтобы грамотно на него ответить, нужно в совершенстве знать все функции и mc и far'а. А я ни одного человека, способного на это, не встречал пока: либо человек хорошо знает mc, либо far.

Поэтому лучше смотреть не с ракурса «лучше-хуже», а с ракурса «а вот альтернатива какая есть, глядите!». Как GNOME/KDE, кока и пепси.

Из «фишек», которых в mc не хватает лично мне, могу навскидку назвать, например, такие вот две: буфер обмена через ssh и корректная работа с русскими буквами в OEM .zip архивах.

По последнему пункту тикет в mc я запульнул, разумеется. Они отвечают, что все проблемы в апстриме, unzip/p7zip. Но unzip/p7zip в дистрибутивах не починят примерно никогда, судя по всему. Мэйнтейнер p7zip из Дебиана пока не ответил на мой email, по крайней мере.
> Интересно, в dd-wrt Far уже впилили?

Разговоры такие разговариваются. Попытка переписать конвертацию кодировок с кода Wine на iconv была как раз обусловлена желанием сократить размер бинарника для всяких роутеров. Впрочем, iconv тупит, а бинарники уменьшить другим[и] способом[ами] получилось.

Но про готовую сборку под *wrt я пока не слышал. Может, вы будете первым, кто это сделает? ;-)

> Зато теперь и в консоли, и в putty, (и в wsl), и всё синхронизируется.

У меня сейчас есть ещё один pet project — попытка добавить far2l extensions в консольный текстовый редактор на Scintilla Turbo. Чтоб там тоже буфер обмена заработал. Сама идея этого Turbo настолько красивая (притащить Scintilla, на котором[-ой?] notepad++ написан, в консоль, да ещё с интерфейсом на Turbo Vision, офигеть, и это работает!) настолько красива, что я просто не смог удержаться :)) Ну и заодно демка получится, как добавлять буфер обмена в фаровском исполнении в консольные аппы.
Программировать всегда интереснее, чем писать инструкции! Этот пост как раз и написан для тех, кому не хочется читать 10 страниц переписки от 2017 года, зато ок задать вопросы в каментах :)

Сам запуск делается так:
far2l --tty

Если же вы о том, как собрать far2l без wx, то это делается так: вместо
cmake -DUSEWX=yes -DCMAKE_BUILD_TYPE=Release ..
пишете
cmake -DUSEWX=no -DCMAKE_BUILD_TYPE=Release ..

Впрочем, это вовсе не обязательно: версия, собранная с wx, прекрасно запустится в консоли. Просто потащит кучу ненужного на сервере мусора в зависимости.

PS: Ещё обращаю внимание на флажок --ee, который решает проблему необходимости двойного нажатия ESC в консоли (тем же способом, что и mc). И, кстати, --help работает тоже.
> А куда донат заносить?

Автор пока по непонятной причине от этой темы уклоняется, можно выразить желание поддержать его донейтом вот здесь github.com/elfmz/far2l/issues/215

Если запускать графическую версию — да, все, ВООБЩЕ ВСЕ, прямо как в родном. Если консольную — есть небольшие ограничения, сходу могу вспомнить только одно, Ctrl+цифры не работают (и, кажется, даже для этой проблемы есть workaround). Но если консольная запущена внутри графической (ну то есть запустили графический far2l, в нем сделали ssh example.com, а там уже запустили консольный far2l), все ограничения отменяются благодаря чудесным собственным расширениям терминала.

А, да, если Alt+русская_буква не срабатывает, надо собрать с wx3.1 — это в апстриме баг, он исправлен уже, но в дистрибутивах старые wx'ы.
Я тут обзорчик прогресса в far2l за 4 года написал, предлагается заценить :)
В libtorrent завезли, но не в ту, о которой вы, скорее всего :)
github.com/arvidn/libtorrent/pull/4123#issuecomment-652502633
Ну как помер. Использовать никто не мешает :) Где-то в сети нашёл .deb пакет от какой-то не самой последней убунты, который встал на мою самую последнюю. Ну и из исходников он вполне собирается, я проверил.

Вот из этих sourceforge.net/projects/beye/files/biew/6.1.0/biew-610-src.tar.bz2/download?use_mirror=deac-riga
В этом жанре есть tilde ещё (хороша, использую, есть word wrap и буфер обмена) и Turbo (новичок с хорошим потенциалом, TUI на Scintilla).

И, конечно, встроенный редактор far2l, который даже буфер обмена через ssh умеет.
Кстати о фаре: в far2l (это который линуксовый) как раз colorer обновили :)
Подземной в черте города будет только первая ветка метротрама Тель-Авива. Остальные ветки просто трамвайные. При этом в Тель-Авиве планируется ещё отдельное метро.

btw, приглашаю присоединиться к работе над статьей в русской википедии про BRT!

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity