llpp: инструкция от гика, клавиатурный просмотр PDF, EPUB, XPS и CBZ без лишнего интерфейса

llpp — настольный просмотрщик документов, построенный вокруг MuPDF и рассчитанный прежде всего на управление клавиатурой. Его рабочее окно почти целиком занято страницей: вместо обычных панелей с десятками значков здесь используются режимы, сочетания клавиш, встроенная справка и несколько экранов вроде оглавления, истории и информации о документе. Такой подход делает llpp близким по идее к консольному pager less, хотя сам llpp является графической OpenGL-программой. В 2026 году проект нельзя считать заброшенным: основной репозиторий на repo.or.cz получил изменения в июне и июле, а пакет AUR llpp 43-0 обновлялся 8 июля 2026 года. При этом распространение остаётся типичным для нишевого Unix-инструмента: исходный код и пакеты сообществ вместо фирменного установщика, отдельного аккаунта, облака или подписки.

Что такое llpp и какой именно продукт рассматривается

Официальное написание названия — llpp, строчными буквами. Основной upstream описывает программу как PDF pager и прямо связывает её концепцию с less(1). Рендеринг выполняет библиотека MuPDF. В истории проекта встречаются репозитории под именем moosotc/llpp и community-форк criticic/llpp, поэтому при поиске исходников легко принять зеркало или ответвление за актуальную основную ветку. Для текущего состояния ориентиром служит repo.or.cz/llpp.git: именно на него указывает актуальная карточка AUR и именно там в июле 2026 года продолжались изменения ветки master.

Автор последних upstream-коммитов обозначен как malc; ранний GitHub-проект и профильные каталоги связывают llpp с именем moosotc и участниками проекта. В документации также отмечен вклад Nicolás Ojeda Bär в порт для macOS. Это не коммерческая продуктовая линейка с редакциями Home, Pro или Enterprise: речь идёт об одном небольшом просмотрщике и сопровождающих скриптах, главным из которых является llppac для предварительного преобразования форматов.

Назначение llpp уже, чем у полноценных PDF-редакторов. Он ориентирован на чтение, быстрые переходы, поиск, масштабирование, работу со ссылками и оглавлением, закладки, выделение текста, простую текстовую аннотацию и управление внешними командами. Для задач, где требуется менять структуру PDF, переставлять страницы, редактировать существующий текст или собирать новый документ, логичнее смотреть в сторону специализированных решений; на GeekHow есть отдельная подборка бесплатных PDF-редакторов.

Основные параметры llpp

Параметр Состояние
Тип Графический pager и просмотрщик документов на MuPDF
Основной сценарий Чтение и навигация по документам с управлением клавиатурой и мышью
Платформы Linux; существует и продолжает документироваться порт для macOS. Актуальные Nix-пакеты публикуются для Linux и Darwin. Отдельная современная Windows-редакция не документирована
Основные форматы просмотра PDF, EPUB, XPS и CBZ; дополнительные типы можно предварительно преобразовывать через llppac и внешние утилиты
Графика OpenGL; рендеринг MuPDF
Управление Клавиатура, мышь, режимы help, info, outline, bookmarks, history, bird’s-eye и другие
Поиск Встроенный текстовый поиск вперёд и назад с переходом между найденными совпадениями
Аннотации Подтверждена текстовая аннотация мышью и сохранение изменений командой W
Настройка Файл llpp.conf в пользовательском каталоге; переопределяемые сочетания клавиш и параметры отображения
Автоматизация Удалённое управление через источник команд, перезагрузка документа, запуск настроенных внешних команд, llppac
Аккаунт и облако Не требуются; основной просмотр локального файла выполняется локальным приложением
Мобильные приложения У llpp нет отдельной мобильной редакции
ИИ-функции В llpp их нет
Цена Платной редакции, подписки и пробного периода нет
Лицензирование Upstream LICENSE относит основной код к public domain с оговорками для включённых компонентов; метаданные отдельных пакетов дистрибутивов могут использовать иное обозначение лицензии
Текущий статус Активная ветка master менялась в июле 2026 года; AUR содержит llpp 43-0 с обновлением от 8 июля 2026 года

Номер пакета в дистрибутиве не следует воспринимать как универсальный номер релиза llpp. В upstream долго использовались теги vXX, причём видимые теги заканчиваются на более старых версиях, тогда как ветка master продолжила развиваться. Поэтому AUR 43-0, Nix 42 и старые пакеты других дистрибутивов могут одновременно существовать и отражать разные срезы исходного кода.

Текущий статус, распространение и требования

Наиболее свежий подтверждённый канал для Arch Linux — AUR: карточка llpp 43-0 обновлена 8 июля 2026 года и берёт исходники из repo.or.cz. Пакет собирается для x86_64 и зависит от freetype2, gumbo-parser, jbig2dec, OpenGL, libjpeg-turbo, libmupdf и openjpeg2; при сборке также требуются Git, OCaml и LablGL. Это полезнее фиксированного списка «минимальных системных требований», потому что upstream не публикует привычную таблицу с объёмом ОЗУ, частотой процессора и требуемым местом на диске. Придумывать такие цифры для llpp было бы неправильно.

Исходный проект использует собственную сборочную схему и в 2026 году обновлялся под новые версии MuPDF и OCaml. В июне 2026 года в master появились изменения для нового Fitz API MuPDF и отдельный коммит, переводящий сборочную часть на OCaml 5.5.0. Практический вывод состоит в том, что совместимость с библиотеками окружения для llpp важнее формального номера программы: пакет, собранный против одной версии libmupdf, может перестать запускаться после обновления библиотеки, пока llpp не будет пересобран.

В Nix-пакетах llpp публикуется для Linux и Darwin, включая x86_64 и ARM-варианты, а текущая man-страница проекта отдельно отмечает порт для macOS. На Linux код использует X11-часть интерфейсного слоя и OpenGL. Нативный Wayland-бэкенд в документации llpp не описан; в Wayland-среде приложение обычно рассматривают как X11-программу, которой нужен совместимый графический сеанс. Для пользователя, который только осваивает пакеты и каталоги Linux, полезен общий материал GeekHow о том, как устанавливать приложения в Linux.

У проекта нет собственной службы обновлений, магазина, обязательной регистрации и коммерческого кабинета. Пакетные менеджеры дистрибутивов обновляют свою сборку независимо от upstream. Это одновременно снижает зависимость от сервера разработчика и повышает значение состояния конкретного пакета: версии, патчи и набор зависимостей в Arch, Nix и других системах могут расходиться.

