 So way back when I was a Mac user and I was it was a it was a university thing I think as a college student you kind of have to be a Mac user at least there's some rule that says you have to be So I thought I had to be a Mac user too, and you know, I had a Mac book. I had an iMac I had the whole kicking boot alive was an Apple fanboy at the at that point and it was a shameful Experience in in my past, but that's not why we're here today What I wanted to the reason why I bring it up is because during that time I came across a program called I think it was called text expander or something like that and the basic idea there was that you could input a list of Things into a configuration file or into the program and that when you type those things it would replace it with something else So if you misspelled the word the all the time like I freaking do I know it's a silly thing to do But I always type it in the wrong order. I have you know specific reasons why I do that I don't do it on purpose But the point is is that I always type certain words wrong and when I was using text expander I could put the wrong thing into the text expander program and it would automatically replace it with the right thing and Same thing if I wanted to type in the date I could just type in date and it would expand to the day's date that's what text expander did and when I moved to Windows and then later Linux. I kind of missed that program So recently or I guess a few months ago I was taking a look and seeing if there was something for Linux that did the same thing as text expander and it turns out that There is it's called a spanso ESP and so and this little piece of software is Fantastic not only is it open source, but it works really really well So that's what we're going to be talking about today But before we jump in if you leave a thumbs up on this video, I'd really appreciate it would really help the channel So let's take a look at a spanso So the idea here is that when you type in something that you want to have replaced You'd go into the configuration file and you set it up so that when you typed that thing It would replace the thing that you typed with the thing that you actually desired So for example, if I go here to discord and I'm just typing along and messaging my friends on my discord server Link in the video description. You want to be one of those friends if I go here and I mistyped the word the TEH as you can see It automatically corrected to THE the proper spelling of the word because I like I said I always type the TEH I Always do don't do it on purpose again. Just my dyslexia acting up for whatever reason always do it I can't stop So I have set it up with a spanso to change that same thing with the word YouTube So if I type in YouTube it actually does the proper capitalization for YouTube One of the coolest things about a spanso though beyond just being able to set up your own Expansions is that they actually have language packs that you can download so that it correct corrects common mistakes So for example, one of the things that it has if you download it properly you can say type in do and T It'll actually properly contract that word. It'll add the post if you where it needs to go same thing with like to say doesn't like so You know, it will properly contract that word so that it appears just like it should and And it has these packs. So for common spelling mistakes and things like that You can download those and you don't even have to create the expansions yourself You can just have those packs and they run in the background. So what does this actually look like? So if we take a look at the configuration file, this is what it looks like It's in a YAML file. So you need to know a little bit of YAML And when I say you need to know a little bit of YAML really what you need to know is that it the spacing matters here So as long as you follow the syntax and the way things are laid out here You're gonna be fine and it has some examples along the line before you get into it So you can just copy the examples but the basic idea here is that you you tell it what the trigger is so in the case of Why are you here? I have this set up so that because I always capitalized O in the word you and I wanted to change that So when I type in capital Y capital O small lowercase U That's the trigger and it will replace it with the proper capital Y small case. Oh Lowercase you you get the idea right same thing with YouTube when I type in YouTube It'll that's the trigger it'll replace it with YouTube properly capitalized same thing with the right So those are the things that I have just added here to use and really it's the only three that I've added myself Because the packs that they have are so good So I'll show you those packs here in a minute But the basic idea here is that any trigger that you want you can just put here So for example again, they have the date one automatically. So if we go back to Discord, let's just type in colon date It's actually going to then put the date in and expand it just like you would if you typed it yourself, right? So that's what this part here actually looks like you can actually change the format if you want to there's a whole bunch of different stuff You can check the documentation for how you can deal with the type and the parameters and all that stuff for whatever Trigger and replace mechanism that you want you can do basically any of that stuff same thing with the shell Expansion if you wanted to so for example, you could do the shell and replace it with the output and then have the command be echo Hello world or whatever You can use this in all forms in them You can use it in your terminal. You can use it in discord It basically functions system-wide as a service that runs in the background now Here is one piece of caution for you is that there's two different pieces of a span so one works on xorg One works on Wayland So if you use a Wayland compositor or you're using GNOME or KD with Wayland You'll need to make sure you're using the proper version of a span so that works with Wayland They don't come together. You have to download them separately and you don't want them both running at the same time Obviously, it will actually warn you if you're running the wrong one. So that's one thing to keep in mind So let's actually take a look at the packs that they have to offer So if you go to their website, which is just a span so org and you click on packages You can actually see the packages that they have on offer So they have like so say for example, you're a web developer and you're always using laura mipsum And you don't want to actually have to type out laura mipsum all the time Or you don't have to go find it and copy and paste it you can actually just click on this And then copy this go into a terminal Paste it listen to kitty tell you why you shouldn't paste think I'm gonna paste it anyways It's going to install inside of a span so and then up here It's going to tell you within a notification that a span so configuration has been reloaded And then you can actually use that particular package. So if we use one of their Triggers, so these triggers are now automatically loaded in a span So so if I type in this one here, so let's just go do that So it's this sign here to and then what was it laura right l or em Just like so and it'll actually give us some laura mipsum now. That's supposed to be two sentences I don't really see two sentences there. Maybe that's a Terminal problem, but you get the idea right that the actually that's let's just see if it does it here Let's do pound. Oops. That's not a pound. That's not signs pound laura. I'm like so And Yeah, it doesn't really work very well in the terminal. So let's just actually open up them here and do pound laura Like so and actually not quite working in them either, but you get the idea, right? So if you do if we do it does actually Sometimes work a little bit so that particular package isn't quite where it's at But I'm guessing that if we were in discord it would work better. So if we type in Pound like laura. I'm like so. Yeah, there we go. It worked better in discord So you can see that there are some places where it doesn't always work The individual triggers like the and youtube that I have set up mine my own do seem to work just fine in them most of the time Sometimes they don't so that is something to keep in mind But if you're using a graphical application and it's in your browser or you're using the google docs or you're using kato Whatever it works just fine It's in the terminal where it does have a little bit of you know issue But that's one of the packages you can add and obviously there's other packages here So you can do emojis the html or utilities package So if you wanted to have it so that you could expand into particular pieces of html So it would give you the doc type and the medicare set and all that stuff All this stuff would be if perfect for someone who is a web developer But isn't using the automatic expansion stuff like vs code offer So if you're using like kato, whatever you don't want to set all this stuff and you want it to happen system-wide You could use this particular package set one of the packages that I was talking about earlier is actually this one I actually showed this off earlier is the contraction dash en That's the one that replaces contractions when you don't Properly put the apostrophe in the right place and they do Have this for other languages so things like italian and spanish and french and stuff So there are other packages for other languages if you don't speak or you are right, you know in english So that's another thing that's really cool And there's another one for like I said, there's one for common commonly mistyped Words that you can download all this stuff is just a matter of Going up here paste this into the terminal and after you've obviously you have to have an expansive installed and running You copy this you put in the terminal and it would actually install this particular package And it will reconfigure reset up the configuration file just for you automatically and that's as simple as it is So in addition to being able to do the things on your own so your own custom triggers and Replacements you can also add in those packages that will make it so that you don't have to do all of it on your own So the commonly misspelled words thing is something that just is kind of runs in the background And prevents me from misspelling things all the time It's just really fabulous. It's fan freaking tastic And it just is one of those things that you set up to run at at boot And it just runs in the background you kind of forget that it's there But every once in a while you just see like oh, I misspelled the word the again because I always do And it corrects it. I don't have to worry about it. I don't have to go delete delete delete Slowly type in the word the because I know how to spell it and then move on it just does it for me now Some will say that this is a very lazy way of doing writing or messing around with you know words on the computer it is but You know it saves you some time And I think that that's the best thing about expansive is that it can save you quite a bit of time And it allows you to customize this thing as much as you want You can do all the customizing yourself or you can download the packages and it just runs there in the background And it's fantastic. So this is available on basically any Linux distribution It's not in the open suzer repositories, but it is an open build service It is I believe in the fedora repositories But it might be a copper I'm not exactly exactly sure like I said at the beginning You will want to make sure you you're downloading the correct version here. So if you're downloading the x11 version There's a dev package. There's for the fedora uses the the app image I suppose that they recommend the app image for most everybody, but it's actually in the most repositories again if you're on Uh, or she would probably download it from the aur if you wanted to download the actual binary instead of You know app image So downloading it and installing is is really easy and it runs at startup One of the things that you will have to do once you do have it installed is you'll want to start the service So you'll need to register as a service and then you'll want to start it as a service now One thing to keep in mind here, of course is that If you're not using system d this particular way of doing things is going to be different for you This I believe only works on system d and it does actually say that so this is a system d service And obviously if you're not running system d it's going to be a little bit different So just keep that in mind chances are that's the way you have to do things normally You know who you are so that right there is a span. So just a quick Look through and I've been using this now for months and months. It is fantastic It just runs in the background and does its thing every once in a while I'll think well, you know, I'm going to go look through some packages and see if I can add stuff So one thing I noticed is that even though I've added probably five or six packages It doesn't affect system performance at all. I thought that maybe that it would but it doesn't I haven't noticed it taking up any resources whatsoever every time I'm Trolling through each top or b top or whatever. I don't even see a span so listed It's just there runs in the background takes up very little resources and does its job Appropriately so that is a span So if you have thoughts on this you can leave those in the comment section below I'd love to hear from you. You can follow me on mastodon or odyssey those links will be in the video description You can support me on patreon at patreon.com slash the linux cast You can also head on over to the merch shop where you'll find desk mats and t-shirts and hats and hoodies and Beanie's and all sorts of awesome stuff all branded linux cast logos and Neat and awesome sayings and stuff like that So head on over there if you want to check out merch and help support the channel You can find that at shop.thelinuxcast.org Thanks to everyone who does support me on patreon and youtube because we're all Absolutely amazing without you the challenge is when I'm anywhere near where it is right now So thank you so very very very very very much for your support again truly appreciate it. Thanks Everybody for watching nailed it and I'll see you next time. I said the word everybody correctly on the first try This is only my 900 and fourth video I finally got it Good good