LINUX.ORG.RU

Lagrange 1.18 и 1.18.1

 , , ,


1

3

Две недели назад состоялось крупное обновление Lagrange, клиента сети Gemini (статья на Википедии, веб-сайт), представленной как облегчённая альтернатива WWW и созданной с оглядкой на Gopher, но с добавлением таких улучшений, как собственный язык Gemtext для базовой разметки текста и шифрование. 29 сентября вышло обновление 1.18.1, закрывшее несколько багов прошлого релиза.

Lagrange является кроссплатформенным клиентом, использующим возможности библиотек SDL для графического ускорения и OpenSSL для шифрования. Программа поддерживает вкладки и разбивку экрана, историю посещений, закладки, поиск по сети, умные подсказки при наборе в адресной строке, показ встроенных изображений на страницах, проигрывание аудиофайлов и выбор темы оформления, и содержит встроенный новостной агрегатор. Интерфейс Lagrange напоминает типичный для современных веб-браузеров, но имеет широкие возможности для кастомизации. Подробнее с особенностями приложения можно ознакомиться, открыв в Lagrange вкладку about:help, или прочитав файл help.gmi

Исходный код программы написан на C и может быть собран на любой современной POSIX-совместимой платформе. Официальные 64-битные сборки релизов доступны для платформ Windows, macOS и GNU/Linux (AppImage). Бета-релизы доступны для мобильных платформ: iOS, Android (репозиторий F-Droid, APK)

1.18

Нововведения:

  • Поддержка отправки сообщений Misfin. Ссылки misfin:// открываются в диалоге отправки.
  • Поддержка Guppy, легковесного протокола, основанного на UDP. Добавлено Dima Krasner.
  • Titan: Поддержка параметра «редактировать» в открытых ссылках Titan. Содержимое ссылки загружается и открывается в текстовом редакторе диалога отправки. После завершения редактирования содержимое отправляется обратно на сервер.
  • Опция для отключения всех предупреждений о небезопасном подключении TLS.
  • Воспроизведения звука в формате Opus посредством libopusfile (опциональная зависимость). Добавлено Martin Chang.

Изменения и улучшения:

  • Использующий Curses консольный клиент clagrange теперь может быть собран в дополнение к GUI-версии, а не по отдельности с ней. Удален скрипт для сборки TUI.
  • Улучшена фокусировка на элементах интерфейса: клавиши со стрелками перемещают фокус на соседний виджет.
  • Контекстные меню могут управляться клавишами со стрелками, и первые буквы ярлыков пунктов меню используются для быстрого перемещения фокуса нажатием соответствующей клавиши на клавиатуре.
  • Сохраненные в закладках URL автоматически обновляются в случае постоянных перенаправлений. (Оригинальный URL продолжает храниться в bookmarks.ini).
  • Длина строки изменяется динамически (подстраивается под размер окна), включая такие поля как преформатированные блоки и строки простого текста (plain text).
  • Путь к файлу может быть набран вручную в диалоге отправки. Ранее поддерживалось только использование drag-and-drop.
  • Щелчок правой кнопкой мыши по баннеру сайта показывает контекстное меню ссылки (привязанное к корневому URL капсулы).
  • При сохранении в каталог загрузок показывается всплывающее окно для подтверждения.
  • Панель меню: При активации с клавиатуры, повторно открывается последнее открытое подменю, но не обязательно «Файл», как раньше.
  • Клавиша Return теперь фокусирует на поле набора URL.
  • О странице: Разъяснено значение «fingerprint». Отображаются тип хэша (SHA-256) и что было использовано для его вычисления (полный сертификат или только публичный ключ).
  • Обновлены символьные обозначения действия «Перейти в корень», удаленных (remote) закладок и индикатор (кнопка) закладок.
  • Gopher: Корректный парсинг типов строк Telnet 8 и T.
  • Шрифт Noto Emoji обновлен для поддержки Unicode 15.1.
  • TUI: Часто используемые клавишные комбинации показываются на месте панели меню, когда та отключена, чтобы сделать интерфейс более доступным.
  • TUI: Улучшена раскладка интерфейса, учитывая возможность использования при минимальном разрешении в 80x25.
  • TUI: Улучшено отображение различных виджетов в текстовом режиме.