Интерфейс: почему llpp почти не похож на обычный PDF-reader

Главная рабочая зона llpp — непосредственно страницы документа. Постоянная боковая панель, лента инструментов и меню с крупными кнопками не являются основой интерфейса. Вместо этого программа переключается между режимами. В обычном view mode пользователь читает документ и перемещается по нему; outline mode показывает структуру; bookmark mode работает с сохранёнными позициями; history mode возвращает к предыдущим переходам; info mode показывает и позволяет менять параметры текущего документа; help mode выводит таблицу доступных действий. Отдельный bird’s-eye mode даёт обзор страниц и быстрый выбор нужной.

Такая организация хорошо согласуется с целью «похожести на less». Команды g и G ведут к началу и концу, / запускает поиск вперёд, ? — назад, n повторяет поиск, а q завершает работу. При этом llpp остаётся графическим просмотрщиком: колесо мыши прокручивает страницы, Ctrl с колесом меняет масштаб, кнопки мыши используются для ссылок, выделения областей и аннотаций.

Обычная строка состояния заменена набором команд и экранов информации. Клавиша = выводит текущую позицию, e открывает журнал ошибок, i — информационный режим. Заголовок системного окна можно отключить параметром запуска -no-title. Для встроенной справки используется F1; man-страница также упоминает Alt-h. Текст встроенной справки и названия режимов в исходном проекте англоязычные.

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

Основные функции и как они связаны между собой

Навигация по страницам и история позиции

Стрелки прокручивают содержимое, Space и Delete переходят по направлению к следующей и предыдущей части документа, Page Up и Page Down двигают на экран, а g/G и Home/End переводят к началу или концу. Цифры используются для ввода номера страницы. Отдельная история переходов позволяет возвращаться назад после прыжка по ссылке, оглавлению или номеру страницы и затем двигаться вперёд по этой истории. Это особенно важно для технических документов, где чтение постоянно прерывается переходами к таблицам, примечаниям и ссылкам.

Масштаб, подгонка и многоколонное чтение

llpp поддерживает обычное увеличение и уменьшение, сброс масштаба и смещения, подгонку страницы по размеру окна, режим 1:1, «блочный» масштаб и обзор страниц. В конфигурации и интерактивных параметрах присутствует число колонок, поэтому одна и та же схема подходит и для одиночной страницы, и для раскладки нескольких страниц. Поворот документа доступен отдельными командами, а режим обрезки полей помогает увеличить полезную область для документов с широкими пустыми полями.

Поиск текста

Поиск работает в обе стороны и хранит последнее выражение для повторного перехода по совпадениям. Он интегрирован с масштабированием: отдельная команда может приблизить первое найденное совпадение. Встроенная справка самого проекта предупреждает об ограничении реализации поиска, поэтому llpp не стоит выбирать ради сложного полнотекстового анализа: его поиск предназначен прежде всего для навигации в открытом документе.

Ссылки, оглавление и режим навигации по ссылкам

Ссылку можно открыть мышью или с клавиатуры. Режим link navigation позволяет выбирать активные элементы без точного наведения курсора, а отдельная команда копирует описание выбранной ссылки в буфер обмена. Оглавление открывается как список с вложенными уровнями: в нём можно перемещаться по пунктам, сужать набор и переходить к выбранной позиции. Для документов с корректной структурой это заменяет постоянную боковую панель.

Закладки и быстрые метки

llpp различает именованные и быстрые закладки. Именованная метка сохраняет удобную для возвращения позицию; quick bookmark предназначена для временного чтения «туда и обратно». Закладки вместе с историей делают длинные PDF и книги удобнее, чем простой линейный pager: пользователь может держать несколько опорных мест и при этом не терять последовательность переходов.

Выделение и передача текста внешним инструментам

Основная кнопка мыши используется для выбора текста. Выделение можно передать настроенной внешней команде, а отдельный режим pax обрабатывает выбранную область. В справке также описана передача слова, строки, блока или страницы внешней команде при многократном щелчке с модификатором. Это одна из сильных сторон llpp для Unix-сценариев: просмотрщик не пытается встроить в себя все операции, а допускает связку с пользовательскими утилитами. Одновременно это зона доверия: строку внешней команды в llpp.conf следует считать исполняемой настройкой, а не безобидным оформлением.

Текстовые аннотации и сохранение изменений

Текущая справка llpp описывает добавление текстовой аннотации сочетанием Shift с вторичной кнопкой мыши. Для сохранения изменений предназначена команда W, а Q специально завершает программу без сохранения конфигурации или изменений. Это не превращает llpp в полноценный редактор PDF: подтверждён именно узкий сценарий аннотирования, а не редактирование существующего текста, перестановка страниц или графическая верстка.

Отображение: инверсия, яркость, полноэкранный и презентационный режимы

В интерактивных настройках есть инверсия цветов, изменение яркости, поворот, число колонок, обрезка полей и точный процент масштаба. Отдельно доступны fullscreen и presentation mode. Такое разделение позволяет оставить обычный view mode минимальным, а параметры менять только когда они нужны. Презентационный режим предназначен для показа страниц без постоянного интерфейсного окружения, но не добавляет редактор слайдов или таймлайн.

Автоматическая перезагрузка и внешнее управление

Команда r перечитывает открытый документ, а сигнал HUP также запускает перезагрузку. Параметр -remote принимает путь к источнику внешних команд. Это пригодно для связки с генератором PDF, редактором TeX или собственным скриптом, который хочет менять позицию/состояние просмотрщика без ручного ввода. AUR дополнительно предлагает llpp.inotify как опциональный wrapper для автоматической реакции на изменения файла.

llppac как слой преобразования

Сопровождающий скрипт llppac принимает путь или URL, определяет MIME-тип, преобразует документ и затем запускает llpp на результате. Конвертированный результат кэшируется. Man-страница приводит среди внутренних типов ps, texi, djvu и html; AUR перечисляет optional dependencies для DjVu, PostScript/DVI, изображений, SVG и офисных документов. Это важно отделять от нативного чтения: когда llppac открывает такой файл, работу по преобразованию выполняет внешний инструмент, а не сам движок llpp.

Карта форматов и совместимости

