LINUX.ORG.RU

DOS Navigator портирован на Linux

 , , , turbo vision,


1

2

Разработчик @unxed, неоднократно предпринимавший попытки запустить двухпанельный файловый менеджер DOS Navigator под Linux, добился, наконец, успеха. Для решения проблемы лицензионной чистоты встроенная модифицированная библиотека Turbo Vision для Паскаля, никогда не публиковавшаяся под открытой лицензией, была заменена на рерайт современного форка доступной легально C++-версии, с переходом на UTF-8 и современную классовую архитектуру взамен характерной для TV, но практически не применяющейся сегодня, объектной.

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

Для поддержки UTF-8 в DOS-сборках применяется специально разработанный для этого DOS UTF8 API, уже добавленный в DOSBox-X.

Отдельно стоит отметить порт на Linux Volkov Commander, предпринятый этим же разработчиком. Используется простой эмулятор 8088. Вывод рисуется в консоль за счёт скрейпинга видеопамяти текстового режима по аналогии с тем, как WinPTY скрейпил консоль Windows.

>>> DOS Navigator 1.20



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

Сразу возникает вопрос, как с работой под SSH…

Нет, в Dos Navigator сразу встаёт вопрос, работает ли встроенный tetris.

Shadow ★★★★★
()

Кринж. И софт, и автор, и весь топик.

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

far под unix как седло на корове, конечно, в первую очередь, когда я его тыкал, из-за полного отсутствия поддержки мыши. Если unxed сделает так, что UX dn сохранится, и допилит удобный utf, то всё зашибись будет.

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

Для начала, неплохо было бы извиниться за совершенно неоправданный напрыг.

Это, вообще-то, обвинение в уголовном преступлении, которое УК РФ трактует как клевету. Напрасно вы это в публичном пространстве написали, я судиться с вами не буду, но на будущее надо поаккуратнее быть с таким.

Не пересекается значит что мой скрипт аудита скачивает код паскалевской TV Borland из доступных источников вроде свалок abandonware и сравнивает. Алгоритм сравнения смотрите в репозитории. У меня ничего под копирайтом не хранится.

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

совмещать неожиданные технологии

Звёздные войны

Ну кстати, мы с сыном сходили на 9 эпизод кошмара от Диснея в кинотеатр. Когда до диснейцев допёрло, что сюжет и смысл они просрали полностью и необратимо, они решили расслабиться и подарить зрителю удовольствие от всяких мелких отсылок и пасхалок. И в общем, у них даже получилось. Например, когда Рэй вертит на пальце вражеский кораблик, вспоминается первая Матрица. А когда экспедиция на Татуине выходит к народному гулянию, C-3PO ехидно говорит: «Это местный праздник, отмечается раз в 42 года». Я думаю, о, и «Автостопом по Галактике» помянули. Потом оказалось, что всё проще, за 42 года до этого кошмара вышла «Новая надежда».

Такое вот совмещение неожиданного ;)

P.S. Кстати, продолжаю орать от ИИшницы. Я как честный человек, хотел найти упомянутую цитату из C-3PO дословно… и получаю от Алисы следующее:

А вот история про «раз в 42 года» — это отсылка из фильма «Автостопом по галактике» (книгу и особенно экранизация). Там говорится, что праздник в честь C-3PO отмечают раз в 42 года — потому что именно такой период требуется, чтобы комета Галлея вернулась к Земле.

ААААААААААААААААААААААААААААА, держите меня семеро!

P.P.S Те фильмы, которые снимал ещё Лукас, мне в целом нравятся, «Месть ситхов» вообще трагедия почти шекспировского уровня.

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

Зачем ЭТО в 2026 году?

Ровно затем же, зачем существует Midnight Commander. Ровно затем же, зачем существует консоль и ssh на сервер.

И да, полноценный, работоспособный ДОС Навигатор под линуксом был моей личной мечтой лет уже наверно 20. И в кои то веки мечта воплощается (правда я не про тему автора, а про свою).

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

Да, я невнимательно прочитал некоторые заявления.

То, что целью было «не пересекаться с борландовским паскаль-кодом при конвертации борландовского си-кода на паскаль», как-то осталось незамеченным. Мне казалось что целью было спрятать связь с любым борландовским кодом вообще, это было бы плохо.

Что касается FV, я не видел что там было, но могу предположить следующее: сишные и паскалевские исходники turbo vision-а писались не независимо друг от друга (конкретно это даже не предположение, а уверенность), и вполне вероятно что часть из них была автоматически сконвертирована из одного языка в другой борландом (для этого никакие ллм не требуются), из какого языка в какой не сильно важно (хотя скорее всего оригинал - на паскале). Соответственно, когда FV конвертировали из си в паскаль, у них детерминированно могли получиться совпадения, причём весьма обширные. И, кажется, hobbit выше имел ввиду то же самое, когда писал про симфонии.

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

