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)
Ответ на: комментарий от Smacker

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

Абсолютно нет. Можно выкладывать ссылки на HTTP ресурсы, там размер не ограничен. Со всеми возможностями HTTP.

Еще раз Gemini не замена HTTP, а дополнение гарантирующие низкое потребление ресурсов и читаемость.

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

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

Зачем делали Python когда уже был Perl? Он же только сужает функциональность.

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

Никаких гарантий на строне клиента

Именно. Ты отдаешь клиенту информацию. В каком виде клиент ее будет потреблять - не твоё дело. Хоть в чОрной консоли смотреть, хоть в разноцветном гуе, хоть на принтер сразу выводить лентой.

devl547 ★★★★★
()

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

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

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

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

Напомнило ранний Juick. Браузером он был рид-онли, писать блогопосты - только через Jabber.

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

ИМХО, это перебор, по крайней мере пока.
Smolweb в этом плане ближе к реальности.
Потому что для гемини нужен пусть и простой, но отдельный просмотрщик. А plain html без извращений и жабоскрипта можно открыть даже на старье. Ну и гемини требует криптографию.

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

Потому что для гемини нужен отдельный просмотрщик. А plain html без извращений и жабоскрипта можно открыть даже на старье.

Да. Только plain html слишком сложно формализуем в законе, а вот Gemini однозначен. И как только такой закон появится, сразу появятся клиенты и массово начнется внедрение.

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

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

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

Да я в курсе, чо. Просто тут в погоне за минимализмом лишнего отчекрыжили от вполне консервативного, но современного джентельменского набора выразительных свойств. Есть вот редактор ed. Он и по сию пору, собственно, отлично работает, да и никто не мешает и не запрещает его юзать. Только не нужен ed нафиг никому, потому что в качестве типового use-кейса авторы всерьёз рассматривали телетайп. И что для телетайпа было очень круто и уместно, то сейчас неудобно и нафиг не нужно.

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

почему

Потому что PS не человекочитаем и в целом не предназначен, чтобы передавать текст.

Есть вот редактор ed.

И он редактирует текст.
А теперь представь, что у тебя в какой-то момент почти все текстовые файлы начали требовать установить Eclipse с сотней плагинов, да еще и регулярно версию обновлять.

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

Во-первых, в postscript нет ссылок, во-вторых, можно и postscript, если браузер его сможет отобразить. Один из принципов Gemini - на одно пользовательское действие один запрос и один файл. Ставишь ссылку на свой postscript и если пользователь на него нажмёт, и если клиент поминает что с этим делать - то он будет отображён.

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

А, если как основной формат страниц рассматривать, то он, конечно, проще чем html+css+js, но зачем? Для отладки и реализации гораздо удобнее текстовый формат чем бинарный. Ну и гиперссылок нет.

А вот нативную поддержку LaTeX в Gemini на Реддите уже просят.

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

нативную поддержку LaTeX

Как только латех можно будет открывать в любом консольном редакторе - пусть добавляют)

Это всё-таки язык вёрстки, а верстка в гемини на стороне клиента. То есть как с картинками - вот вам блок чего-то на латехе. Если браузер умеет - распарсит и покажет. Не умеет - покажет спойлер с текстом.

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

Я тут немного поигрался. В общем, похоже у него есть что-то вроде POST, только данные которые отправляются с каждым запросом пользователь явно прописывает. Что для реализации BBS и подобного абсолютно приемлемо.

BBS: https://gmi.skyjake.fi/bubble/

Как выглядит в Lagrange: https://ibb.co/D4mymPG

А ещё я нашёл у Gemini киллер-фичу. Identity пользователя хранится в браузере и используется на всех сайтах. Ну или не на всех, как пользователь захочет. Если есть несколько машин, то можно один Identity перенести между ними. Т.е. можно забыть одновременно и о подобранных злоумышленниками паролях, и о необходимости их вводить.

EDIT: На скриншоте манагер Identity - в сайдбаре открыт.

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

Потому что PS не человекочитаем и в целом не предназначен, чтобы передавать текст.

— Почему в Gemini нет конкретного стандарта на картинки?
— Мы не хотим диктовать, как отображать контент! Только передавать! Пусть клиент сам разберётся, как что отображать!
— Ну так тогда вообще устранитесь от вопроса отображения, гоняйте туда-сюда ps, пусть клиент разруливает.
— Так, слышь ты...