Тип данных Как используется Редактируемость Что учитывать
PDF Основной нативный сценарий просмотра через MuPDF Просмотр, навигация, выделение; подтверждена текстовая аннотация и сохранение изменений Не является заменой полноценному PDF-редактору; защищённый документ требует пароль
EPUB Нативное чтение; для EPUB/HTML можно передать CSS через -css Чтение и настройки отображения Результат переразметки зависит от документа и стилей
XPS Просмотр через поддерживаемый MuPDF-сценарий llpp Чтение Функции PDF-специфичных изменений к нему не следует переносить автоматически
CBZ Просмотр комикс-архива Чтение Предназначен для последовательного просмотра страниц, а не редактирования архива
PS, Texinfo, DjVu, HTML Примеры типов, которые llppac может преобразовать перед открытием После конвертации llpp работает с промежуточным результатом Нужна подходящая внешняя программа; кэш llppac может потребовать принудительного обновления
Изображения, SVG, офисные документы В AUR перечислены внешние конвертеры для llppac Не нативное редактирование Поддержка определяется установленным конвертером и его возможностями
Буфер обмена и внешняя команда Выбранный текст или область передаются наружу Результат формирует внешняя программа Команда должна быть настроена пользователем; доверять следует только собственной конфигурации

МуPDF как библиотека умеет читать больше форматов, чем перечислено в кратких описаниях llpp, однако это не основание приписывать llpp любой формат MuPDF автоматически. Для обзора безопаснее разделять подтверждённые основные форматы llpp и дополнительные пути через llppac. По той же причине у программы нет общего «экспорта во всё»: её задача — просмотр, а не конвертация. Для преобразования PDF в редактируемый облачный документ у GeekHow есть отдельная инструкция о конвертации PDF в Google Docs.

Локальная работа, приватность и границы безопасности

Для обычного открытия локального PDF llpp не требует учётной записи, синхронизации или отправки файла в облако. Рендеринг выполняется локально библиотекой MuPDF. Интернет становится нужен не самому просмотру, а окружающим сценариям: загрузке исходников и зависимостей при сборке, работе llppac с URL или внешним инструментам, которые пользователь сам подключил.

Главный риск конфигурации связан с расширяемостью. В llpp есть запуск внешней команды с путём документа, обработка выделения настроенной командой, pax-режим, SyncTeX-команда и источник удалённых команд. Эти функции полезны в автоматизации, но llpp.conf в такой схеме становится исполняемой частью рабочего окружения. Конфигурацию из непроверенного архива не следует копировать вслепую: она способна запускать программы с правами текущего пользователя.

Для цепочки поставки у llpp есть отдельная историческая оговорка: в 2022 году ArchWiki фиксировала удаление и замену файлов в основном репозитории, а community-форк сохранил прежний код. Актуальный AUR после возврата к репозиторию malc в 2025 году использует закреплённый commit и собственный build-fixes.patch. Это не делает любую сборку автоматически безопасной, но даёт воспроизводимую точку исходников. Для обычной установки разумнее использовать поддерживаемый пакет своего дистрибутива или предварительно изученную фиксированную ревизию, чем исполнять незнакомый сборочный скрипт из случайного исторического состояния master.

Для защищённых PDF предусмотрен параметр -p и переменная окружения LLPP_ASKPASS, через которую можно назначить программу для ввода пароля. Это позволяет не хранить пароль в постоянной конфигурации. При работе с конфиденциальным документом разумно также учитывать промежуточные файлы llppac: его преобразованный результат кэшируется, поэтому расширенный сценарий с конвертацией создаёт дополнительную локальную копию.

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

Цена, редакции и лицензирование

llpp не продаётся по подписке и не делится на бесплатный и платный тарифы. Для запуска нет регистрации, пробного периода или ограничения по времени. Расходы возникают не из цены лицензии, а из обслуживания окружения: сборки под конкретный дистрибутив, совместимости MuPDF, установки дополнительных конвертеров для llppac и времени на настройку сочетаний клавиш.

Upstream-файл LICENSE формулирует статус основного кода как public domain, одновременно исключая из этого утверждения локальную копию LablGL и отдельно оговаривая glfont.c. У пакетных систем метаданные могут отличаться: актуальная карточка AUR помечает пакет как GPL3. Для обычного пользователя это не создаёт платной функции, но при перераспространении собственной сборки нельзя считать все входящие компоненты автоматически относящимися к public domain — нужно учитывать условия конкретного пакета и зависимостей.

У llpp нет редакций Pro, Business или Education. Различия, которые пользователь видит между «версиями», обычно связаны с состоянием ветки upstream, номером пакета дистрибутива и патчами сопровождающего пакета. Это важнее маркетингового сравнения тарифов: на одной системе llpp может быть 43-0, на другой — 42, а функциональная база останется близкой.

Жизненный цикл продукта

llpp существует много лет и исторически выпускал нумерованные теги v23, v24, v25 и далее. В видимом списке upstream-тегов последние классические теги заметно старше текущей ветки master. Отсутствие свежего тега не означает остановку разработки: в мае 2026 года код адаптировался к новому Fitz API MuPDF, в июне менялась сборка под OCaml 5.5.0 и устранялись проблемы совместимости, а 15 июля 2026 года в master появился новый коммит.

Отдельный этап истории пришёлся на 2022 год. Сохранившаяся версия ArchWiki предупреждала, что в основном репозитории файлы были удалены и заменены, после чего рабочий код сохранил community-форк criticic/llpp; AUR в тот период также перенёс источник на этот форк. История пакета AUR показывает обратный переход 28 августа 2025 года с формулировкой о возврате к репозиторию исходного автора malc. В 2026 году пакет уже берёт код из repo.or.cz и фиксирует конкретный commit, а не произвольное состояние ветки. Поэтому старые инструкции, в которых главным адресом назван GitHub-форк, и старые предупреждения о состоянии upstream нужно читать именно как часть жизненного цикла, а не как описание текущего источника AUR.

Жизненный цикл llpp хорошо показывает специфику небольших open-source приложений: изменения движка MuPDF способны ломать сборку, после чего исправление появляется либо в upstream, либо как патч пакета. Пользователю важнее следить за согласованностью llpp и libmupdf, чем искать «последний официальный установщик». По состоянию на дату обзора проект имеет свежие upstream-коммиты и свежий AUR-пакет, то есть статус «закрыт» или «снят с поддержки» к нему неприменим.

Что перестанет работать первым

