LINUX.ORG.RU

Gemini-клиент Lagrange 1.2

 , , lagrange, ,

Gemini-клиент Lagrange 1.2

11

5

Вышла новая версия красивого и полнофункционального Gemini-клиента — Lagrange, написанного на языке C с использованием библиотеки SDL.

Gemini — это новый протокол прикладного уровня, по своему предназначению являющийся простой альтернативой HTTP и усовершенствованной альтернативой Gopher, то есть проектом «посередине» между ними в плане сложности. Он появился как реакция на недостатки последних, в особенности HTTP. В основу его дизайна легли идеи уважения приватности пользователя и сознательного отказа от расширяемости в пользу консервативного сохранения спецификации в минимальном, но удовлетворяющем пользовательские потребности виде (сейчас она заморожена). Проект использует уже знакомые многим стандарты, вроде URI, MIME и TLS. Проект не использует HTML, CSS и JavaScript — для разметки файлов предлагается похожий на Markdown формат Gemtext, а запуск кода и применение стилей на стороне клиента не предусмотрены. Для интерактивного взаимодействия с сервером существует CGI и потоковая отправка сообщений клиенту с помощью долгоживущего TCP-соединения (вследствие чего, например, возможна реализация чата). Сайты принудительно используют шифрование с помощью TLS без CA — вместо него используется механизм TOFU, а для аутентификации пользователей используются пользовательские сертификаты.

Сообщество разрастается интересными для пользователей проектами, вроде поисковой системы GUS, агрегатора новостей CAPCOM, каталогом Gemini-капсул (так называются местные сайты) Medusae, техническими демо возможностей протокола, вроде анонимной текстовой доски, агрегатора ссылок и чата. Доступны прокси как для просмотра Geminispace с помощью HTTP [1] [2] [3], так и для просмотра HTTP с помощью Gemini, и то же самое для Gopher.

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

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

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

В разработке порт Lagrange на мобильные платформы! А до тех пор пользователи могут попробовать Ariane на Android, например.

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

★★★★★

Проверено: Shaman007 ()
Последнее исправление: commagray (всего исправлений: 6)

Ответ на: комментарий от monk

Если нужен пример, пусть будет https://design-milk.com/

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

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

Обновление страницы для отправки комментария или лайка никому не нравится. Это долго и мешает просмотру страницы.

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

вряд ли это участвует в построении интерфейса

Ну ты же сам всё понимаешь, да? Не участвуют в построении интерфейса.

И да, я проверил без JS перед постингом. Всё на месте, ничего никуда не уехало. Как и ожидалось.

Вы же хотите сайты, которые просто сайты, а не приложения. Вот. Это они. Ровно как хотели.

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

Это долго

На ЛОРе это мгновенно происходит. Знаете, почему? Потому что у него интерфейс не свистопердит на аяксе при каждой прогрузке, а использует простую HTML-верстку.

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

Нет. Все зависит от скиллов.

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

Гуглите @media для ксс, там для промежутка разрешений задаёте свою таблицу стилей.

Я в курсе. Есть пара проблем: 1) из-за этого открытый не на весь экран сайт превращается в говно выглядит непривычно 2) приходится иметь хотя бы по одному устройству для каждого промежутка для тестирования.

А с учётом того, что и картинки по-хорошему надо выдавать разные для разных dpi, всё вообще грустно.

Поэтому, собственно, и нужен фреймворк, чтобы не экспериментировать на всевозможных комбинациях экзотических устройств и браузеров. Также как GUI пишут не на X или GDI, а на всевозможных обёртках, чтобы потом работало везде.

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

А с учётом того, что и картинки по-хорошему надо выдавать разные для разных dpi, всё вообще грустно.

Это уже не смешно. Ты вообще нуб нубом.

anonymous
()

Судя по количеству коментов, вещ нужная.

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

Поиск по документации — приложение? Это всё тот же https://jekyllrb.com/, это не приложение, а простой сайт.

Он может и простой сайт, но если вам нужно динамически шебуршать DOM на стороне клиента, то вам так или иначе нужен код.

Или по-старинке GET-запросом с прогрузкой.

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

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

Ф12 - нажмите на телефонопланшет - играйтесь.

А с учётом того, что и картинки по-хорошему надо выдавать разные для разных dpi, всё вообще грустно.

Очень сомневаюсь.

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

