Text Expansion / HotStrings with AutoHotkey | Have frequently typed terms at your fingertips! | Joe Glines | Skillshare

Playback Speed

  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x

Text Expansion / HotStrings with AutoHotkey | Have frequently typed terms at your fingertips!

teacher avatar Joe Glines, AutoHotkey / Automation Expert

Watch this class and thousands more

Get unlimited access to every class
Taught by industry leaders & working professionals
Topics include illustration, design, photography, and more

Watch this class and thousands more

Get unlimited access to every class
Taught by industry leaders & working professionals
Topics include illustration, design, photography, and more

Lessons in This Class

22 Lessons (1h 24m)
    • 1. 01 Intro to Hotstrings

    • 2. 02 Install AHK

    • 3. 03 IDEs Editors

    • 4. 04 Intro to AHK and settings

    • 5. 05 Multiple vs single ahk file

    • 6. 06 Ending charchter and Escaping replacement

    • 7. 07 Your First Hotstring

    • 8. 08 Sending special charachters

    • 9. 09 Sending Unicode Characters

    • 10. 10 Sending Values of a variable

    • 11. 11 Repating keys MoveLeft No backspace

    • 12. 12 Long replacements Continuation text File Read

    • 13. 13 Omit space No ending char Case Insensitive

    • 14. 14 Intro to Context Sensitive Hotstrings

    • 15. 15 Advanced Context Sensitive Hotstrings

    • 16. 16 Launching programs

    • 17. 17 Multiple computers Sharing Compiling

    • 18. 18 Using Hotstrings in games

    • 19. 19 Troubleshooting A User access Control UAC

    • 20. 20 Troubleshooting B General tips

    • 21. 21 Example A Autocorrect Spellcheck

    • 22. 22 Example B Hotkey Help

  • --
  • Beginner level
  • Intermediate level
  • Advanced level
  • All levels
  • Beg/Int level
  • Int/Adv level

Community Generated

The level is determined by a majority opinion of students who have reviewed this class. The teacher's recommendation is shown until at least 5 student responses are collected.





About This Class

How would you like to increase your typing speed by 1,000% ?  This course can easily do that for you!  Not only will it increase your speed, it will increase your accuracy / reliability!  You will be able to type a couple of letters & have it replaced with whole words / paragraphs.

In our daily life it is AMAZING how frequently we re-type the same words over and over.  It might be your name, the name of your company, instructions on performing a recurring task, a greeting, a salutation, etc.  The list is truly endless. 

Text Expansion (HotStrings) are the simplest and fastest way to start automating your computer!  Instead of trying to learn how to type 200 wpm, learn how to type 3 characters that will instantly get replaced by the entire sentences you wanted and it will be typed perfectly EVERY TIME!

While the basics of HotStrings are very easy to learn, we also take a deep-dive into various scenarios where they can be more complicated & discuss trouble-shooting "tricky" issues. 

Learn to work smarter, not harder by stopping to learn how to type and learn to work smarter!

Meet Your Teacher

Teacher Profile Image

Joe Glines

AutoHotkey / Automation Expert


Class Ratings

Expectations Met?
  • Exceeded!
  • Yes
  • Somewhat
  • Not really
Reviews Archive

In October 2018, we updated our review system to improve the way we collect feedback. Below are the reviews written before that update.

Why Join Skillshare?

Take award-winning Skillshare Original Classes

Each class has short lessons, hands-on projects

Your membership supports Skillshare teachers

Learn From Anywhere

Take classes on the go with the Skillshare app. Stream or download to watch on the plane, the subway, or wherever you learn best.


