На днях был представлен релиз Newsraft 0.30, консольного агрегатора для чтения новостных лент в форматах RSS и Atom. Основное предназначение Newsraft — получение и отображение контента из различных блогов и платформ через единый интерфейс. Этот интерфейс создан на основе библиотеки ncurses. Хотя проект вдохновлён программой Newsboat, Newsraft разрабатывался как независимый и более легковесный альтернативный продукт. Целью Newsraft является обеспечение востребованной функциональности фидридера с минимально возможным количеством строк кода. Для сравнения, Newsboat имеет около 44 тысяч строк кода, в то время как Newsraft — лишь 9 тысяч. Программа написана на языке C с использованием стандарта C99 и распространяется под лицензией ISC. Дистрибутивы для установки Newsraft 0.30 доступны для таких систем, как Alpine Linux, Arch User Repository, Chimera Linux, FreeBSD Ports, Homebrew, Nixpkgs и OpenBSD Ports.
Особенности и возможности
Newsraft поддерживает следующие функции:
- Параллельное обновление лент.
- Группировка лент по секциям.
- Возможность открывать ссылки внешними программами.
- Фильтрация новостей с применением SQL.
- Одновременный просмотр всех лент.
- Автоматическое обновление отдельных лент и секций.
- Индивидуальные настройки для каждой ленты.
- Назначение нескольких действий одной клавише.
- Текстовый поиск по новостям.
- Отображение содержимого HTML в терминале.
- Сортировка по заданным параметрам.
- Детальные отчеты об ошибках обновлений.
- Обработка лент по результату команды.
- Поддержка различных форматов лент, включая RSS, Atom, JSON Feed.
- Импорт и экспорт лент в формате OPML.
Нововведения в версии 0.30
Недавно выпущенная версия Newsraft 0.30 предоставляет следующие новшества:
- Новое действие edit для работы с базой данных.
- Новое действие find для поиска с SQL-условиями.
- Добавлена колонка user_data для пользовательского применения.
- Настройки для пакетных транзакций базы данных.
- Опции импорта/экспорта OPML лент.
- Регулярные выражения в настройке item-rule.
- Обработка ошибок синтаксиса в item-rule.
- Улучшенный подсчет элементов с учетом item-rule.
- Поддержка OSC 9 и OSC 52 для команд уведомлений и копирования в буфер обмена.
- Переименование ряда настроек для удобства.
- Переход от YAJL к встроенным функциям JSON в SQLite.