Обновить

Комментарии 30

круто!

а в чистой консоли заработает или ето именно GUI-приложение? у меня как раз есть пара задач где доступ к машинам через пол мира и три тунеля из-за чего быстрее всего напрямую в консоли сидеть без всяких GUI

Заработает! --tty

интересно, завтра наживую потыкаю отпишу

если все ок будет то возможно вы нового мейнтейнера получите)

кстати за плагины - на го есть разное, из самого цельного это плагинная система на базе gRPC где плагины как wasm собираются.

О, класс, жду фидбека! А у меня примерно так же оно и сделано. И colorer, например (люблю эту красилку, а особенно её способность понимать вложенные языки), из Far у меня через wasm и портирован :)

у wasm свои пределы

у меня в столе лежит пет-проект для читалки что бы везде нормально работала (включая нативный PoketBook) с поддержкой плагинов и как раз таки из-за границ возможности wasm оно подвисло так как для сложных вещей по факту нужно создать свой рендер и язык что бы плагины могли сами задавать менюшки/кнопки/ets если нужно

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

я смотрю у вас в проекте много разного и было бы круто это все выкинуть на уровень плагинов без необходимости вшивать в исходник
хотя как вариант можно gentoo-стаил и пересобирать каждый раз с добавлением/обновлением "плагинов"

Да, возможно мы так сделаем в какой-то момент. Архитектура на такое рассчитана.

Про wasm. Попробуйте прогнать через binaryen, потом через goccy/wasm2go (именно из этого репозитория!), а потом попрофилировать и пооптимизировать горячие места мощной нейронкой. Я так сишные оригиналы обгоняю

Какой-то слишком сложный пайплайн сборки для простого плагина. По-моему проще переписать нужный кусок на Go нативно, чем собирать весь этот франкенштейн...

А так тоже можно. Собираете плагин отдельным бинарником, они общаются с f4 по message pack через пайпы. Посмотрим, чем будут пользоваться, что приживется. А wasm jit я в любом случае тащу для colorer, кстати

Изоляция через wasm дает гарантию стабильности, кривой плагин не положит тебе весь файловый менеджер. За этот комфорт всегда приходится платить оверхедом по памяти и процессору

Угу, именно, есть плюсы и минусы у обоих вариантов, вот я их и поддерживаю оба. Хороший дизайн это написать интерфейсную часть плагина на чем-то изолированном, васм или Луа, а если ему нужна числодробилка, она может собирался отдельным плагином - нативным бинарником, и это всё между собой по messagepack общаться будет. Я долго вертел в голаее всё это компромиссы и получилось вот такое. Дальше надо в реальном мире смотреть, как это всё работать будет.

Кстати, магазин приложений уже есть, добавиться можно одним PR ом :) пробуйте писать что-нибудь свое, присылайте, будем вместе смотреть, как это работать будет!

Наблюдаю отставание интерфейса верхнего меню при работе с мышой. Т.е. мышь с пункта меню давно ушла, а пункт только-только подсветился. Отставание где-то полсекунды. Или, например, если мышь повозить по выпавшему меню вверх-вниз, то пункты подсветится не тот пункт, на котором мышь в итоге остановилась, а сначала весь мышиный путь. Да и в целом интерфейс на моей машине довольно "задумчив". В tty режиме работает чуть бодрее, но отваливается перемещение по файлам с помощью стрелочек :-) Ubuntu 26.04 + Kde 6.x

Спасибо! А с --gui=ebiten? В Konsole есть баг, попал в релиз увы. В мастере у них пофикшено уже. Попробуйте в kitty

Не хватало возможности переделать mod key - запуск из под zellij почти исключает возможность им пользоваться, т.к. у того ctrl/alt используются для управления панелями. Возможно в tmux есть похожие проблемы. Кнопки F1-F12 кстати тоже не на всякой клавиатуре есть, так что предложил бы сделать возможность как-то это дело кастомизировать.

Разумно, стараюсь делать graceful degradation где возможно. Напишете тикет?

Переписать православный Far на плюсах в Go это конечно заявка на успех, только зачем тащить туда автолейауты от эпл, если вся суть консоли в минимализме и предсказуемости...