1. 01 Intro to Hotstrings: welcome to this course in auto hot key on the heart strings. Hot streams air basically like an auto replace or a text expansion tool. Think of it. Is auto correct, especially in years ago, in word, you could use it. Teoh Fixture Spelling As you type. The great thing about hot strings is they will work in virtually any program, any Windows program. So if you're doing instant messaging, if you're doing something a note, pad or word or your email, it doesn't matter. You can put in a couple letters. So here is my first examples. This is just the editor, and I could type B by the way, period space, and when I put that in, it will replace it. Whatever I've told it to replace it with another example. He So I did that here in this text editor, but I could have easily a done it in a note pad, or I couldn't do it in word. So regardless of what program you're in that will when you typed the letters, it will replace it with what you want. And what's What's awesome is that it doesn't have to be just one line if you have longer text like here is the Theo I period space and it just dumped in here the Declaration of Independence. So here you can see it. Put it all of this in here just by typing d. And now I told it, video I You can put what abbreviation you want, what makes sense to you, and it will dump in the text for you. So if you have things you type frequently it's going to replace that with what you wanted to put in there. And so it's basically a text expansion. So when you type certain letters, it will replace those letters with what you wanted to be replaced with, and it works in virtually any Windows program. Some programs in a couple tweaks to them the different send types of events. But for the most part, that's the core of it. What we're gonna do in this course is we're gonna walk you through how to install a hot key , go over some of the editors that you can use, and then all the ins and outs of how to set it up and how to make best use of it and cover best practices. What to do when things go wrong and give you some also some other great little scripts that can help automate even more work. 2. 02 Install AHK: In this first video, we're gonna cover auto hockey and the different versions that exist. So if you come to auto hockey dot com annually in here, you're gonna see this page. When you click download, it is gonna ask you, Do you want the installer or other versions? Go ahead and click in this dollar. Now, I've already saved this. This is why it's coming up with the two here. I'll go ahead and save it again. Just can see it's a three mag file. It's pretty small. Overall, you can hit control J. And that will bring up your past history. If you download things before and I am gonna go ahead so that just free download of that I'm gonna go ahead and run it. Now, when I running this, it is gonna come up with a couple options. No, it's gonna ask. You do want to express installation or custom insulation? Uh, the default version is Unicode 64. We actually recommend that used the Unicode 32 bit and then you probably wanted to install it into this directory so you'll hit here. Go ahead, hit next. This it's up to you. You can go ahead and leave these selected That's great and hit install and that's it. It'll install on a hockey you can see here it's It's a pretty quick small program. The current version is 1.1 point 2403 That's as I think November 19th was the last version . Climate was updated and that's it. You could hit exit or you can hit run on a hockey, but I'm for numbers can hit exit. And that's Thea. We recommend the Unicode 32 bit version. You can definitely running Unicode 64 bit. However, it there really isn't a big benefit to doing that. However, Thea versus the ANSI chances are you want to stick with you cooked it. 3. 03 IDEs Editors: in this video, we discussed different editors news for editing on a hot key scrips. Now, on a hot key scrips are actually there. Plain text. So let me show you here. I'm using note pad to to show a file. And here you can see it's just plain text. I'm not gonna get into what these different communes dio, but you can see you could just use note, pad, save it, run it. No pad works fine. However, there are other editors built that will help do syntax highlighting in and tell a sense which assisted in your typing. So there are three main ones that ah lot of people use. If you come back to our auto hearty dot com in, scroll down just a bit on the main page here you'll see their site for auto hockey. And if you click more info, you can come over here and you can download it and walk you through how to install it. This is the editor we both use. It's definitely when we would recommend, but the other two are also equally good. They don't really matter, but let me demonstrate. So there's also no pet plus plus as well as auto Hockey Studio, which is written in auto hockey and actually four out of hot. It's got a lot of great built in features. For that. You go to make ST dot com and for the other one note pad plus. Plus, there's a thread on the forum, which helps you walk through how to install. Note pad plus plus will make thes links available for you in the documentation in sight, though, and that is back to the window here. So after you install it and you run it, this is how notice here These are the two exact same files, right? So on the left, here is site on the right. Here is just using plain old note pad, and so you can see how having this syntax highlighting can really help you interpret your code. Understand what you're doing. It also allows you in here. If you hit this triangle, it will run the script, and you can, you know, have multiple tabs. It's it's much more flexible than just using note pad. So that's the core of the three main editors site studio, not a hockey studio, no pad plus plus and of course. You been soldiers, You know, Penn. But we highly recommend taking a couple of minutes, download one of them and install them in the videos. We're gonna be using site to demonstrate how hot strings. However, they're all equally good. Thank you. 4. 04 Intro to AHK and settings: before we get started with hot strings, we're gonna do a little bit of some general descriptions of how auto hockey works. So wherever even start on a hot key, it will have created this auto Hockey Die HK file, which is the default file for storing hot keys, hot strings and whatnot. I'm gonna right click on this and say, Edit script that will pull up your default after and in this There's some other stuff below , but right now I want to show you. Here's a couple settings we recommend having in there this single instance forced. This will force auto hot key toe only allow one version of this script to be running at all times, so this should be in there by default. Persistent. Now, if your code, if your script has hot strings in it, they will automatically be persistent. But we still recommend having this in there, and this no environment. That's what that's abbreviation for, is allows you. It just saves a memory, and you can also, by the way, comment on here. So this was no environment. So the semicolon is how you add in comments and so you can put them um, you know, after anything after, it's fine. And so right now if I look in my system tray, this is my system tray right here. There's nothing running, right. I don't have anything running here When I hit Run. Now you'll see that little green eight show up. This is that file that I just launched, right? And I can write I can actually, self I close this, I can right click on it And I can say Edit this script, reload it. There's a couple other things opened. I'm gonna say edit That's gonna pop me right back into this file. So if if you go too long something and you don't have that green age down there, your script isn't running. So you can't expect it to do anything in your first script. Let's do it. A simple example here of how you can do a message box. So we'll stick with the normal traditional thing of message boxing world. Now, when I run this So actually so it is running, So I'm gonna save it, and I'm gonna right click on this and reload it right. It is going to say hello world. Okay, it's that easy, right? Let me go ahead and get rid of this. I don't want that in there every time I'm gonna save it. So as I mentioned earlier site, you can click here or hit a five. And now that we launched that script, so make sure after every time you make a change, of course, you have to save it and reload the script or start it because this has persistent in it. You can just hit launch in auto hockey will detect that it's running and then it'll relaunches. The last thing I'd like to add is that for hot strings, when you right click here notice you have a pause script and suspend script. So even those his hot keys hot strings are affected by suspend hot keys, whereas pause does not affect them. So depending which one And of course you can just exit. And I if I hit exit here, it's gonna get rid of the scripts. And so now, if I even had a message box, it wouldn't run because of the script. Isn't running 5. 05 Multiple vs single ahk file: in this session. We're going discuss whether you should have auto hot key strings in just one file or keep them in separate files. So if I come over here right now and say, go to task manager, you can see I have Let's see. 12345678 Different auto hot key scrips running right now. Uh, this is one in the rest are doing different things. So the question is should to put him on the one which you can, or should you give them separate? There really isn't a right answer. The general consensus is keep them group together and how you use them. If you have certain things, use it, work in certain things. Used a home. You probably wanna have to. If you have certain things that you're going to do on a certain program that you rarely use , maybe you wanna have that separate. If you work more and you do both home and work, maybe you wanna have one file. I compartmentalize mine. I have one main script which has over 2000 lines, and then I have one offs that do different tasks. So there really isn't a ready. Answer. Just know you can. You can have them in one. You can have the middle multiple. They're small files and this is people here. I think we can see the size of memory. They're taking up right, very small size. So, you know, in today's computers, they can easily handle multiple. I think there's a little bit of saving and memory if you have them in one, but it's it's negligible, so it really doesn't matter. 6. 06 Ending charchter and Escaping replacement: So before we begin writing our first hot string script, I'd like to point out two things that are just good to keep in mind. 1st 1 is the ending characters now and in characters means, you know, when we type in abbreviation like btw, period. Right now you notice it didn't replace anything the second I hit space, and this is what the ending character means. So So there's a space between this end and T, but I could do this is a new line. This is a tab. So if I hit tab here, it's gonna say Go do that replacement. Right? So this is how auto hot He knows when I see these characters go look to see if I can put in a replacement for what was typed. That's an important thing to keep in mind because, um, sometimes you might need to augment this, which you can change. We're not gonna go into it now, but you can change that behavior to have have a monitor for different characters. These are the defaults which I have found to be very intuitively. They work perfectly with how you think you know often you want a period or a question mark . Exclamation point. All those things that they will tell it to go look for the text to go replace. The second thing is, if you realize you were about to type by by the way period and then, um, you don't want it to do it. What you can do is you click away and back. And now, when I hit space, it's not gonna do the artery place. So by mouse, clicking elsewhere is an easy way to get around it. Or I believe you can also hit like the home key or escape right. And now it won't do it. So you're breaking auto hot keys, understanding of what was typed. So those are two ways you can avoid having the hot string trigger and replace it. 7. 07 Your First Hotstring: OK, in this video, we're gonna cover building your first hot string, and we're gonna keep it very simple here. The general format for for most hot strings is you do to Coghlan's and then you type your abbreviation. What I like to do is to keep it between 2 to 3 letters. So it's a B, the B t W period, and I put in a period just to help remind me and to make sure it differentiates what you're typing, that it's not something that you might have typed otherwise. And so, using three letters, 2 to 3 letters and period are great ways to make sure that you want to put in the text. It's going to be the hot string that you wanted to replace and they're gonna put in to Coghlan's, and then you could just put in what you want to replace it with. So this would be, by the way, and I would adamantly here to capitalize these because of what I wanted to demonstrate. I'm going to save this and because I have my persistent comedian. I'm sorry, the single instance Command up here. I'm gonna just relaunch it now when I'm down here and I type B t W period. Now, when I get space, it throws in this up here, right? And notice. Also, even though I typed all the letters and lower case, why did it it put in them in upper case? So you don't have to I could have typed it with, um what if I did? Mixed case? So capital B t w period, It will follow that way. But interesting. Identified two all caps. It tries to outsmart me in. It does, um, in all caps. So however, typically, what you want to do is just keep it lower case weaken later on. We're going to how to make things case sensitive, but this is the quick, basic things off. Let's do another one here. I would do to Collins and let's say GM, period, and that is going to be for good morning. So now my seen it, and I can do that by clicking here. I just hit control s and I'm gonna hit this. Or I could hit a five and that will relaunch it. And now when I come down here and type GM period in a space, it'll send out good morning notice. It's also inserting space here. We're going to cover how to take care of that. If you want the space or not. Let's just say we also wanted to insert common here. E end a line return now lining turns air interesting because what you do is you put in that is a new line, this tick mark which is next to the on its Thea regular case for where the till day is next to your one on your keyboard. I'm and then this dance for a new line and this is a line return, and then we'll say good morning. How are you? So I must say this reloaded or launch it again and type gm period. Now, when I hit space, you see it put in it actually put into because I have a new line. What I should have had was, ah, line return of them on the line. Um, so let's take care of that. I'll just do this way, we do it Actually. Now here's the thing. When you're working in your hot so normally don't right inside of your script, right? Because you'll notice when I go to run this here. It says, Hey, there's an error here. Right? Well, that's because these auto hockey doesn't recognize what these are, so you'll just leave that. Save it. We lunch, OK? And this you can tell. It should basically blank out and you'll see that it's run now, GM period space puts him in there or we can indifferent and editors. So this one is interpreting as to line breaks. So I will do it just with the new line feed. And now when I take GM period space, it just put him in one. So that is the quick, simple way for hot strings to ah, get them going and you can have up to 40 characters in here Now, generally speaking, that's a lot of text to be typing. Um, so you probably want to keep it anywhere between 2 to 5. Now, you can You could even if you really wanted it, right, I could have it, G. Okay, so I'm gonna say this and launch it. And now when I type G and a space, it's gonna put that in there. But the problem is now, if I'm typing morning Oh, it Actually, it's monitoring for that if it was on its own. So if I type g here in the space, it will do it. But it's monitoring that this not on its own. So which is which probably works fine, because I'm not gonna type of G on its own, but a on its own, right. This would not be good, because I have. And I want to say a dog a Oh, look, it put that in there, right? This is why you Generally speaking, you don't want to use one letter unless it's something here years, a lot, and then use a specific letter that, like a Z, something you're not gonna type on its own. And then I also like putting in a period. It's just great ways to reduce the the replacements when you don't want them. 8. 08 Sending special charachters: in the session. We're going to discuss sending special characters and not a hot key in your heart strings. And in this first example, here, it's, ah, interesting case of this tick mark, which is the key to the left of one. Let's say I wanted to have that in my heart string. I'm gonna say this. I'm gonna hit my browser forward button, which tells it to reload the script. And now when I hit T period space notice there is no tick mark in there. That's because auto hockey treats this guy Could be my little cheat sheet. Here is an escape key. And what you want to do on the tick mark is you wanna have two of them together so I can put in a 2nd 1 here and now I'm gonna save it. Reload! And when I hit t paid space, it throws in that tick mark. So the there are a couple keys that are a little bit different characters and like that where you can you put in the tick mark and it will treat little differently. So there are some shortcuts. So this is the escape key for escaping the tick mark which is just two in a row, and then you can also throw in actual tab. So what's what's interesting here is Let's say I had this market T will say I wanted to have a tick mark and then the word tight right? When I say this and reload it and I hit T period, you would think it would still put in without the tech market. Just put in tight. But what happens is there's no there's no t here. It's it's what it's doing. If we showed the white space, is it inserted a tab right this tick mark t and you can see down here. And that's how I knew that, right? The tick mark t is I'm going to send a tab character, and then the tick mark are is going to send in a carriage return and tick mark and as a new line feed. So those those with ones that use the tick mark the rest of them. What you do is you wrap them in brackets and so let's do a demonstration here. So that's a wanted to have a say escaping. Um, let's change that to be demonstrating. I can't smell demonstrating tab. Now what I'm gonna do here. So I'm gonna put like this, and I'm gonna put the word tab. And I know that because right down here I have the word tab between the brackets and so you know what? I'll even do it here. So that way, when I reloaded type T period space and notice I had left the white space on so you can see there's a tab now inserted in there. I could have done that a separate second way, and you can work them at the same, um, both you can use at the same time. Some of save us reloaded. And now you'll see there's actually two tabs, right? So inserted a tab for this one and then a tab for this one. Right? So that is, that's how would insert those. And actually, let's say I actually want have four taps. And that's why I left this example. Here is the nice way of doing it. This way is I can say tab for get rid of this. Save it, reload it now. When I hit T period space, it inserts 41234 of whatever this is So if you wanted to have multiple line returns or or hit delete four times in a row, that's how you can repeat it without even doing any sort of a loop or anything. So it's a It's a handy thing to be able to use the other way. What's nice about this is it escapes just what is in here, right? It treated raw, basically. But the other way you could do it is you could say, Let's say I am. I wanted to send an exclamation point, so I need it now. Exclamation point right? So when I save reload and of course, when I do this, it's not going to send the exclamation point. Why is that? Well, because up here, I should've wrapped it. And let's just do it, show one example. So this works fine. I can hit deeper space and throws in the information point, right? The other way I can do that is in the options here I can put in our in between the first and the second, um, Coghlan's, And what that will do is that I'll tell auto hockey to treat everything to the right here as raw text. So send exactly how it is. So when I say every load and I hit T period notice it throws in the exclamation point. So either way works. There is no right way. This the other way I showed you with putting in the early braces isolates it a little better. However, it also isn't as easy to read, and there's no really right and wrong way. The other thing, I'd like to point out is if you actually go to this website it was pulled up with. You'll see there are a lot of other characters, so normal and hot strings were sending words. But you can set you send keystrokes and here is going to show you some of documentation thes air y these. These first ones are very special. They're modifier keys that affect hot keys. However, if you scroll down here, you can see there is quite a bit of selection to choose from that you can send a lot of different things. So if you wanted to send in a password and then hit, enter or send in a password and go page down twice right, something like that, they give some good options here. But that's the easy way to make sure on these special characters. You get the techs that you want 9. 09 Sending Unicode Characters: in this session, we're going to demonstrate how you can send characters that aren't on your keyboard. So namely Unicode characters. And I got a link right here. There's a ton of sites out there that have different characters and will help tell you what they are and what's available. I'm going to go here and and one is You can start scrolling down here and find the character you want. Let's say I wanted this symbol, Um, as I mouse over and you see it there. But also it chose my here. So this is the U, and if I click on it to, it'll pop up with it. This u plus o c. Four. That is what you put in here and between curly brackets and paste it. When I say this, we load it. Now when I'm inward, that type G periods face. It throws that in there, right? Let me zoom in here and make sure see it really well. There are a ton, and I mean a ton. You can keep scrolling and scrolling and scrolling the easier ways Here's you can open this and see all that each one of these air like a page each, at least. And there are some fun things. There's like Emotive is that you can pick from when we get down here. Dom Domino tiles. So if I wanted to send, they're obviously very tiny in this shot. Let's to my travel tales. So, um, apparently, Aiken, pick one of these and this is the on this carpet front parent here before the plus paced reload. And there's that tile, right? So virtually any any unico character you want under enough, they're all in this one. But you can see there's an enormous list of things you have to choose from, and it's just great if you want to throw in a smiley face or if you're writing in other languages frequently, and you don't wanna have to hip something that changes your entire keyboard and remember what it is, you know, if they're characters used very frequently, it's a great, easy way to make them available on. And of course, you could wrap it with other Let's say I had Ah yeah, small Alfa Okay, in Here's Omega, right? So let's say I needed to do something with this, and so I want to put it more into a sentence on a piece is here. So now when I it g here, G period space. Oh, look at that. What would happen? There are NT 734 Did I get it right? One de So that could just be that I don't have the funt certain funds. Also, you need to be using certain fonts on things, and I will bet you money. That is actually yes, it was my fault. So be careful of that. That when you see, um, like a question mark, especially in a box, make sure your fun is actually supporting it. It isn't that the characters wrong is that the funds doesn't have it available. So you saw when I switched it. Now it has it in there, and that's it. 10. 10 Sending Values of a variable: this session, we're going to demonstrate how you can send a variables value in a hot string. So that say, we had a variable in our script called name. So this is the name of the variable. And I am going to set it to a value of Joe now in the hot string. Let's say we had in em, period and we were gonna pass it. Now, this is how you would typically think to do it in auto hockey. So I'm gonna pass it. What you do is you wrap the name of the variable with percent signs and you can see here it's okay. It's gonna interpret. This is this is what you would think it is going to send that. However, when I say this reloaded and Grunnet, it sends that exactly So what? You have to dio if you're sending a variable is put this on the next line and say, Send coma and what you want to do since it's on two lines now is at a return after that. So you could have multiple lines here where he's going to use one turn Now when I take in a period space, see it throws back in, Joe. And of course, if this had Jackie this save, reload and create space and throws on Jackie, and you could you could, of course, put stuff up when Here This. So now when I take that, it puts in the full thing. Um, not overly useful, depending on what you're doing, you might have certain variable store. Do you want to pass now? A great example of this is certainly there's some nice booked in values are not a hunky variables that are dealing with time. So I am screaming disappear, and you can go look at this Web page. Let's go ahead. When you pull it a problem in here, it's gonna go through. And it has a lot of There's a lot of good detail here explaining it uses the by far the things you're gonna use most often This these right here in the time formats. Let me grab that moving up here and we'll grab this one. We're gonna play with these a little bit. So I said, wait. See these? So right now with this current one, is it set for get the current time and this is telling it what kind of format to put it in . And then as that passed example, I'm doing Sen and Sen and puts this little faster than sent. And this was created. And then I'm inserting that variable value, which is here. So on this line, when I type DT period space, it says this was created on December 14th 2006 at 7 a.m. Um, I could easily tweet that. Let's say I didn't wanna have um, listen here, Right, So every load. So I've just truck it that let's say I wanted to have the actual month spelled out. Um, important thing to remember is, these are case sensitive. So, um, that's why you want to make sure you pay attention here if you want the leading zero. So I have leading jurors there. Let's switch it to let's put em three ends save reload. And the CIA puts in December 4th rights. And actually, so what, you'd probably want to do their typically What we see is it is more like this something closer to this. Um, Now, again, you can truncate these so you can play with these here and decide what you want to pass time is the same thing here. Here. I haven't actually let me go back to the Web page. There are some other built in one's, so there's I'm Blank will just return it back in this full long format. Well, I'm sorry. This is the long long date format here. This one returns it this way a short time. Long time your month. So these are all defaults on. What you would dio is Let's let's do a couple examples here. So, of the other thing I wanted to mention here was, If you wanna have things separating them, what you need to do is put it, use single quotes inside your format time statement. And that was how I was able to pass in a word on this at and I had a time period here. Let's go and get rid of all of this, you know, just to make it clear what we're sending. So I'm gonna put in here. Let's start off with keep those on top. Let's start off with a short date. So short, big. So now when I take t t. That's how it puts it in there. But let's change out too long. Date so it puts it in that format. So it's a quick, easy way. I was trying, though. Why weak this? I believe. Put some, um, I'm in the 48th week of 2016 and that is the endless Do Blank to show how the default is. So that's the full blank version of what it puts in there and and again time, which I had down here. PM So it puts in the time, and that's a quick, easy way to demonstrate how you have the variables passing. And remember, you have to put it on this next line, this one because we're first going to change the format of how the date time is. It's actually across a couple lines and make sure you include your return. Otherwise, if if I didn't have this return here, so I commented out, it's gonna fall through and keep going and not see that return. So that's why it's important to make sure. Let me see if it, um, I think what? Because these are hot strings. It isn't gonna be too big an issue. But if I had a message box here, make it and when I run that also see, it's gonna come into this here, So But if this return is not commented out, so now when I see listen, reloaded. I hear it on my heart strings. Now, when I run it, it's gonna insert the date, but notice there's no message box that pops up. That's because it starts here, goes here here, hits this return and stops processing down further down the line. So just make sure that you include a return there if you're having more than one might. 11. 11 Repating keys MoveLeft No backspace: in this session, we're gonna cover three things. Oneness, where you want to send the same key A several number of times. The 2nd 1 is, let's say after you send it. You want to move your cursor to the right or to the left of where it is. And the last one is where you actually don't want it to end up replacing the text that you were typing this 1st 1 It's very handy. Let's say, like, for when I'm gonna come out comment out stuffs and remarks. So I'm gonna add in to colons. And actually so I don't want to have my, uh, space at the end. So I'm gonna throw that in there, and then I'm gonna say, send, I need to beginning with gastric semicolon because that's what on a hockey uses for the in line things. But then I wanna have, let's say, 20 Asterix sort of Hindus. I'm gonna put in some curly brackets and I'm gonna put the character that I want in there. And I must say, I'm gonna send it 15 times. Okay, so now when I run this, I can run it. And now Oh, sorry. I need to type in. Um, my are abbreviation there. Now, when I type are period, it's going to send this 1st 2 semi colon and then an ass trick 15 times. So when I come down here and run this there, it just sent the semicolon, which it needs to tell auto hot key that this is a comment that it's 7 15 Asterix on Dhere . I could have said 15 Asterix, and then I want tohave a space and then I want to send I'm gonna be lazy here, and I'm gonna put in this again. So I'm gonna say this reloaded and run it. So now I have a space in between. But what would be really nice? Right? So that's where this is right now, take from this I commented out. What would be really cool, though, is Hey, you know what? When I do that, I want this space here because basically I want to come back here and right here. So how about if I had a way to come in here and say, You know what? After I insert those things, I'm gonna come back and I forget if it's going to 15 or 16 we're gonna say six team and I'm gonna put left Now this when I run this, hopefully I might be one off. Um, no. Put me right where I wanted to be. So now I can type right where I wanted to be. I don't have to arrow over. Obviously, this is this is really great for HTML. So let's say I was gonna have, um, like, a color. I can I can type like, see blue, And that would be for color blue. And when I do that, I'm gonna say, OK, I want to put in my spee em, um style equals color blue. I believe this is the right thing here blue uh and then I'm going to close out the bracket e and then I'm going to put in another one in in my spin commit. Ah, tag. Right now this with any luck, if I run this, it's it's gonna insert that correctly, but notice where I am, right? What I want to do is and I'm gonna count 1234567 So now I'm gonna send left seven. And it I put that your online so put it appear. Get rid of this. Save it Reloaded. And now if I type see blue notice Aiken type here and this text would be blue, right? So it's a great, easy way where I could easily be adding my HTML stuff. And now I don't have to remember how to actually the html behind this, right? I can just type see blue. Or maybe if I kept it simple enough, I could say, like, see c b E because then there will be black and a couple other colors. But it's a great, easy way to move over and not have to do that every time. This last one, I don't really use it. It's not a very common thing, but I did want to point out that you can, um, tell it to not do back specie. And you would do that by using this b o command. So let's put in here. Let's say I was gonna type Colon. I'm gonna add the be ash. I'm sorry. It's actually be zero not be. Oh, I'm glad, because that would stink. Um, so I'm gonna say when I type Joe period, I'm gonna have it put it back in, um, blinds when we put in space here. Right? So now when I do this, if I did this correctly, what's gonna happen is normally you would think if I did it this way. I'm gonna do this real quickly. If I do this and I type Joe, period, it puts in space Klein space. Right? But what if I actually wanted to leave the Joe in that way? So be zero save. Reload. Now. When I type Joe period space, it inserts eso. Actually, I didn't realize it was going to put the space where I need it, so Oh, but it noticed it did lay the period. So? So I probably would not wanna have this year. Now. This way. Got to get rid of the sign. Save, reload and type J o E period and adopted in there with period. Let's try this one more time here. Oh, because I'm sorry. I'm so used to hitting period. So there we go. So it replaced. It didn't get rid of now notice. I'd have to actually make sure I type my capital here, but noticed it did not backspace and replace this. It kept it there and just added on to the back of it. So that's how you do that with this B and then a zero 12. 12 Long replacements Continuation text File Read: in the session. We're gonna cover hot strings that are long or have special formatting that you want to keep in. Just want to make it easier to maintain. So an example. Here, let's start off with We're gonna have some text, period. And in this text, I demonstrated. Really? Say, Joe, I say, put it on the new line WAAS line here and I'm gonna hit the tab button today. Now, when I saved this rerun, it hype txt, period. It dumps it in here and noticed the line breaks and the tab there. The other thing that insight here, that community if under view, if you want to see the white space, have you end of line, it will show you the characters writes This is the the line end and line seed E M. Here is the tab Spiro. Right. So this is when you have special formatting. But the other thing is, if if What if this was, um, hundreds of lines long and you don't really wanna go through and put in this tick mark and everywhere where the tabs are actually OK, but as always, it's not the end of the tick mark in everywhere where there's a lie break. So there's an easier way to take care of that without a hot keep what we're gonna dio. There's only turn offices, white spaces I'm going to look at. But it could be very helpful. I think it was the reveal codes and word with you, very, is that it helps you spot although all the hit characters All right, so let's go ahead and actually will Go ahead, leave that there because that's what I want. What you can do is you can come in here and put a friend here in a print here, right? So the open print and close print and what that's gonna do now, if I save it, we launch it. The type txt, period space. So it puts it in just like this was here. This will work if your characters are under. It's around 6000. I'm sorry. 16,400. So that's a lot of characters. I actually have an example down below. I didn't really want to try toe. No, do it live because it would take me a while to generate this. But this is my long text, right? So this is you can see here how many characters it's, it's quite a bit. So if I I'm gonna come into a different sheet here gorillas and hit long text period space and it's gonna send all of those characters, you can see it's literally sending the East Rupture. Computer was going to interpret that as well, but it's sending into that page. Hear, hear, All of it was This works great and for the vast majority of stuff that you have, they'll be under, you know, 16,000 characters. So this is one of the easiest ways to to handle that is to use this another way. What that you can do it is to use a file read and store that the content into a variables. Let's say it's more than 16,000 characters, right? So what you want to do is you put your text the simplest ways you put your text in a file on notice. Here I have over 1000 lines of this together. One quickly. Here. How many white? Who's in? It was 16. I'm sorry, 163 in this one. We have over 10 times that about right and what you would happen if I came back in here? You went down to this one and say I'm gonna add a couple Rose when I see this and we launch it notice it says, Hey, this situation section is too long, right? And that's what you wouldn't be able entre script. Eso doesn't send partial. I just want you launch a script, right? So you want to avoid that? I still get a lot more line. I see it. Okay, so now we're good. But what I want to dio is I put my text in this final here that I want to use in my replacement. And over here, I'm gonna say file read, and I'm gonna put the path Well, actually, first I want a store. Put the variable. I'm gonna store it, so I'm gonna store it in the clipboard. So this is an easy way to do that. And then you put it in the past. And so, um, over here I have I have customized my sight. But what? Basically what you do is you find the path. No file, almost a copy path, this file. But you would find the path using Explorer. Find the path and paste it here. What that's gonna do is it's going to go read this file and store it in your clipboard. And then all you have to do was now leverage that and say, Txt two period. He and I'm gonna do this. We're going to cover the different send types later on. But I'm not use. Send input in this, um, carrot, which is over the six carat V means control paste control the which is paced. So sand paste right? And there's I comment about this is so I'm gonna say control pace because I'm gonna sit in pace because I have stored the variable in the clip work, right? And I'm gonna add a return here so it doesn't keep processing now when I say this e m, we watch it now. Txt two period was like, What would here? The great thing about this is txt two period. Watch how fast it dumps it in there. Right? So because I read that to a variable, stored it all in the clipboard and then just hit paste. It's not sending each keystroke, but it dumps the 1141 lines right into this file and This will be an exact replica of what this file waas, right? So when you have long, very long texts that you want to send its one of two ways, typically I I use that first round this one because it will handle up 16,000 characters and very easy to read. And it's usually pretty close to exactly what I want and that that doesn't work. I'll just store what I want in text trial. It could be any type of file extension. Dismally Matters, owns its text, and then you could read it and then just store it in. You read it into the variable here, rooms in the clipboard that I send paste, and that's it. 13. 13 Omit space No ending char Case Insensitive: in this session, we're in a cover three topics. Removing the need tohave to put back in the ending character you type. So when you type like, let's say you put in the words BTW period space, um, it won't add the space back in even though you hit space. It's just gonna absorb that space or the ending character, like a question mark or ah, period. So it'll use that the no ending character required. So basically, it'll trigger without having an and character and then a case sensitive hot string. Also have a couple examples of that. This first example. There's really a couple of uses for what? Why I end up doing it. So let's say you have a user name on a website that you plug into a lot. So what I will do is I will put like my email address, JL. Um and so this is Joe at now. This is just a normal hot string, right? So when I run this, it is gonna put in the space at the end, right? But this would not be my used part of my user name, right? I can't have a spacer. So what, you Dio is right here you pass in the O which is basically says, omit the ending character. And this way, when I say this, get in that save it and we run it. Then when I type J t a period and hit the space bar, notice there's no space at the end there. So this is very helpful for user names for passwords. The second, the other one is when you have a word that is often possessive and you're not sure which way you want to use it or if it might have an end s at the end frequently. What I will do is is I'll put the singular of it, and then I just use the same hot string where I don't have to worry about Adam. Yes, on. And I can choose just a type in or not during its That's That's how I use the omitting the ending character. Now let's say you don't want to use an ending character. This is an example. So often I use like my paths, right? So I'll come in here and put Colon and I must say, Path Mac, and this is gonna be I have a limit grandma folder here, I use frequently. So this is the path to a certain folder on my computer in this P. Mac knows I didn't even put in a period here on this one, right? So what you do and that one, as you put in an ass trick ass trick will say, Don't wait for that extra ending character. And so I'm demonstrated here. So if I type PM a now watch when I hit C b m, it throws it in there, right? This comes in handy. Let's say I was gonna open a file in that folder. I can hear peace AP Mac, and it just dumps it. I don't have to put in the extra character. It's just it's just a little more immediate. Um, I could hit the slash and navigate right to it, right? And if I was going to save the file works the same way. But it's just a easy way where you don't have to have that extra character to type. So that's how you get rid of those this 3rd 1 and we're gonna come up with to here. Let's say if I had my initials in lower case G. Sorry I put in the colon Colon. So when I type a lower case Jaeggi and I'm gonna throw in this this this capital seat means look at this case sensitive. And then he added in a period, because that's my habit. So when I pass in the lower case g put that. But when I pass in, um, a Capital J Lower case G period put in my my full first name. Right. So now when I run this, if I just remember when I'm typing, I can you do Jaeggi period space for my regular version Or I can capitalize the J. G period, and it puts in the 2nd 1 right? So it's gonna monitor which one which case is gonna match it exactly. And it will dump in the appropriate code, depending on which one you type. The third would try mentioned before is regardless of which you type. It will always match this case here unless you uppercase both letters or whatever you're typing, and then it will send the upper case so often like, let's say I work in SPS s a lot. Um so I will just put in this SPS s and I will put it like this. So that way and I should let's see what I really want here, I guess, is the are I haven't thought about that. No, the star the ass trick. So now what? I run this. Oops, I forgot. I gotta get rid of these guys, right? This is the danger of working, putting on strings in your code. So now when I run this and if I'm lazy and I don't type out SPS s correctly see how it automatically upper cased it for me, right? And this will work again. It works. An inning program. Any Windows program your end if your instant messaging if you're in an email, If you're in word or PowerPoint or excel, you know, it doesn't matter. It'll it'll do it anywhere. So it's very handy to just kind of take care of yourself when, especially if you have brand police at your company and things need to be set up in a certain way. This is a great, easy way that make sure that you you don't have to go back and figure out the formatting every time 14. 14 Intro to Context Sensitive Hotstrings: in this session, we're going to cover having context sensitive hot strings. What that means is that I can type the same thing in auto hot key will determine what window I'm in, what program I'm using. And it'll send different tax depending on the window I'm in. And how you want to do that is first, we're gonna right click on your icon down here when your script is running and say Windows by. This is a program that comes with on a hot key that will tell you when I It's blank right now. But the second I clicked on this window, it's going to come up with several different that it's got a lot of information here, but the top three are the ones that are were interested right now. First there's the window title class and then process for this training. We're going to focus on these to the vast majority of the time. These are the ones you're gonna want. They're gonna be sensitive enough to give you what you're trying to dio this 3rd 1 will do in advanced one. When you have more than one window, what we're gonna do some pattern matching on the title, which could come in very handy. Eso First off, what we're gonna do is we have no pen here and now it's see when I click on note pad and it updates this. So now the title is entitled Note pad and then the class is no pad and the process is note pad dot e x e So what we're gonna do, we're gonna do the 1st 1 with this h K class note pad and how you do that as I competent here. But I'm gonna start off typing if when active. And what that's doing is is telling No Pat. Sorry, Auto hockey. If the active window is no pad, is this class note pad? Then we're gonna do the heartstrings contained in this. And so let's put in t X period aren't and no pad and what you can do. If if I didn't close this out, it would keep treating everything as if it's a note pad and only apply it to that. But the way I want to cancel that out now is I'm gonna put this year, and now that'll basically turn it back to do everything except for note pad Because I only have this in my script and I'm gonna borrow this and paste it. And I'm just gonna change this to I'm not in no pad now when I save it and we run it now, when I type no name and no pad and I type t X period and put in my space says I'm in note pad But over here in sight when I tape it says I'm not in no pen, right. And that'll work, of course, in any other program. And if you open up your email open of anything, it's gonna monitor. If you're a note pad, it's going to do this. But if you're not, it'll do this. Let's let's do the example with the process as well. So all you would do here is copy this out. Oh, and actually, I just made that in sight. So notice here it's staying on my active window. So I want to come back to know pad Now it has HK no pet up, you see? Yeah, I am about places here and this will work just the same. I need to get rid of this. We'll save it now. I'm here had reload, and this will work exactly the same. I'm not no pad in this one. I'm in no pets. So this is really handy if you have the same thing that you use in different programs. Or let's say you want to have a certain password, right that you pass in. The different programs have a different password, so you could look at the program you're in and have it sent a certain keystroke based off that program. I like to use this for doing my comments, and so if I'm in sight when I type, I can have it set up. Where are period will put in the semicolon, But if I'm in a different program, it will begin this with something else. Because other programs like Sequel, you'll have a dash dash right. NHC males different and allow the other programs. So I don't have to remember different hot strings to work in the different programs. And I don't have to think about what program I and how do I comment out something. I can just have it type the same thing and it gets sent there. The other thing. You want to make sure you do is when you want it to realize your inner program a specific program. You want to put that before this one. If I was to move this before the other one auto hot key, when it's running through, it will see this and it won't. It will never get to this. It'll just interpret this and apply it. So if I say this and reload it and run it now, if I'm in here, it says, I'm not in no pad. But even when I get into note pad, it still says, I'm not in that pattern And that's just because, ah, hockey comes down here and it sees this first. And it's just gonna interpret this hunt string and not think about the other thing. So make sure when you are being specific within a given program, you just those above a generic one 15. 15 Advanced Context Sensitive Hotstrings: in this session, we're into some advanced stuff creating context sensitive heartstrings end in this case, What I did here is I said, let's change the title match mode to using regular expressions. This is a pretty complex topic, so I'm not going to get into what they are. Basically, it's gonna match certain patterns in the title of your your file and hear what I have done . I say, Hey, if if the active window now for a period need to escape it with this last year so if the active window has a dot p y star in it and so notice right here not p y, that would be This is for my active python window and python. I comment out beginning with a pound signed and I put this in here. But if I'm a note pad, let's just pretend on a note pad. I'm just demonstrating here that I have a note pad. I'm gonna send it the two dashes for sequel and then if I'm not new to those, I'm gonna use a semicolon. So what, this is gonna do? I save this? I have a launched here twice. Reload Now, when I type in here because I'm not in all three of the any of those. It starts off with semicolon. If I come to this window, this is my python code. When I hit our period space notice it puts in the pound sign, right, And that's because it knows it's looking at this looking for the dot p y ass trick. And it says, Oh, hey, if that's in the title, that's the title, my file. Then go ahead and send the pound sign gastric. But if I'm in note pad, it's going to start it off with the dash dash. So, as I said, regular expressions are pretty complex, however, just simple stuff. I even I could have done it just like this and even just said dot p y. This would have matched if there's P y anywhere in the title, and so it can be very simple. I wanted to control for having things like this pie test in here, and so I wanted to make it a little more complex that wouldn't have false triggers, but that's how you can control for sending things, using this set title match mood and that's it 16. 16 Launching programs: in this session, we're going to cover how you can use hot strings to actually launch programs. This isn't a typical thing you would do. However, It's just it's good to point out that you can do this because you might have the desire to do it. And it's very simple to Dio. So let's let's have something to say if we wanted to launch our Web browser, So I'm gonna put in here and help you be, period and I'm gonna return here, I must say Run to say I want to go to a certain Web page right? So we can go to the auto hockey dot com So that would be Let me talk H cree. I'm gonna add a return down here. So when I say this and run it so now it's launched and I take WB period. Now, when I put in my space bar, it launches my default browser to that website. So it's very simple to do in the run. You can basically put if you put in a ah you Earl. It'll open your default browser. You could put in the type of browser you want and then add as a parameter the page to load . That's a little more complex. Let's say if you had excel installed So I want to launch Excel every time I take the X period. So I'm gonna say run, excel about DXC and add a return. The return is what stops it from continue on. Otherwise, it would run both when I do the Web browser. If I had admitted this on and actually I'll do a little demo, just make sure you understand it. So I'm gonna say this. Let's reload it. And now when I type X period space, it's gonna launch itself for me now. I could be anywhere, right? I could be in any, actually, even Excel Aiken Type experience base. And it's gonna run another instance of Excel. So just launches it. Excel works like that because I'm all the Microsoft products. Microsoft will insert the executed one the path. Otherwise, you've to go hunt down and find the path to your file if it's not in your system path. So let's let's pretend here that I had removed thes two. And when I type Web browser, WB period, I want to run both of these And let's also run note PAB No, I saved this. Reload. When I type WB period and hit space, it's gonna do all three of those things. So it launched note pad. It came up in this website launched Excel, so the return is what prevents it from continuing on down the path and that's it. 17. 17 Multiple computers Sharing Compiling: in the session. We'll talk through how you can share your script with either other people or use it on different computers. Basically, let's say you have ah, file that has hot strings in that you want. So I'm gonna add one here. Let's say I put in my initials and have that replace it with trouble. Glines. Okay, now let's say I want to run this. Have this on multiple computers that that have auto hockey installed The easy way, of course, is just Here is your script file hopes. Right, Right here. Um, this script file I can put into the other folders and it will work. Everything is in there. I can edit it. I can run it If you're fortunate to have Dropbox and Connexus it from all the computers on hockey does really well overall with putting the files under dropbox and keeping them sink . Everyone smile. You'll have it where they conflict, but for the most part they are easy to share, or you could have it on a network drive and share with your colleagues at work. However, let's say they don't have auto hot key installed, so what you can do is you can actually compile your script. So what I'm gonna do so it's not running right now. And there's two simple ways to that. I can come in here, right, click and say, Compile script When I compile it, it's going in the same directory. Here it is going to put a execute herbal, which is now able to be run. I noticed the file size right. Compared to this one, it's one K, and this one bumps it upto 3/4 of ah, made roughly. That is because it has now brought in everything the auto hot key yet excusable itself. Everything that needs to execute this script. So you can put this file on any computer, any Windows computer and should run pretty reliably. The bad side about it is, of course, is you can't edit it. I can't I can't go in and edit this file. It has now tied and execute herbal. You can, of course, come back to your original and edit it and then re compile its. The other great thing is, let's say you don't have rights to install auto hot key on your other computers. Well, you can still copy this execute herbal into any given folder and run it. You don't need to have admin rights to do that on most computers and even stored on a thumb drive and just move that thumb. Drive around with you in this in a great way to share scripts across computers. And let's say you have AH friend at work or a family member that, you know they're not as technical. This is a nice ways you helped build them. Their scripts make this excusable. Drop it into like the auto run to start menu it where it'll automatically run every time the computer launches. And they have, ah, easy way to use their heartstrings and that's it. 18. 18 Using Hotstrings in games: in this session. We're gonna walk through playing games and using hot streams, so I have doomed. Running. Here is a network game where I can chat with other people and in doing what you do is you hit the letter T. And if I could type, type up my message hit, enter and that will go and show up on the other person screen, write something, get back out of that. And unfortunately, the normal send method doesn't work right, right with doom, because one is older game. But just how it interacts with windows in that that is when you want to try doing things like Sen play right in both this son play here and SP here that the same thing I'm telling you, Send play. I also used this set key delay to slow down the keys as they get sent, and what you'll notice is, especially in this one, a multi line one. You'll see how they slow down when they're sending it. E. And what I did also hear was I put in this tea and in my heart string right so I can just type w au and is going to send the tea and then soon send the space, which I don't think just visually, Aiken greed them in my heart string better. I don't care if it begins with space and what could sent. That's fine with me. Sends Hey, where are you and then the enter key. This Astra here, of course, is going to say Don't wait for a period or any ending character here because I want it sent immediately. And so for these 1st 2 it's pretty obvious the next one. What I did was I put in a delay in between each time it sent because otherwise people, you know, being able to send its only really one line, I think that people can see on the other end the second your next message comes up, what you type disappears. So this allows people to read it on the other side. So let me, uh, back into doom here. Right? So my 1st 1 was So when I type w a you see how it is popped in there? Hey, where are you now? It's cents the keystroke t than a space. And then hey, where are you? The next one I can do rd are you ready to die and let's do the last one. So, MD. So see house much slower. That sending those who was dead. And it almost looks like I'm typing those out. Right? So that's how you condone send keystrokes. Two different types of games. Now, let's let's actually makes a sepa lo here. Get out of here. Let's say I wanted to use this. Hey, where are you? In another game? So I have ah, origin. And if I was going to send my son here, Johnny, send a message. If I just type the Where are you? Notices sent the tea. Right, T. Hey, where are you? That's because tea is needed inside doom, but I don't want it here. Right. So this is a great case of how I can show Aiken basically take the same thing and yet have it contact sensitive to detect what program I'm in. So what you'd want to do is you can if you have open, high, low, hot, descriptive about here and say, wouldn't a spy, right? That'll bring up this window. And what you want to do is identify the window. You know, either one and this one. I'm going to say okay, I want this one to hear because that's where I wanna be typing. And I'm gonna get this age K underscore. You see, origin dot e x e probably could actually type that out and not have to worry about it. Make sure you put it before the other one, right? You want the custom one to be first, where you're specifying the window and they knew what the other one to be later. So if when active and just dump that in there and now I'm gonna close it out. So that says when it's active, do something and then this is just basically turns it off is I'm not gonna put anything there. And now I'm gonna borrow this. Hey, where are you? Put it in here and I'm just going to get rid of that t space. Right? So now when I reload this and when I tape it in here and type, where are you? Notice There's no t here right yet. When I switch over to doom, remember, this is the same script running, and I'm typing the same thing. When I type Toby au it throws in the t of course you don't see it, but it uses T to get me to that window and says, Hey, where are you? And that's possible because I'm using this one active. It says, Hey, if this origin he actually program is the actor program when I type W. A, you send this and if I'm not in that program, so any other program, it would send this right, I probably should have done it reverse and said What? Doom is active because doom is the one that requires the tea, and that isn't gonna be a specific on the same on other programs. But it's just a good, easy example of how you can make it easier for yourself to be able to send the same keystrokes, and at the same time it detects what program you're in and will adapt it for you. 19. 19 Troubleshooting A User access Control UAC: in this session. We're gonna talk through what to do when you're having problems in how to troubleshoot. So the first thing is, if you are trying to get your heart string toe work, let's say I'm in ST. Here we go. I have this hot string right here and I go to run it and it doesn't work. The very first thing I always do is hate. Make sure is a green age here, you know it's a script actually running sound silly, but obviously, if it's not running, you don't have a chance for it to be working after you do that. Now let's say you just saw the hot key and you're trying to get to work, and you haven't got it to work really anywhere yet. Or that it's not working in one particular program. Nine out of 10 times it's the user access control user Access control. To come here to the auto hockey forum, you can see they document basically in XP. I'm sorry and Windows Vista, it's They started off this thing. This uses that use this access control E, and what it does is it prevents other programs that are running at a lower level from automating those programs e. And in Windows Vista it wasn't on by default, but on Windows eight and 10. It is on by default and actually Windows 10. You can't even adjust it. When you adjust that you have to reboot them and have it take effect. And so it is not. It's an easy thing to change now. We don't recommend that you turn it off permanently. However, it is a quick and easy way to test to see if it is the issue or not. So what I would do is open up control panel when you get to control panel, find user accounts. So you click there and this change user account control settings. This is where you can see I keep mine off. Why do I keep mine off? Well, it's because I am the only person that uses his computer. And I know better than clicking on random scripts or programs I don't unload. That could be viruses, so I I choose to turn it off. That is definitely not a recommendation. However. What I would do is turn it off. Hit. Okay, go back. Try your hot shrink if you're hot string works come back in. Said this back up to the level that it was rerun it in. If it doesn't work now, you've identified that it's the U. S. C. That is the issue. And there is one way that most the time. By adding this syntax right here to the top of your script, it will take care of it. What it does is it detects that if if you're not, if the script isn't running as an admin level, it will relaunch it as an admin level, and it basically elevates it. And then that way, the other programs you're trying to type in that are at the admin level, you can go ahead and automate them. The one of the biggest drawbacks of this, of course, is if you use this like if I have here where I say be, I forgot I have a heart strings like, um all right. No, our period. And then we're gonna move over here and say, Run, note, pad. You see, so anything if you do this, it is coming. When it launches the other programs, they are also going to be at the admin level. So it can introduce them and security. However, general speaking, it's it's not to be deal, especially if you're not telling on a hunt to launch other scripts. But that is the by far the typical thing you went into, especially when you notice the working some programs and others. So another thing I will do is lunch note pad and try toe. Perform my hot stream, try to get it to expand and note pad and if it works there, but it doesn't work, like in my sequel developer or at the email or something. That's when an often it's a USC issue and just need toe to add this to it, and that's the quickest and easiest way to do with it. 20. 20 Troubleshooting B General tips: in this session. We're gonna follow up on troubleshooting as we mentioned earlier. Often the USC is an issue we're gonna walk through here. It's give me some kind of Q and A and what to do, depending on the response. So, as I mentioned before, the first thing you want to do is look, make sure the script is actually running right? Simple one. If it's not running majors there, Actually, we start the script. This is if if your heart strings aren't working the way you want them to write after you do that, is it just one hot string? Or is it all of them? If it's a specific hot string, is it? You know, let's try it. Note, pad try and other programs tied to one program. If it's not, if it works in just note pattern, not the other program again. It could be you a see that could be just That program has built in things that will not allow you to send in that format. On down here, we'll get in some of the other formats. Uh, you've been used to send keystrokes, but, um, again test the privileges. If if you're doing a context sensitive one. This is when you you have the same. You type the same abbreviation for something, but it it is supposed to send a different content. If you're in a different program, make sure that you have the context part first, so you'd have the site listed first and then everything else after it. Otherwise, it never gets to the next one, so make sure the order is correct. Um, hey, reboot the computer. I'd even say, Put that up with the topless first thing you know it's Windows, right? Just reboot. Make sure that you've restarted the computer. I'd also say Kill off virtually anything and everything else that you can just to make sure there's nothing conflicting with it and try a note pad. So basically eliminate all the other things. That might be because, more often than not, it's something is conflicting with it. It's not that your script itself is necessarily not working correctly after you exhaust all those. Generally I when I start doing is is I start looking in the auto hot G four or stack overflow to see if people have had similar issues. Make sure you figure out the problem is consistent if it does the same thing over and over and over. Can you actually try the same script on another computer and verify that it's Is it the computer? Or is it your program? The script that's actually the issue? Um, sometimes if it's receiving some but not all of the hot string what you might try and do it . So there's We didn't really go in depth in these because it gets starts getting pretty technical, but there is a send inputs and events and place and raw. These are all different. Send types of communes in this 1st 1 here so you can add this pound hot string s I at the very 1st 1 What that will do is change the default doing send input that if that is a work , try send event and send play in those just all they work differently with different programs. Some of them work a little faster than others. The I don't hockey does a good job of putting the best guests and then trying one, and if it doesn't work during a different one, so typically you don't want to play with those. But it's a good thing to say. You know what? I'm gonna go ahead and give it a try to send one of the different. He's one of different send Koreans. Um, another thing that will happen is you won't realize that you have the same hot string and another script, and it is launched before the one that you're working on. And so that is the one that's in memory. And so just make sure that you don't actually have, you know, what I will often do is put in something. I am sure that is not a heart string somewhere that beginning to figure and make sure that I'm actually triggered right one. And then, of course, you can hunt it down and figure out where it is. Um, if you're doing something with Unicode, first thing do make sure you're actually running. Coming here is the easy way is I think in here you can go up and see. Here's on a hockey version. What version I'm using. Um, I don't hockey with installs and actually installs, uh, the 32 bit 64 bit in ANSI and Unicode versions of them. It just depends on what's the default version And so if you're trying to run Unicode, obviously you want to be using the Unicode utf 32 or 64 bit. The other thing that you want to do is make sure that you the encoding of your files of this. Let's go back to site here. If we come up here to file and say encoding right. If I make sure that this is is configured, I usually go with utf eight. Bomb depends, of course, what I'm gonna have in here. But sometimes that isn't set correctly. And then on a hockey won't see the Unicode text incident correctly. He and the the other last thing that will come out from time to time is certain programs will look for these line ends and new line fields. Sometimes they want both. Some programs want both. Some programs just want the new line and some of them what the line return. And so if you end up having double spaces or not enough spaces, try sending instead of using two of them, you know, send one or some together or send both, depending on what you're trying to do. But more often than not when you're getting double spaces, the program only wants one of them and not both 21. 21 Example A Autocorrect Spellcheck: in this session. We're gonna cover this script. Auto, Correct HK. It's a script someone wrote You can start. It started years ago and it's been tweaked here and there. It incorporates several different misspellings as well as just some difficult endings and words and things. The actual script, if you look at it, is thousands over 5000 line flow. What's great about it is that it basically allows you to have a spellcheck running in any Windows program. You know, if you have it running, the what you do is let's go ahead and launch it. So I'm gonna launch it, see the green age come down here. So now it's running so I could be in anything. Let me let me fire up Note pad and I could be typing in here. And if I type something, I think this is T I g. S. See how it fixed it for me. So if we were to searching here, you'd see that T I, g and s is gets replaced with things, the correct spelling of it. So it works in any program. The thing you might want to do is, if you really like it, you can you can uncommon this and this will stop this green age when I was showing in the state running. But it won't be displaying here in your system tray. The other really cool thing they built into it is Let's say you have something, um that you wanted to have a heart string for. So put me bring in some tax. Let's say I wanted to have this text and have a hot string for What I can do is I can highlight it. And if I hold on the Windows key and hit H, it's gonna pop up with this gooey here. And what you do is it's a little difficult to see, because what it does is it puts the string you have in there twice. It doesn't replacements for you, and it puts it on the left and the right of the colon. So what I do is I come in here and I go back and I get rid of everything left here. So there should be four. Um, 12344 there. And you go between the two, just like you didn't clustering and say so. Tw the world ends period right now when I hit OK, what's really cools it actually reloads that. So now when I type t w e period space, it throws it in there for me. And if you look here at the AutoCorrect one, it is dumping it at the very end of that hot the script. So that will automatic dependent here. It's just a quick, easy way that if you're not into doing too many things without a hot key and you forget that structure of the two Coghlan's the word to Colon's. It's a very quick, easy way to have it automatically run an update in dumps it into the same script every time . 22. 22 Example B Hotkey Help: in this session, we're going to demonstrate the script. Hot key. Help those written by sitting at a guru in 2013. There has been a couple tweaks made to it to make it a little bit more user friendly for new people. But overall, it help you remember the hot strings that you have available. So I'm gonna launch it. Now we launch it is going to go read through every auto hot G script you have running at the moment and it pulls up to things automatically to pull up the hot keys and hot strings . Since we're only focusing on heartstrings nous course, I'm gonna just talk to the heartstrings aspect. But when you scroll down here, let me jump to the bottom. You see, this is where here's another file. Another file in each one has broken out separately. What you can dio is after you launch it. If you come over here and you right click, you can go to either help or settings. All right, let's say help. Help is that's what this is. It's the hot key Help. It's not actually helping how to use the program. The help is to help remind you when I type GHT to put in this when I type in CPI, put in this right, So it's a cheat sheet, basically of a way to see what hot streams you have that exists. The other thing that you can do is right. Click here and say settings and what you want to make sure you do is you Shohat strings right, because if this is untracked, it'll only show you the hot keys. Which, of course, we're not focusing on us course. But just make sure that that is visible and finished, and the other thing you could do is you can come in and this is ah way you could go in and you consent one. Edit certain script. I want to suspend it. Pause it reloaded. It has some nice interface, especially if you have hidden the tray icons and other programs. This is a way. If this is running, you can say, Oh, you know what? I actually don't want to go at it, This one, which I don't have in my system tray, and that's it. It's a great, easy way for what do you start with hot strings? It could be confusing to people who haven't done it. So this they can. They can just double click this icon and it'll pop up with this menu and they'll start seeing the script, the heartstrings they have, and then what gets put in when they do the replacement?