 A few weeks back I put up a question on the community tab and I asked What applications do you use that you just absolutely couldn't live without? And that question kind of got me thinking about features of Linux that I just couldn't live without And there are a few of them, so what I thought I'd do today is go through a few things on Linux that Just have completely changed the way I use the operating system So let's go ahead and jump in So the first one on the list is scratch pads Now if you follow the channel for any amount of time You'll know that I am a big fan of scratch pads Now I'm sure there's some small portion of you out there wondering Matt What the hell is a scratch pad? And the answer to that question is Oh they're so cool Let me show you So here we are just on my desktop You're seeing audacity right now but it doesn't really matter I mean we could go to a different workspace And let's just say we have a whole bunch of stuff open up here We just have some terminals We have an instance of Firefox which we can move We can do what we're just going about our day doing stuff on our desktop And let's just say I need to get to a terminal Now I could open up another terminal But as you see the screen's kind of getting a little bit crowded And I mean you can't do much with the size of window Without having to scroll up or something So let's say I need another terminal I could hit my keybinding here And I get another terminal That is a scratch pad Now basically what this is Is an application that lives on a hidden desktop Or a hidden workspace if you will Or a hidden tag in the case of DWM It means that you can hit a keybinding And let's just run htop here And we have htop running I can hit the keybinding again and it goes away Did it go? Did it go to another workspace? Did it go to another tag? No it's still there It's just you get to do the keybinding And it comes back You can literally do that with anything in the terminal So I have a couple terminals here I also have Pulse Mixer I have my music player tagged to a scratch pad And a couple other things I have Ranger I have Git Crackin I have Bitwarden All these things are set to open up in a scratch pad So that I can open them up on any workspace And they just pop up in a floating window Over whatever I'm doing That's a scratch pad And I use this constantly If they went away I couldn't use my computer happily I just could I mean I probably would get used to it after a while But I wouldn't be as satisfied using Linux As I am right now This is one thing that literally changed my life When I started using them Because it made me more efficient It's gotten so bad that when I come across a window manager Or a desktop environment that doesn't have them built in I get kind of mad at it Like why? Why don't you have this built in? Now if you're wanting these things And you're not using a window manager Or a desktop environment that has them built in You can use something like Tilda Which is a terminal emulator That can function as a scratch pad I'll leave a link to that in the video description below Or you can do something like I think it's called like T-flop Or T-drop or something I'm not as sure what it's called I'll have to look that up as well I'll try to leave a link in the video description for that as well But that is a program that actually creates scratch pads And can be used with any window manager So if you want to try out scratch pads But they're not built in This is DWM DWM does not have them built in by default You have to patch that in But you can get them There's three or four different scratch pad patches That you can use I3 has them built in by default I think you can get them in Qtile I'm not sure about that Xmonad is you can use those in Xmonad If you can figure out Haskell And how to get them set up in Haskell I'm not sure about awesome window manager I think they don't have it Or it doesn't have it But I couldn't say that for sure So that's the first item on the list The next item on the list Is key cords and key bindings Now I'm combining these really Because they're basically the same thing And honestly, this is mostly just about key bindings Key cords are just kind of The cherry on top of the cake or whatever It's just, you know, key cords are cool And I like them a lot And I like to talk about them But let's just focus on key bindings If you're new to Linux And you're coming from like Windows or Mac OS There's a good chance That you have been using The keyboard and the mouse As your main input devices Combined Like you're always using them In conjunction with each other And you can do that in Linux as well Obviously, it's the same type of thing But one of the things that makes Linux awesome Is that a lot of desktop environments And window managers are meant to be used Primarily with the keyboard And what's great about that Is that it means you don't have to move Your hands back and forth Between both input devices And this isn't new Windows has lots of key bindings Mac OS has key bindings So it's not like Linux is exclusive in this party But I feel that Linux does a great job Of promoting keyboard use And customizability A lot of things Like in Windows I wouldn't even know how you would go about Customizing a key binding in Windows If it's even possible But in Linux You can go through and Set the key bindings to whatever you want If you're in your window manager You do it from a config file If you're in KDE You do it from the application settings If you're in... Here's how pivotal Key bindings are to Linux You can even change Key bindings in GNOME And those people don't let you customize crap You know, so Key bindings are essential to Linux And if you learn them They'll change the way you use your Operating system Because it will allow you to open up Applications Move applications And do a ton of different functions Without Your fingers ever leaving the keyboard Now where this gets interesting Is with key cords Now, key cords aren't something That will Exist on every single Desktop environment Or window manager Unfortunately Sadly, there's only Certain programs And certain window managers That have them built in If you're using something like SXHKD Which is a hotkey demon Meaning it runs in the background And listens for input From the keyboard To do certain things And if you use that Then you can also use Key cords In whatever window manager Or desktop environment you're using As long as SXHKD is running So here's what's cool about key cords There are Anywhere from 70 to 108, 109 Keys on a keyboard Depending on what size keyboard you're using Maybe a little bit more Maybe a little less Depending on if you have macro keys Or a keypad Or if you have If your keyboard doesn't have Function keys, whatever It's in that range The point is Is that the number of keys you have Is a finite number You don't have just An unlimited number of keys That you can do And there's only Four modifier keys That you can use In conjunction with The other keys on the keyboard There's control There's super There's alt And there's shift And those are the Four modifier keys That you can use And shift is not Really a modifier key It can be used in conjunction With other modifier keys It usually Cannot be used on its own Because that just means That you're typing in a capital letter The exception to that is Vim Where things are Always a little weirder than normal But the point is Eventually If you get big into key bindings You're going to run out of Possible combinations Or the combinations will Get so weird That they'll be hard to remember Key chords solve that problem By allowing you to create Specialized key combinations So for example I have a key chord Set up in SXHKD In my DWM setup And all my window managers That use SXHKD I can do super G And then After that I can do any number of So I do super G Let those keys up And then Whatever key I press after that Is going to do a certain action For example If I hit C My clipboard manager will come up If I do Super G And then S My search script will come up Super shift plus A My config manager will come up Super shift plus E Emojis And so on and so forth They're all tied to super G And then one key after that I also have a key binding For launching certain applications So for example I can go through and launch Nitrogen with a key binding Or a key chord I can write telegram Or LibreOffice or Gimper And all these things are tied To another key binding I have a key chord Set up to visit my Most visited website So for example I can do CTRL F And then A And that will take me to Reddit I can do CTRL F And then D It will take me to the Verge I mean that's enough examples But the point is Is if I had to go through And create one key binding For each of those separate things I'd really eventually run out of Key bindings Or like I said That'd be so weird That'd be hard to remember This way they're all tied To one certain key binding And then a letter after that That's associated with something That I can remember That's really cool That's why key chords are awesome And it's also why When I can't use them I get a little unhappy With my Linux system Because it just makes me depressed And makes me want to run back To whatever desktop environment Or window manager I was using That does have them So that's key chords And key bindings The next one on the list Is a little bit more Of a general thing To me The pinnacle of Linux success Is using a tiling window manager It's my... It's what I graduated to From using Plasma And I find every time I go back To a floating window manager Like Plasma or Genome Or whatever I get unhappy Because I don't like it Nearly as much Because things get lost Things get piled on top Of each other It's just a mess So for me Using a tiling window manager Really changed the way I used Linux Because before I used a tiling window manager My first tiling window manager was i3 Before that I was fine with KDE I had no problems I was really good with control tab Or whatever it was To navigate through windows And I was just used to using one workspace Now, those of you who've been Watching the channel for any amount of time You'll know that The idea of me using just one workspace Is just kind of probably shocking to you Because everybody knows I use a ton of workspaces Right now I'm using One, two, three, four, five On this monitor And four on this monitor And that's actually kind of low Usually I use a few more than that But I'm sure I'll get there Eventually this evening The point is Once I started using A tiling window manager I started using workspaces Or tags in this case Much more And that allowed me to spread out my work Into a more efficient manner It means that every tag or workspace Has its purpose Like on this monitor here that I'm facing On tag one I always have my to-do list And I always have them with me That's the way it always is I know where those things are all the time If I was in a floating window manager I'd have to go hunting for those things All the time Because I always want those things Front and center in a certain place Where I can find them Work space six Or tag six on both monitors Is always reserved for audacity And OBS That's the way I When I know I need to change a scene Or I need to make sure I'm recording something I know where that is Nine on those workspaces is discord Nine on this workspace is always my mail So that is the way I use workspaces And that didn't come about Until I started using tiling window managers And I don't know what it is About tiling window managers That really got me using workspaces more But I think it's because of The necessity of using full screen apps When you spawn a window It takes up the whole screen Now you might have gaps Or whatever But it takes up the whole desktop And if you spawn another one You always have your whole desktop used And as you saw earlier When I cut to the desktop The more windows you have on a certain tag The more cramped things get They spawn in equal proportion to each other But eventually your windows get so small They become unusable So that's why I started using workspaces And I like that It has made me more efficient And I think that for a lot of people Make them more efficient So I always encourage people To give tiling window managers a try Now some people just prefer Something like KDE or GNOME It's perfectly fine It's not as if you can't be efficient Doing that thing You've established your workflow there And there's nothing wrong with sticking to it But for some people I think that they can move away from that And into tiling window managers And find that they would be Even more efficient And more productive Than they are Or they expect it to be The next one on the list is The nerdiest Well, it's almost the nerdiest one on the list But it's probably also the most superficial Of the list Everyone knows that I like to Rice things That I like to change the themes Of my window managers a lot That I go through And change the colors of everything Five times a week And it's not that often But it feels like that sometimes So it shouldn't surprise you That I also like to theme my browsers So the thing about like The huge number of Chrome-based browsers Is that they're all kind of the same When it comes to customizability Vivaldi probably comes the closest In terms of actually being able to be customized a lot But again, you have to live within The settings that Vivaldi gives you And things like Brave They're not customizable really at all I mean sure, you can have themes But you're not changing that UI at all Same thing with Chromium Or all those things They're all basically the same The thing about Firefox They allow you to change the CSS That dictates the layout of the browser itself So I can create something like this And it can be awesome So I have my bookmarks alongside I have the tabs and the address bar All in one row And that's the way I set up my browser Now, mostly this is just for looks Like it looks cool That's why I did it I can't proclaim that I did this Because I'm some kind of a genius When it comes to efficiency I needed to change this In order to be productive in the browser That's not the case I did it because it looks cool However, it actually is functional And it does increase my productivity I wouldn't say quite a bit But at least somewhat Because I was always going through And having to enable the bookmarks bar Because I hate the double In the default Firefox setup You always have your bar And then your tabs And then you have your bookmarks down here And I hate that three-level thing It always bothered me So I always disabled the bookmarks bar So I was always having to hit CTRL-SHIFT-B In order to get that to come up Or I had to open up a new tab Because by default it's now hidden Except for when there's a new tab So while I would say that This thing is mostly for superficial reasons This way I can have my bookmarks Always here And they're not actually taking up space That bothers me Because the way it is by default It just does bother me So that Firefox CSS Is a necessity for me When it comes to using Linux Now obviously I could also do this On Windows and MacOS If I was one of those people who used that So that's not unique to Linux But because I discovered it on Linux I'm including in this list Now the last one is The most nerdiest thing ever And it's gonna be a little harder to explain Because in order to understand it You have to know what an environment variable is So I've made a video Really it was a short A few weeks ago Where I was talking about how I consider The home directory my personal property I take full possession of my home directory And that means that when stupid developers And I literally mean stupid developers Decided they're going to put their Applications configuration files Into my home directory I get really seriously mad Like borderline Like insane because they do this Like I'm very much protective Over my home directory So when that happens I'm ecstatic to find a way To change that And one of the ways to change that At least in some cases Is with an environment variable They're cool and I'm not going to cover everything That they can do because they can do a ton of stuff But The thing that I enjoy about them Is that they allow me to change stuff Change the Place where the system expects certain Directors to go so for example By default if you use ZSH All of your ZSH stuff is in the home directory It's hidden which is good But it's in the home directory I don't want that stuff there Because it bothers my brain I look at it every time I do an LS And I'm like So I have to move it And the way you move that is by setting An environment variable that tells the system Or in this case your shell Where those things are So you do these certain Environment variables And tell that it's going to be in the .config file Or directory And then you can move those things So there are certain things you can't move Like you can't change the location of .ZSHN That has to stay in your home directory But everything else can go into the .config Slash GSH directory And it's gone out of your home directory Now another example is Go By default when you install an application With the Go language It puts a non-hidden directory In your home directory Like it's there, it's just labeled Go And Whoever decided to design it that way Just should stop being a designer Or developer, they should just stop At least Consider their life choices Because that is a horrible decision I'm just saying it right now That thing should at least be hidden by default Just hide it But the good news is With an environment variable you can go through And change that You can change the directory that Go expects your Go folder Where it expects it to be So Those are just two examples So if you install snapd On your computer That didn't come with snapd installed by default You're going to get a very blatant snap Folder in your home directory It can't be moved It doesn't matter what environment variables you set It can't be moved So there are some exceptions to that rule And if you're interested in this In the environment variables that allow you To set different directories for things Where they would normally be You can go to whatever project Or and a lot of times you'll be able To see if they allow you to do that With environment variables So that is environment variables And like I said it was very nerdy Not something everybody's going to be interested in And I wouldn't say it increases my productivity at all But it does lessen my stress Every time I do an LS Because it's one of those things That just really bothers me When there's something in my home directory That I didn't put there Really bothers me So that is it for us on this video You can if you have Things that have changed your life in Linux You can leave those in the comment section below Make sure you like and subscribe all that stuff I really do appreciate it We're coming up on 6,000 subscribers Which is just seriously Blowing my mind It was less than like three days ago It feels like we're at 5,000 subscribers It's just absolutely not so thanks Everybody who's subscribed over the last Three weeks and before that obviously I really do appreciate it If you want to get in contact with me You can do so at the Linuxcast on Twitter You can support me on Patreon at patreon.com Before I go I'd like to take a moment To think of my current patrons Devon, Chris, East Coast Web Gen 2 Patrick, Al, Primus, Marcus, Megalyn, Jack, Snape, Tool, Steve, A, Sid A, Mitchell, Arch, Sinner, Amityas, Merrick, Camp, Joshua, Lee, J-Dog I almost made it J-Dog and the BSD is rock Thanks everybody for watching I'll see you next time