1 pontos por GN⁺ 2024-05-11 | 1 comentários | Compartilhar no WhatsApp
  • Sioyek é um visualizador de PDF focado na leitura de livros didáticos e artigos de pesquisa, oferecendo recursos para encontrar rapidamente arquivos abertos anteriormente e navegar pela estrutura de artigos
  • Mesmo em PDFs sem links, permite saltar para figuras e referências bibliográficas, além de oferecer ações para pesquisar nomes de referências no Google Scholar ou no Libgen
  • É centrado em recursos de navegação necessários para ler documentos longos, como busca no sumário, visão geral rápida, marks, bookmarks e busca por destaques
  • Usuários com vários monitores podem usar Portals para conectar a posição do texto principal à posição de figuras e visualizar automaticamente o destino de portal mais próximo em uma janela separada
  • Há instaladores oficiais para Windows, macOS e Linux, além de Homebrew Cask e pacotes de terceiros para várias distribuições Linux; compilações da branch de desenvolvimento exigem Qt 6.7 ou 6.8

Visão geral do projeto

Caminhos de instalação

Recursos de navegação de documentos

  • Quick Open permite pesquisar e abrir rapidamente arquivos com os quais o usuário já interagiu no Sioyek
  • O recurso Table of Contents permite pesquisar itens do sumário e ir até a posição correspondente
  • Smart Jump permite navegar para figuras ou referências citadas mesmo quando o arquivo PDF não oferece links
    • Ao clicar com o botão do meio ou Shift+botão do meio no nome de uma referência, é possível pesquisá-la no Google Scholar ou no Libgen
  • Overview permite abrir uma visão geral rápida de figuras, referências, tabelas etc. com clique direito
    • Assim como o Smart Jump, funciona mesmo quando o documento não oferece links

Recursos de apoio para leitura de documentos longos

  • Mark permite salvar posições nomeadas dentro do PDF e voltar rapidamente a elas depois pelo nome
    • Cada mark tem um nome de um único caractere, como a ou m
    • Marks em minúsculas são locais ao documento, e marks em maiúsculas são globais
    • É uma forma familiar para quem já usou Vim
  • Bookmarks são parecidos com marks, mas usam nomes em texto e são todos globais
  • Highlights permitem marcar texto com vários tipos de destaque e pesquisar todos os destaques
  • Portals permitem conectar o parágrafo atual a um local distante, como uma figura
    • O destino de portal mais próximo é exibido em uma janela separada
    • Essa janela normalmente fica em um segundo monitor
    • À medida que o usuário navega pelo documento, ela é atualizada automaticamente para o destino de portal mais próximo

Configuração e build

  • Configuration permite personalizar todos os atalhos de teclado e alguns elementos da interface editando keys_user.config e prefs_user.config
    • As configurações padrão ficam em keys.config e prefs.config
  • Se ocorrer erro de build com Qt 5.* ao compilar a branch de desenvolvimento, é necessário usar Qt 6.7 ou 6.8
  • Se no macOS aparecer a mensagem "sioyek is damaged and cannot be opened. It is recommended to eject the image.", trata-se de um problema relacionado ao macOS quarantine, e há uma discussão relacionada indicada
  • Para builds no Linux, são fornecidos comandos para Fedora e um procedimento para distribuições gerais
    • Inclui um procedimento testado no Fedora Workstation 36
    • O procedimento geral para distribuições orienta instalar Qt 5, qmake e libharfbuzz, depois executar ./build_linux.sh
  • O build para Windows foi testado no Visual Studio 2019, e versões relativamente recentes também podem funcionar
    • Depois de preparar Qt 5 e qmake, execute build_windows.bat no 64-bit Visual Studio Developer Command Prompt
  • O build para Mac orienta instalar Xcode e Qt6, executar build_mac.sh, mover o sioyek.app gerado para /Applications/ e depois realizar o codesign

