 So I'm always on the lookout for a new terminal emulator simply because I like trying them I think that terminal emulators are cool They make me look like a nerd which I are one and it's just I do a lot of my work in the terminal So the tool that I use to do all my work there really does matter So today we're gonna be taking a look at one that has been recommended to me many times before and that's Westerm now Westerm is written in rust. So if you are a rust fan This may be a terminal that you want to take a look at it's also configured in Lua So it's kind of hitting double duty there. So a lot of people also like Lua. So win-win, right? So Me personally, I don't like Lua all that much So the configuration was a bit of a mess and we'll talk about that later But if you like Lua, the configuration file is Expansive when it when it comes to options that you can do and we'll talk more about that as we dive in So first, let me actually take you to my desktop and show you what Westerm looks like and as you can see first of all obligatory neofetch to show that I'm still doing the challenge Next thing I should say is that it does have tabs. So if you are someone who uses tabs inside the terminal Westerm has you has you covered there. It also has split. So if we do super Alt or excuse me if we do control alt shift and then the number five It will split vertically if we do control alt shift and the quotation mark button It will split horizontally. So it does have a ton of Features in terms of how it's laid out You can drag this with your mouse if you wanted to make these different sizes There's a key binding to change the size of those if you wanted to change the size You can navigate between them using the arrow keys I believe control shift and the arrow keys navigate between these is what it's supposed to be Control shift and the arrow key is what's supposed to do it, but it doesn't work for me so much Maybe I'm just doing something wrong there. Oh, that's because I'm pressing the wrong buttons. There we go Helps if you're if you're pressing the right buttons. Who knew anyways, it has that functionality So if you use Tmux one of the features of Tmux that is really awesome And my you know limited experience with Tmux is the ability to split your pains and have different sessions running So it's possible to do that right inside Wes term as well, which is Fantastic in terms of other features it supports the terminal pains Which we just showed you has tabs and windows on local and remote hosts So if you're using this on a remote host, it will work as well It has native mouse support and scroll back support So you don't have to build any of that stuff in I don't they really shouldn't have to say that those are features But I will blame the ST, you know terminal the simple terminal for all that because that doesn't have it built in It supports ligatures color emoji font fallback and true color and dynamic color scheme switching Which I'll show you here in a bit it supports hyperlinks and when I say it supports hyperlinks You think well, you know, that's not that big a deal every terminal emulator has the ability to Support hyperlinks in some form of fashion when it comes to hyperlinks in Wes term you have a ton of control over What is hyperlinked how it works whether or not things that are usually hyperlinked aren't hyperlinked and so on And it gives you the ability if you know regex to basically Make anything you want a hyperlink, which is really cool Another feature that is really cool if you can get it to work is searchable scroll back now from one I've experienced over using this for a little while It's not as cool as you'd hope it would be now. Maybe I'm just using it wrong, which is a hundred percent possible. I would say The searchable scroll back function should allow you to search through your previous history inside of the session that you're currently in In theory like I said, that's the way in theory now I have in this particular session Several different commands that I've run so I should be able to hit control F and search for LS And it actually does highlight LS there But if you if I hit if I clear this and then do control F and do LS it doesn't so the Scroll back functionality doesn't really work. I'm not sure why maybe I'm doing something wrong Like I have to have like a page up or something like that because they mentioned that in the the key bindings here somewhere Oh, it's down here moving to different Search terms that you've searched for should be able to be done with up arrows control P page up page down things like that But we know LS is there, but it doesn't actually work I'm not sure why and just regular scroll back which should be a default feature doesn't actually work So you saw that I had like I had a lot I had LS there and I had echo hello world there and I should be able it if I Control L usually and I scroll up It should just take me back to those things that I just had but it doesn't so if I open up, you know a regular Console here and I do the same thing echo hello world, you know, and then I clear it I should be able to Maybe it's just my particular You know that I see this it must just be something that's going on with my system Why that's not working because you should be able to scroll back many different lines And I have it set set in the configuration file So if I show you the configuration file, which we'll talk about here in a minute I have scroll back lines to set to 3,500 so it should you know go back now. I'm guessing If I type in bash here and go to the bash shell and then do I'll ask to echo world So and then do an LS and then scroll back. No, it's still doing bash either. So it's not a zsh problem Live troubleshooting with Matt who knows but anyways that feature is really cool So if we exit here and then do control shift f you can see this box that's this this bar that appears at the bottom You should be able to if it's working on your system search through the previous history of that particular shell I don't know whether or not it will search through anything previous to that shells creation or not So that is something that I'm unsure of but the fact that it has this feature if it can you can get it working It's pretty cool. Other features include the ability to render underline double underline italic bold and strike through something that most terminals Don't actually do so if you're looking at like a Documents you should be able to see some of that stuff that you wouldn't normally be able to see It's configured via a little configuration file Which I'll show you and talk about here in a minute But it also has hot reloading now one of the features that I really enjoyed about a lack Security was the ability to change the configuration file save it and then have all instances of the terminal actually Source that new configuration file, which is means that any changes that you've made take place live immediately after you save the file This is particularly cool because it does have dynamic Color schemes inside of web term and they have almost 800 different Color schemes included and all you have to do is change one particular line So if I take you back here and show you the configuration file that I've created so far It has this line color scheme equals Batman if I change that to Dracula and then go back to here You should be able to see that it changed to the Dracula color scheme so the ability to change that Dynamically is really really cool and something that I've missed in the terminals that I've used since I moved away from Alacrity now There are several other features Most of them more useful for developers So it has X terms style selection of text with a mouse with a shift insert It has the ability to be an SSH client with native tabs as the ability to connect to serial ports for embedded and Arduino work Things like single board computers and stuff like that as term for some I term for I term to stuff for some kitty graphics and So there are a ton of features here and I highly recommend you go into the documentation because the documentation is really really good And in fact, I would say that it is a necessity For you to go to the documentation actually see because by default there is not a configuration file for you And now this is not unusual for there not to be a configuration file Automatically created a lot of terminal emulators and programs don't do this Usually, however, there is an example somewhere either it's on your computer somewhere or you can find it online somewhere For what's term? There is no default configuration file. This is my biggest Absolute biggest downside for this terminal emulator. There's not a default configuration file So if I show you this I created this Okay, you can put it in dot config slash what was term and then the the Document is called was termed out Lua. So it's configured in Lua. So if you know Lua You should have no problems whatsoever and the documentation is actually really good So if you go into the configuration, it shows you basically everything you need to know to create your Configuration file. It doesn't do a fantastic job of explaining why you need some stuff. So for example, apparently every configuration file needs a return Line inside of it somewhere. So if you're going to have a configuration file, it has to have that one thing in there otherwise it won't work and It doesn't explain why I'm not sure why there's also this line here That it says you probably should have but it doesn't explain why so the the documentation does fall down in some places and And I'm assuming that if you know Lua, which I do not know Lua. I know very very little Lua I'm assuming that if you know Lua, you probably know why that portion there is actually, you know, necessary But if you're a you know, not a Lua programmer, maybe you don't know why so there's no default configuration file and the developers seem to be very against ever having one so If you are someone who prefers to have a default configuration file to work from which is exactly like me I want a configuration file that I can go through and you know, you know, learn line by line right, it's much easier for me to learn a configuration file that way instead of trolling through the documentation is just the way that I tend to learn and Unfortunately, that's not available here. Now. There are other options for you You can go find someone else's configuration file and learn from that That's probably what I'll end up doing if I stick with this or you can just go through the documentation like that Like the developers want you to so that's the biggest downside of Wes term. No default configuration file and Honestly for me still kind of a deal breaker. I was pretty upset with it when I first found that that out But we'll move past it. So let's talk a little bit about the configuration file itself All the documentation here is like I said fairly well filled out shows you how to launch programs set the fonts font and Shaping which I still have no clue what that's all about. I don't know what a hearth buzz actually is I've never heard of it before but apparently it's a feature It allows you to see how to set key bindings if you want now the thing that they've kind of buried And I wish really wish they'd linked to this on the front page around, you know The top page where they're talking about features They should link to this page here because this page here is super important And that's because this is the list of all the default key bindings So if you want to know, you know, for example, how to create a split, you know And you didn't happen to see that there at the beginning You would have to come to this table here in order to actually see what that key binding is and there are a ton of default key Bindings and obviously all these can be remapped with the configuration file if you want I really do like I said wish that they would have this linked on their features page It'd be super helpful because I've actually made this video one time already got 20 minutes in Harping on them for not having a central place for all their key bindings And as I was going through the documentation as I'm doing now I stumbled that I'm upon 4.7 buried inside of this particular drop-down and boom there it was and I had to start over again So maybe I'm a little salty for the fact that I had to redo this video But I would really like if they would link that in on the front page or on their features page or whatever Maybe if it's even maybe it's even there and I'm just you know blind or in a bat Who knows but anyways, this is probably the most Important page in their documentation. I will say this though about their default key bindings They are way too reliant on the super key Okay, the super key is a key that is used extensively in Tiling window managers by most people. Okay. Now. I understand a lot of people use alt Your weirdos. I can't help it your weirdos. Everyone uses the super key even says super right on my keyboard Okay, it's the windows key for those of you who don't know I'm not judging people who don't okay So I am just a little bit but anyways the point is is that the super key is used by a lot of people for their key bindings for their window manager and because I'm a window manager refugee Even though I'm using plasma right now a lot of my key bindings that I've set up over the last three days Since I moved to Redcore are all things that I've been used to in a Tiling window manager and all those use super So I'd like super D brings up cave runner, which you know is what I'm using instead of Roe v right now You know super cute closes the window super one two three four moves between workspaces And if you if you go down here, you'll see super one two three four activates tabs inside of the terminal And that means that they're conflicting So I really really really wish that they hadn't ever used super as one of their modifier keys Because that means that if I were to use this I'd have to go and remap all of those or I'd have changed the Keybinding inside of plasma or whatever desktop environment slash window manager that I'm in that'd be a pain in the rear end and probably not something that I'm actually willing to do simply because that's a lot of freaking work So that's the number two downside to this And really those are the only two that I have the lack of a default configuration file and the fact that they use Super extensively inside of their default key bindings I really wish they didn't do that and I really wish they had a default configuration file Which should make it actually easier to change the key bindings Because you just go in there and add them to whatever section for key bindings that they had in the default config But that section doesn't exist That means you have to go to the documentation create it inside of your own configuration file and it's just it's a mess So it does seem like I'm being overly negative and maybe I am just a little bit But those two things really kind of peeved me off just a little bit So let me kind of wrap this up in terms of overall use it is a good Terminal emulator. I like that it has splits. I like that it has tabs I don't care for the default key bindings, but those are theoretically changeable So that's not that big of a deal and it is very very fast So I will say that I have discovered some bugs So you guys saw me earlier the scroll back bug doesn't actually work But I'm guessing that that's not a web trim thing it apparently doesn't work in console either So that's a me problem. Not sure what's going on there I thought maybe it was a bash or a zsh thing. Maybe I didn't have zsh history enabled, but it didn't work in bash either So that's weird. I'm assuming that if I figured out that particular bug or system-wide bug I should say that the search scroll the scroll back search would actually work, which is a truly cool feature I've never actually seen that. I'm because I'm assuming that that feature is in other terminals And I've just never even thought that it should exist before but now that I know about it I'm gonna be searching for that feature in every terminal that they use because it's really cool to be able to search back through your history Very very easily and now I know there's a command to do that inside of the command line But they have it built into your terminal with a key binding was pretty cool. So web term overall a very good Terminal emulator with some issues I would say If the developer happens to see this I understand I read your thread on GitHub about your disinterest in creating a Default configuration file and I understand your reasons and things behind that they talked about how a Default configuration file would not be updated and usually a lot of stuff is commented out So it won't be testable either so I understand that part but relying on people to create a configuration file through a Segmented documentation where they have to go step by step by step is asking a little bit much for a lot of people and It just is a barrier to entry for you know your terminal and just it's not very good But teach their own for me personally Honestly, it won't be that big of a deal because I probably can create my own configuration file eventually anyways But the default key bindings is the bigger issue who don't use the super key because a lot of other things use the super key to and they all came before you so Those are my thoughts on web's term if you have thoughts on web's term you can leave those in the comment section below I'd love to hear from you. You can follow me on mess down our odyssey those links will be in the video description You can support me on patreon at patreon.com slash the Linux cast links for libera pay and YouTube will be in the video description as well Thanks everybody that support me on patreon YouTube you guys are all absolutely amazing without you the challenge It's not be anywhere near where it is right now. So thank you so very very much for your support I truly do appreciate it. You guys are awesome. Thanks everybody for watching. I'll see you next time