Sioyek is a PDF viewer with a focus on textbooks and research papers
Sioyek
Sioyek 是一款专注于教科书和研究论文的 PDF 阅读器。
开发分支常见问题
问:使用 Qt 5.* 时出现构建错误。
答:如果您要构建开发分支,则需要使用 Qt 6.7 或 6.8。
问:在 macOS 上,我收到“sioyek 已损坏,无法打开。建议推出映像。”的提示。
答:这与 macOS 隔离机制有关。请参见 https://github.com/ahrm/sioyek/discussions/1156#discussioncomment-10822738。
目录
安装
官方软件包
我们提供适用于 Windows、macOS 和 Linux 的安装程序。请参见 发布页面。
Homebrew Cask
这里提供了一个 Homebrew Cask:https://formulae.brew.sh/cask/sioyek。通过运行以下命令进行安装:
brew install --cask sioyek
Linux 第三方软件包
如果您更倾向于通过包管理器安装 sioyek,可以查看以下列表。请注意,这些软件包由第三方打包者提供。请自行承担使用风险!如果您要报告第三方软件包的 bug,请注明您使用的是哪个软件包。
| 发行版 | 链接 | 维护者 |
|---|---|---|
| Flathub | sioyek | @nbenitez |
| Alpine | sioyek | @jirutka |
| Arch | AUR sioyek | @goggle |
| Arch | AUR Sioyek-git | @randomn4me |
| Arch | AUR sioyek-appimage | @DhruvaSambrani |
| Debian | sioyek | @viccie30 |
| NixOS | sioyek | @podocarp |
| openSUSE | Publishing | @uncomfyhalomacro |
| openSUSE | Factory | @uncomfyhalomacro |
| Ubuntu | sioyek | @viccie30 |
文档
您可以在 此处 查看官方文档。
功能视频概述
如需更深入的教程,请观看此视频:
功能特性
快速打开
https://user-images.githubusercontent.com/6392321/125321111-9b29dc00-e351-11eb-873e-94ea30016a05.mp4
您可以快速搜索并打开所有之前使用sioyek交互过的文件。
目录
https://user-images.githubusercontent.com/6392321/125321313-cf050180-e351-11eb-9275-c2759c684af5.mp4
您可以搜索目录条目并直接跳转。
智能跳转
https://user-images.githubusercontent.com/6392321/125321419-e5ab5880-e351-11eb-9688-95374a22774f.mp4
您可以跳转到任何引用的图表或参考文献条目,即使PDF文件本身未提供链接。您还可以通过中键点击/Shift+中键点击参考文献条目的名称,在谷歌学术/libgen中搜索该文献。
概览
https://user-images.githubusercontent.com/6392321/154683015-0bae4f92-78e2-4141-8446-49dd7c2bd7c9.mp4
右键点击图表/参考文献/表格等元素时,您可以快速打开其概览(与智能跳转类似,此功能即使在文档未提供链接的情况下也能工作)。
标记
https://user-images.githubusercontent.com/6392321/125321811-505c9400-e352-11eb-85e0-ffc3ae5f8cb8.mp4
阅读文档时,有时您需要返回几页(可能是为了查看某个定义或其他内容),然后再快速跳回原来的位置。您可以使用标记来实现这一点。标记是PDF文件内的命名位置(每个标记都有一个单字符名称,例如“a”或“m”),您可以通过其名称快速跳转到相应位置。在上述场景中,返回查看定义之前,您可以标记当前位置,稍后通过调用该标记名称即可跳转回来。小写字母标记是文档本地的,而大写字母标记是全局的(如果您使用过vim,对此应该非常熟悉)。
书签
https://user-images.githubusercontent.com/6392321/125322503-1a6bdf80-e353-11eb-8018-5e8fc43b8d05.mp4
书签与标记类似,但它们由文本字符串命名,并且都是全局的。
突出显示
https://user-images.githubusercontent.com/6392321/130956728-7e0a87fa-4ada-4108-a8fc-9d9d04180f56.mp4
使用不同类型的标记来突出显示文本。您可以在所有突出显示内容中进行搜索。
传送门(此功能对多显示器用户最为实用)
https://user-images.githubusercontent.com/6392321/125322657-41c2ac80-e353-11eb-985e-8f3ce9808f67.mp4
假设您正在阅读某一段落,该段落引用了一个与当前位置相距较远的图表。在当前段落和图表之间来回切换可能会非常麻烦。通过使用传送门,您可以将段落位置与图表位置进行链接。sioyek 会在一个单独的窗口(通常放在第二个显示器上)中显示最近的传送门目标。当用户浏览文档时,此窗口会自动更新以显示最近的传送门目标。
配置
https://user-images.githubusercontent.com/6392321/125337160-e4832700-e363-11eb-8801-0bee58121c2d.mp4
您可以通过编辑 keys_user.config 和 prefs_user.config 来自定义所有按键绑定和部分用户界面元素。默认配置位于 keys.config 和 prefs.config 中。
构建说明
Linux
Fedora
运行以下命令在 Fedora(已在 Fedora Workstation 36 上测试)上安装依赖项、克隆仓库并编译 sioyek。
sudo dnf install qt5-qtbase-devel qt5-qtbase-static qt5-qt3d-devel harfbuzz-devel
git clone --recursive --branch development https://github.com/ahrm/sioyek
cd sioyek
./build_linux.sh
通用发行版
-
安装 Qt 5 并确保
qmake已添加到PATH环境变量中。运行
qmake --version以确认路径中的qmake使用的是 Qt 5.x 版本。 -
安装
libharfbuzz:
sudo apt install libharfbuzz-dev
- 克隆仓库并构建:
git clone --recursive --branch development https://github.com/ahrm/sioyek
cd sioyek
./build_linux.sh
Windows
- 安装 Visual Studio(已在 2019 版本测试,其他较新版本也应适用)
- 安装 Qt 5,并确保 qmake 已添加至
PATH。 - 克隆仓库,然后使用 64 位 Visual Studio 开发人员命令提示符进行构建:
git clone --recursive --branch development https://github.com/ahrm/sioyek
cd sioyek
build_windows.bat
Mac
- 卸载之前通过 Homebrew 安装的 Qt6
- 安装 Xcode。
- 安装 Qt6。
pip install aqtinstall
cd /path/to/qt
aqt install-qt mac desktop 6.8.2 clang_64 -m all
export Qt6_DIR=/path/to/qt/6.8.2/macos/
export QT_PLUGIN_PATH=/path/to/qt/6.8.2/macos/plugins
export PKG_CONFIG_PATH=/path/to/qt/6.8.2/macos/lib/pkgconfig
export QML2_IMPORT_PATH=/path/to/qt/6.8.2/macos/qml
export PATH="/path/to/qt/6.8.2/macos/bin:$PATH"
- 克隆仓库、构建并安装:
git clone --recursive --branch development https://github.com/ahrm/sioyek
cd sioyek
chmod +x build_mac.sh
setopt PIPE_FAIL PRINT_EXIT_VALUE ERR_RETURN SOURCE_TRACE XTRACE
MAKE_PARALLEL=8 ./build_mac.sh
mv build/sioyek.app /Applications/
sudo codesign --force --sign - --deep /Applications/sioyek.app
捐赠
如果您喜欢 sioyek,欢迎考虑通过捐赠支持其开发。

