
Vim And Emacs Are The Most Important Skills You Should Learn DistroTube
video description
Date: 2022-03-30
Comments and reviews: 10
George
Alright. I would like to test my understanding. I am currently trying to teach myself to use the cli as my daily driver, and to reduce my use of the mouse as far as possible. The fundamental tools in a -nix system are bash and vim. These two tools are sufficient to do about 95% of everything that has to be done, and they can be used to call other tools to complete the 5% remaining - primarily video and image management.
Significantly, learning -bash and vim- requires learning a handful of languages of different sorts. Sed, awk and grep are each in their own right, programming languages and are each fundamental to mastering vim. Regular expressions are a complete topic. Scripting in vim is available through the vim scripting language, and scripting in Bash requires Bash scripting language which is essentially a variety of C programming language. Effective use of Bash also requires Readline editing which goes hand in hand with learning Bash scripting. Finally, to use my computer to its fullest, I am going to have to develop at least the basis of full stack development. I need html, css, java script, a database, an OOP language and a bare metal language - C/C++ have a claim to usage, but Python and Rust are also major contenders.
This learning set represents not only a skill set, but a knowledge set - an understanding of the Web and the Internet and a significant understanding of software and OS development. I am willing to say that competence in these sets makes one a programmer.
Now since I don't believe that a person can access the real value of emacs with smaller sets of knowledge, I have to ask if emacs is a more efficient way of developing these sets. If I am wrong and emacs is a more efficient venue for learning these skills sets, at what point, why and how should I transition to emacs? If emacs is not the best learning venue, should I consider emacs as andvanced tool for programmers, but of limited value to a student? Finally, am I mistaken in my premises? Is there a different set of skills and knowledge sufficient and necessary to master the use of my -nix system? (I should not have to explain why a gui is an inadequate substitute for knowledge.)
reply
Alright. I would like to test my understanding. I am currently trying to teach myself to use the cli as my daily driver, and to reduce my use of the mouse as far as possible. The fundamental tools in a -nix system are bash and vim. These two tools are sufficient to do about 95% of everything that has to be done, and they can be used to call other tools to complete the 5% remaining - primarily video and image management.
Significantly, learning -bash and vim- requires learning a handful of languages of different sorts. Sed, awk and grep are each in their own right, programming languages and are each fundamental to mastering vim. Regular expressions are a complete topic. Scripting in vim is available through the vim scripting language, and scripting in Bash requires Bash scripting language which is essentially a variety of C programming language. Effective use of Bash also requires Readline editing which goes hand in hand with learning Bash scripting. Finally, to use my computer to its fullest, I am going to have to develop at least the basis of full stack development. I need html, css, java script, a database, an OOP language and a bare metal language - C/C++ have a claim to usage, but Python and Rust are also major contenders.
This learning set represents not only a skill set, but a knowledge set - an understanding of the Web and the Internet and a significant understanding of software and OS development. I am willing to say that competence in these sets makes one a programmer.
Now since I don't believe that a person can access the real value of emacs with smaller sets of knowledge, I have to ask if emacs is a more efficient way of developing these sets. If I am wrong and emacs is a more efficient venue for learning these skills sets, at what point, why and how should I transition to emacs? If emacs is not the best learning venue, should I consider emacs as andvanced tool for programmers, but of limited value to a student? Finally, am I mistaken in my premises? Is there a different set of skills and knowledge sufficient and necessary to master the use of my -nix system? (I should not have to explain why a gui is an inadequate substitute for knowledge.)
reply
Yash
i am convinced that i am not going to use ViM at least untill i am on windows 10.
No, not because it is -hard to learn- but because it's stubborn in its behaviour. exact opposite of what it is portrayed as.
Biggest hurdles being:
- GVIM doesnt have pinch to zoom, and no easy option to save the default font size - so it becomes verrrrry hard for me to use it. i have to leave using 3 other applications due to this exact problems they had. that is, this problem of small font size is unmanageable to me, like there's no iff-but in this.
- lack of feedback - there's noooo feedback about what happened,
Other minor hurdles being:
- no option to show some keybindings (like in micro editor, or even in other GUI applications like GIMP, blender or others)
- even copy pasting is complex - the buffers and stuff like that
- it leaves behind some ghost characters when i tried it with the script -viMV.py-
- pressing esacpe repetitvely while typing is hard
- It has 2 different version of even gvim - the normal gvim one, and one other which i dont know how i launched the other day
reply
i am convinced that i am not going to use ViM at least untill i am on windows 10.
No, not because it is -hard to learn- but because it's stubborn in its behaviour. exact opposite of what it is portrayed as.
Biggest hurdles being:
- GVIM doesnt have pinch to zoom, and no easy option to save the default font size - so it becomes verrrrry hard for me to use it. i have to leave using 3 other applications due to this exact problems they had. that is, this problem of small font size is unmanageable to me, like there's no iff-but in this.
- lack of feedback - there's noooo feedback about what happened,
Other minor hurdles being:
- no option to show some keybindings (like in micro editor, or even in other GUI applications like GIMP, blender or others)
- even copy pasting is complex - the buffers and stuff like that
- it leaves behind some ghost characters when i tried it with the script -viMV.py-
- pressing esacpe repetitvely while typing is hard
- It has 2 different version of even gvim - the normal gvim one, and one other which i dont know how i launched the other day
reply
Anders
All I learn with vi/vim is enough to edit config files to compile Emacs.
Then I didn't need to use vim anymore when it was just to type: configure; make; sudo make install
and I didn't need to learn vim. I can't stand different modes for insert and move and commands.
And vim are not needed, especially with Tramp (and it's previous package). Then I could edit config files in other machines without needing to install Emacs on that machine.
And short cuts in Bash is Emacs shotcuts.
C-p, C-n, C-b, C-f, C-r,, C-d, M-d etc.
(Instructions are built into Emacs too, which is shown up when you start Emacs)
reply
All I learn with vi/vim is enough to edit config files to compile Emacs.
Then I didn't need to use vim anymore when it was just to type: configure; make; sudo make install
and I didn't need to learn vim. I can't stand different modes for insert and move and commands.
And vim are not needed, especially with Tramp (and it's previous package). Then I could edit config files in other machines without needing to install Emacs on that machine.
And short cuts in Bash is Emacs shotcuts.
C-p, C-n, C-b, C-f, C-r,, C-d, M-d etc.
(Instructions are built into Emacs too, which is shown up when you start Emacs)
reply
Hans
I wish there would be a vim mode in every program.
You-re totally right with -it physically hurts when you have to go back to the way you used to do text editing-
I write automation programs for work, and you have to write them in the companies- IDE that produces the controller. (Siemens or Allen Bradley or whatnot)
Some parts are graphical programming, so it doesn-t matter if there-s no vim mode, but when I write longer parts in text, I write them in vim and after them copy them to the IDE.
reply
I wish there would be a vim mode in every program.
You-re totally right with -it physically hurts when you have to go back to the way you used to do text editing-
I write automation programs for work, and you have to write them in the companies- IDE that produces the controller. (Siemens or Allen Bradley or whatnot)
Some parts are graphical programming, so it doesn-t matter if there-s no vim mode, but when I write longer parts in text, I write them in vim and after them copy them to the IDE.
reply
Etienne
I'm still not clear on why go through the hoops of vim. I use text editor mostly to do simple config file changes, often copy/pasting a line or two. If nano won't do it in a few seconds, I open Kate text editor. For programming or more complex tasks, there's Visual Studio Code and JetBrains Rider. As for programming, it's a lot more about how well we can navigate and refactor the code, rather than on effective the typing is. You can work 2 hours to find where to insert just a few lines of code.
reply
I'm still not clear on why go through the hoops of vim. I use text editor mostly to do simple config file changes, often copy/pasting a line or two. If nano won't do it in a few seconds, I open Kate text editor. For programming or more complex tasks, there's Visual Studio Code and JetBrains Rider. As for programming, it's a lot more about how well we can navigate and refactor the code, rather than on effective the typing is. You can work 2 hours to find where to insert just a few lines of code.
reply
Martin
I started with Debian version 1. I still use Debian in some form or another. I also studied music, so writing music and keep on learning takes over. And music -is not hard, you just have to practise-... So I'll keep on with music and use my computer as a tool, a beautiful tool at that! As long as it runs Linux. I don't have to use neither vim nor emacs to live a fulfilling life, and you should study more music!
Love from a music nerd from Sweden who loves your videos.
reply
I started with Debian version 1. I still use Debian in some form or another. I also studied music, so writing music and keep on learning takes over. And music -is not hard, you just have to practise-... So I'll keep on with music and use my computer as a tool, a beautiful tool at that! As long as it runs Linux. I don't have to use neither vim nor emacs to live a fulfilling life, and you should study more music!
Love from a music nerd from Sweden who loves your videos.
reply
Miroslav
Wow looks nice. I switched from nano to vim to see why is better, but was never learning it bcz I basically edit only one txt file and .configs. I'm still used starting editing after running, and it's still annoying. But somehow, I'm still using vim. This was only a stepping stone before emacs, because of Silicon Valley's:
- Why not just use vim over emacs? - sarcastically
- I do use vim over emacs.
- Ohh GOD HELP US!
I want to be cool :-
reply
Wow looks nice. I switched from nano to vim to see why is better, but was never learning it bcz I basically edit only one txt file and .configs. I'm still used starting editing after running, and it's still annoying. But somehow, I'm still using vim. This was only a stepping stone before emacs, because of Silicon Valley's:
- Why not just use vim over emacs? - sarcastically
- I do use vim over emacs.
- Ohh GOD HELP US!
I want to be cool :-
reply
Ian
Hey DT, love the videos and as a system administrator in a communications company I use mc (midnight Commander). I have been using Linux since mid 90's but the newer techs are not so familiar with vim or Emacs but mc is very easy to work your way around and over the phone I can guide them through mc without any issues. Its a great file manager and has loads of useful tools build in. Maybe you can do a small video on mc sometime. Keep up the good work.
reply
Hey DT, love the videos and as a system administrator in a communications company I use mc (midnight Commander). I have been using Linux since mid 90's but the newer techs are not so familiar with vim or Emacs but mc is very easy to work your way around and over the phone I can guide them through mc without any issues. Its a great file manager and has loads of useful tools build in. Maybe you can do a small video on mc sometime. Keep up the good work.
reply
judas
The biggest issue Vim and Emacs have are the lack of code completion. Setting up language servers with coc is not cutting it. It either has to be out of the box, or be as simple as installing one plugin and having it work. Until there's some solution to this it's much better to use VSCodium, Atom and Sublime Text for large projects (which also have vim emulation addons) and only use Vim/Emacs for editing files over a server.
reply
The biggest issue Vim and Emacs have are the lack of code completion. Setting up language servers with coc is not cutting it. It either has to be out of the box, or be as simple as installing one plugin and having it work. Until there's some solution to this it's much better to use VSCodium, Atom and Sublime Text for large projects (which also have vim emulation addons) and only use Vim/Emacs for editing files over a server.
reply
Kesek
Vim is hard to learn? It must be joke. Gdb is hard. Emacs is hard. Vim is easy. There is mswin.vim script that changes some typical key-bindings to more windows-like, ex. ctrl+c, ctrl+a, ctr+a, alt+f4. Most (if not all), typical vim keybindings still are working normally. Level of entry for new user is much lower that way. During normal use one can learn ,,hardcore'' vim keys.
reply
Vim is hard to learn? It must be joke. Gdb is hard. Emacs is hard. Vim is easy. There is mswin.vim script that changes some typical key-bindings to more windows-like, ex. ctrl+c, ctrl+a, ctr+a, alt+f4. Most (if not all), typical vim keybindings still are working normally. Level of entry for new user is much lower that way. During normal use one can learn ,,hardcore'' vim keys.
reply
Add a review, comment
Other channel videos















