 Okay, this is going to be a video on my i3 configuration and the changes I've put it through, you know, since last time I did one of these. I figured I might as well do one of these just because, one, it's been enough time that, like, I've put on thousands of subscribers since last time. And on the other hand, like, I have been making lots of changes, but I've about gotten to the point where, I don't know, I'm making fewer changes as time progresses, so I think I'm finally converging on what kind of setup I actually want to have. Of course, the changes have been coming at a more gradual pace for months now, but now I'm pretty happy, I don't make many changes on a daily basis. So anyway, for those of you who are new to the channel, right, so the Windows Manager desktop environment that I use is i3 Gaps. So it's a tiling window manager, so you make a bunch of windows and they all fit together, so I find that very convenient, I wouldn't use anything else. And i3 is one of, besides, let's say, awesome window manager, i3 is probably the most popular of tiling window managers. I think it's the most popular, but it's probably pretty close with awesome. So anyway, in this video I'm going to show you what kind of keyboard shortcuts I have, or at least give you an idea, what kind of setup, like, how do I actually use this thing. So before I get to that, I should say, well, this is relevant, but I do have a github now, and it's going to have all these config files on it, so you can check them out. If you go to my github, which is just a luke smith xyz, and you go to the void riser repository, it says it's for void linux, but it should work on most linux distributions. There are only a couple things you'd actually have to change, but if you go to the config folder, if you want my i3 stuff, you're going to want the i3 folder, the polybar folder, and the scripts folder, I think that's what you need, and they all go in just .config. So yeah. So just download those, and you can check them out. So you'll also notice that I do have documentation there. Last time I put up my configs, I had a little guide, and you can get to that. If you have my configs running, you can just press mod and f1, and it'll bring up this little document where I just sort of detail. It's sort of for a total beginner, like how this thing works, stuff like that. So I'm not necessarily going to go over that, I'm just going to go over my actual i3 config, because that's where the magic happens. So let's go ahead and start this thing up. So I start with some basic definitions. I set things like the gap size. So I have a gap size of, actually I'm going to turn on screen key. So I have a gap size of 15 pixels. So whenever I spawn windows, there's going to be a 15 pixel difference, I mean around them and, you know, in the middle. And of course I can change that with mod s. I can increase it, mod super s, or excuse me, mod s and mod shift s. Mod shift s decreases it, mod s increases it. You can do the same thing with outer gaps with z. So that's pretty simple. So if I need full screen or, you know, I don't want any gaps, mod shift d, mod shift t to get back. So pretty simple. URXVT is my terminal now. Last time I put these videos up, I think I was using termite. But I actually switched to URXVT again just because termite has some problems rendering images. Termite is good for some things. It's good at handling like Unicode. But URXVT works a lot better for like rendering images. And although I do use Unicode, it's better to have this. So that's pretty nice. I also have, and I define some variables. We'll get to that later though. So I have some external scripts that I start. So you got MPD, my music player, there it is up there. I got transmission daemon, network manager applet. Let's see. Compton I use for getting rid of screen tearing, also for my transparency in terminal windows. And let's see. Oh yeah, the big change since last time is I now use Polybar. So this bar up here, this is now Polybar as opposed to like the normal i3 bar with like bumblebee status. That's what I use last time. And I'm actually happy that I got a lot of people using that. It was in my last configs. Now I use Polybar though, not because I dislike it now, or dislike bumblebee status. But just because I wanted to try it. And it's actually pretty nice, it's pretty simple. So you got MPD client up here, you got your workspaces over here, volume. As you can see, my computer is really hot now. This is my X220. I usually have a kit on the way with screwdrivers so I can redo the thermal paste on this thing. But it's getting, look at that, it's getting to 90. And I'm just screen casting and that's it. So, but anyway, it's no big problem, don't worry about it. So yeah, also remap some keys. I use US international as a keyboard now, just so I can write like fancy characters. Part of that is because people started emailing me in like Spanish and French. I want to respond with like the actual accents on the characters and stuff. I don't want to be a goober and not use them. And then, yeah, so, you know, other basic stuff. Oh yeah, I do, I should say, if you are going to use my configs, I do turn the touchpad off. You might not want that. I just don't use the touchpad, I always use the track point or an external mouse. But you might want to comment this line if you do, yeah, if you do use this. But anyway, so other stuff, so audio definitions. That's actually pretty important. Keep in mind, we're still not getting to the actual bindings. But these, so these are like for what different music players you have. So here I define some variables for like, you know, what's the command for pausing the music and music player Damon. Or like going next or back or moving forward in a song so I can, you know, I mapped these to keys later. You can probably hear so I can go forward and back in the song. I can go to the next song or back a song like all these things I mapped to various variables here. And then I map to like specific keys later on. Now if you use music on console player or CMOS, you can just uncomment these and comment out these. And you should be fine. I just have them here because I used to use these. And I have the same thing for pulse audio. Most people use pulse audio. I happen not to. So I have also mixer controls. This is for like increasing, decreasing volume, you know, different stuff like that muting. Anyway, so here's another, we're just about to get to the bindings. But I'll just say here's another little thing that I think I added in the last video. So I probably should you guys but like drop down menus. So for example, if I basically you do is you have a start up a window and you give it a name. You see here I name I named this window like drop down. And then you give that name like different like qualities like I wanted to float. I wanted to resize stuff like that. And then you can bind another key to like show or hide that window of that particular name. So I have mod you and that's going to like show or hide the window like whenever I press it. So this is like a drop down terminal that I use for like doing. I don't know just different stuff like I'm trying to you know, usually like running background scripts doing updates. And I have another one down here that's like an R window and actually make it bigger pixel size. This is just for like doing math like because sometimes I'll need to do some math while I'm doing some work. So that's just super nice to have and get rid of them by pressing the same key that you bind to show them. And I'll show you what that looks like later on. Okay, basic bindings still not to the keys. I'll just say nothing, nothing huge here. As I mentioned in my last video, I do have a shortcut for like flashing windows that you're on. So that's what this flash thing is. That's so like you don't lose like lose track of which one you're on. So that's nice. And here I have the shortcut that I sort of in my head. I sort of think of it as like porno mode in the sense that like it's a command that you know, let's say you're working on something in your office and you don't want anyone to see. You can just press this binding mod shift delete and it'll mute your music, pause it, move to a new workspace and make up some distraction, whatever, you know. So anyway, I'll just press it. So it just goes over here, pulls up some windows, mutes your sound and everything. So that's pretty nice to have just, I mean, I've never used it, but you know, it's nice knowing you can just do that if you want to hide everything. Okay, so letter key bonding. So this is really where the magic happens. So first off, pretty much everything I use on it, all the basic programs I use on a daily basis are bound to some keys. So you'll see that I have basically every single letter key bound to something, a couple exceptions don't have anything to mod shift F. But, you know, you got your basic stuff, of course, like moving windows with Vim keys, right. And I probably mentioned in my lat, my other videos, like I resize them. If you move from Vim keys one layer up to why you, you know, hold down shift and mod, and you can move the move or resize windows, that's what I should say. So you can resize them pretty easily. So that's super nice. I don't know how people survive without that. I mean, some people are still using resize mode. Don't do that. It's a waste. Just bind some, bind some other keys. So the kind of, I also have lots of programs bound to them. So like Ranger, mod R, you know, we got H-Top, mod I, you know, mutt at mod E. Oh, by the way, I'm way behind on my emails. I have like a couple, yeah, so if you've emailed me in the past couple of days, I haven't been responding, but I'll get back to you guys soon enough. Let's see what else. You know, I've got like CalCurse, WeChat, you know, all the, all the kind of stuff that you may or may not use. I bind to different stuff. And it's just nice to have. And again, I have like a bunch of music bindings. So like mod M is bringing up my music player, you know, mod shift in is mute if I need it. You know, mod P is pause, mod B is back a song, mod N is forward a song, stuff like that. So you can just check this out. And if you check out the guide that I gave up, it'll go through them all individually. And, oh yeah, and here's what you have to do for the drop down terminals, right? You just say, for instance, whatever you name the window scratch pad show. And then I also haven't moved to the center. And the reason I haven't moved to the center is like I realized they usually start at the center. But when you refresh I3, sometimes they'll like be moved over here. So it's nice to like automatically move them to the center. So anyway, so you can check those yourself. And that's probably also going to be the stuff that you're going to be changing if you use my configs. Let's see what else. There are only a couple additions in the workspace bindings, but I think they're pretty important. So like, you know, we have different workspaces. Of course, you can cycle through them with mod page up and page down. It's sort of like, you know what you do in like, what's it called, like Firefox, other browsers. So that's a really nice feature to have. You can also do like mod tab that is like back and forth between the past two workspaces used. That's super nice. Other than that, I think most of the stuff here is pretty simple. I don't use any Unicode in my workspace names anymore. No reason not to, but I just don't. I do have some full screen applications on their own, what's it called workspace. So like GIMP always starts on five. And you move over there and also there are no gaps. You will notice like, because I want as much room as possible when I'm using one of those programs. So you'll actually see I set the gaps on these three workspaces to zero. That's just so when I'm using GIMP or I think marble or blender, I don't have to deal with any gaps. So I get all the room I can. Function buttons, pretty much the same kind of stuff. Basic stuff. Again, this is the guide, you know, you got hibernate. You got restart their network manager. Also, F7 and F8, mod F7 and mod F8, increased, decreased transparency. And I also have a script now that deals with like, if I connect to a VGA cable, it's just an A render script, a script that you run in bash. So here it is. You just feed it in an L if you want to go to the laptop, a V if you want to go to VGA and D if you want dual screen. It's really simple. I'm probably going to make it a little more, you know, I wouldn't say complicated, but it can deal more, or make it so it can deal with more situations. Maybe just clean it up. But that's that. Arrow keys, not really useful. I don't even use them. Media keys. So this is again, this is like the bindings that I sort of set up at the beginning where like I have a bunch of variables that are bound to specific like, you know, music actions or something. So mod plus minus, increase volume, actually on the unpause. So you can see the volumes can go up and down here. Bracket left and right, move forward or back in the song. And then I have lots of stuff for like recording different. So print screen, of course, is take a screenshot. Screen key is what I have on here. It shows what keys I press. And then I also, these are actually the recordings I set up earlier. So audio recording. I use that a lot for some videos. If I don't, I'm not going to screencast. They just want audio for something. Screen cast command. That's what I'm running now. All of these are FFM peg commands like that. Well, okay. So yeah, FFM peg commands basically. And I also have for stopping the recording. Delete. Mod pause is a video only, stuff like that. And the only other thing, frankly, is just the media keys. So, or whatever they called, XF86 keys or whatever. You know, sometimes you get one of those keyboards that just has like a whole bunch of extra buttons that's like, oh, your internet button. Oh, your email button, stuff like that. Yeah, so this is just binds some of those. You don't really need these, but I just, you know, every once in a while, I'll use a keyboard that has some of these. I don't really use them that much. It's really just for completeness sake. It really is just for autism sake, I should say. That's really what it is. So yeah, that's pretty much a guide through my i3. So you can check this out. You can pretty much do whatever you want on it. I don't know. It's just, again, I've gotten to the point where I'm not really modifying this thing very much. So again, I'll say I do have the GitHub now. So you might want to check that out, follow me or whatever. I don't know what it's called on GitHub. Okay, I guess it's followers. Yeah, so you can check that out and get the dot files. The only other thing I didn't talk about in this video, actually I might tack it on or either put it in another video, is my dynamically configured configs. So this was in my last, let me scroll down here. So this was in my last, the last time I put out my scripts or my dot files. I have this way of dynamically making config files. I think I'm going to do a separate video on that just because I'm a little short on time right now. I've got other stuff to do. But expect that up relatively soon. But anyway, so have a good one. I hope you guys enjoy it. I hope you guys play with the files. I don't know, have fun. Well, see you guys next time.