Исправления:

  • URL Titan ошибочно открывали диалог отправки при просмотре истории.
  • Запрос Titan в открытой вкладке отправлялся заново с пустым содержимым при запуске приложения.
  • Идентификация для отправки в Titan иногда выбиралась некорректно.
  • Диалогу отправки не хватало нескольких строк для ошибок при drag-and-drop.
  • Gopher: элементы форматирования Gemtext, оказавшиеся в тексте страниц Gopher, игнорируются, чтобы исключить возможность искажения визуального представления страницы.
  • Gopher: Номер порта может быть пустым на i-строках.
  • Ярлыки запроса, уже содержащие знак ?, имели в префиксе лишний ?.
  • Численные (буквенные) отметки ссылок, показываемые при навигации с использованием Alt/Option или клавишами ряда home, теперь начинаются с самого верха области просмотра.
  • Некорректный порядок обработки событий при наличии нескольких окон, когда один из виджетов находится в фокусе.
  • macOS: Навигация трекпадом на несфокусированном окне могла сработать в другом, сфокусированном окне.
  • Отсутствующая индикация фокуса в пустых списках и списках Snippets.
  • Зажатие Alt/Option (модификатор для показа номеров ссылок) при открытии ссылки запроса могло привести к отсутствию фокуса ввода во всплывающем диалоге.
  • Неправильное расстояние между символами в преформатированном блоке.
  • Подсветка первого абзаца неправильно работала с моноширинным шрифтом тела.
  • Текстовые символы иногда показывались частично обрезанными.
  • TUI: Цветовые escape-символы не учитывались при выводе.
  • TUI: Отсутствовали символы подменю.
  • TUI: Возможное зависание при показе обтекающего текста.

1.18.1

  • macOS: Исправлено открытие URI Misfin извне, средствами системы.
  • Windows: Теперь можно запомнить Lagrange как приложение для открытия URL misfin://.
  • TUI: Исправлено возможное искажение вывода.
  • TUI: Curses будет линковаться статически только при использовании опции CMake ENABLE_STATIC.
  • Обновлены переводы интерфейса.

>>> Подробности



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

Так оно видео скорей всего не поддерживает.

Почему вы не возьмете и не пролистаете 4 страницы документации? Там все исчерпывающие ясно написано.

Уютная маленькая копия HTTP. Игрушка для разработчиков.

lbvf50txt
()
Ответ на: комментарий от Bad_ptr

А ты скупай rtx 5090, создавай дефицит. Потом будешь продавать в 2 раза дороже.

Хм… Но они ж ещё не? А ты явно пишешь из доковидных времён, раз всё ещё ждёшь гейта из gemini в http. Такие гейты чуть ли ни с первых дней существования gemini существуют.

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

Так оно видео скорей всего не поддерживает. Не просто ссылку на mp4, а видео в плеере с лайками сортировкой и категориями)

А HTTP[S], стало быть, поддерживает?

Я извиняюсь, а вы в провайдерах кем работали?

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

Почему вы не возьмете и не пролистаете 4 страницы документации?

Потому что читать это для тех, кто во времена, когда Клеймен в провайдерах работал, в детский сад ходили.

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

видео в плеере

Вопрос как и с картинками. Вполне реально на стороне браузера разворачивать ссылку на видео во встроенный плеер.

с лайками

Реализация лайков для гемини есть, но не в реалтайме.

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

А я говорил что-то про http? Я говорил про интернет как сеть доставки контента. Обязательно шланга вот включать, да?

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

А HTTP[S], стало быть, поддерживает?

HTTP поддерживает с точностью до кодека через Content-type: video/mp4; codecs="avc1.4d002a", HTML5 поддерживает через тэг <video>.

Я извиняюсь,

Лучше тупить прекращай.

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

Вполне реально на стороне браузера

Короткий ответ - не поддерживает. Мультимедия в интернете - это не просто разворот картинок в браузере, а ещё куча динамики и плюшек. Надеюсь ты это понимаешь. Гемини хочет от этого уйти и поэтому его ждёт участь гофера.

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

ещё куча динамики и плюшек

Например?
Тут всё просто - гемини это запрос к серверу и получение данных от него. Лайки-комменты тут работают как в веб1.0 - запостил - обновил страницу - увидел изменения.

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


Это кстати элементарно опровергается - достаточно привести ссылку например на gemini://pornhub.com и на сайт заказа доставки пиццы. Го интегрировать эту всю байду в браузер) Перенесем весь интернет с сервера на клиента, кайф!

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

Реализация лайков для гемини есть, но не в реалтайме.

Да. Можно сделать ссылку при переходе на которую будет увеличииваться счетчик на стороне сервера. Потом вернувшись назад получить страницу с добавленым лайком. Правда это будут анонимные лайки.

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

в гемини сложно рекламировать казино три топора)

Что не комент, то в 10ку. Основа перегруженности всего и вся JS это системы рекламы и отслеживания поведения пользователей. Gemini полностью отключает такую возможность избавившись от сохранения состояния, и получая минимум информации при запросе клиента.

lbvf50txt
()
Ответ на: комментарий от devl547

Лайки-комменты тут работают как в веб1.0 - запостил - обновил страницу - увидел изменения.

Анонимные лайки еще реализовать можно, но вот с комментариями - беда. Нет механизма передачи данных серверу на подобе POST, и GET тоже сильно сильно урезан.

