Show HN: Sioyek – PDF viewer for reading research papers and textbooks (github.com)
Some of the features:
* Quickly preview or jump to figures/references/equations/etc. (even if the PDF doesn't have links)
* Search paper names in google scholar by middle clicking on their name
* Searchable table of contents
* Searchable highlights/bookmarks
* Browser-like history navigation
* Mark locations for quick navigation (Vim style)
* Synctex support
Video demo of some features: https://www.youtube.com/watch?v=yTmCI0Xp5vI
82 comments
[ 3.3 ms ] story [ 62.1 ms ] threadMany books label the first page of chapter 1 as page 1, and the preceding pages I… XI …
My solution is to split the pdf into 3
- before page 1 - main content - index (everything after main content)
This makes it possible to type the page number and go to that page.
I noticed a minor error in the tutorial under Basics: "scrolling down half of screen width" should be something like "scrolling down half the window height". Animating the scrolling would make it much less disorienting.
Is there a way to see a list of marks? Slices of the screen like the reference preview would be great, but just a list of defined mark names and page numbers would be useful.
I'd love proper touch support. It's so much faster for zooming in on figures or scrolling through pages quickly.
I often view PDFs with two pages side by side in Adobe Reader or Sumatra, and that's great for looking for things (move through documents with left and right arrows). I'd miss that.
This also possible to achieve in Emacs with pdf-tools, and with just one instance of the document, by setting marks and following hyperlinks.
However, evince only does it if the references are actual (hyperref) links.
I don't like trying to read PDF files of math on a computer screen: Typically the fonts are way, Way, WAY too small unless I magnify the display of the file a LOT, but then the lines are WAY too long to fit on the screen forcing me to use the horizontal scroll bar as the main effort in reading the math. Or put another way, in PDF files of math documents, nearly always there are WAY too many characters per line. The situation seems to be that the journal wanted to save on paper and ink!!!! When I develop a document with TeX, I use the TeX commands to magnify the fonts by a LOT. Bluntly, without a screen at least four feet wide with maybe 16,000 pixels per line, reading the usual PDF file of math is a PAIN. So, sure, I'm eager for better ways to read PDF files of math.
My reactions to this OP (original post):
(1) I have no idea what is meant by a "middle click", nor would I have any idea where to look up the meaning. There might be a rule in technical writing -- never, ever, but NEVER, not even once in a whole career, on risk of horrible pain, e.g., a barbed wire enema, use terminology that is not very, VERY, essentially universally, well understood without explanation or at least a reference. This rule would also apply to acronyms.
(2) For searching a PDF file of math, I have no idea how I would type in the math expression to be searched for. Maybe the software is accepting TeX syntax -- I can guess that even that approach would have problems.
(3) For the video, the text is far, far too small to read and goes by far too fast to get any information at all.
Broadly I can't make any useful sense out of the OP at all.
I'm eager for better ways to read PDF files of math papers, and maybe there is some good work and good utility here, but I have zip, zilch, zero understanding of what is being attempted or how it would work -- nichts, nil, nada, none.
Uh, this is not nearly the only place where some technical material could use better technical writing.
Clicking the middle button on a mouse. Searching for [middle click] on Duck Duck Go or Google would tell you what it is.
Here is a point: Before doing such search, can't be sure will find a good answer. That was my point: There was no way for me to know before doing such a search that such a search would be successful. That is, the search engines are not guaranteed glossaries for all technical jargon in all technical fields.
So, my explanation that I didn't know where to find a description of "middle click" was correct -- before trying a search at some search engines quite literally we did not "know" where we would find an explanation. Now that such a search has been successful, sure, we do know, but that fact is a bit weak as justification for using undefined jargon.
So, since the search engines are not comprehensive glossaries for all technical jargon in all technical fields, given some technical jargon, a user has to make in effect shots in the dark, has to make these shots dark just to read a description of some product.
I suggest that product developers should avoid asking their audience to make such shots in the dark just to read their product descriptions.
While I spend well over 40 hours a week at a keyboard looking at a screen driven by Windows with data mostly from the Internet, I have not heard of or used the mouse middle click in years.
The terminology "middle click" just isn't very useful and hasn't been very common for maybe 20 years.
1. I meant mouse middle click, I think this is pretty standard terminology.
3. You are right, the video could be a lot better. You are not really supposed to read the texts though, the main purpose is to showcase the features.
Well, for a lot of people, e.g., a big fraction of the HN audience, sure, okay.
But: Yup, way back when personal computers were starting to use a mouse, there was no "middle click". Then there was, as a step forward -- I remember that. Now here is a surprise: While I spend well over 40 hours a week at a keyboard looking at a screen driven by Windows with data mostly from the Internet, I have not heard of or used the mouse middle click in years. The main reason is that on Windows, at least with the options I have, all the middle click is good for is a fast version of vertical scrolling on the contents of a window on the screen, and I don't find that fast scrolling to be useful. So, I have just forgotten about middle clicking. I'm up on a LOT of old stuff in computing, a lot of it from way back before middle clicking, but not middle clicking -- I just didn't find it useful. Here I'm using my experience as evidence for a
Lesson: In making assumptions about what is "pretty standard" for your users, it is tough to be accurate and for a solution work to err on the side of assuming less, a lot less.
There is one more point: It is totally obscure to me how fast scrolling could play much role in tracing references in PDF files of math. Maybe the Windows Win32 API permits programs to treat the middle click and scroll wheel any way it wants. If so, then that is something else tough to assume users know and be accurate. E.g., from my experience, I've written a lot of software and a lot for Windows .NET but so far I've never written any code that directly called the Win32 API. So, I have no good knowledge on what might be in Win32 for middle clicking.
Lesson: "pretty standard terminology", I wouldn't assume that.
More generally I claim that computing is being badly hurt by way too little in definitions for way too much technical jargon.
There is a simple solution: When in doubt, and even if not, work to define or at least give a reference for technical jargon. E.g., here at HN (Hacker News) apparently (although I've seen no statement) OP abbreviates "original post".
A middle click is the middle mouse button, typically clicking with the scroll wheel these days. I don't use a Mac touchpad/mouse but Google says it can be done with a triple finger tap, possibly requiring a setting to be enabled under Accessibility.
I'm glad tools exist to find more details about terminology that I don't already know. It's always a balance to decide what needs explaination and what a reader probably already knows.
My second guess would be something having to do with a "middle finger".
Click on the middle mouse button? Okay: With an Amazon mouse, can just press down on the scroll wheel. With an HP laptop with Windows 10, I just did that: What I got was a circle with a dot in the middle, above the dot an up arrow and below the dot a down arrow. Research is still in progress in an attempt to discover how this might be used to search for, say, the Radon-Nikodym theorem! Or for something simple
y(t) = { y(0) b e^{bkt} \over y(0) \big ( e^{bkt} - 1 \big ) + b}
Maybe could do a middle click on an iPhone and then use a scanning, tunneling electron microscope to read the screen image -- give me a few minutes to set that up!!!
> y(t) = { y(0) b e^{bkt} \over y(0) \big ( e^{bkt} - 1 \big ) + b}
TeXmacs finds that, by the way. I just tested it. And each piece of it: I tested the denominator.
Hell, it's already started with "the kids" being all-in on bizarre shit like using Discord for everything, and, well, anything about crypto, NFTs, unironically having Internet-capable dishwashers or, indeed, almost anything to do with mobile apps.
Check out this video:
https://www.texmacs.org/tmweb/home/videos.en.html
A lot of people could like WYSIWYG for anything like TeX. Thousands times more people like and expect WYSIWYG.
The TeX I use has 100+ TeX macros I wrote.
I type the TeX input using my favorite software tool, the one I use for nearly all my typing, my favorite text editor KEDIT. It is a Windows program version of the editor XEDIT for IBM's operating system VM/CMS and written on his own time by an IBM guy in Paris. For KEDIT I have 100+ macros and write new ones frequently. E.g., KEDIT has some good string manipulation tools, and, e.g., I can parse some files, rip out the data, then pull it into, say, Excel and draw a graph or pull it into some compiled language, Fortran, C, C++, C#, etc. and do some analysis. Sometimes the analysis is statistics, but typically I derive my own statistical methods and program and use those, methods not in the usual statistical packages, SPSS, R, etc. That is, I want to work at the level of the data and some code I wrote and not try to use higher level software intended to be easier to use.
To me, I want to work at the right level for me. E.g., I don't use LaTeX -- regard it as at too high a level. I don't want their macros and don't want to learn them or fight them. Knuth's TeX documentation is very well written; I find the LaTeX documentation less well written and much longer -- bummer.
Some of my KEDIT macros are to help in typing TeX files. E.g., a neighbor gave me a cake for Valentine's Day, and I just typed a letter of thank you, in TeX, using KEDIT, and using a KEDIT macro to insert the current date in the TeX syntax I wanted. Then I have a KEDIT macro that runs the spell checker, Aspell, I got with my TeX software, and do spell checking -- also used that for the Valentine's Day letter. And I like Aspell much better than any WYSIWYG spell checking -- Aspell does better at figuring out how to correct badly misspelled words and one reason for that is that I have my own spelling dictionary additions. Also since I use just Aspell for nearly all my spell checking, I get to use my one dictionary for all my work -- that is, the dictionary should be particular to me and not separately to email, software, letter writing, etc. To address the envelope for the letter, sure, I used KEDIT for that.
Yup, lots of people like WYSIWYG and, if they were to use TeX or anything like it, would definitely want WYSIWYG.
Uh, going way back, for anything like typing, especially for TeX, writing email, writing software, I like KEDIT and don't just dislike WYSIWYG but deeply, profoundly, bitterly hate and despise WYSIWYG and nearly all it values and attempts. In the simplest terms, I can't program WYSIWYG input, that is automate the input.
Not everyone likes WYSIWYG!
I did not check the things that you do---described in your message above---one by one, but I expect you can do all of them using TeXmacs, as it is completely programmable using Scheme (which of course I like much more than a macro expansion language ;-) ).
https://www.google.com/search?q=middle+click
There. Does your "world-class research university" block the use of search engines?
It’s crazy how far pen computing has come. I was an early adopter of this as a college student back in the 2000’s. I had a Toshiba laptop which had a screen that would rotate around and fold on itself to become a tablet. It had a pen for writing and ran a special version of Windows designed for tablets. (https://the-gadgeteer.com/2006/04/27/toshiba_portege_m200/)
There weren’t many good sources of PDFs so I made my own. I would take my textbooks to Kinkos where they had an industrial paper cutter that was able to slice off the binding, leaving me with a bunch of loose pages. I would use a double sided auto-feed scanner to scan all the pages into searchable PDFs.
Sadly the technology wasn’t ready for prime time. The software wasn’t good enough, drawing was limited and not many apps took advantage of the pen. The hardware was heavy, bulky, and I always had to be around an outlet because the battery life was abysmal.
An iPad + pencil is a truly remarkable experience compared to that previous setup.
What notes and annotations do you usually make? I can understand notes when you're at a lecture discussing a paper, but my experience is that the lecture rarely pertains to one specific paper.
I don't really take a lot of notes, so I wonder if I'm doing something wrong.
It's also useful when the information is really dense and there are certain things I need to go back and recall but don't want to search my short term memory for.
On the subject of note taking a professor once told me “don’t take notes, make notes”. Note taking is basically writing down what the author (lecturer) says. In college so many people would just blindly copy what the professor wrote on the board. That is note “taking”. Note “making” is adding you’re thoughts: what is the author saying (in my words) and do I agree with the ideas? What would other authors think, are there counter points, supporting examples, etc. Is this point elaborated elsewhere in the book? What terms, words, or concepts need more explanation?
I found this blog (https://fs.blog/how-to-read-a-book/) it has a good summary of Adler’s ideas. For example, on using the margins in a book:
That blog is indeed have good inspectional notes about Adler's book :-)
I mostly write connections that I make while reading a paper.
Apple changed the pencil. I wouldn’t get any iPad that wouldn’t support the new pencil, which I think is from the 3rd generation when the removed the home button and introduced rounded corners.
The old pencil has a lightning connector and plugs into the iPad to charge. The new pencil magnetically attaches to the iPad and charges.
Apple should release the next generation soon. (Maybe in a couple weeks.) Hopefully you can get a used one at a good rate when that happens.
Anyway, I don't think sumatra has these features:
* Marks
* Preview links
* Jump to figures if the PDF doesn't have links
* Portals
* Searchable highlights
And some other features which are shown in the video and github page. Also sioyek is available on linux and macos.
Added: But you’re right that authors often neglect to include date on the the manuscript or preprint versions, and this is a problem. I guess because journals often don’t want this, as they will add the submission and publication dates.
Actually, if these document are mostly consumed on screen, just write them single column, half of an A4 or Letter, or plain HTML. Do they keep creating PDFs because publishers sell paper journals?
Personally, if I'm doing any serious paper reading, I'm often doing it on my reMarkable so I like a nicely formatted PDF.
There were couple of features that I missed - and needed to fire up a different viewer: 1. View PDF properties 2. Enter a slide-show mode, where a full page is shown and arrow keys advance (not scroll) the page.
Zotero is quite close to provide a PDF reader itself (available in the Beta release, AFAIK), but nice to see alternatives with academic documents in mind.
But I thought you’d like to know that I couldn’t get it to compile on a Debian system. I followed your instructions, but found I also had to install
and then the build script failed with I have QT installed, but I couldn’t figure out which packages are missing.Any idea which other PDF viewers implement this behavior?