firkax ★★★★★
()

Configuration->Interface:

    Fatal Error
-----------

Exception 000h at address 0055A1A4
                                  Access violation
                                                  Please report to https://github.com/unxed/dn
( file \home\mittorn\dn\out\linux64\dn.err )

Press any key...

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

VC использовался исключительно когда мало места на дискете и в памяти. В остальных случаях Dos Navigator (который умел в emm)

Shadow ★★★★★
()

Я собрал его и запустил на дебиане
Сразу несколько вопросов:
1. Как перенести его бинарную версию на другую машину
2. У него есть палетты кроме дефолтной серой
3. Как добавить режим перехода по дереву каталогов с помощью кнопок стрелка влево - стрелка вправо

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

Поэтому он сейчас ну вообще не нужен. Это двупанельный фм уровня демосцены - отличное приложение, втиснутое в очень маленький объём.

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

на опёнке видел как тебе тухлых яиц накидали. впрочем, это завсегда так. «лучше бы пенсионерам раздали» итыды

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

Поэтому он сейчас ну вообще не нужен.

Волков не нужен? Да, Волков не нужен. А вот нужен ли двухпанельник уровня ДОС Навигатора? Ящетаю очень даже нужен! Правда я так же считаю, что старый оригинальный код на Паскале впихнуть в современные консоли это тупиковый путь - не потому что я против Паскаля, а потому что он слишком сильно заточен под специфические особенности МС-ДОС.

Мой гитхабчик чекни, может будет что сказать.

YogSagot ★★☆
()

Забыл сказать, я ещё и встроенный консольный IDE Фрипаскаля на свой стек портирую. UX там стремный, юникода нет, системного буфера обмена нет, половина ожидаемых сочетаний кнопок не работает. Надо сделать НОРМАЛЬНО, потому что оригинал был кайфный, cozy, а тут технически может оно и работает, но на практике чувство кайфа не вызывает.

Но это ещё совсем WIP, там процентов 50 до бинарника ещё.

https://github.com/unxed/sp/tree/main/fpide

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

А соединение через нуль-модемный кабель будет? Или я с волковым перепутал?

У нортона вроде было.

anc ★★★★★
()

И ещё забыл сказать. В процессе придумал memory safe подмножество Паскаля. Потом добавил туда типы владения из Rust и слайсы из Go и понял: а прикольный язык ведь получается! Скорость написания кода моделями как у Го, но без тормозов на работу GC.

Ещё добавил utf8 по умолчанию в стрингах и корутины в духе того же го. И ещё в планах менеджер зависимостей как у го опять же.

Это всё надстройка над ванильным FP, писать компилятор не надо. Захотят - втянут к себе, я только за, у меня bsd3, которая точно со всем совместима.

https://github.com/unxed/sp

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

Пасиб! Обожаю пробовать разные штуки, и смотреть, что будет.

И ещё.

Мне всегда нравилось, когда не просто музейный экспонат, а экспонат, несущий полезную функцию.

И ещё обожаю неожиданные гибриды технологий.

Как ретро трамваи в Питере или Сан-Франциско, или как когда современный поезд идёт под паровозом. Кайф же!

unxed
() автор топика

Зачем нужно это переписывание на C++, если уже есть python-textual? Автор решил самоутвердиться, прокачав скиллы в C++?

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

Волков нужен если у тебя 8086 или 80286 и ДОС Навигатор он тупо не тянет. Это твой печальный опыт?

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

Utf8 уже есть. Про мышу. UX в первой мажорной версии будет настолько близко к оригиналу, насколько позволит стек! Мы уже довольно близко

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

И да, полноценный, работоспособный ДОС Навигатор под линуксом был моей личной мечтой лет уже наверно 20.

А зачем?

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

Весело же! Никто не мог (хотя нейронки уже столько лет с нами), а я смог.

И ещё мне нужен был стек-запасной аэродром для f4, на случай если Гугл задеприкейтит Го. Это ж Гугл, у них всё либо бета, либо деприкейт.

А по скорости сборки и генерации одного статического бинаря для всех линуксов к Го именно Паскаль всего ближе. Оставалось добавить только utf8 по умолчанию, режим opt-in всех небезопасных операций с памятью (аналог unsafe), свои горутины и зависимости как в го. Это всё в процессе, на разных стадиях готовности, DN под данный диалект пока не адаптирован.

Это будет надстройка над FP примерно так же как Typescript надстройка над js

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

Вот только похвалить хотел, а теперь вижу что не за что.

Rodegast ★★★★★
()

В конце концов автор запнется на особенностях реализации в линуховых консолях, в которых копипаст будет путаться с экранным выводом, ничего не сможет с этим поделать, и забъет. У команды Far4L победить это не получилось. У них несколько режимов работы с консолью, и в каждом своя «особенность», из-за которой невозможно нормально пользоваться встроенным редактором.

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