Совместимость с libmupdf. Это наиболее чувствительная зависимость. В AUR закреплено предупреждение о двух характерных случаях: несовместимые версии заголовков и библиотеки MuPDF либо отсутствие ожидаемого файла libmupdf.so после системного обновления. В обоих случаях приложение может не дойти даже до открытия документа. Для пакетной установки правильная реакция — пересобрать llpp против текущей библиотеки, а не копировать случайную старую .so вручную.

Графический контекст. llpp использует OpenGL и на Linux опирается на X11-слой. Если графический сеанс не предоставляет нужный display или OpenGL-контекст, просмотрщик не сможет создать окно. Это принципиально отличается от консольного less: сходство касается модели управления, а не типа приложения.

Конвертация llppac. Нативные PDF/EPUB/XPS/CBZ не зависят от Ghostscript, DjVuLibre, ImageMagick, librsvg или unoconv. Но документ, который llppac должен предварительно преобразовать, перестанет открываться при отсутствии соответствующей внешней программы. Поэтому «llpp открывает офисные файлы» без уточнения было бы неверной формулировкой: открытие обеспечивается цепочкой внешней конвертации.

Сохранение изменений. Просмотр останется доступен даже там, где файл открыт только для чтения, но сохранить текстовую аннотацию в исходный документ без права записи не получится. Кроме того, команда Q специально закрывает llpp без сохранения изменений. Для важной разметки это означает, что способ выхода имеет значение.

Автоматизация. Внешнее управление зависит от пути, переданного -remote, а обработка выделений — от настроенных команд. Удаление или переименование этих вспомогательных файлов и программ не ломает базовый просмотр PDF, но ломает конкретную интеграцию. У llpp нет облачного сервера или аккаунта, отказ которого одновременно отключил бы чтение всех локальных документов.

Как пользоваться программой — советы гика

Открыть документ и сразу перейти к нужной странице

Цель. Запустить llpp на конкретном локальном документе и не тратить время на последовательную прокрутку. Подготовка. Нужен установленный llpp и доступный файл; для зашифрованного PDF потребуется пароль. Действия. Запустите llpp, передав путь к документу. Для стартовой страницы используйте параметр -page с номером страницы. В уже открытом окне наберите цифрами номер страницы и подтвердите ввод Enter. Для первой страницы нажмите g или Home, для последней — G или End. Параметры. Защищённый PDF можно открыть с -p либо через настроенный LLPP_ASKPASS; -last открывает последний посещённый документ. Проверка. Команда = показывает текущую позицию и помогает убедиться, что переход выполнен. Типичная ошибка. Цифры введены в момент, когда активен другой режим или поле поиска, поэтому llpp воспринимает их не как номер страницы. Безопасный откат. Нажмите Escape, вернитесь в обычный просмотр и повторите переход; Backspace или Alt-Left возвращают к предыдущей позиции после прыжка.

Прокручивать документ и пользоваться историей переходов

Цель. Читать длинный документ без потери контекста после прыжков по страницам. Подготовка. Откройте документ и оставайтесь в view mode. Действия. Стрелками Up и Down прокручивайте содержимое, Left и Right сдвигайте страницу горизонтально. Ctrl с соответствующей стрелкой перемещает примерно на половину экрана. Page Up и Page Down меняют положение на экран, Space ведёт дальше по документу, Delete — назад. После перехода по ссылке, оглавлению или номеру страницы нажмите Backspace либо Alt-Left, чтобы вернуться к предыдущей точке; Alt-Right двигает вперёд по истории. Параметры. Ctrl-PageUp и Ctrl-PageDown выравнивают вид по первой или последней видимой странице, а t привязывает текущую позицию к верхней границе. Проверка. После нескольких переходов откройте history mode через Alt-F1 и убедитесь, что точки истории присутствуют. Типичная ошибка. Пользователь пытается вернуться стрелкой Left и получает горизонтальное смещение вместо истории. Безопасный откат. Используйте Backspace или Alt-Left; случайный панорамный сдвиг затем можно убрать Ctrl-0.

Настроить масштаб, поворот, обрезку полей и обзор страниц

Цель. Подогнать страницу под окно или быстро оценить структуру большого документа. Подготовка. Откройте страницу, на которой хорошо видны поля и размер текста. Действия. Ctrl-+ или Ctrl-= увеличивают масштаб, Ctrl— уменьшает. Ctrl-0 сбрасывает масштаб и панорамирование. Ctrl-1 подгоняет самую высокую страницу, Ctrl-2 подгоняет её высоту точнее, Ctrl-3 переключает варианты подгонки, Ctrl-4 задаёт 1:1. Для обзора страниц нажмите Ctrl-9 или F9; в bird’s-eye mode перемещайтесь Page Up/Page Down, Home/End, а Enter выбирает страницу и возвращает обычный вид. Команды < и > поворачивают документ. Для интерактивной настройки обрезки полей используйте последовательность -T, для точного масштаба — -Z и число процентов. Параметры. Ctrl с колесом мыши также меняет масштаб; B включает block zoom, а вторичная кнопка мыши позволяет выделить прямоугольную область для увеличения. Проверка. После Ctrl-0 страница должна вернуться к базовому состоянию без накопленного сдвига. Типичная ошибка. В bird’s-eye mode пользователь продолжает нажимать команды обычного просмотра и получает другое действие. Безопасный откат. Escape, Ctrl-9 или F9 выводят из bird’s-eye; Ctrl-0 возвращает безопасную базовую геометрию.

Найти текст и перейти между совпадениями

Цель. Найти термин в открытом документе. Подготовка. Убедитесь, что PDF содержит текстовый слой; скан без распознанного текста не даёт llpp материала для обычного поиска. Действия. Нажмите / для поиска вперёд или ? для поиска назад, введите строку и подтвердите Enter. Клавиша n повторяет поиск в прямом направлении, p или N — в обратном. Комбинация z с соответствующим вариантом команды поиска может приблизить первое найденное совпадение. Для прерывания длительной операции предусмотрен Ctrl-g. Параметры. Настройка -i управляет чувствительностью поиска к регистру. Проверка. Повторное n должно перевести выделение к следующему совпадению, а не остаться на том же месте. Типичная ошибка. В сканированном PDF визуально есть слово, но текстовый поиск ничего не находит. Это не доказывает неисправность llpp: в файле может отсутствовать извлечённый текст. Безопасный откат. Escape отменяет ввод шаблона, u снимает подсветку, а Ctrl-g прекращает текущую операцию поиска.

