This image PR episode 1900-96 entitled X-Notule Magic and in part of the series, Lightweight Apps. It is posted by H-O-Doddy and in about 18 minutes long. The summary is, over new and a few usage possibilities on the X-Notule program. This episode of HPR is brought to you by Anunasthost.com. Get 15% discount on all shared hosting with the offer code HPR-15, that's HPR-15. Get your web hosting that's AnunastimFair at Anunasthost.com. Hello, this is Nacho Jordi and you're listening to Hacker Public Radio. Today I'm going to discuss a little program called X-Du2, which I would probably have better include in the episode about what's in my bag. I just remember it later. So this is a very simple podcast where I want to repair that and just because X-Du2 is also one of those programs that I install in every computer that's in my possession because it's a very useful tool and that allows you to do a lot of great stuff. So what is X-Du2 and what can I do, what can I do? X-Du2 basically it's a little program that you run from the terminal or from a bus script that allows you to simulate user input from either keyboard or mouse. So in other words, what X-Du2 does is tricking your computer into thinking that you press a key or you've done something with the mouse. For example, you can trick the computer into thinking that you typed a certain word or moved with a cursor keys or pressed enter or tab, it's not limited to letters, but anything that's in the keyboard pretty much, well most of it I haven't tried the most weird keys, but you can pretty much do anything you can do with your 10 fingers, you can do it with X-Du2 in the mouse side of things you can tell it to move, to move the cursor around, you can both in relative coordinates and in absolute, and you can simulate a let click, middle click right click, also just as a punctual click like when you click on a link or keeping the mouse button sustainably hold, as you can imagine this opens a whole world of possibilities of things where you can automate things, the syntax of the command it's X-Du2, a certain command of what you want to do with a keyboard or a mouse, and it's pretty straightforward, for example, X-Du2 key, and then you put the letter, the key, you want the X-Du2 to type to tell the computer that has been typed, and the only trick you think about the X-Du2 syntax perhaps is the special keys, not alphabet keys, for example, for enter, you have to use X-Du2 key return, and also the return has the first letter in a capital letter, so it took me some time to find this essential shortcut, and it doesn't appear very clear in the documentation, it would be nice if someone would provide a list of all these special keys like return or the tab key etc. So with once you have the two installs, it's very easy to install, not a lot of the dependency health, it's pretty straightforward, with this problem then you can do a lot of things like I say to automate stuff, for example, one thing that I've done very often because I always like to start with the hardest things first, it seems, I've automated the data introduction, some websites that can be very boring, and make the tasks very repetitive, websites that are not very well designed or don't have the user, in mind as much as the design and the colors, if the task is big enough you can maybe, maybe it's a good idea to make a tiny script that also makes a few movements, this idea depends a lot on the web, and on the task you're doing, our rate is in a way the rise of bureaucracy, because due to computers there's a form for everything, you have to be feeling forms all day, you know, guys of context, if you will, I'll get it for any, if you want to have your ceiling repaired, everything needs a form now, so sometimes it's useful to create a small-bush road, because it's actually two and another thing that allows is the mouse wheel, it has a whole range of movements that a mouse can allow, one limitation of doing this is that when you're working with websites, obviously, you will not kind of always predict how long it's going as website taking, it's going to take to download the page, so then this one makes this idea somewhat impractical, because if you don't know how long the website's going to take, I mean you can, you can find your way through a process, and you can map the process of what you do in our website, let's say I'll website for example where you introduce images and they have to click somewhere and then go through a menu to change the order of the pictures, something like that, you can do a first iteration by yourself and saying, okay, this is a process, so now I can write the X to two scripts, but as you cannot predict how long it's going to take, going from website, from page A to page B, your only solution is creating a buffer of let's say two to three seconds to make sure that the second page is loaded before X to two resumes doing its thing, so you lose part of the savings of the time savings that you were intending to get with your script anyway, sometimes it's still a better idea, it's still, it's still a good idea, but not always, because for example you need an example of the website to upload images, I'm thinking of a particular poor website where I try that, you have to be present to insert the images, so there it's a bit nerve-breaking using the robot, but because in the end you have to wait for the computer to load, so this kind of I mean it's very, it's very, very tart some on your nerves when you have to do something then wait three seconds, then do something, then wait three seconds, even if it's automated, it's a bit, the automation is not comfortable for you, at least in my case, I think the the energy cost of starting and stopping all the time, it's a bit straining, but this kind of automation can be useful in websites where you can automate the whole process, you don't have to you can run the script once you've made sure it's stable and it has to go and do something else while the computer finishes its process, and also as a bonus let's say, you kind of deny that it's very spectacular, one of these scripts running, and when you can see the computer doing stuff on its own and typing on its own, it's like a science fiction movie, but that's a childish advantage, but well, I wanted to mention it too, so okay, this kind of automation of sites and has its limitations, I still have a couple of scripts in my computer and then I can go to scripts for a certain task, but like I say, it's a bit, it can be a bit tricky, well, I have found more useful using X2, it's a, I created a small wrapper script, it's like a type of robot, it's like a co-man, it would be like an echo, co-man, let's say, it's not called echo, it's called something else, where you say, it's like saying your computer please type this for me, and this wrapper can be used in a lot of contexts, yeah, and connected to this type of robot, the other great uses I've found is, for example, I, to put a timestamp to two things, that, that's the, that robots I use it a lot, a simple keypress, and I have a year, months, a day, an hour, that I cannot, to a script or to a text file, and that's very, very useful, the way I start using this kind of timestamps, maybe the Serbs are a comment, you'll start with when I, I, I read in a blog post, from a guy called Dr. Bunsen, assistant, he uses to classify his, his files, whatever he does is, I think this kind of timestamp to, in the file name, and then using the, the file name as a placeholder for tags, let's say, and then instead of using a file trees system with high, high arches, he has it all the files, in the same pool, let's, let's say, and look at the files using search commands, it's a, it's an interesting approach, I used it for a long time, but I found the long file names can be confusing sometimes, and most of the time, or on many occasions, for the uses that I give to my computer, what, what you end up having is a lot of information that you don't need in the, in the file name, a lot of, of clutter, so of course, Dr. Bunsen, this layer, biologist, I think some, his needs are different from mine, and I like to try this approach, the tags are very useful in some contexts, but in any way, I, I moved to a different system, but I kept this, this timestamp, and in a lot of tasks, I'm always finding new uses for it, because, I mean, having a way to register at what time, something happens, it's, it's a very essential thing, and as a side note, I've never understood very well why are funding fathers, the funding fathers of Unix, the industry, and can't thumbs on, why didn't they include the, a creation date, a field in, in the, in the files, the files have a last time modified information, but I don't think that's as useful as having, when a file was created, because it, it provides you with an, an instant chronology of your work and of your, of your life. Of course, a Unix, as we all know, is, it's rock solid and, and our funding fathers, would have a serious reasons behind, maybe, because they were on a business context on this kind of information, it's not that useful, but it would be great, because even if you're a disorganized person who uses Linux and at some point, I suppose you get a, to become organized, a, having a creation time of a file with allow you to, to see that chronological perspective, I'm sure, I'm sure, I speak out of ignorance on it, and there's a good reason for that, like, for most of the things we know, I love in Unix and Linux. So anyway, I use this timestamp thing, and they're also related to the, to the, to the automatic typing, and to time in a way to, I also developed a small script that I call chronotex, that, that works like, like this, when I press a key, the computer tells me, okay, I've started counting, then I do whatever I'm doing, and when I press that key again, the computer types, how many seconds have passed, it's like a mega straight forward chronometer, and I'm finding more and more ways to use it, because, yeah, because my idea was creating a chronometer that, that was to, all the stuff out of the way, I didn't want to have a new window opening, I didn't want to have to look for that program. So, yeah, key, key press, and then the text, and then that, that type, that type, that text that types itself automatically, depending on the task, I can register, or I can just take a look at it, and then let it go, etc. So, yeah, it's a strip that works very well for me. I'm not including it, because I think it's a very specialized kind of thing, and I don't think anybody's interested in it, but if anybody would like this, of course, I just contact me, and I will send you the code, but it's also a very trivial code. So, then I get, I guess, most of a hundred public radio listeners would better like to write their own versions that using my script, but if you're interested in this or the other, the type or robot, of course, I can send you the code. And, and that's all I have for you today, it's in the short notes, I'll give you links to the X2 and it's a funny addition to your system. I encourage you to at least give it a try, because it's very, really very easy to install. So, thank you for listening, one more time, and, well, have a nice day. Thank you very much. Bye. You've been listening to Hecker Public Radio at HeckerPublicRadio.org. We are a community podcast network that releases shows every weekday from the day through Friday. Today's show, like all our shows, was contributed by a HBR listener like yourself. If you ever thought of recording a podcast, then click on our contributing to find out how easy it really is. HeckerPublicRadio was found by the digital.com and the information computer club, and it's part of the binary revolution at bmf.com. If you have comments on today's show, please email the host directly, leave a comment on the website or record a follow-up episode yourself. Unless otherwise, status, today's show is released on the creative comments, and we'll see you next time.