Supercharging vim

6 minutes
Share the link to this page
Copied
  Completed
You need to have access to the item to view this lesson.
One-time Fee
$49.99
List Price:  $69.99
You save:  $20
€47.39
List Price:  €66.35
You save:  €18.96
£39.48
List Price:  £55.27
You save:  £15.79
CA$69.93
List Price:  CA$97.91
You save:  CA$27.98
A$76.86
List Price:  A$107.61
You save:  A$30.75
S$67.15
List Price:  S$94.02
You save:  S$26.86
HK$389.09
List Price:  HK$544.76
You save:  HK$155.66
CHF 44.28
List Price:  CHF 61.99
You save:  CHF 17.71
NOK kr552.48
List Price:  NOK kr773.52
You save:  NOK kr221.03
DKK kr353.46
List Price:  DKK kr494.87
You save:  DKK kr141.41
NZ$85.02
List Price:  NZ$119.04
You save:  NZ$34.01
د.إ183.61
List Price:  د.إ257.07
You save:  د.إ73.45
৳5,952.52
List Price:  ৳8,334.01
You save:  ৳2,381.48
₹4,217.70
List Price:  ₹5,905.12
You save:  ₹1,687.41
RM223.53
List Price:  RM312.96
You save:  RM89.43
₦83,723.75
List Price:  ₦117,219.95
You save:  ₦33,496.20
₨13,842.48
List Price:  ₨19,380.58
You save:  ₨5,538.10
฿1,735
List Price:  ฿2,429.14
You save:  ฿694.14
₺1,722.82
List Price:  ₺2,412.08
You save:  ₺689.26
B$289.31
List Price:  B$405.06
You save:  B$115.74
R905.17
List Price:  R1,267.31
You save:  R362.14
Лв92.66
List Price:  Лв129.73
You save:  Лв37.07
₩69,838.72
List Price:  ₩97,779.80
You save:  ₩27,941.07
₪186.81
List Price:  ₪261.55
You save:  ₪74.74
₱2,950.38
List Price:  ₱4,130.77
You save:  ₱1,180.39
¥7,786.65
List Price:  ¥10,901.93
You save:  ¥3,115.28
MX$1,010.13
List Price:  MX$1,414.26
You save:  MX$404.13
QR181.66
List Price:  QR254.33
You save:  QR72.67
P677.69
List Price:  P948.83
You save:  P271.13
KSh6,473.70
List Price:  KSh9,063.70
You save:  KSh2,590
E£2,484.50
List Price:  E£3,478.50
You save:  E£994
ብር6,130.69
List Price:  ብር8,583.46
You save:  ብር2,452.76
Kz45,623.90
List Price:  Kz63,877.12
You save:  Kz18,253.21
CLP$48,554.78
List Price:  CLP$67,980.58
You save:  CLP$19,425.80
CN¥362.25
List Price:  CN¥507.18
You save:  CN¥144.93
RD$2,999.87
List Price:  RD$4,200.06
You save:  RD$1,200.18
DA6,670.19
List Price:  DA9,338.81
You save:  DA2,668.61
FJ$113.51
List Price:  FJ$158.92
You save:  FJ$45.41
Q384.54
List Price:  Q538.38
You save:  Q153.84
GY$10,416.21
List Price:  GY$14,583.53
You save:  GY$4,167.31
ISK kr6,885.62
List Price:  ISK kr9,640.42
You save:  ISK kr2,754.80
DH497.67
List Price:  DH696.78
You save:  DH199.10
L909.82
List Price:  L1,273.82
You save:  L364
ден2,912.40
List Price:  ден4,077.60
You save:  ден1,165.19
MOP$399.33
List Price:  MOP$559.09
You save:  MOP$159.76
N$900.58
List Price:  N$1,260.89
You save:  N$360.30
C$1,833.12
List Price:  C$2,566.52
You save:  C$733.39
रु6,730.44
List Price:  रु9,423.16
You save:  रु2,692.71
S/189.03
List Price:  S/264.65
You save:  S/75.62
K200.43
List Price:  K280.62
You save:  K80.18
SAR187.67
List Price:  SAR262.75
You save:  SAR75.08
ZK1,376.04
List Price:  ZK1,926.57
You save:  ZK550.52
L235.82
List Price:  L330.17
You save:  L94.34
Kč1,197.77
List Price:  Kč1,676.98
You save:  Kč479.20
Ft19,418.42
List Price:  Ft27,187.34
You save:  Ft7,768.92
SEK kr549.81
List Price:  SEK kr769.78
You save:  SEK kr219.97
ARS$50,077.77
List Price:  ARS$70,112.88
You save:  ARS$20,035.11
Bs345.44
List Price:  Bs483.65
You save:  Bs138.20
COP$220,323.37
List Price:  COP$308,470.35
You save:  COP$88,146.97
₡25,320.40
List Price:  ₡35,450.59
You save:  ₡10,130.18
L1,258.58
List Price:  L1,762.11
You save:  L503.53
₲387,944.27
List Price:  ₲543,153.02
You save:  ₲155,208.75
$U2,137.07
List Price:  $U2,992.07
You save:  $U855
zł205.58
List Price:  zł287.83
You save:  zł82.25
Already have an account? Log In

