Skip to content

jassics/mastering-vim-editor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mastering (Vi IMproved) editor

Mastering Vim

What we have for you in this repository

  1. About Vim
  2. Useful Vim commands
  3. Minimal vimrc config for direct use

What is Vim?

Vim (Vi IMproved) is a highly configurable text editor built to enable efficient text editing. It is an enhanced version of the vi editor distributed with most UNIX systems. Vim is open-source and is often referred to as a "programmer's editor" as it is ideal for coding, but it is also suitable for various text editing tasks.

Fun facts:

I have used it in my most of the Linux related work and projects not just for perl, shell and python but for various text editing work as well. Once you are used to it you would love working with vim editor.

This page is meant to make you fall for vim editor!

Possible uses of Vim

  1. Programming: Vim is widely used by developers due to its powerful text manipulation capabilities.
  2. System Administration: Many system administrators prefer Vim for editing configuration files on servers.
  3. Writing and Editing Text: Authors and writers use Vim for its distraction-free editing environment.
  4. Editing Remote Files: Vim can be used over SSH, making it perfect for editing files on remote servers.
  5. Compare 2 or more files side by side
  6. Work with more than one file using tab or buffer (I will share the commands for it).

Pros of using Vim

  1. Efficiency: Vim's modal editing (different modes for inserting text and for manipulating text) allows for fast and efficient editing.
  2. Customizability: Vim can be customized with scripts and plugins to suit individual needs. We will add more custom setting in .vimrc file here
  3. Lightweight: Vim is very lightweight and can run on almost any machine, from powerful servers to older hardware.
  4. Ubiquity: Vim is available on almost all UNIX-based systems, including Linux and macOS, and can also be installed on Windows.
  5. Keyboard-centric: Vim’s extensive keyboard shortcuts allow for a mouse-free editing experience, which can significantly speed up the workflow. You need more practice for it thought, but it's worth to try and learn.

Cons of using Vim

  1. Steep Learning Curve: Vim has a reputation for being difficult to learn due to its unique modal editing and extensive set of commands.
  2. Non-intuitive Interface: The interface and commands are not always intuitive for beginners.
  3. Customization Complexity: While highly customizable, setting up Vim to your preference can be time-consuming.
  4. Lack of Built-in GUI: Vim is primarily a command-line editor, although there are graphical versions like gVim. I would stil vouch for vim text editor over GUI vim editor.

Why Learn Vim?

  1. Boost Productivity: Once mastered, Vim can significantly boost your productivity by allowing you to perform complex text manipulations quickly and efficiently.
  2. Portability: Knowing Vim means you can work on almost any UNIX-based system without needing to install or configure a new editor.
  3. Versatility: Vim can be used for a wide range of tasks, from coding to writing documentation and even managing to-do lists.
  4. Community and Resources: Vim has a large, active community and plenty of resources, including plugins, tutorials, and forums to help you learn and customize your editing experience.

Conclusion

Vim is a powerful and efficient text editor that, despite its steep learning curve, offers a myriad of benefits to those who invest the time to learn it. Whether you are a developer, system administrator, or writer, mastering Vim can greatly enhance your text editing capabilities and overall productivity. And in many cases it is the only best possible choice for you like EC2 instance, remove server where you can run only commands etc.

About

vim commands that would make you productive and cool at your work

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published