Работать с оглавлением, ссылками и закладками

Цель. Быстро перемещаться по структурированному документу и сохранять точки возврата. Подготовка. Для outline документ должен содержать структуру; для ссылки — активную ссылочную область. Действия. Нажмите o для outline mode. В списке перемещайтесь Up/Down, используйте Left/Right для уровней, Enter подтверждает выбранный пункт, Escape возвращает к документу. В обычном просмотре F переходит к подсказанной ссылке; Insert включает link navigation mode, после чего Return активирует выбранную ссылку. Для именованной закладки используется m, для быстрой — ~; переход к сохранённым позициям выполняется через bookmark mode, который открывается ‘. Параметры. В list-like режимах буквенно-цифровой ввод служит быстрому поиску по пунктам; Ctrl-n сужает список, Ctrl-u отменяет последнее сужение. Проверка. После перехода Backspace должен вернуть позицию, а закладка должна появляться в соответствующем списке. Типичная ошибка. В документе без оглавления пользователь ожидает заполненный outline. llpp не генерирует структуру автоматически. Безопасный откат. Escape закрывает список; Backspace или Alt-Left отменяют навигационный прыжок без изменения файла.

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

Цель. Забрать фрагмент из документа или передать его в уже настроенный локальный инструмент. Подготовка. Для обычного выделения нужен текстовый слой. Для внешней обработки заранее настройте собственную безопасную selection command или pax command в llpp.conf. Действия. Основной кнопкой мыши выделите текст. Команда y позволяет выбрать ссылку и скопировать её описание в буфер обмена. Символ | передаёт текущее выделение настроенной selection command, а x запускает pax command над выбранной областью. Ctrl-p запускает настроенную команду с путём открытого документа. Параметры. -x задаёт строку команды обработки выделения, -M переключает pax mode. Проверка. После y вставьте содержимое буфера в безопасное текстовое поле и убедитесь, что скопировано ожидаемое описание. Для внешней команды проверяйте результат именно в том приложении, которое она должна была запустить. Типичная ошибка. В конфигурации указана программа, которой больше нет в PATH, и команда внешней обработки завершается без ожидаемого результата. Безопасный откат. Не сохраняйте непроверенную строку команды в постоянный llpp.conf; u снимает выделение, а Escape отменяет выбор. Для восстановления безопасного поведения удалите только собственную проблемную привязку из резервной копии конфигурации, не меняя документ.

Добавить текстовую аннотацию и сохранить изменения

Цель. Оставить короткую текстовую заметку в PDF и не потерять её при выходе. Подготовка. Работайте с копией важного PDF, если изменение оригинала нежелательно, и убедитесь, что файл доступен на запись. Действия. Удерживайте Shift и нажмите вторичную кнопку мыши в нужной области страницы — llpp использует это действие для добавления text annotation. Введите содержимое заметки в появившемся механизме ввода и завершите редактирование. После внесения изменения нажмите W, чтобы сохранить changes. Параметры. Положение аннотации задаётся точкой на странице; отдельного полноценного набора инструментов разметки в справке llpp не описано. Проверка. Закройте документ обычным способом, повторно откройте PDF и убедитесь, что текстовая заметка присутствует в ожидаемой позиции. Типичная ошибка. Выход через Q: эта команда специально завершает llpp без сохранения конфигурации или изменений. Безопасный откат. Пока изменения не сохранены, Q позволяет выйти без их записи. Если нужно сохранить исходник неизменным, используйте копию файла до аннотирования; llpp не позиционируется как система версий документа.

Включить полноэкранный, презентационный и комфортный режим отображения

Цель. Убрать отвлекающие элементы и настроить вид для чтения или показа. Подготовка. Откройте документ и запомните базовое состояние либо используйте Ctrl-0 как точку возврата. Действия. f переключает fullscreen, P — presentation mode. Клавиши [ и ] меняют яркость. Через интерактивные настройки -I переключается инверсия цветов, -R с числом задаёт поворот, -C с числом — количество колонок. Команда b управляет полосой прокрутки, l — подсветкой ссылок. Параметры. Для EPUB и HTML при запуске можно указать собственный CSS параметром -css; w меняет высоту окна так, чтобы уместить целую страницу. Проверка. После выхода из presentation mode навигация и обычные команды view mode снова должны вести себя ожидаемо. Типичная ошибка. Пользователь одновременно меняет инверсию, яркость, обрезку и масштаб, после чего не понимает, какая настройка дала нежелательный результат. Безопасный откат. Возвращайте параметры по одному; Ctrl-0 сбрасывает масштаб и смещение, а повторные f или P выключают соответствующий режим.

Переопределить сочетания клавиш в llpp.conf

Цель. Адаптировать llpp под привычную раскладку, не меняя исходный код. Подготовка. Найдите пользовательский llpp.conf и сделайте его копию. Текущая man-страница описывает путь $HOME/.config/llpp.conf; если каталога .config нет, сборочная документация предупреждает о проблеме запуска и использует запасной путь $HOME/llpp.conf. Действия. Откройте llpp.conf в текстовом редакторе, найдите секцию defaults и нужный mode: view, global, birdseye, help, info, listview или outline. Измените только требуемую привязку, сохраните файл и перезапустите llpp. Затем нажмите F1 и сравните ожидаемое действие с фактическим. Параметры. Привязка действует в конкретном режиме, поэтому одинаковая клавиша может иметь разный смысл в view и outline. Проверка. Новое сочетание должно срабатывать только там, где оно назначено, а базовая навигация должна остаться доступной. Типичная ошибка. Переназначена клавиша без учёта режима, и кажется, что конфигурация «не работает». Безопасный откат. Закройте llpp, верните сохранённую копию llpp.conf и запустите программу снова; это безопаснее, чем восстанавливать несколько строк по памяти.

Открыть дополнительный формат через llppac