Transcript

When it comes to being productive in the terminal, one important aspect is to never leave the terminal. And when getting stuff done a lot of the time we find ourselves having to edit files and opening an external GUI editor. Bad move to double our productivity, we need to leave those days behind and to get the job done right there in the terminal without opening full fledged days just to edit one simple line of text. Now, there is a lot of debate going on about which is the best text editor for your terminal, and each one has its pros and cons. We recommend vim, an editor which is ultra configurable, and once mastered, can even outmatch on either. The first thing we need to do in order to kick start our team productivity is to have a well configured configuration file.

Let's start by opening a new hidden file in our home folder. And this is the vim configuration file, and there we paste a few lines. Now let's close and reopen the file. We can see that already the configuration took effect. Let's go into a little more detail regarding some of the options. First of all, as you've probably guessed, the lines starting with double codes are comments so they can be ignored.

Lines five, six and seven tell vim to always use spaces instead of tabs, and to set that size to four spaces. Line 10 to 12 tells them to always open a file and set the cursor in the same position as the last time the file was open. Syntax on enable syntax highlighting, so it is easier to read code set note based set note based mode, which means you can paste code without having vim try to guess how to formatted. Set number does seem to always show the line numbers set on all levels equal 1000 tells him to remember the last 1000 changes we made to the file, so that we can easily Undo and Redo. Now most of these features can be easily turned on or off, say for example, we want to copy paste some lines from a file opened in vim to another file.

With this configuration, we are also going to paste the line number. What we can do very quickly is to switch off the line number by typing set no number, or if the syntax is annoying, we can easily switch it off by running syntax off. Another common feature is the status line which can be configured by pasting these options. Close the file and open it again. Now we can see at the bottom of the page, a status line with extra information. This is also with our configurable so we can put a lot of different stuff in site.

This particular status bar contains the name of the file, the current directory, the line and column numbers and also the pace mode on or off. To set it to on we use set based and the change will show up in our site status line. We will also has the option of changing the color scheme. To do this, we go to this directory and choose a color scheme from there. Let's choose desert. Remember, it's not desert, it's desert.

Okay, close and reopen the file, you will see it's not that different from the previous color theme. If we want a more radical one, we can set the color theme to blue, which will drastically change the way it looks. But during the rest of this course, who will stick to desert, not desert. vim can also be supercharged with the help external tools. In the world of programming, we often find ourselves at theme JSON files. And that can have a very diff can be a very difficult task.

If the JSON file is not indented, there is a Python module that we can use to automatically indent the JSON files and vim can be configured. To use it internally. All we need to do is open the configuration file and paste in the following line. Essentially, this is telling vim that when in visual mode, if pressing j, it would call Python with the selected text. Let's manually write the JSON string go to visual mode by pressing V, select a text using our arrows and hit J. And with no extra packages, we added the sun formatting shortcut.

We can do the same thing for XML files, but first we need to install tools for working with them. Easy sudo apt install the XML to minus utils. To install the XML utility package, we must add the following line to our configuration file. It maps the L key when in visual mode to XML lint. Let's write the small HTML which is actually a valid XML file, hit V for visual mode, select the text and press L. These types of extensions and also spell checkers linters dictionaries and much more can be brought to vim and be instantly available to use. A well configured vim file can spare you a lot of time in the command line.

Although it might take some time in the beginning to get things set up. And to find the configuration that is right for you. This investment can pay off big time in the future as time passes and we spend more and more time in vim. A lot of times we don't even have the luxury of opening a GUI editor. Like when working remotely was SSH session. Believe it or not command line editors are lifesavers and productivity is hard to achieve without them.

Sign Up

Share

Share with friends, get 20% off
Invite your friends to LearnDesk learning marketplace. For each purchase they make, you get 20% off (upto $10) on your next purchase.