Code Monkey home page Code Monkey logo

sioyek's Introduction

Sioyek

Sioyek is a PDF viewer designed for reading research papers and technical books.

Contents

Install

Official packages

There are installers for Windows, macOS and Linux. See Releases page.

Third-party packages for Linux

If you prefer to install sioyek with a package manager, you can look at this list. Please note that they are provided by third party packagers. USE AT YOUR OWN RISK! If you're reporting a bug for a third-party package, please mention which package you're using.

Distro Link Maintainer
Flathub sioyek @nbenitez
Arch AUR Sioyek-git @randomn4me
Arch AUR sioyek-appimage @DhruvaSambrani
Fedora Copr endle/sioyek @Endle
NixOS sioyek @podocarp

Documentation

You can view the official documentation here.

Feature Video Overview

Sioyek feature overview

Features

Quick Open

recent_docs.mp4

You can quickly search and open any file you have previously interacted with using sioyek.

Table of Contents

toc.mp4

You can search and jump to table of contents entries.

Smart Jump

jump.mp4

You can jump to any referenced figure or bibliography item even if the PDF file doesn't provide links. You can also search the names of bibliography items in google scholar/libgen by middle clicking/shift+middle clicking on their name.

Overview

overview.mp4

You can open a quick overview of figures/references/tables/etc. by right clicking on them (Like Smart Jump, this feature works even if the document doesn't provide links).

Mark

mark.mp4

Sometimes when reading a document you need to go back a few pages (perhaps to view a definition or something) and quickly jump back to where you were. You can achieve this by using marks. Marks are named locations within a PDF file (each mark has a single character name for example 'a' or 'm') which you can quickly jump to using their name. In the aforementioned example, before going back to the definition you mark your location and later jump back to the mark by invoking its name. Lower case marks are local to the document and upper case marks are global (this should be very familiar to you if you have used vim).

Bookmarks

bookmarks.mp4

Bookmarks are similar to marks except they are named by a text string and they are all global.

Highlights

highlights.mp4

Highlight text using different kinds of highlights. You can search among all the highlights.

Portals (this feature is most useful for users with multiple monitors)

portal.mp4

Suppose you are reading a paragraph which references a figure which is not very close to the current location. Jumping back and forth between the current paragraph and the figure can be very annoying. Using portals, you can link the paragraph's location to the figure's location. Sioyek shows the closest portal destination in a separate window (which is usually placed on a second monitor). This window is automatically updated to show the closest portal destination as the user navigates the document.

Configuration

config.mp4

You can customize all key bindings and some UI elements by editing keys_user.config and prefs_user.config. The default configurations are in keys.config and prefs.config.

Build Instructions

Linux

  1. Install Qt 5 and make sure qmake is in PATH.
  2. Install libharfbuzz:
sudo apt install libharfbuzz-dev
  1. Clone the repository and build:
git clone --recursive https://github.com/ahrm/sioyek
cd sioyek
./build_linux.sh

Windows

  1. Install Visual Studio (tested on 2019, other relatively recent versions should work too)
  2. Install Qt 5 and make sure qmake is in PATH.
  3. Clone the repository and build using 64 bit Visual Studio Developer Command Prompt:
git clone --recursive https://github.com/ahrm/sioyek
cd sioyek
build_windows.bat

Mac

  1. Install Xcode and Qt 5.
  2. Clone the repository and build:
git clone --recursive https://github.com/ahrm/sioyek
cd sioyek
chmod +x build_mac.sh
./build_mac.sh

Donation

If you enjoy sioyek, please consider donating to support its development.

Bitcoin (BTC) Address: bc1qexc7wcjq9uetr2vq2wzy7m45y29j0f82uwpn3z

Bitcoin QR code donation address
Donate button

Ethereum (ETH) Address: 0xf78E20eb68b150301EC895eb44c0Ab3c5A016075

Ethereum QR code donation address
Donate button

sioyek's People

Contributors

ahrm avatar eshrh avatar endle avatar jingmatrix avatar mistzzt avatar hrdl-github avatar dakamonogatari avatar randomn4me avatar kant avatar bimmlerd avatar dhruvasambrani avatar podocarp avatar nbennett320 avatar st-- avatar tlc-10 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.