Цель. Использовать llpp как финальный просмотрщик для документа, который сначала нужно преобразовать. Подготовка. Установите llppac вместе с llpp и подходящий внешний конвертер для конкретного типа. AUR связывает DjVu с DjVuLibre, PS/DVI с Ghostscript, изображения с ImageMagick, SVG с librsvg и офисные документы с unoconv. Действия. Передайте llppac путь или URL. Скрипт определяет MIME-тип через file, выполняет преобразование, кэширует результат и запускает llpp. Для явного MIME применяется -m, для внутреннего типа — -t; среди примеров man-страницы есть ps, texi, djvu и html. Если кэш устарел, используйте -f для принудительного преобразования. Параметры. -c передаёт CSS для соответствующего преобразования. Проверка. После запуска в llpp должен открыться конвертированный документ, а повторный запуск без -f может использовать кэш. Типичная ошибка. llppac распознал тип, но нужный конвертер отсутствует, поэтому цепочка останавливается до запуска llpp. Безопасный откат. Не меняйте исходный файл: llppac работает через отдельный результат. Повтор с -f безопаснее ручного переписывания оригинала.

Сквозной сценарий: открыть технический PDF, найти раздел, отметить место и сохранить

Цель. Пройти воспроизводимый путь от запуска до сохранённого результата без обращения к панелям меню. Подготовка. Создайте копию PDF, в котором есть текстовый слой и оглавление, и убедитесь, что копия доступна на запись. Действия. Запустите llpp на копии. Нажмите o, выберите раздел в outline и подтвердите Enter. Вернитесь к тексту и используйте / для поиска термина; n перейдёт к следующему совпадению. Подстройте масштаб Ctrl-+ или Ctrl—, а при необходимости сбросьте его Ctrl-0. Поставьте именованную закладку через m. Для короткой заметки удерживайте Shift и нажмите вторичную кнопку мыши на странице, затем завершите ввод текста. Нажмите W для сохранения изменений. После этого q завершает обычный сеанс; не используйте Q, если нужно сохранить изменения. Параметры. При защищённом файле пароль передаётся -p либо через LLPP_ASKPASS; для длинного документа Ctrl-9/F9 даёт обзор страниц. Проверка. Повторно откройте копию: страница должна читаться, аннотация — присутствовать, а навигация и поиск — работать независимо от сохранённой заметки. Типичная ошибка. Пользователь аннотирует оригинал, хотя хотел только временную заметку. Безопасный откат. До W можно закрыть через Q и отказаться от несохранённых изменений; после W вернуться к исходному состоянию проще всего через заранее созданную копию оригинала.

Плюсы и минусы

Плюсы

  • Минимальный постоянный интерфейс: основное пространство остаётся документу, а действия вызываются сочетаниями клавиш и режимами.
  • MuPDF и OpenGL используются непосредственно в настольном просмотрщике без обязательного облачного слоя.
  • Навигация охватывает страницы, историю переходов, ссылки, оглавление, закладки и bird’s-eye обзор.
  • Есть гибкая подгонка масштаба, обрезка полей, поворот, несколько колонок, инверсия, яркость, полноэкранный и презентационный режимы.
  • Сочетания клавиш переопределяются по режимам через llpp.conf.
  • Подтверждены текстовый поиск, выделение текста, работа с буфером обмена и простая текстовая аннотация.
  • Внешнее управление, перезагрузка по HUP и команды обработки выделений позволяют встроить llpp в Unix-рабочий процесс.
  • llppac расширяет входные сценарии за счёт внешних конвертеров и кэша, не усложняя основной просмотрщик.
  • Нет подписки, обязательного аккаунта, встроенного облака и отдельного платного тарифа.
  • Разработка upstream продолжалась в 2026 году, а AUR обновлён под текущие зависимости.

Минусы

  • Порог освоения выше, чем у просмотрщика с очевидными кнопками: базовые действия приходится запоминать или сверять по F1.
  • Текущая Linux-реализация ориентирована на X11/OpenGL; нативный Wayland-интерфейс в документации не представлен.
  • Нет современной официальной Windows-редакции и мобильного клиента.
  • Встроенная справка англоязычная.
  • Текстовый поиск сам проект описывает как ограниченный; он не рассчитан на сложный анализ содержимого.
  • Выделение текста ограничено одной страницей, что неудобно для копирования больших фрагментов.
  • Совместимость с MuPDF чувствительна к обновлениям библиотеки; пакет иногда требуется пересобрать.
  • Дополнительные форматы через llppac требуют внешних программ, поэтому реальная совместимость зависит от окружения.
  • Аннотирование узкое: llpp не заменяет PDF-редактор с полноценной разметкой, редактированием объектов и управлением страницами.
  • Расширяемость через внешние команды требует аккуратной конфигурации, поскольку эти команды запускаются с правами пользователя.

Кому подойдёт

  • Пользователю Linux, который предпочитает клавиатуру мышиным панелям и уже привык к логике less, Vim-подобных навигаторов или других mode-based приложений.
  • Разработчику и автору технических документов, которому нужны быстрые переходы, история, поиск, SyncTeX-сценарий, reload и возможность связать просмотрщик с редактором или скриптом.
  • Читателю больших PDF, EPUB, XPS и CBZ, которому важны обрезка полей, подгонка, несколько колонок, обзор страниц и сохранённые позиции.
  • Пользователю, который предпочитает локальную программу без регистрации и не нуждается во встроенной синхронизации между устройствами.
  • Тем, кто готов поддерживать небольшой open-source инструмент через пакетный менеджер и понимает, что после крупного обновления MuPDF может понадобиться пересборка.

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

Кому не подойдёт

  • Пользователю Windows, которому нужен официально поддерживаемый современный установщик и привычная Windows-интеграция.
  • Тем, кому нужен PDF-редактор: изменение существующего текста, формы, подписи, перестановка страниц, OCR и развитые инструменты разметки не являются задачей llpp.
  • Пользователю, который хочет одинаковый клиент на компьютере, планшете и телефоне с облачной синхронизацией.
  • Тем, кому важна полностью визуальная модель с панелью миниатюр, меню и подписями на каждой кнопке.
  • Пользователю, которому необходимо надёжно копировать текст через границы нескольких страниц одним выделением.
  • Организации, где запрещён самостоятельный запуск внешних команд и требуется централизованно управляемая подписанная корпоративная сборка.

Сравнение с другими аналогами

