WEBVTT 00:00.000 --> 00:15.760 Hello everyone, welcome newcomers here in our room of Lightning Talks. Please welcome Albert 00:15.760 --> 00:18.320 with next talk about ocular. 00:18.320 --> 00:34.520 Hello, yeah, this one is cool, I hope you can hear me. So, yeah, I'm Albert, Albert actually 00:34.520 --> 00:39.400 in Catalan, I'm going to talk about ocular, the multiple form of the document viewer, a bit 00:39.400 --> 00:44.760 of me, I'm going to skip this because this is a line talk, but I'm an old person, right? 00:44.760 --> 00:50.840 You had a young person before, I'm much older than him, I'm been doing KD staff since 2003, 00:50.840 --> 00:55.240 right? So, yeah, many things, I've done many things not because I'm good, just because 00:55.240 --> 01:01.040 I'm old. So, today, I'm going to talk about ocular, what's ocular, right? So, ocular, it's 01:01.040 --> 01:05.640 a KD project, it doesn't mean much to you, but it's free software, right? We're here, everything 01:05.640 --> 01:10.480 is free software, it's good. It's a multi-document document viewer, it's a multi-platform document 01:10.480 --> 01:15.400 viewer, it's translated to more than 40 languages, right? This is one of the good things about 01:15.400 --> 01:23.240 fees software, people often overlook this. You will never have enough reader translation 01:23.240 --> 01:28.380 to swahili, right? Because the other people don't care about swahili. We don't have a 01:28.380 --> 01:32.440 translation to swahili either, but if as well it's a swahili person, it's in the room, we 01:32.440 --> 01:40.120 can have it tomorrow, right? So, there is no business reason to not have it because we are 01:40.120 --> 01:47.880 not a business, right? We're also the first ever e-cursorified software by Bluengell, Bluengell 01:47.880 --> 01:52.840 is a German something, I don't know, I'm not German, it's a government thing, right? So, 01:52.840 --> 01:58.960 they decided at some point they were going to do ecologic certification for software and 01:58.960 --> 02:05.600 we are the first one. So, yeah, they first. What are we not, right? We are not a document editor, 02:05.600 --> 02:13.120 but we people very often ask, I want to rotate pages, I want to remove pages, I want to mix 02:13.120 --> 02:19.040 documents, that's not what we do, right? It's very useful to know what you are, and it's 02:19.040 --> 02:22.920 very useful to know what you are not. So, you can close issues, it's like, sorry, we don't do 02:22.920 --> 02:27.520 this, right? It goes somewhere else. That's a bit of a lie, you'll see later we do some kind 02:27.520 --> 02:35.600 of the document editing, but as a guideline, we are not that. So, formats, we do PDF and we 02:35.600 --> 02:40.480 do more things, right? Nobody else cares about the more things, right? I mean, some people do, 02:40.480 --> 02:48.880 but like if you have to measure about the box, we got 95% of the box, about PDF, 5% 02:48.880 --> 02:56.960 in box, about something else. And that's fine, right? We do text, right? You wouldn't 02:56.960 --> 03:03.680 want to open text with, uh, popular, but it works, right? It's easy, so we did it, uh, and I 03:03.680 --> 03:08.000 used to realize I didn't translate it, it recognized here, as you can see, I've reused this 03:08.000 --> 03:14.000 from a Spanish talk, that means images, you're over this market. Uh, but else, it's 03:14.000 --> 03:20.320 multi-platform, right? And it's really multi-platform. Uh, we in KDE, we use a library called 03:20.320 --> 03:28.720 Qt, and Qt is available basically everywhere, right? So, uh, we are, we work in Linux, and then on 03:28.720 --> 03:32.960 the other things that aren't Linux, but kind of our Linux, right? So, uh, 3b.sd, open.b.sd, 03:32.960 --> 03:40.160 need b.sd, uh, and things. Uh, we work on class mobile, so, I mean, I mean, I mean, class 03:40.240 --> 03:45.040 mobile, I mean, Linux mobile, right? So, we have a different UI for mobile, because, like, if 03:45.040 --> 03:51.120 you're in this, you don't want to have the same thing in your laptop, uh, it works on Windows, 03:51.120 --> 03:57.120 it works on Android, it works on OSX. So, I mean, it doesn't work on iPhone, uh, and it could work, 03:57.120 --> 04:02.080 nobody has, hasn't done it, right? I mean, there is, there is, there is Qt for an, uh, for 04:02.080 --> 04:06.080 iPhone, there's KDE software for iPhone, we could work, I just don't have an iPhone, so I don't care. 04:07.040 --> 04:14.640 Uh, I mean, it's, it's how it is, right? Uh, so features, as a, as a PDF, it's actually 04:14.640 --> 04:23.120 document viewer, I mean, it has all, sorry, features one, that features two, uh, features. Uh, 04:23.120 --> 04:27.760 it has all the typical features you would expect, right? So, like, you can open a document, 04:27.760 --> 04:32.000 you can scroll a document, you can search the document. Uh, we have a kind of more advanced 04:32.000 --> 04:39.280 features, uh, the most famous one, maybe it's, we do have digital signature, right? In this 04:39.280 --> 04:44.960 day and age, governments want you to send them, uh, signed PDFs, right? So, we support digital 04:44.960 --> 04:50.000 signature, you can add to this digital signature, as far as we know, it works, everybody, everywhere, 04:50.000 --> 04:57.280 right? Like, it's a bit hard to set up sometimes, because digital signatures are not easy, but you 04:57.360 --> 05:01.680 can sign a PDF, send it to your government, and they will mostly accept it, right? 05:02.640 --> 05:07.280 Sometimes not, because people just want to see the signature, like, not the actual digital 05:07.280 --> 05:12.000 signature, just the graphical one and, and we don't do that. So, you have to tell them, no, 05:12.000 --> 05:16.880 no, it's actually signed, like, there's much behind it. Uh, yeah, it works. You can do annotations, 05:16.880 --> 05:22.480 right? So, you can do, like, uh, commons and arrows and whatever, you can feel firms, so you can 05:22.560 --> 05:28.480 possibly do your taxes, uh, sometimes not, but it mostly works, and then the easy things, right? So, 05:28.480 --> 05:33.280 you have miniatures in the left, you have a table of contents, you can have links, blah, blah. 05:35.120 --> 05:42.240 More features, uh, you can't rotate the pages, uh, if you're, uh, late at geek, you can do 05:42.240 --> 05:46.240 in their search. I don't know what it means, but I think it means you can go, like, switch, 05:46.320 --> 05:54.400 easily back between the PDF and the later source code of the PDF. Uh, and then you can do things, 05:54.400 --> 05:59.600 I know you, you probably don't know much about PDF, and that's good. You will be a happier person, 06:00.160 --> 06:06.560 but PDF has lots of things. You can have embedded files, you can have videos, you can have sound, 06:06.560 --> 06:10.960 you can have many, many things. So, we support some of those, we don't support anything, 06:10.960 --> 06:15.360 everything, because the PDF is picked is like 2,000 pages long and we don't have that much time. 06:17.040 --> 06:22.640 But yeah, we do try to support most of the things, and then we support different view modes, 06:22.640 --> 06:27.840 uh, the easy ones, right? So, they can have either continuous or, like, big end pages, 06:29.040 --> 06:33.120 bookmarks, presentation mode, right? I'm using Ocular. Uh, we have the best feature, feature, 06:33.120 --> 06:38.640 ever, in presentation mode, which is this, uh, little ground thing in the top. You know, 06:38.640 --> 06:42.960 how much I am to the presentation. So, if it's very boring, it's like, okay, the guy is going to finish 06:43.040 --> 06:47.040 early, right? I mean, you also know it because it's a lightning talk, but if it wasn't a lightning 06:47.040 --> 06:55.840 talk, you'd know, I mean, page H, almost done. Uh, future work. Uh, so about future work, we need 06:57.280 --> 07:02.720 to work better with digital signatures, right? Now, we are basically getting the digital signatures 07:03.680 --> 07:10.240 from your Firefox installation, but, uh, the definition of what your Firefox installation is, 07:10.320 --> 07:13.840 it's kind of weird, because you can have many Firefox installations in your computer, 07:13.840 --> 07:18.000 so we basically just do this, and like, go to a folder, it's like, it's going to be these. 07:19.520 --> 07:24.000 Mostly it works, sometimes it doesn't, right? So, I had people's like, it doesn't find my signatures, 07:24.000 --> 07:28.640 and then I have to tell them, go here, remove everything, install Firefox again, and it's like, 07:28.640 --> 07:34.480 not very, it's a bit combustion, right? So, we have to improve that. We have to move to the 20th 07:34.480 --> 07:40.640 century, uh, for printing, we are doing this very weird thing in which we, when you get a PDF, 07:40.640 --> 07:46.080 and you want to print it, we convert it to post-crip, and then we print it, and that's because, 07:46.080 --> 07:52.960 like, 40 years ago, printers only understood post-crip, right, the PS files, like, in the modern world, 07:52.960 --> 07:57.520 all the printers understand PDF, right? So, so we're doing this weird thing, which we get a PDF, 07:57.520 --> 08:01.120 we convert it to PS, and we send it to your printer, your printer, you convert it to PDF, and then 08:01.200 --> 08:06.160 print it. So, yeah, that sounds good, but printing is annoying, because it's very hard to test, 08:06.160 --> 08:12.080 and you have to kill lots of trees, so we haven't changed it yet. We have to do marble 08:12.080 --> 08:16.560 to threading, at this point, we are running like in two threads, but like this computer is like 08:16.560 --> 08:21.600 10 years old, and it has like 10 cores, right? So, we need to do marble to threading, 08:21.600 --> 08:27.520 it's just like multi-threading is hard, so we haven't done it. We have to support 08:27.520 --> 08:31.440 better JavaScript in PDF files. So, as I mentioned before, for the forums, right? So, the 08:31.440 --> 08:37.600 forums is a typical, you want to do your taxes, and it has like, I earned this amount of money, 08:38.320 --> 08:46.080 there's like 20% taxes on it, so I have to pay that person, right? And PDF files have a way of 08:46.080 --> 08:50.000 embedding JavaScript on it, and we'll do the calculation for you, right? So, you don't have to 08:50.000 --> 08:56.240 multiply by 20% because you're not very smart, and you will fail. So, well, that kind of works, 08:56.320 --> 09:00.880 most of the times, until you run out of like the PDF German, and the comma is the dot, 09:00.880 --> 09:06.640 and the dot is the comma, and everything gets confusing. So, we have to do better in that, 09:07.920 --> 09:14.240 and we want, well, we don't want it, people want more complex views, right? So, people want to have 09:14.240 --> 09:19.520 side-by-side views, and side-by-side is very nice, until you have to think about it, right, 09:19.520 --> 09:24.960 because we have the Zoom person touch on the top, right, and I'm going to show it to you. So, 09:24.960 --> 09:30.480 we have this thing which is the Zoom on the top right, right? If you have two side-by-side pages, 09:30.480 --> 09:35.360 well, what does the Zoom apply to, right? Like, when people ask for it, they don't think about 09:35.360 --> 09:40.560 the corner cases, right? Yeah, I want some by side-by-side. Well, well, sure, we have a whole application, 09:40.560 --> 09:45.840 and a lot of comma, how does that apply to side-by-side? And nobody knows, so we haven't done it yet. 09:47.040 --> 09:52.800 One thing we might do, and it's not super hard, it's PDF link preview, right? So, it's sometimes 09:52.880 --> 09:58.000 happens that PDF have links to the part of the PDF, and you just want to hover over the link, 09:58.000 --> 10:04.240 and see what it's actually going without going to it. So, we might do that, that doesn't seem 10:05.280 --> 10:07.280 super hard, but yeah, somebody has to do it. 10:11.840 --> 10:17.680 Future work number two. We have to give more love to the non-linear experiment, right? So, 10:18.560 --> 10:23.280 as I mentioned before, we support all the platforms, right? So, we support Mac, and we support Windows, 10:23.280 --> 10:27.040 and we support Android, and blah, blah, blah, but that's kind of a lie. We support Linux, that's what, 10:27.040 --> 10:32.160 like, that's what I use, that what sooner uses, like, so everything else it just works by accident, right? 10:33.840 --> 10:38.000 Which is good, right? It's a testament about the code being robust and everything else, 10:38.560 --> 10:46.560 but yeah, I mean, if you care about the other platforms, show up and make it better, and if you're not, that's fine. 10:47.440 --> 10:54.960 We want to support that thing, I'm not going to try to pronounce, that's the European Union thing 10:54.960 --> 11:00.480 for invoices, right? So, they have this weird thing about invoices, they want invoices to be 11:00.480 --> 11:08.240 machine readable, and PDF is involved, but it's also XML is involved, and PDF, it would surprise you, 11:08.240 --> 11:13.600 PDF is easier than XML, like they have this whole XML monster, you have to run, 11:13.760 --> 11:19.600 access to one, it to do transformations, and there's no access to library on Linux, we only have 11:19.600 --> 11:27.040 access to T1, so yeah, annoying, and then we have lots of feature requests in Bookstay, 11:27.040 --> 11:34.800 the talk, over than 500, usually I don't close feature requests, it's valid, right? So, you 11:34.800 --> 11:39.600 went there, you route something, it's valid, possibly I would possibly also ignore it, but like, 11:39.600 --> 11:51.200 you took your time, so, yeah, and the thing is, we need more time, right? So, either create time for 11:51.200 --> 11:56.880 me, being a good person, or contribute, right? And when I say create time for me, one of the things 11:56.880 --> 12:02.480 about bugs, in particular, or feature requests, is we're all lazy, right? I'm lazy, you're lazy, 12:02.480 --> 12:07.440 that's fine, but there's only one of me, and there's thousands of you, right? So, when you file 12:07.440 --> 12:13.200 a back, make it as good as possible, right? Don't tell me, if you do this in latex, it will fail, 12:13.200 --> 12:16.560 and then you only give me the latex file, just give me the PDF, right? I don't, I don't, I don't 12:16.560 --> 12:22.720 know how to compile latex anymore, I did it 20 years ago, right? So, like, make it as easy as 12:22.720 --> 12:32.320 possible for us doing the work to reproduce your problem, right? Okay, how to write? So, you can't 12:32.320 --> 12:39.600 write in flat hub, right? That's possibly the easiest way, I mean, if you have a modern Linux distribution, 12:39.600 --> 12:45.360 you just just use what your Linux distribution uses, but if you use deviant, don't use deviant, right? 12:45.360 --> 12:50.400 I mean, it's very old, it's very nice, but it has an occular version from three years ago, right? 12:50.400 --> 12:54.560 It has bugs, we have things, I mean, we don't fix many bugs, but we do some work, right? So, 12:54.560 --> 12:59.440 use flat hub, people come to me and say, I can't do digital signature, you're like, it was 12:59.440 --> 13:03.440 there in your features pages, it was like, well, you're using that deviant from 10 years ago, 13:03.440 --> 13:09.040 obviously it doesn't have digital signature. If you're on Windows, you can download it from the Windows 13:09.040 --> 13:15.440 store, I think you can also download it from chocolatey, which is like some pocket manager, 13:15.840 --> 13:19.680 free software kind of thing, I don't know who put it there, I don't know if it has malware, 13:19.680 --> 13:25.920 I hope it doesn't, but I mean, you might like my barrier, right? We do put it on the Windows 13:25.920 --> 13:34.000 store, so we know it's good. If you want to try the Android version, it's on Android, but it's not 13:34.000 --> 13:41.200 on proper Android. So, KD has its own KD Android repository, so you have to Google for that, 13:41.200 --> 13:46.880 or search for it in the internet, and you'll find it. And if you want to use it for Mac, 13:46.880 --> 13:51.680 well, you just have to download it from the CDN, we don't have any actual Mac, 13:51.920 --> 13:58.400 good way of distributing, so you'd use it all the way from the last time I tried it, it did work. 14:01.040 --> 14:09.040 There's a few links, so that's our webpage, that's our GitHub, we do have our own GitHub at KD, right? 14:09.040 --> 14:16.960 So, just do that, we have a matrix channel, and that's it, there's no time for questions, 14:16.960 --> 14:20.560 because I have one minute left, so thank you very much for coming here, it was very early in the 14:20.560 --> 14:22.320 morning, you guys are stars.