 So a month ago, I made myself a challenge and I challenged others to use nano for a month. And for those of you who use nano, I challenged you to use Vim for a month. And it has been a month. So I want to make a video about my experiences with nano. And I want to be very, I should say, I want to be as fair as possible with this because I could get all ranty as I usually do. Vim is definitely a word. I could get all like, oh my God, nano sucks. And I'm sure that the title that I'm going to use and the thumbnail that I'm going to use is going to spawn some outrage because it's YouTube. You kind of have to do that kind of stuff in order to get people to click on your stuff. So I apologize in advance for that. But the point is, is that I've used nano for a month and I have some thoughts. So let's go ahead and talk about that today. Before I do, if you would be so kind as to leave a thumbs up on the video, it would really help the channel. So let's talk about nano and my experiences with it. So first off, let's start off with positive things about nano. I want to start off very positive because I think that it will be better overall. So here I'm just going to, instead of you guys looking at my lovely face, I'm going to show you my nano setup. So I have spent the entire month making nano the way it is. And so I've turned on syntax highlighting, I've added numbers, I've removed the stupid bar at the top, I've changed some of the key bindings. I've made it as much my own as possible. So I have completely used nano the entire month. I will admit to have using them three times when I wanted to use some of my key bindings over there that I really needed to do some like really fast edits that just wouldn't have been nearly as easy in nano. So there were three times that I cheated. So I'm going to be completely honest that, but other than that, I've used nano the entire month and there are some good things that I like about nano. First off, it is very, very simple. I think that that is the best thing that I can say about it is that it's very, very simple, very, very easy to use. And once you get used to it, it makes it very easy to hop into a document or a file or whatever, make your edits and then get about your day. I will say that for nano. It is very, very simple, very, very easy to use. If you are brand new to the text editor space, it is way easier, way easier to use nano than it is to use them. If you've never used a text editor in the terminal before, nano is by far the easiest to get a hold of because it's for the most part intuitive. And if you can't think of what one of the key bindings are by default, there's a little help strip that I've gotten rid of along the bottom that tells you exactly what the key bindings are that you'll need to know. It's very easy to use. I will also say that it is very easy to configure. The configuration file, which I'll show you here. This is the configuration file. It is very easy to configure. So if you want to make it your own, you can very, very easily. And it's not a syntax that you have to learn. If you were to configure VIM, you have to learn VIM script or you have to learn Lua if you're going to use new of them, right? You have to learn some kind of, but is basically a programming language in order to do things inside of the VIM configuration files. Whereas with nano, you don't have to learn any of that stuff. All the stuff is not only very well commented, but it's easy to understand. So if you didn't have the comment here for auto indent, you would know what set auto indent basically meant, right? You wouldn't need the comment. Same thing with set backup. You can have an idea of what that is. Whereas with VIM, not only in VIM is there a language that you have to learn a lot of times and I'd say all the time VIM has 12 different ways of doing something. There are, you know, multiple ways of setting a key binding. There's multiple ways of setting VIM options and all of the stuff. And while that is good for Tinkers, it's not good for people who just want to get in here, make one change and then leave. Nano is much better at being a configuration file that is easy to look at, easy to change, easy to learn, and then easy just to leave behind once you've set it. There's not a lot of tinkering here that you can do. So you don't have to worry about plugins or any of that kind of stuff. You don't have to worry about plugin compatibility. You don't have to worry about any of the other nonsense that VIM brings along with the table. Now there are outside things that you can add to nano. So I don't want to say that there are no plugins. There are technically things that you can use inside of nano that are kind of plugins. Most of them are like quasi forks of nano. It's a complicated mess because nano is not really meant to be extended unlike them, which is actually meant to be extended. But the configuration file, like I said, is very, very simple, very easy to use. And I think that that is a very good thing. Another thing that I will say about nano is that it does a really good job of inheriting colors from your terminal. It doesn't always do this. I've found in some configuration files that come with some distros. The colors are pretty much set to whatever the distro wants. But if you use the default configuration file, which is basically what I have here other than a few tweaks, it does a good job of inheriting the colors from your terminal, which is good if you change themes as much as I do. So I just changed colors and you can see the color scheme was inherited automatically. I didn't even have to leave nano and come back, which is not something that VIM does as well. And but it takes some setup in order to get there. So that's another thing that I really enjoyed about nano. So those are the three things that I have to say would are positive. Then I have some things to say that are negative. And I want to put some provisos on the things that I'm about to say. So really, all of my complaints come down to this one simple fact, nano is not VIM. Okay. Now, I know what you're thinking, man, of course, nano is not VIM. If nano was VIM, it would be VIM. It wouldn't be called nano. That'd be, I mean, it'd be stupid to think that nano was in fact VIM. And I don't, I didn't think that nano was VIM, I'm dumb, but I'm not that dumb. So I knew going in that nano was different. I've used nano before this challenge. I'll probably use nano after this challenge, you know, for various things. But as a VIM user, I was able to get so used to doing certain things in a certain way. And more specifically, I got used to doing things in the VIM way. And all of my complaints with nano stem from the fact that it does things significantly different than VIM does. All of them. Like there is not a single thing inside of nano that is the same as the way it is done in VIM. There are no modes. So the first thing I always do, and even a month later, if I'm in a document, the first thing I always do, and I want to start typing, I usually hit I. If I don't want to start typing on that line, you'll see me, you've probably seen me in videos do this a couple of times, you know, I'm, and I'm so set in my ways that half the time I'm not even looking up there at the top line where it's making the changes. I'm just, you know, I'm just doing this expecting the damn thing to go down, you know, like it wouldn't VIM because, you know, I'm using VIM keys and it doesn't. And I'm wondering, especially the first few days, I was like, why isn't this thing moving? I mean, because I had, at that point, I had managed to make it look like if you looked at this right now, you'd think that this could be VIM, right? And I'm sure some people actually thought, Matt, you're just using VIM and calling it nano. No, no, this is actually nano. But the thing is, is that I, after a few days after I made it look like this, I kind of forgot that I wasn't using VIM and I constantly forgot kind of, and that kept me doing this nonsense. And to this day, a whole month later, I still, still do that every single time I open up a document. So that's my biggest complaint is that it's not VIM. And honestly, it seems unfair to criticize nano because of it not being VIM. It's not big. It was never said to be VIM. It's never said to compete with VIM. It's not meant to be VIM. Any way you want to put that sentence, nano is not VIM and it wasn't supposed to be VIM. So criticizing it feels wrong, right? I shouldn't say, well, you know, it's really hard to make multiple changes per line because it, you know, it doesn't have a visual edit, you know, visual block mode. It doesn't have really good macro support. It does have macro support, by the way, it does. It's just not as good as VIM. So, you know, it, it feels unfair to say negative things about nano because, like I said, all the negative things that I have to say are because it's not VIM. That being said, I'm still going to say them. Of course I am. So the first one that I want to talk about the negative is that visual mode does not exist. And yes, there is a way. So if you hit shift and then go down, this is obnoxiously simple, right? If I wanted just to delete those things, I could do shift and arrow keys and then if I wanted to delete those, control K gets rid of those, right? And that's fine. It is obnoxiously simple, right? And if you have used a word processor ever in your life, you know, that shift and arrow keys highlights multiple lines. But I didn't figure that out for like a week. In fact, I didn't figure it out at all. Someone pointed it out to me after I made my configuring nano video. And you have no idea how embarrassing it is because that is very, very simple and it's very, very obvious. But I didn't get it through my head thinking I thought that there was some, you know, special, ultra complex way of basically doing visual mode, which is this is basically visual mode, right? I thought that there was some complex way to do that, but there's not. It's just shifting the arrow keys. That's all it is. It's very, very simple, just like a word processor. So that's my first and honestly, probably my biggest complaint is that the thing that I missed most about them was visual mode, because I can't tell you how often I during the day have to select multiple lines to either make changes or delete or paste or yank or whatever. And the way you do that in nano just feels wrong to me. I tried to make it better by changing some of the key binding. So if I wanted to get rid of these few lines here, you know, the shift in the arrow keys, I got used to that. That was fine. But if I wanted to cut these and then paste them in another, you know, another place, it's not as it doesn't feel as fluid to me as them. But again, go back to what I said before when I got into this negative aspect of nano, the reason why it doesn't feel like it doesn't them is because and say it with me, nano is not them. Okay. And it's taken a month for me to, I mean, again, I know that nano was not them. So, you know, I just, my brain seems to forget that nano is not them for some reason, and that's the reason why that this part here has bothered me so much because it just, they do things in a different way. The cursor, you know, you can change where the cursor paste things when you use the paste key lining, just like you can in them. It just still feels different to me. And I don't, I really can't even explain it more than that. So visual mode is one of the negative or lack of visual mode. And the ease of use of that visual mode offers is the first negative of of nano, which again, I will reiterate the fact that it is unfair to criticize a piece of program because it doesn't have features of another program, especially when they're not trying to be the other program. I understand that it's not fair. And I'm not saying that nano is bad because of these things. Okay. This is my brain hole talking. So just understand where I'm coming from when I talk about the negative things of nano aren't really negative things of nano, but, you know, because it's not them. So the second thing that I want to talk about in terms of negative things is that it doesn't do a good job of syntax highlighting. Now, it's possible that I messed up the syntax highlighting because it does have it and you can add it. It's actually natively built in now as far as I can tell. Because you can there's a setting here for syntax highlighting. And there is, I think, something else that you can add to make it better. But I never looked into that I should have. But by default, the syntax highlighting looks like this. And as you can see, it's two toned. OK, there are some some of this is just because of the color scheme of that that firewall has chosen this time. But even if I choose another color scheme, you can see it's kind of two toned. There are three different colors here that it will use. And again, a lot of this is because of the color scheme that I'm using through firewall. Some of the firewall colors do OK and are more contrasty. But when you have syntax highlighting in them, it seems to be somewhat consistent, right? And it is in nano two sometimes. But because it only uses the three colors, three of the eight colors that are on offer, at least, it gets really samey, right? And they're they're not varying colors. All these are varying shades of red. And sometimes you do get some more contrasty, depending on what color scheme you're using. So I'm not completely criticizing it. But I've noticed more often than not, no matter what color scheme I'm using, they do tend to be kind of samey. And if you're going to make a syntax highlight, you know, functionality in your program, differentiating with contrast makes it easier for things to stand out, right? I don't think that that's a nano problem specifically. I really, really don't. I think, again, this is mostly because of my crazy color schemes coming through firewall because I get it sometimes. Well, that one's actually kind of worse. Sometimes I'm basically switching between color schemes to try to see if I can find one that is actually a good. Option for showing when it does do contrasting, right? But this one's actually about the closest that it actually does show some contrast. So apparently the wallpaper that it's basing on has some more contrast, which is actually a better thing. But as you can see, it does. I think if you're using a dedicated color scheme, something like Grubbox or some something like, you know, Cat Poussin or, you know, whatever hell it's called, if you're using something like that, you'll probably have a better luck than I'm having with syntax highlighting simply because those color schemes, usually when you're using them in a terminal, come with more colors than what firewall offers. So again, I'm thinking that this is more of a pile of problem than a Nana problem, but it is something that I noticed. Another thing that I really missed, and I'm going to call this a bad thing, but it's again, mostly down to the fact that it's not them, is that I missed splits. So I didn't think I actually used them splits all that often. But because Nana doesn't have those, I realized that I actually do use them quite often and I missed them. So obviously you could use micro micro is a more advanced version of Nana, kind of it has a lot more features and that has splits. I could use a multiplexer if I wanted to do that, or I could just, you know, open up another terminal and that'd be, you know, Hunky Dory. But, you know, I do tend to use splits because the buffers, especially the clipboard buffers, usually go between both splits and it's much easier to copy and paste or yank and paste or whatever things from one document to another when they're in a split. And that is something that I really mightily struggled with when it comes to Nana. So another thing that I found annoying and I talked about this in my configuring Nana video is that the default key bindings are bad. So one is what I'm specifically talking about are the copy and paste functionality. So by default, the cut is control K and then the pay the paste, I think is control you. I don't actually remember because I had to change it. The default key bindings were bad. And then you come down to this section here in the configuration file and the options that they give you by default. So they're the first one here and you won't see it because I've already changed it. Is this one here bind and then by default, this is control X and then that cuts and goes into the main buffer. The problem with control X is that control X is also the easiest way to actually exit nano. So if you if you just uncomment this one line and then leave it that way and you're brand new to nano, you're going to be cutting your your text all the time thinking you're exiting. And so I did this the first time I changed this. I just decided to leave it as, you know, control X because control X is control cut system wide and it makes sense to have it be control X. But control X is also, like I said, the best way to exit nano. So I ended up coming up with a different key binding. I use control B and that's worked. But it's also feels weird because control X is supposed to be cut. And honestly, I could have I should have made it control D now that I think about it because that would be more Vim like. But I didn't think about that till right now, which is weird. But anyways, that the default key bindings are kind of a mess all over the place. And the ones that they suggest you change them to in the configuration file, you know, because they're supposed to be more, you know, word processor like are very they conflict with some of the things that you would normally see along the bottom and the help section, which you'd expect them to. But if you don't have the help section on all the time, which I didn't, that's the first thing that I turned off because, you know, dumb dumb, you know, it's just it was a mess. It was not easy to get used to. So that is not necessarily a nano problem, but it's something that I really, really stumble over over the course of the month is trying to perfect the key bindings as much as possible. And some of them I've left the same. Some of them I've just commented here so that they're different than what the defaults are, you know, like I've changed the search binding, I've changed it so that the undo and redo or typical Z and Y I've changed the cuts and the exit and all that stuff. You know, it's just I've tried to make it my own as much as possible. And even a month later, I'm still having a hard time remembering these key bindings. I probably should have left the help on because I'm assuming that if I leave the help on, my altered key bindings will show up in the help. I never actually tested that out. I probably should have. It might have been easier for me to leave the help on, but asking for help is not apparently all that easy. So those are my main kind of qualms with nano. And like I said at the beginning, all of them, every single one of them have more to do with the fact that nano is not VIM than anything wrong with nano. Overall, nano is a fantastic text editor. Those of you who use it, I have all the respect for in the world. It's a very good text editor and it does the vast majority of things that VIM does just in a different way, right? It doesn't like if you take just stock VIM and you take just stock nano and you compared the features of the two, they're somewhat similar. I won't say, you know, feature for feature because obviously them can do more and can be extended and configured to do more. But out of the box, they're very similar. Obviously, one is more complex than the other, but and this is going to be my overwhelming point for this entire review. Nano was just as complicated for me as VIM is for people who go from nano to VIM. So what I mean by that is that if you have been a nano user for 30 years and you're going to go use VIM for the first time or, you know, whatever, you're going to have the same experiences that I had going to nano from VIM because they're different things. And I think that one of so in my many years of criticizing nano users for it being too simple, too noob friendly, and I have made sniping comments to those effects before, mostly tongue in cheek. I really don't care what you use as long as it works for you. That's really all that matters. But in fun, I always make fun of nano users for what I thought was good reasons because nano is simple, nano is not VIM. Nano doesn't have all these really cool, nifty features that VIM has. But in all honesty, the biggest issue that I think a lot of people face going from one to the other, no matter which way they're going is that they're just different things. Masquerading is the same thing. So they're both text editors at their heart, but they're not the same. They don't have the same workflow. And honestly, it's hard to move between them, right? It's hard to be a nano user and go to VIM because the workflow is different. It's hard to move from VIM to go to nano because the workflow is different. I'm assuming if I were to give nano or Emax a real try, like actual vanilla Emax without turning on evil mode or any of that kind of stuff. If I were to do that process, I'd have the exact same experience that because the workflow is different. So your experience with a text editor is going to very much depend on which one you started off with. If you started off with them, if you decided you're going to jump right into them, you're going to get entrenched in that ecosystem if you find that you like it. Once you're there and you're entrenched, it's really, really hard to leave. And I think that if I were to have started with nano and was used to nano, I had it all configured the way I wanted to. I had all the keybondings memorized and it did the things that I needed it to do. I think that I would have as much a hard time leaving nano as I had leaving them. I think that that is absolutely true. And I just think that overall, the whole editor wars thing would be much easier if everyone tried all of them and gave them a good college try because it's much easier for me now to empathize with people who use nano than it was before. And I think that I have grown from using nano for the last month. And I think it's going to be harder for me to make the comments that I used to make with regards to people who use nano now that I've used it for a month. Now, a month is not a long time. It's not as if I dedicated myself to a whole year of using nano. But I do feel that I have developed a regard for nano that I didn't have before, which can only be a positive thing, I think. So the last question I have to answer is, Matt, are you going to continue using nano? And the answer that is hell, no, hell, no. I hate nano with a passion. I know all that stuff that I just said, and that has no impact on me saying that nano people are fine to use nano. And I understand now why they use it. It's just is definitely not for me. I miss them immediately after I stop recording this, I'm changing my aliases back to them. I'm making sure my end Vim setup is all the way it needs to be. I'm changing the theme so it matches my pie wall. It's going to be glorious. It's I'm going to go write some bash scripts or something just to get in there. And I'm going to I'm going to have some macro fun. And I'm going to do all of the things it's going to be wonderful. And I'm never ever going to want to use nano for any stretch of time again. But again, not because nano is bad, but just because nano is not them. And Vim is my thing, apparently, it's where I was meant to be. So that is it for my month long experience with nano. I hope that you've enjoyed this video because it takes some self reflection to know, you know, that you have certain preferences and you want to speak objectively about certain things. I think that I try that I've tried to do that in this video and throughout this entire experience is to go into this with open and open mind, trying not to think that everything that Vim or that nano does because it's not Vim, that everything that does differently is bad. So I've tried to keep that open mind. I hope that I was as successful as I think I was. I probably wasn't, but we'll see. Anyways, if you have thoughts on this entire challenge, leave those in the comment section below. Please, please don't recommend any more challenges to me right now. I don't want any more. Please don't challenge me to use Emacs. Don't challenge me to use Micro. I want to go be very happy with them for a while. Maybe I'll go challenge myself to one of those other editors some of the time. For now, just leave me and Vim alone. We have some things to talk about. Anyways, if you have, don't take that the wrong way. I just realized how that sounded that was not that that didn't. Anyways, if you like this video, give it a thumbs up. I would really appreciate it if you did. It would really help the channel. You can follow me on masses on our Odyssey. Those links will be in the video description. You can support me on Patreon at patreon.com slash the Linux cast. You can support me on YouTube and Liberapay as well. Those links will be in the video description. Thanks to everybody who does support me on Patreon and YouTube. You guys are all absolutely amazing. Without you, the channel just would not be anywhere near where it is right now. So thank you so very, very much for your support. Seriously guys, every single day, I thank you. And it's just, it never seems to be enough. So just as much as I can, thank you. Thanks everybody for watching. I'll see you next time.