Программа Задача Платформы Порог освоения Форматы Автоматизация Модель оплаты Ограничение и сценарий
llpp Минималистичное чтение с клавиатурой Linux, macOS-порт Высокий для новичка PDF, EPUB, XPS, CBZ; другие через llppac -remote, HUP reload, внешние команды, llppac Без подписки и платной редакции Лучше для Unix-пользователя, который хочет максимум управления с клавиатуры и минимум постоянного GUI
Zathura Клавиатурный просмотр документов с более привычной экосистемой пакетов Главным образом Unix-подобные системы; официально перечислены Linux-дистрибутивы, OpenBSD и MacPorts Средний/высокий Поддержка строится плагинами: PDF через Poppler или MuPDF, DjVu, PostScript, comic-book Конфигурация, автоматическая перезагрузка, командный режим Свободное ПО без подписки Лучше, когда нужен Vim-подобный viewer, но важна активная современная plugin-экосистема
MuPDF mupdf-gl Прямой просмотр на базе самого MuPDF с более широким набором функций движка Linux, Windows, macOS; также существуют другие viewers MuPDF Средний PDF, XPS, EPUB, MOBI, FB2, CBZ/CBT, изображения, ограниченный SVG Отдельный mutool для конвертации и обработки Настольные open-source инструменты без подписки; коммерческая лицензия относится к встраиванию и отдельным продуктам Рациональнее, когда нужен сам MuPDF без специфической модели llpp или требуется Windows
Okular Универсальное чтение и развитая работа с документами через обычный GUI Linux, Windows; существуют nightly-сборки macOS Ниже, чем у llpp PDF, EPUB, DjVu, XPS, изображения, комиксы и другие обработчики Не ориентирован на file-driven remote workflow llpp; зато имеет развитый GUI и функции документа Свободное приложение без подписки Лучше для пользователя, которому нужны панели, аннотации, формы и широкий набор форматов без запоминания десятков клавиш
Sioyek Чтение научных статей и технических книг Windows, macOS, Linux Средний Основной фокус — PDF Конфигурация и scripting, command palette Open-source проект GPL-3.0 без обязательной подписки Лучше для исследований: smart jump, portals, marks, bookmarks, highlights и SyncTeX ориентированы на перекрёстные ссылки и научные тексты

Наиболее близкий по философии конкурент — Zathura: оба делают ставку на клавиатуру и конфигурацию, но Zathura в 2026 году имеет регулярные релизы и отдельные plugin-проекты. MuPDF mupdf-gl полезен как прямой путь к возможностям того же рендер-движка и доступен на Windows. Okular выбирают, когда важнее визуальная понятность и развитые функции PDF. Sioyek занимает другой узкий сценарий — чтение исследований с перекрёстными переходами и заметками.

Типичные проблемы и диагностика

llpp не запускается после обновления MuPDF

Симптом: приложение завершается до открытия файла и сообщает о несовместимых версиях заголовков и библиотеки либо об отсутствующей libmupdf.so. Возможная подтверждённая причина: установленный llpp собран против другой версии libmupdf; именно этот случай закреплён в AUR как типичная проблема. Диагностика: сравните ошибку запуска с текущей версией libmupdf и временем последней сборки пакета. Исправление: выполните чистую пересборку llpp средствами своего пакетного менеджера/AUR helper, чтобы связать его с установленной библиотекой. Проверка результата: llpp должен стартовать без ABI-сообщения и открыть тестовый PDF.

Сборка ломается после изменения API MuPDF

Симптом: компилятор сообщает о неизвестных функциях или полях MuPDF в link.c. Возможная подтверждённая причина: API MuPDF менялся, а llpp неоднократно требовал адаптационных патчей; в мае 2026 года upstream снова менял код под новый Fitz API. Диагностика: проверьте, какой commit llpp использует пакет и под какую версию libmupdf рассчитан пакетный patch. Исправление: используйте актуальный пакет дистрибутива или свежий upstream с соответствующими build fixes вместо старого тега. Проверка результата: сборка должна завершиться без ошибок неизвестных символов MuPDF, а запуск — без несовместимости библиотеки.

Окно не создаётся в графическом сеансе

Симптом: llpp завершает работу до отображения документа, а проблема связана с display/OpenGL. Возможная подтверждённая причина: Linux-часть llpp использует X11 и OpenGL; без доступного графического контекста программа не является «консольным pager». Диагностика: убедитесь, что сеанс действительно предоставляет X11-совместимый display и рабочий OpenGL для обычных приложений. Исправление: запускайте llpp в поддерживаемом графическом окружении и восстановите системную X11/OpenGL-конфигурацию вместо изменения самого PDF. Проверка результата: пустой или простой PDF должен открыться в отдельном графическом окне.

После установки из исходников llpp не находит конфигурацию

Симптом: собственная сборка не стартует или ведёт себя неожиданно при отсутствии пользовательского каталога конфигурации. Возможная подтверждённая причина: BUILDING отдельно предупреждает, что llpp ожидает каталог .config, а man-страница описывает llpp.conf в пользовательском каталоге и запасной путь. Диагностика: проверьте наличие каталога и фактического llpp.conf, а также права доступа к ним. Исправление: приведите пользовательский каталог конфигурации к ожидаемой структуре и используйте валидный llpp.conf. Проверка результата: программа запускается с базовой конфигурацией, а F1 показывает стандартные привязки.

Поиск не находит визуально присутствующее слово

Симптом: на странице видно слово, но / и ? не дают совпадения. Возможная подтверждённая причина: llpp ищет по извлекаемому тексту, а встроенная справка прямо отмечает ограниченность поисковой реализации; у скана может вовсе не быть текстового слоя. Диагностика: попробуйте выделить слово мышью. Если текст не выделяется, проблема относится к содержимому файла; если выделяется, проверьте регистр и настройку -i. Исправление: для скана сначала нужен отдельный OCR-инструмент; для обычного текста скорректируйте регистр или поисковую строку. Проверка результата: n должен последовательно переходить между реальными совпадениями.

Не удаётся выделить фрагмент через две страницы

Симптом: выделение останавливается на границе страницы. Возможная подтверждённая причина: справка llpp указывает, что text selection ограничен одной страницей. Диагностика: выделите небольшой фрагмент внутри одной страницы; если он выбирается, это штатное ограничение, а не поломка мыши. Исправление: обрабатывайте фрагменты постранично или используйте другой viewer/инструмент извлечения текста для многополосного копирования. Проверка результата: внутри одной страницы выделение и передача текста должны работать предсказуемо.

llppac не открывает DjVu, PS, SVG или офисный документ

Симптом: llppac распознаёт файл, но конвертация завершается ошибкой до появления окна llpp. Возможная подтверждённая причина: эти типы зависят от внешних optional tools, перечисленных пакетом AUR. Диагностика: сопоставьте тип файла с необходимым конвертером и убедитесь, что программа присутствует в системе. Исправление: установите соответствующий optional dependency из репозитория своего дистрибутива либо заранее преобразуйте документ другим проверенным способом. Проверка результата: llppac создаёт промежуточный результат и передаёт его llpp.

