Yelp 帮助浏览器和 scrollkeeper 目录

Yelp 帮助浏览器和 scrollkeeper 目录

我需要一些帮助来了解 Yelp 帮助浏览器的工作原理。当我在 Ubuntu 17.10 中启动 Yelp 时,我得到了 Ubuntu 桌面指南,当我搜索我最近安装的一些文档包中肯定应该包含的术语时,我得到的是空白。

我的理解(基于这一页在 gnome.org 上) 的一个问题是 Yelp 使用 scrollkeeper 的目录来生成目录,但似乎这种行为在 Ubuntu 发行版中被覆盖了。此外,Ubuntu 版本没有在该页面的屏幕截图上显示的菜单(启用书签等)。安装文档包时,我在终端中收到反馈,该包已在 scrollkeeper 中注册。我会继续寻找答案,但如果您能帮忙,我将不胜感激。

答案1

我已经下载了现代 Yelp 3.26 的源代码 (随 18.04 LTS 一起提供) 并grep对其进行了编辑,以适应 scrollkeeper 的情况:

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: 稍微更新以删除 scrollkeeper 引用
./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.

由于删除了 ScrollKeeper 和 Rarian 索引器,因此 Yelp 中无法使用全文搜索。

笔记:

  1. 一些补丁存在于旧版本中GNOME 错误 #652057现代 GitLab.但是没有应用到master分支上。
  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

    修补 Yelp 的搜索功能

    但搜索似乎只针对标题有效,而不针对全文。

相关内容