И он редактирует текст.

А теперь представь, что у тебя в какой-то момент почти все текстовые файлы начали требовать установить Eclipse с сотней плагинов, да еще и регулярно версию обновлять.

Пока что наоборот — gemini (ed) предлагает жить так, как будто бы у меня был телетайп. Но у меня нет телетайпа. И ни у кого нет. Но почему-то нужно бороться с его несуществующими ограничениями.

Я ж не говорю про «тащить всё». Но такие вещи как простые таблицы, изображения, заголовки разных уровней, списки и средства выделения текста — это вполне типовой современный набор-минимум уже лет 30 как — минимум! Не зажравшиеся требования буржуев с hidpi, 64 гигами оперативки и 16 ядрами проца. В gemini меньше.

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

Так нужно определиться тогда — gemini хочет диктовать, как отображать контент на клиенте, или нет. Если ответ «нет», тогда должно быть всё равно, в каком виде попрёт контент, хотя бы и в бинарном, не протокола дело. Если ответ «да», то тогда ожидания разумного минимума возможностей, с учётом современного уровня техники, выглядят совершенно уместными и логичными. А тут получается и рыбку съесть и на ёлку взлезть.

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

— Ну так тогда вообще устранитесь от вопроса отображения, гоняйте туда-сюда ps, пусть клиент разруливает.

Gemini и устранился от вопроса отображения. А ps - разметка как раз (в т.ч.) для стилизации контента. Т.е. если ты гоняешь ps, то ты уже не можешь устраниться от вопроса отображения, все инструкции (цвета, шрифты, картинки, расстояния, размеры…) в файле уже есть.

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

А, я (кажется) понял где недопонимание. Gemini определился что как отображать контент на клиенте должен только клиент. В данных лежащих на сервере никаких инструкций на этот счёт быть не должно. Поэтому никаких html с его <b> и <strong>, никаких ps, никаких pdf, и т.д.

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

Странная логика. Как раз в случае пересылки ps протокол и отображение на клиенте будут максимально разобщены. Как уж там получится или нет отображение ps — протоколу будет пофигу. Потому что это будет не его, gemini то есть, дело. Он только передаст.

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

Должно быть не дело сервера. А если на сервере лежит ps, то сервер уже даёт инструкции по отображению контента в самом этом ps.

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

— Ну так тогда вообще устранитесь от вопроса отображения, гоняйте туда-сюда ps, пусть клиент разруливает.

Ты из тех ребят, которые вместо plaintext'а скидывают pdf или скриншоты внутри word файла и предлагают отредактировать?

gemini (ed) предлагает жить так, как будто бы у меня был телетайп.

Я прямым текстом написал - текст/информация в gemini первичны.
Ты можешь настроить свой телетайп, чтобы он тебе радужный комиксанс выдавал и строчки шли по диагонали. Но это повлияет только на твою шизу, а не на остальных, которые настроили по-другому.

Он только передаст.

Gemini это не только http, а еще и html.

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

Поэтому никаких html с его <b> и <strong>, никаких ps, никаких pdf, и т.д.

... и, видимо, именно поэтому gemtext — это вариация на тему markdown? Чтоб, значит, никаких инструкций!

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

А, я (кажется) опять понял где недопонимание.

Нужно отличать семантическую разметку от визуальной.

# - указывает что текст после него - заголовок. Но не указывает как его отображать (жирным красным текстом размера 72, например).

В html, <strong> - это семантическая разметка. Указывает что текст важнее чем окружающий. Браузеры обычно делают этот текст полужирным, но не обязательно. <b> - конкретно указывает что текст внутри должен быть полужирным. Вот разметки второго типа в Gemtext нету.

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

А нужны инструкции относительно «как отображать контент» именно в самом узком понимании, т.е. курсив, полужирный, полужирный курсив, подчеркивание и т.п.? Сделать то-сё заголовком а это вот списком — не в счёт? И, опять-таки, чем <strong> не угодил, выделять каким-то акцентом слова ещё в древнем мире придумали. Собственно, этого писатели «<b>» и хотят обычно добиться, просто не очень корректно делают.

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

вариация на тему markdown