lbvf50txt
()
Ответ на: комментарий от Bad_ptr

Вопрос в простоте. Gemini - это все же больше игрушка, а не реальная технология, чтобы изменить интернет. В то время как рендеринг Markdown - не самая тривиальная задача.

При желании можно использовать и markdown. Скорее всего, даже я, не будучи программистом, используя готовые библиотеки соберу браузер-прототип за несколько дней. Даже можно будет формы для ввода придумать, потому что в Markdown их нет. Но зачем?

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

на этом даже имиджборду не сделать нормально.

Можно предавать комментарии через email. В email есть возможность добалять суффиксы (sub-addressing) в которых указывать ID сообщения на которое идет ответ.

Пример: послав email на адрес comment+id872@geminisite.com текст email опубликуется комментом к сообщению с id872.

lbvf50txt
()
Последнее исправление: lbvf50txt (всего исправлений: 1)

Зачем эти велосипеды, когда есть Наш Гипертекстовый Векторный Фидонет?

somemong
()
Ответ на: комментарий от vazgen05

Мне приходили подобные мысли в голову и я даже предлагал в шутку модификацию-слияние Gemini и Spartan.

Монстр из слияния Gemini и Spartan (попытка создать свой протокол)

Но для меня все эти протоколы «простого» интернета - изощренная форма программисткого развлечения, а не реальные инструменты.

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

все эти протоколы «простого» интернета - изощренная форма программисткого развлечения, а не реальные инструменты.

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

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

Вопрос в простоте. Gemini - это все же больше игрушка, а не реальная технология, чтобы изменить интернет.

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

lbvf50txt
()
Ответ на: комментарий от Leupold_cat

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

Что вы так грубо? Мало чем отличается от судо или авио моделизма.

Реалзиация клиента/сервера для Gemini это идиальное задание для студента. Лучше не придумать.

lbvf50txt
()
Ответ на: комментарий от vazgen05

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

Ну вы поробуйте напишите свой Gemini клиент. Это со стороны кажеться очень просто. На практике все сложней.

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

Я вовсе не вкладываю «плохой» смысл в эти слова и поддерживаю создание таких протоколов и программ для них.

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

Ну вы поробуйте напишите свой Gemini клиент. Это со стороны кажеться очень просто. На практике все сложней.

Мне как-то не сильно интересно, суть была в альтернативе жирному вендорлокнутому вебу, а такой примитив ее не дает.

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

А мне вообще нравиться Gemini, это такой большой хрясь по всей современной браузерной вакханалии. Хотелось бы больше Gemini капсул, чтоб где возможно заменить Web ресурсы на Gemini аналоги.

Не такая уж это и игрушка, а полноценная альтернатива для UNIX сообщества. Где стратегически убраны все возможности деградации. И оставлено все то, что действительно необходимо.

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

а такой примитив ее не дает.

Кому не дает?

Мне как опытному пользователю он дает почти все что нужно, мне удобней скачать картики и видео себе на диск и там их посмотреть. Общаться мне удобно через email.

Для меня не тербуется все запихивать в одну программу браузер. Под каждую задачу есть своя более удобная программа, потребялющая меньше ресурсов. Что и предоставляет Gemini.

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

Пока суть да дело, я гуглил про Gemini. И нашел вот такую интересную картинку на Wiki.

Gemini is a new internet protocol which:

  • Is heavier than gopher
  • Is lighter than the web
  • Will not replace either
  • Strives for maximum power to weight ratio
  • Takes users privacy very seriously

Этот протокол изначально не предназначался для замещения Web, его задача давать максималное количество возможнотстей при максимальн возможной простоте реализации.

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

Слушай, ну это путь в никуда, никогда такое популярным не будет, даже среди узких кругов любителей нестандартного. Тебе wget и цветовая схема для vim подойдет, зачем вообще нужен браузер?

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

А зачем ему быть популярным? У Gemini есть свои определенные задачи, он эти задачи выполняет. Это же просто инструмент.

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

Слушай, ну это путь в никуда,

С чего это вдруг путь в никуда? Вот простой пример: есть видеоблогер я люблю его контент, каждое новое видео я стараюсь посмотреть. Мне не надо превьюшки, менюшки, мне надо ссылку на его видое с описанием. С этим прекрасно справляется протокол Gemini. Новых блогеров я ищу через Web, контент уже оцененных я получаю через Gemini.

Это подразумевается путем в никуда, если трактовать Gemini как замену Web. Но это не замена, это дополнение.

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

А нам нужна замена вебу, тяжеловесные браузеры зашли в тупик.

Дело не столько в браузерах, сколкьо в веб мастерах. Пример из терда выше, я зашел на станицу музыканта, а там тяжеловесный JS которого хватит для оnline стратегии. Тут виноваты не браузеры, а те кто облапошил талатнливого музыканта и втюхал ему «современное решение».