Он может и простой сайт, но если вам нужно динамически шебуршать DOM на стороне клиента, то вам так или иначе нужен код.

Да, но код не превратит этот простой сайт в приложение.

fernandos ★★★
()

Прочитав тред я понял, что Gemini нужен Монку, чтобы не выглядеть идиотом.

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

Там можно кнопку edit нажать, потом, вы выбираете не телефон, а разрешение.

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

Там пресетов ровно столько, сколько ты в настройках отметишь галочкой. А того, чего тебе не хватает добавишь.

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

Это уже не смешно

Предлагаешь гнать картинки в 4K вне зависимости от разрешения экрана получателя и масштабировать в браузере? Впрочем, интернет и так уже тормозит так, что, наверное, хуже уже не будет.

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

Да, но код не превратит этот простой сайт в приложение.

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

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

Точно так же как перевели все основные элементы верстки с костылей на CSS.

Я кстати, уверен, что если такую фичу когда-то внедрят, то СНАЧАЛА это будет библиотека на JS, которая станет популярной. А уже потом её реализуют в браузере.

Это и есть поступательное развитие.

А не выкидывание всего, что непонятно и пугает как monk-а.

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

Предлагаешь гнать картинки в 4K вне зависимости от разрешения экрана получателя и масштабировать в браузере?

Предлагаю заняться самообразованием.

https://developer.mozilla.org/ru/docs/Learn/HTML/Multimedia_and_embedding/Responsive_images

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

Там пресетов ровно столько, сколько ты в настройках отметишь галочкой.

В настройках тоже не слишком больше. И, опять же, ни одного Sony/Xiaome/Huawei.

А того, чего тебе не хватает добавишь.

Вот-вот. Поэтому лучше искать готовые CSS, где нужные диапазоны проставлены. И не придётся ломать голову, почему у linux.org.ru диапазоны для планшета/мобилки в em, а у apple.com в px. И что лучше ставить самому (и какие именно значения).

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

Ну ты вряд ли работаешь быстрее Интернета.

Интернет-то развился, а ты не особо. XD

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

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

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

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

Предлагаю заняться самообразованием.

Так я и написал, что для разных разрешений нужны разные картинки. Мой анонимный оппонент (точнее двое) ответили, что я нуб и так делать не надо. Так кому надо заняться самообразованием?

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

И не придётся ломать голову,

Было бы там что ломать.

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

И, опять же, ни одного Sony/Xiaome/Huawei

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

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

Я тебе не это написал.

Тогда как это понимать?

А с учётом того, что и картинки по-хорошему надо выдавать разные для разных dpi, всё вообще грустно.

Это уже не смешно. Ты вообще нуб нубом.

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

Буквально так и понимать. Что если это заставляет тебя грустить, ты не понимаешь, как устроено подобное тестирование. То это совсем уже не смешно, и ты нуб нубом.

С учетом того, что ты не первый год на ЛОРе замечен своим радикализмом к вебу (как выяснилось от некомпетентности), и выходит, что вместо самообразования, просто страдаешь скудоумием, то все еще более не смешно.

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

Тем более

Это единственное различие между реальными устроиствами, потому и нет полноценной эмуляции. Браузеры в задроиде независимо от устроиства одни и те же, и поддерживают одни и те же стандарты. Нет давно необходимости подгона, как были с ишаком шестым во времена диалапа и сони эриксон 750.

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

Так я и сказал именно то, что по той ссылке написано. Точнее по ссылке описано что нужно делать разные изображения для разной ширины, а иногда нужно именно для dpi (например, если рендерится формула в тексте, то портить шрифты округлением до логических пикселей не очень разумно).

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

Вы же не думаете, что фреймворк сам напишет вам сайт?

В фреймворке написаны и поддерживаются комбинации аппаратных характеристик для современных устройств. Также как GTK не напишет для меня GUI, но по крайней мере сделает так, что этот GUI будет работать и на X и на Wayland и на Windows/MacOS.

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

Каких еще характеристик??

В основном существующих вариантов логической ширины. И dpi для дополнительного уточнения.

И наличии основных элементов для всех этих самых устройств. Когда можно сделать просто navbar из materialize, а к нужному внешнему виду он придёт автоматически.

P.S. Лучше бы они по User-Agent делились. Ведь сайту важен не размер поля зрения, а выбор мышкой или пальцем.

monk ★★★★★
()
Последнее исправление: monk (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.