Вообще не вариация. Ключевое отличие - md умеет применять стиль к отдельным словам, если не символам.
Gemini не имеет форматирования per se. Он максимум умеет «эта строка - заголовок», «эта строка - ссылка», «эта строка - список».

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

«заголовок» и «список» относятся к «что», а не «как». Перенос всей стилизации в CSS, чтобы в HTML осталась только семантика был одной из основных фишек html5.

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

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

Ну а gemtext не умеет. Зато всё остальное

«эта строка - заголовок», «эта строка - ссылка», «эта строка - список».

умеет, как и в md. С чего бы это не считать урезанным md?

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

<strong> технически всем угодил. Насколько я понял, авторы Gemtext очень хотят чтобы смысл строки можно было понять по её первому символу. Поэтому разметки посреди строк нет.

UPD: Да. Вся разметка идёт строго от начала строки и до первого пробела.

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

Несущественные детали. Нафига тогда даже эта скудность опций? Почему не оставить оформление на откуп автору контента. Пусть сами и форматирует пробелами и всем прочим:

######################################
###      Привет, родной двач!      ###
######################################

Здесь мы будем собирать информацию о 
самых популярных постылых мемах СНГ.

* Коты
  [1] Понимающий кот
  [2] Орущие на кота тётки
  [3] Кот-бегемот
* Собаки
  - собака-подозревака
  - доге


— вот, пожалуйста. Вообще ничего не нужно. Только моноширинный шрифт. Зачем делать какие-то полумеры ради заголовков, списков и т.д. если это «что» легко приводится в нужный вид руками самого автора, и о том, «как» это «что» отображать автору клиента уже вовсе не нужно думать?

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

Почему не оставить оформление на откуп автору контента.

Философия и вкусовщина. И тут я с ними согласен. Оформление должно быть на совести UA и пользователя, а не автора контента.

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

Было бы, конечно, очень круто, если бы к любой html странице можно было приложить хотя бы Markdown эквивалент, и поисковики нещадно снижали ранжирование сайтов у которых нет md-варианта, или у которых текстовый контент слишком значительно различается между html и md. Но никто на это не пойдёт, потому что какой же www без рекламы и трекеров?

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

Gemini определился что как отображать контент на клиенте должен только клиент

Сомнительное решение. Дизайнер сайта хотел бы, чтобы сайт везде, во всех клиентах, отображался одинаково

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

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

В таком ключе вопрос стоит ещё более остро. Интернет как сеть доставки контента как связана с плеерами и лайками?

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

HTTP поддерживает с точностью до кодека

Именно поэтому это и щитвеб.

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

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

Разве для просмотра видео нужна динамика? Его ведь можно и по ftp смотреть

Ты не понимаешь проблемы пользователей хромбуков.

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

Сомнительное решение. Дизайнер сайта хотел бы, чтобы сайт везде, во всех клиентах, отображался одинаково

В этом же и фишка gemini, нет дизайна, нет никакой функциональности, это прям какой-то сетевой просмотрщик урезаного (!) маркдауна)

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

Я и говорю, это такая сомнительная фишка, мало кому зайдёт

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

Дизайнер сайта хотел бы

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

devl547 ★★★★★
()

Добавить Javascript и будет топчик!

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

Это не техническая проблема, а проблема людей. Людям, видишь ли, надо заказать пиццу одним кликом в приложеньке и посмотреть видео на сайте, поставить лайк подписку колокольчик. А на ваши особо умные слова им покласть абсолютно. И гемини эту «проблему» решить не в состоянии, а технологически он просто ничего нового не предлагает. Всё очень просто.

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

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

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

Да я только за, только вместо гемини предлагаю фидо. У меня где-то и us robotics валялся. Но на это согласен только при условии возврата и всего остального из 90х)

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

Не получится. Они там судорожно пытаются добавить хоть какой-то интерактив. В протоколе большие проблемы с добавить комментарий к посту. Пока или костыляют рядом какой-то web, или прикручивают e-mail --ссылку, типа напишите письмо, мы его содержимое добавим как комментарий.

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

Дык, насколько я понял из постов авторов этого Gemini, это те же люди, что оный Гофер когда-то делали. Собственно, его и надо воспринимать, как «гофер на новый лад без джаваскрипта и стилей».

gns ★★★★★
()

без нормальной графики и форматирования вообще никак не нужно ни в каком виде

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