Так он же в прошлых статьях рассказывал, почему так. С учётом насколько старая кодовая база у Far даже создание far2l был заметной болью, не говоря уже за застарелые баги и костыли. Чтобы не возиться с легаси - берем новый язык и из коробки получаем минимальный единооборазный синтаксис, тесты из коробки, поддержка utf из коробки, поддержка асинхронности из коробки, всякие примитивы безопасности из коробки и много чего ещё из коробки и никаких заморочек с make/cmake из коробки. Внешних зависимостей - минимум, т.к. большая часть так или иначе статически все слинковывает, да ещё и под любую ОС без особых заморочек.

православный в том плане, что работает только на Винде, а тут кросс-платформенный?

Заинтересовал ai:ap: модель формирует инструкции, а локальный скрипт меняет файловую систему. Планируете ограничивать такие действия набором разрешённых операций и рабочим каталогом, а перед применением показывать полный diff? Иначе самая удобная функция может одновременно стать самой опасной — особенно если модель увидит содержимое недоверенного файла.

Ага. Эта штука прототип конечно ранний, PoC. По крайней мере, что скармливать модели - задаётся явно, а применение патча, который она сделала - опт ин. И его код перед глазами на панельке

за идею и реализацию 5+

f4.exe 85’200’384 bytes, но там электрон внутри ещё что ли где-то спрятался?

Аххаха спасибо это эскалировало быстро! Там действительно кое-что вшито, например, colorer из far2l в wasm, но основное жрут зависимости. От 86 к 110 Мб мы прыгнули, добавив подключения в облака, например. SDK всё эти... Я думаю, что с этим делать, будет мини сборка для роутеров, что-то вынесем в плагины - благо, архитектура позволяет делать это без боли.

На маке сразу после запуска повисает секунд на 30-40, интерфейс никак не реагирует ни на клавиатуру, ни на мышь. Затем отвисает и работает нормально. Из всех настроек - поменял шрифт на JetBrains Mono, может это как-то влияет?

Еще из неприятного - не открывается меню редактирования атрибутов файла по Ctrl+A как это было в Far. Я понимаю там, ИИ, все дела, но как атрибуты теперь поменять?

Command+A для атрибутов - в принципе ок. Но вот Arkanoid стоит доработать ))

А напишете тикет про зависон? И как доработать Арканоид 🙂

ИИ на правом Ctrl же 🤔

Я как раз специально экзотическое сочетание взял чтоб точно обычными процессам не мешало

Есть макросы, есть палитра команд, можно поменять, конечно!

А, планируется ли поддержка Windows 7, или в этом есть какое-то непреодолимое препятствие? Всё-таки, раз уж речь идёт о какой-никакой мультиплатформенности, то обидно было бы терять этот сегмент

Тут есть два аспекта. 1. Компилятор. Надо собирать на старом и бекпортировать кучу кода. Это нудно, но агент справится 2. Надо было отвязаться от современных штук вроде ConPTY, тут простой тест: чтоб работало в Вайне, этот майлстоун сегодня пройден :)

то есть, я так понял, что не планируется совсем. может быть хотя бы какую-нибудь урезанную MVP-сборку сделаете? что-то типа волков-коммандера, для текстового режима, без всяких там архитектурных излишеств? для чего это конкретно мне нужно? часто возникает ситуация, когда нужно запустить фар из командной строки, например, при установке винды в окне через Shift+F10. и нужна именно консоль 7 винды

Может получиться крутой файл-менеджер, если разработку не забросят.

Пока два вопроса:

  1. Планируется ли во встроенном дизассемблере переключение между 16- / 32- / 64-бит режимом ? Сейчас видно только последний.

  2. Есть ли у разработчиков канал в дискорде ? Телега это неплохо, но дискорд был бы удобен.

В мае, когда вышла альфа 0.1.1, f4 еще даже в юзер-меню по F2 не умел, что очень меня удручало)
Сейчас это приложение, которым уже можно пользоваться для большинства задач, и по многим способностям он уже обходит far2/far2l, которые пока использую все равно каждый день(все же привычка дело сильное). Очень стремительный рост, радует

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации