Помогите браузеру справки и каталогу скролла

Мне нужна помощь в понимании работы браузера справки Yelp. Когда я запускаю Yelp в Ubuntu 17.10, я получаю Ubuntu Desktop Guide, и когда я ищу термины, которые обязательно должны содержаться в некоторых из недавно установленных пакетов документации, я выхожу пустым.

Насколько я понимаю (основываясь на этой странице на gnome.org), Yelp использует каталог scrollkeeper для генерации оглавления, но, похоже, это поведение переопределяется в дистрибутиве Ubuntu. Также версия Ubuntu не имеет меню (включающего закладки и т. Д.), Отображаемого на снимке экрана на этой странице. При установке пакетов документации я получил отзыв в терминале, что пакет был зарегистрирован в scrollkeeper. Я буду продолжать искать ответ, но если бы вы могли помочь, он был бы очень признателен.

1 ответ

Я скачал исходный код современного Yelp 3.26 (поставляется с 18.04 LTS) и grep Это для случаев скроллера:

apt-get source yelp
cd yelp-3.26.0

Grepping не дает результатов в коде, только в текстовых файлах

$ grep -ir scroll.*keeper . | awk '{print $1}' | sort | uniq 
./ChangeLog:
./debian/changelog:
./NEWS:

Один из результатов из Changelog гласит:

./ChangeLog: немного обновить, чтобы удалить ссылки скроллкера
./ChangeLog: - Переключиться на использование rarian вместо scrollkeeper

Но они не используют даже rarian в коде приложения:

$ grep -ir rarian .
./ChangeLog:    Port to Rarian 0.8 series
./ChangeLog:    - Switch to using rarian instead of scrollkeeper
./ChangeLog:    Convert search across to use Rarian
./ChangeLog:    Now Rarian is fast, don't split out man and info pages.
./ChangeLog:    Spoon is now Rarian.  Bump min version to 0.5.0
./NEWS:* Port to Rarian 0.8 series
./NEWS:  - Remove scrollkeeper in favour of Rarian
./debian/changelog:      - Build depend on librarian-dev (>= 0.7.0).
./debian/changelog:    + added build-depends on librarian-dev.

Поэтому в Yelp полнотекстовый поиск недоступен из-за удаленных индексаторов ScrollKeeper и Rarian.

Заметки:

  1. какой-то патч существует в старой версии GNOME bugzilla #652057 и современной GitLab. Но это не относится к основной ветке.
  2. Если вы используете Ubuntu 16.04 LTS, вы можете установить зависимости для сборки, скачать и применить этот патч:

    # software-properties-gtk # enable Source code repositories
    sudo apt-get build-dep yelp
    sudo apt-get install devscripts
    
    cd ~/Downloads
    wget https://gitlab.gnome.org/GNOME/yelp/uploads/b51ee8a2dc22f423f06e0293476328e5/xref-handling-and-indexing-for-help-list.patch
    
    mv xref-handling-and-indexing-for-help-list.patch yelp-3.18.1/debian/patches
    cd yelp-3.18.1
    echo "xref-handling-and-indexing-for-help-list.patch" >> debian/patches/series
    debuild -uc -us
    sudo dpkg -i ../*yelp*.deb
    

    После установки вы можете протестировать исправленную версию Yelp. Запустите его, перейдите к " Все справки", нажмите Ctrl + S и введите, например, calculator и нажмите Enter:

    Но похоже, что поиск работает только по заголовкам, а не по полному тексту.

Другие вопросы по тегам