1 comentários

 
GN⁺ 2024-05-11
Opiniões do Hacker News
  • Gostei tanto que instalei antes mesmo de terminar de ler a lista de recursos, mas parece que ainda precisa de melhorias, como, por exemplo, exibição em 2 páginas
    A interface de operação pelo teclado é excelente, mas é uma pena não haver comandos de menu. Também achei estranho não haver uma forma de abrir a ajuda de novo dentro do programa. Ao abrir pela primeira vez, a ajuda aparece, mas, quando se abre um arquivo, ela desaparece; no fim, tive que ir à página de documentação no site
    Ainda assim, há tantos recursos bons otimizados para pesquisa que vale a pena tolerar esses inconvenientes

    • Sou o desenvolvedor do Sioyek. Adicionei um modo de 2 páginas no branch de desenvolvimento
    • Com :, é possível abrir a paleta de comandos e pesquisar comandos e atalhos
  • Tenho trabalhado para integrar melhor o conteúdo que leio com minhas anotações. Quero reunir os pontos da literatura em que uma ideia é desenvolvida ou refutada, e também coletar boas ideias
    O Cahier (https://getcahier.com), que estou desenvolvendo, permite criar cartões que fazem referência a trechos específicos de PDFs lidos
    É interessante ver os avanços que vêm acontecendo nessa área nos últimos anos

    • O Cahier parece ser quase exatamente aquilo que eu desejava havia muito tempo. Nos últimos anos surgiu um movimento que leva gestão do conhecimento a sério, e apareceram muitas ferramentas excelentes como Obsidian, Zotero e Anki, mas ainda faltam boas soluções para destacar e anotar documentos adequadamente e depois levar esse conteúdo para fora do documento original, conectando-o ao contexto mais amplo das anotações
      No fim, criam-se vários silos, com os artigos presos no Zotero e as notas presas no Obsidian. O Cahier definitivamente parece estar na direção certa ao enxergar a gestão do conhecimento como um fluxo de trabalho integrado, que vai da leitura à tomada de notas, organização das notas, geração de novos insights e escrita
      Ainda assim, preocupa-me que ele acabe reinventando a roda em algumas áreas. Por exemplo, fico curioso se há planos de integrar também recursos como o coletor web integrado do Zotero. Isso seria uma quantidade enorme de trabalho, mas, sem algo assim, fica difícil substituir completamente o Zotero como solução de gerenciamento de referências. Tenho curiosidade sobre o roadmap, o escopo final de funcionalidades e o fluxo de trabalho dos usuários
    • Parece bom. Como outras pessoas, acho que vou continuar usando o Zotero por enquanto. O recurso mais importante do Zotero é a sincronização entre dispositivos
      Normalmente leio e anoto artigos no iPad, e gosto do fato de os destaques e notas serem sincronizados para que eu possa consultá-los imediatamente ao escrever no MacBook ou em um desktop Windows
      Mas a solução de anotações do Cahier parece muito melhor. Às vezes penso que seria ótimo poder combinar vários softwares para criar uma ferramenta perfeita para cada pessoa
    • Você poderia explicar melhor quais avanços considera interessantes? Vou precisar conferir o link original, este link e as outras ferramentas da thread
      Faz alguns anos desde que analisei seriamente isso para uso pessoal, mas na época fiquei bastante decepcionado com as opções. Para leitura ou organização de PDFs, Zotero e org-noter estavam entre as melhores opções, embora de maneiras completamente diferentes
      Também usei o OneNote por um ano e gostei dele naquele momento, mas ele não apoiava busca, descoberta e revisão de informações, então era difícil sustentá-lo para construção de uma base de conhecimento ou revisão de literatura
      Acho que softwares para ler e conectar informações de documentos, sejam PDFs, HTML, vídeos ou qualquer outro formato, podem ficar muito melhores do que aquilo que uso todos os dias hoje
    • Tentei acessar o site e vi que o certificado SSL expirou hoje. Parece que vocês precisam emitir um novo :)
    • Parece bastante interessante. Para mim, um recurso essencial é que os dados, incluindo notas e anotações, permaneçam utilizáveis mesmo décadas depois
      Caso contrário, o trabalho de hoje desaparece. Fico curioso sobre o que acontece se um dia o desenvolvimento do Cahier for interrompido ou se eu precisar migrar para outro sistema
  • Uso este app o tempo todo. É um bom app. Alguns recursos, como pular para citações, também existem na extensão Google Scholar para Chrome, mas a ideia de permitir controlar o app como se fosse o Vim é muito boa
    Antes do Sioyek, eu usava o Karabiner para configurar j/k etc. no Preview do macOS e navegar com teclas do Vim, mas o processo era trabalhoso e não tinha muitos dos recursos que o Sioyek oferece. Também uso a cor de fundo dos PDFs em solarized para reduzir o cansaço visual, e este app oferece suporte a modo noturno até para gráficos dentro dos PDFs
    Também tenho algumas reclamações. Há uma extensão para ver PDFs lado a lado em painéis de duas colunas, mas ela altera o próprio arquivo PDF. A instalação de plugins é difícil de modo geral; encontrei e relatei uma solução alternativa, mas não sei se isso foi incorporado em melhorias do app. Parece que o arquivo de configuração é salvo no diretório Applications do app, mas seria melhor se ficasse em ~/.config. O recurso de abrir rapidamente arquivos a partir de um diretório não funciona em drives de nuvem, incluindo iCloud

    • Sou o desenvolvedor do Sioyek. Adicionei um modo nativo de dois painéis no branch de desenvolvimento
      No lado dos plugins, o branch de desenvolvimento agora oferece suporte a extensões JavaScript nativas. Como usa o motor JavaScript interno do Qt, não há dependências externas e deve ser muito mais fácil de lidar
      Acho que o arquivo de configuração também pode usar ~/.config no branch de desenvolvimento, mas não tenho 100% de certeza
    • Concordo que instalar extensões é complicado
      Eu simplesmente nunca conseguia lembrar o nome sioyek, então criei um alias para xpdf
  • Experimentei uma abordagem mais colaborativa para ler e discutir artigos de pesquisa. Em https://www.scholars.io ou https://app.scholars.io, permitimos que as pessoas anotem, comentem e colaborem em pesquisas

  • Fico curioso para saber se a função de sumário funciona mesmo quando o PDF não inclui um sumário. É uma função que sempre quis que um leitor de PDF tivesse

    • Até certo ponto, sim. O Sioyek analisa o texto e tenta criar um sumário, mas não modifica o PDF original, e a precisão e a utilidade variam bastante
      Em artigos, costuma funcionar bem; às vezes deixa passar algumas seções ou inclui itens irrelevantes. Em livros didáticos, especialmente os com muita composição de fórmulas, muitas vezes havia itens inúteis ou omissões demais
      Quando só preciso de um artigo ou de uma parte de um livro, o sumário gerado automaticamente e os favoritos geralmente bastam. Fora isso, prefiro criar um sumário preciso de forma semimanual com pdf.tocgen (https://github.com/Krasjet/pdf.tocgen)
    • É possível
      Se o arquivo não tiver sumário e a configuração estiver ativada, ele gera um sumário por métodos heurísticos. max_created_toc_size permite impedir a criação de sumários grandes demais
      https://sioyek-documentation.readthedocs.io/en/latest/config...
    • No site diz que é possível: https://sioyek.info/
      Acho que o mais correto é que o link aponte para o site
  • Como uma solução simples para a função de alternar entre duas páginas, que é fácil em livros de papel, mas difícil no computador: se o software permitir duas instâncias, abra o PDF duas vezes
    Se ele for esperto demais e não deixar, copie o PDF, abra a segunda cópia, role cada uma para posições diferentes e alterne com alt-tab
    No celular, dá para usar o Acrobat Reader e o Koreader ao mesmo tempo

  • O Sioyek tem bons recursos, mas era bastante cheio de bugs. Corrigir bugs e escrever testes pode exigir muito esforço

  • Um pouco tangencial, mas alguém conhece um bom leitor de PDF com busca baseada em LLM integrada? Seria ótimo se, ao buscar “cities in USA” em um documento, ele mostrasse todas as ocorrências, como New York, Los Angeles, Chicago etc.

    • O PDFgear tem LLM integrado e, no momento, é gratuito
  • Seria ótimo se este leitor se integrasse ao Zotero. Também parece possível em forma de plugin

  • Eu gostava bastante do Sioyek, como um Zathura mais rico em recursos, mas duas coisas me impediram de usá-lo como leitor de PDF padrão
    Primeiro, não é possível abrir vários PDFs ao mesmo tempo. Se um PDF já estiver aberto e você tentar abrir um segundo, as duas instâncias travam
    Segundo, as anotações são salvas em um documento separado, não no próprio PDF
    Outros usuários também já haviam registrado ambos os pontos. Não encontrei uma solução fácil para o item 1; para o item 2, havia uma solução parcial usando uma extensão, mas, se bem me lembro, ainda era preciso executar manualmente um comando para transferir as anotações para o próprio documento PDF

    • Concordo quanto ao problema de vários PDFs. Acredito que seja algo em andamento. Mas, quanto a salvar anotações em um documento separado em vez de incorporá-las ao PDF, eu até prefiro assim
      Idealmente, como no Zotero e na extensão mencionada, seria bom oferecer as duas opções, mas prefiro que as anotações fiquem separadas, pois assim dá para manter uma cópia limpa do PDF para compartilhar com outras pessoas
      Além disso, cada visualizador de PDF que hoje dá suporte a anotações lida com elas à sua própria maneira, e os programas não conseguem distinguir bem destaques ou notas criados por outros programas do conteúdo original
      Dito isso, o Zotero e alguns leitores começaram a usar o Web Annotation Data Model (https://www.w3.org/TR/annotation-model/) como mecanismo universal de armazenamento de anotações. Espero que um dia seja possível ver e editar, no leitor de e-books KOReader, destaques e notas criados no Sioyek e depois enviar o arquivo de anotações a um colega usuário do Zotero ou do Obsidian/PMK que tenha uma cópia separada do mesmo PDF. Ainda está bem no começo, mas está em desenvolvimento. https://hypothes.is também funciona mais ou menos desse jeito
    • Na versão mais recente, 2.0.0, parece haver uma configuração para o item 1, mas o comentário no arquivo de configuração fornecido pode ser enganoso
      Ao definir should_launch_new_instance como 1, consegui abrir vários PDFs ao mesmo tempo no Sioyek, mas só quando abria os PDFs depois do primeiro pelo terminal. Ao abrir de dentro do Sioyek ou pelo dmenu, o PDF já aberto era substituído. Ainda assim, nunca tive travamentos. Uso dwm no Debian
      Acho o item 2 desejável
    • Sou desenvolvedor do Sioyek. É claro que deve ser possível abrir vários PDFs. Por exemplo, você pode usar o comando new-window ou passar a opção de linha de comando --new-window
      Se ocorrer um travamento, seria bom abrir uma issue no GitHub