llppac показывает старую версию уже изменённого файла

Симптом: исходный документ обновлён, а после запуска виден прежний результат. Возможная подтверждённая причина: llppac кэширует преобразованные файлы. Диагностика: проблема проявляется только на типах, которые проходят конвертацию, а прямой PDF открывается актуально. Исправление: принудительно игнорируйте кэш опцией -f. Проверка результата: после новой конвертации в просмотрщике появляются последние изменения исходника.

Текстовая аннотация исчезла после закрытия

Симптом: заметка была видна в сеансе, но отсутствует после повторного открытия PDF. Возможная подтверждённая причина: изменения не были сохранены командой W либо программа завершилась через Q, которая специально пропускает сохранение. Диагностика: проверьте, каким способом был закрыт сеанс, и доступен ли файл на запись. Исправление: повторите аннотацию на копии документа, сохраните W и завершите обычным выходом. Проверка результата: после нового запуска заметка остаётся в PDF.

Привязка клавиши из llpp.conf не действует

Симптом: заданная клавиша работает по-старому или меняется только в одном экране. Возможная подтверждённая причина: конфигурация разделена по режимам; view, outline, help, info и listview имеют собственные карты действий. Диагностика: определите активный mode и сравните его секцию с defaults. Исправление: перенесите настройку в нужный режим или уберите конфликтующую локальную привязку. Проверка результата: после перезапуска клавиша выполняет новое действие именно в нужном режиме, не ломая остальные.

Удалённое управление не даёт реакции

Симптом: команды, которые должны поступать извне, не меняют состояние llpp. Возможная подтверждённая причина: параметр -remote ожидает корректный путь к источнику команд; отсутствие или замена этого источника ломает только внешний канал. Диагностика: проверьте путь и доступ процесса llpp к нему, затем убедитесь, что обычные локальные клавиши работают. Исправление: восстановите правильный локальный источник и формат команд в своей интеграции. Проверка результата: одна безопасная команда изменения позиции должна отражаться в открытом окне без ручного ввода.

FAQ

llpp 43 — это официальный тег v43?

Нет оснований приравнивать номер AUR-пакета к тегу upstream. В repo.or.cz видны старые теги vXX, а современная ветка master продолжает меняться без той же схемы тегирования. «43-0» корректно называть версией пакета AUR, а не универсальным названием релиза на всех платформах.

Можно ли считать llpp обычным PDF-редактором?

Нет. Подтверждены просмотр, навигация, поиск, выделение и текстовая аннотация с сохранением изменений. Полноценное редактирование содержимого страницы, перестановка страниц, OCR, сложные формы и издательская сборка не являются основным набором llpp.

Нужен ли интернет после установки?

Для чтения локального документа — нет. Сеть может потребоваться при установке/сборке, при передаче llppac URL или при работе пользовательской внешней команды, которая сама обращается к сети. Аккаунт llpp для чтения не нужен.

Почему llpp использует MuPDF, но список форматов короче списка MuPDF?

Потому что возможности библиотеки и документированные сценарии конкретного приложения — не одно и то же. Для llpp устойчиво подтверждены PDF, EPUB, XPS и CBZ, а для дополнительных типов проект предлагает llppac и внешнее преобразование. Это точнее, чем автоматически переносить на llpp всю таблицу форматов MuPDF.

Есть ли у llpp русский интерфейс?

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

Можно ли использовать llpp на macOS?

Да, порт macOS документирован в man-странице, а Nix публикует llpp для Darwin, включая Intel и ARM. Однако распространение отличается от типичного приложения из Mac App Store: это open-source Unix-инструмент, для которого важен выбранный пакет или сборка.

Можно ли использовать llpp на Windows?

Современная официальная Windows-редакция в текущей документации не представлена. Пользователю Windows проще выбрать mupdf-gl, Okular или Sioyek, у которых актуальная Windows-доступность подтверждена их проектами.

Чем llpp отличается от Zathura в одном предложении?

Оба ориентированы на клавиатуру, но llpp — более своеобразный MuPDF-pager с mode-based интерфейсом и внешними командами, тогда как Zathura в 2026 году имеет отдельные активно выпускаемые плагины форматов и более оформленную современную экосистему.

Где llpp хранит свои настройки?

Основной пользовательский файл — llpp.conf в каталоге конфигурации пользователя. В нём задаются defaults и привязки для разных режимов. Закладки и история также относятся к локальному состоянию программы, а не к облачному аккаунту.

Что делать, если задача внезапно вышла за рамки просмотра?

Сначала разделите задачу на «прочитать/найти/пометить» и «изменить структуру или содержимое». Первая группа хорошо совпадает с llpp. Для второй нужен редактор или конвертер; например, редактирование текста через офисный формат требует отдельной цепочки преобразования, а обратное создание PDF описано в материале GeekHow о сохранении Google Docs в PDF.

Вывод: когда llpp остаётся рациональным выбором

Для пользователя Linux, который читает много технических PDF и предпочитает клавиатурную навигацию, llpp остаётся редким сочетанием MuPDF, OpenGL, режима pager и глубокой конфигурации. Его сильная сторона не в количестве панелей, а в том, что переходы, поиск, масштаб, outline, bookmarks, history и внешние команды образуют единый быстрый способ работы без постоянного переключения к мыши.

Для обычного домашнего чтения с визуальными панелями выгоднее Okular или другой традиционный viewer: там ниже цена обучения и понятнее работа с аннотациями. Для Windows логичнее mupdf-gl, Okular или Sioyek, потому что llpp не предлагает сопоставимый актуальный Windows-канал. Для научных статей с частыми переходами между формулами, ссылками и библиографией Sioyek даёт специализированные функции, которых llpp не пытается воспроизвести.

Технический компромисс llpp — зависимость от состояния MuPDF и пакетной сборки. В 2026 году это не теоретическая деталь: upstream действительно обновлялся под новый API, а AUR хранит рекомендации по пересборке при несовпадении libmupdf. Пользователь, готовый к такому обслуживанию, получает локальный, бесплатный и очень управляемый viewer. Пользователь, которому важнее предсказуемая установка «одной кнопкой», синхронизация между устройствами и полноценное редактирование, быстрее достигнет результата в другом классе приложений.