Могли ему скзаать «давайте мы вам без JS по старинке сделаем, у всех будет открываться, вам хватит чтоб музыкой делиться»? Не могли. Надо было распушать хвост и рассказывать про SPA и современные фреймворки.

Gemini это решение таких проблем в априори. Есть сайт для хвастовства новыми технологиями, есть зеркало на Gemini которое всегда будет легковесным.

UPD: современный JS как соль, с щепоткой соли и помидоры и огруцы вкусней. Но дело не в JS, а в поворах которые соль вместо щепоток сыпят пригоршнями.

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

Не проблема, встроем в браузер показ рекламы. Как раньше в софте были баннерчики.

Ну или прикладывать ссылку на гифку - кому надо сам посмотрит

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

Это подразумевается путем в никуда, если трактовать Gemini как замену Web. Но это не замена, это дополнение.

Каким образом оно что-то дополняет, если в вебе можно ровно то же самое. Тебе кто-то запрещает делать текстовые сайты? Дополнение должно расширять функциональность, а не дублировать.

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

Изобретать еще один html с javascript смысла нет - все это будет повторением одного и того же.

Gemini идет по пути примитивизации, но он слишком прост настолько, что на нем невозможно без костылей реализовать даже оставление комментариев, не говоря уж о более сложных вещах.

Мне кажется, альтернативами могли бы служить человекочитаемые языки разметки, не предполагающие скриптов. А протокол передачи данных должен иметь возможность передавать данные от клиента и поддерживать шифрование. Можно даже не отказываться от http, а лишь отвязать его от html.

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

Каким образом оно что-то дополняет, если в вебе можно ровно то же самое.

Путем искуственно введенных ограничений, что дает гарантию малого потребения ресурсов.

Тебе кто-то запрещает делать текстовые сайты?

Никто не запрещает. Все можно решить и через классический HTML.

Дополнение должно расширять функциональность, а не дублировать.

Дополнительная опция может содержать облегченный вариант. Например, шлепанцы как дополнение к кросовкам.

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

Gemini идет по пути примитивизации, но он слишком прост настолько, что на нем невозможно без костылей реализовать даже оставление комментариев, не говоря уж о более сложных вещах.

Дак зачем добавлять комментарии в Gemini? Для комментариев есть HTTP c системой аутентификации, cookies, POST/GET запросами и так далее.

Gemini это явно альтернатива статическому HTML. Тем более, что для комментариев есть почта, с уже настроенным редактором и суб-адресацией. Проблемма с комментариями решатся на раз два, без всяких костылей. И протокол не переутяжеляется.

UPD: уже в который раз упоминаю, основной плюс Gemini это возможность реализовать браузер самостоятельно. Браузер HTML самостоятельно уже не реализуем - это утопия. Да не очень удобно, за то максимальная степень независимости, гарантия совместимости, гарантия читабильности на максимальном диапазоне железа.

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

А плоский текст можно выводить и на www, никто не запрещает.

Проблема www в том, что неплоский текст выводить тоже никто не запрещает. А если запретить все запросы к сторонним доменам и весь Javascript, то сломается около 100% существующих на данный момент www сайтов.

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

Опять же, какой плеер браузер сделает - такой и будет. .gmi - это чисто семантическая разметка, а за отображение целиком и полностью отвечает UA.

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

Проблема www в том, что неплоский текст выводить тоже никто не запрещает.

Аплодирую стоя.

lbvf50txt
()
Ответ на: комментарий от Clayman

ещё куча динамики и плюшек

Во-первых, не нужно, во-вторых, мультимедия без динамики и плюшек - всё ещё мультимедия.

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

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

Так это и есть те же яйца, только в профиль. Никаких гарантий на строне клиента — может, покажут, может нет. По мне так проект в погоне за простотой перегнул палку. Можно было бы хотя бы на уровне типовых возможностей markdown зафиксировать выразительные средства, а по факту получилась какая-то ориентация на текстовые терминалы и модемы на 9600 бод. В современных условиях такое скупердяйство это как есть каждый день вчерашний хлеб, чтоб тот не пропал, имя купленный свежий.

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

Комментарии должны быть в браузере[1], а не на самом сайте. А то расплодилось всяких Disqus и HyperComments…

[1] Например, https://github.com/gab-ai-inc/gab-dissenter-extension, только его из всех сторов потёрли, т.к. авторы отказывались цензурить комменты.

Gentooshnik ★★★★★
()

Вы бы хоть рассказали, что это и зачем. Видосы можно смотреть?

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

Хочу расширение, которое при открытии любой страницы в http: пытается открыть её же, но в gemini:. Сам слишком ничего не понимаю в Javascript.

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