8 എല്ലാ ലിനക്സ് അഡ്മിനിസ്ട്രേറ്റർക്കുമുള്ള രസകരമായ ‘Vi/Vim’ എഡിറ്റർ നുറുങ്ങുകളും തന്ത്രങ്ങളും - ഭാഗം 2


ഈ പരമ്പരയുടെ മുൻ ലേഖനത്തിൽ ഞങ്ങൾ RHCE അവലോകനം ചെയ്തു).

നമുക്ക് തുടങ്ങാം എന്ന് പറഞ്ഞു.

നുറുങ്ങ് #8: തിരശ്ചീനമോ ലംബമോ ആയ വിൻഡോകൾ സൃഷ്ടിക്കുക

ഈ നുറുങ്ങ്, ഞങ്ങളുടെ വായനക്കാരിൽ ഒരാളായ Yoander, ഭാഗം 1-ൽ പങ്കിട്ടു. ഒരേ പ്രധാന വിൻഡോയ്ക്കുള്ളിൽ വെവ്വേറെ ഫയലുകൾ എഡിറ്റുചെയ്യാൻ നിങ്ങൾക്ക് ഒന്നിലധികം തിരശ്ചീനമോ ലംബമോ ആയ ഡിവിഷനുകൾ ഉപയോഗിച്ച് vi/m സമാരംഭിക്കാം:

രണ്ട് തിരശ്ചീന വിൻഡോകൾ ഉപയോഗിച്ച് vi/m സമാരംഭിക്കുക, മുകളിൽ test1 ഉം ചുവടെ test2 ഉം

# vim -o test1 test2 

രണ്ട് ലംബ വിൻഡോകൾ ഉപയോഗിച്ച് vi/m സമാരംഭിക്കുക, ഇടതുവശത്ത് test3 ഉം വലതുവശത്ത് test4 ഉം:

# vim -O test3 test4 

സാധാരണ vi/m മൂവ്uമെന്റ് റൂട്ടീൻ (h: വലത്, l: ഇടത്, j: താഴെ, k: മുകളിൽ) ഉപയോഗിച്ച് നിങ്ങൾക്ക് കഴ്uസർ ഒരു വിൻഡോയിൽ നിന്ന് മറ്റൊന്നിലേക്ക് മാറ്റാം:

  1. Ctrl+w k – top
  2. Ctrl+w j – താഴെ
  3. Ctrl+w l – ഇടത്
  4. Ctrl+w h – വലത്

നുറുങ്ങ് #9: അക്ഷരങ്ങൾ, വാക്കുകൾ, അല്ലെങ്കിൽ മുഴുവൻ വരികളും അപ്പർകേസ് അല്ലെങ്കിൽ ചെറിയക്ഷരത്തിലേക്ക് മാറ്റുക

ഈ നുറുങ്ങ് വിമ്മിൽ മാത്രമേ പ്രവർത്തിക്കൂ എന്നത് ശ്രദ്ധിക്കുക. അടുത്ത ഉദാഹരണങ്ങളിൽ, X ഒരു പൂർണ്ണസംഖ്യയാണ്.

  1. അക്ഷരങ്ങളുടെ ഒരു ശ്രേണി വലിയക്ഷരത്തിലേക്ക് മാറ്റുന്നതിന്, ആദ്യ അക്ഷരത്തിൽ കഴ്uസർ സ്ഥാപിക്കുക, തുടർന്ന് എക്uസ് മോഡിൽ gUX എന്ന് ടൈപ്പ് ചെയ്യുക, തുടർന്ന് കീബോർഡിലെ വലത് അമ്പടയാളം അമർത്തുക.
  2. പദങ്ങളുടെ X എണ്ണം മാറ്റാൻ, വാക്കിന്റെ തുടക്കത്തിൽ കഴ്uസർ സ്ഥാപിക്കുക, എക്uസ് മോഡിൽ gUXw എന്ന് ടൈപ്പ് ചെയ്യുക.
  3. ഒരു മുഴുവൻ വരിയും വലിയക്ഷരത്തിലേക്ക് മാറ്റുന്നതിന്, കഴ്uസർ വരിയിൽ എവിടെയും സ്ഥാപിച്ച് എക്uസ് മോഡിൽ gUU എന്ന് ടൈപ്പ് ചെയ്യുക.

ഉദാഹരണത്തിന്, ഒരു ചെറിയക്ഷരം മുഴുവൻ വലിയക്ഷരത്തിലേക്ക് പരിവർത്തനം ചെയ്യുന്നതിന്, നിങ്ങൾ കഴ്uസർ വരിയിൽ എവിടെയും സ്ഥാപിച്ച് gUU എന്ന് ടൈപ്പ് ചെയ്യണം:

ഉദാഹരണത്തിന്, 2 വലിയക്ഷരങ്ങൾ ചെറിയക്ഷരത്തിലേക്ക് പരിവർത്തനം ചെയ്യുന്നതിന്, നിങ്ങൾ ആദ്യ വാക്കിന്റെ തുടക്കത്തിൽ കഴ്സർ സ്ഥാപിച്ച് gu2w എന്ന് ടൈപ്പ് ചെയ്യണം:

നുറുങ്ങ് #10: INSERT മോഡിൽ പ്രതീകങ്ങൾ, വാക്കുകൾ, അല്ലെങ്കിൽ ഒരു വരിയുടെ ആരംഭം എന്നിവ ഇല്ലാതാക്കുക

നിങ്ങൾക്ക് എക്uസ് മോഡിൽ (അതായത് ഒരു വാക്ക് ഇല്ലാതാക്കാൻ dw) ഒരേസമയം പ്രതീകങ്ങളോ നിരവധി വാക്കുകളോ ഇല്ലാതാക്കാൻ കഴിയുമെങ്കിലും, നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന രീതിയിൽ ഇൻസേർട്ട് മോഡിലും ചെയ്യാം:

  1. Ctrl + h: നിലവിൽ കഴ്uസർ സ്ഥിതിചെയ്യുന്ന സ്ഥലത്തേക്ക് മുമ്പത്തെ പ്രതീകം ഇല്ലാതാക്കുക.
  2. Ctrl + w: നിലവിൽ കഴ്uസർ സ്ഥിതിചെയ്യുന്ന സ്ഥലത്തേക്ക് മുമ്പത്തെ വാക്ക് ഇല്ലാതാക്കുക. ഇത് ശരിയായി പ്രവർത്തിക്കുന്നതിന്, നിങ്ങൾ ഇല്ലാതാക്കേണ്ട വാക്കിന് ശേഷം കഴ്സർ ഒരു ശൂന്യമായ സ്ഥലത്ത് സ്ഥാപിക്കണം.
  3. Ctrl + u: കഴ്uസർ ഉള്ള സ്ഥലത്തിന്റെ ഇടതുവശത്തുള്ള പ്രതീകത്തിൽ ആരംഭിക്കുന്ന നിലവിലെ ലൈൻ ഇല്ലാതാക്കുക.

ടിപ്പ് #11: പ്രമാണത്തിന്റെ മറ്റൊരു വരിയിലേക്ക് നിലവിലുള്ള വരികൾ നീക്കുകയോ പകർത്തുകയോ ചെയ്യുക

നിങ്ങൾക്ക് യഥാക്രമം ഡിലീറ്റ്, യാങ്ക് (പകർത്തുക), ഒട്ടിക്കുക, എന്നിവയ്uക്ക് എക്uസ് മോഡിൽ അറിയപ്പെടുന്ന dd, yy, p കമാൻഡുകൾ ഉപയോഗിക്കാം എന്നത് ശരിയാണെങ്കിലും, നിങ്ങൾ ആ പ്രവർത്തനങ്ങൾ നടത്താൻ ആഗ്രഹിക്കുന്നിടത്ത് കഴ്uസർ സ്ഥാപിക്കുമ്പോൾ മാത്രമേ ഇത് പ്രവർത്തിക്കൂ. . കഴ്uസർ നിലവിൽ എവിടെ വെച്ചിട്ടുണ്ടെങ്കിലും കോപ്പി ആൻഡ് മൂവ് കമാൻഡുകൾ ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഇത് ചെയ്യാൻ കഴിയും എന്നതാണ് നല്ല വാർത്ത.

അടുത്ത ഉദാഹരണത്തിനായി ടെറി നിക്കോൾ താറിംഗ്ടണിന്റെ ഫോർ എവർ എന്ന ഒരു ചെറിയ കവിത ഞങ്ങൾ ഉപയോഗിക്കും. ആരംഭിക്കുന്നതിന്, നമുക്ക് vim ലൈൻ നമ്പറുകൾ പ്രദർശിപ്പിക്കും (: കമാൻഡ് മോഡിൽ nu സജ്ജമാക്കുക - ഇത് ഒരു അധിക ടിപ്പായി പരിഗണിക്കുക). വരി 5 ന് താഴെയുള്ള വരി 3 പകർത്താൻ ഞങ്ങൾ :3copy5 (കമാൻഡ് മോഡിലും) ഉപയോഗിക്കും:

ഇപ്പോൾ, അവസാനത്തെ മാറ്റം പഴയപടിയാക്കുക (Esc + u - മറ്റൊരു ബോണസ് ടിപ്പ്!) കൂടാതെ ലൈൻ 7-നെ ലൈൻ 1 ഉപയോഗിച്ച് മാറ്റിസ്ഥാപിക്കാൻ :1move7 എന്ന് ടൈപ്പ് ചെയ്യുക. 2 മുതൽ 7 വരെയുള്ള വരികൾ മുകളിലേക്ക് മാറ്റുന്നത് എങ്ങനെയെന്നും മുൻ ലൈൻ 1 ഇപ്പോൾ 7 ലൈൻ ഉൾക്കൊള്ളുന്നുവെന്നും ശ്രദ്ധിക്കുക:

നുറുങ്ങ് #12: പാറ്റേൺ പ്രകാരമുള്ള തിരയലിന്റെ ഫലമായുണ്ടാകുന്ന പൊരുത്തങ്ങൾ എണ്ണി ഒരു സംഭവത്തിൽ നിന്ന് മറ്റൊന്നിലേക്ക് നീങ്ങുക

ഈ നുറുങ്ങ് സബ്സ്റ്റിറ്റ്യൂട്ട് കമാൻഡിനെ അടിസ്ഥാനമാക്കിയുള്ളതാണ് (ഈ സീരീസിന്റെ ഭാഗം 1 ലെ നുറുങ്ങ് #7), പകരം വയ്ക്കുന്ന സ്വഭാവം n ഓപ്uഷനാൽ അസാധുവാക്കപ്പെട്ടതിനാൽ അത് ഒന്നും നീക്കം ചെയ്യുന്നില്ല എന്നതൊഴിച്ചാൽ, ഇത് നിർദ്ദിഷ്ട പാറ്റേണിന്റെ സംഭവങ്ങളുടെ എണ്ണത്തിന് കാരണമാകുന്നു. :

ഫോർവേഡ് സ്ലാഷുകളൊന്നും നിങ്ങൾ ഒഴിവാക്കുന്നില്ലെന്ന് ഉറപ്പാക്കുക!

:%s/pattern//gn 

ഉദാഹരണത്തിന്,

:%s/libero//gn

എക്uസ് മോഡിൽ പാറ്റേണിന്റെ ഒരു സംഭവത്തിൽ നിന്ന് അടുത്തതിലേക്ക് നീങ്ങാൻ, n (ചെറിയക്ഷരം N) അമർത്തുക. മുമ്പത്തെ സംഭവത്തിലേക്ക് നീങ്ങാൻ, N അമർത്തുക.

കോൺഫിഗറേഷൻ ഫയലുകൾ എഡിറ്റ് ചെയ്യാനോ കോഡ് എഴുതാനോ നിങ്ങൾ vi/m ഉപയോഗിക്കുകയാണെങ്കിൽ, നിങ്ങൾ ആദ്യം പ്രോഗ്രാം തുറക്കുമ്പോൾ ലൈൻ നമ്പറുകൾ പ്രദർശിപ്പിക്കാനും ഓട്ടോമാറ്റിക് ഇൻഡന്റേഷൻ സജ്ജീകരിക്കാനും നിങ്ങൾ ആഗ്രഹിക്കുന്നു, അങ്ങനെ നിങ്ങൾ എന്റർ കീ അമർത്തുമ്പോൾ, കഴ്uസർ ആയിരിക്കും യാന്ത്രികമായി ശരിയായ സ്ഥാനത്ത് സ്ഥാപിക്കുന്നു. കൂടാതെ, ഒരു ടാബ് ഉൾക്കൊള്ളുന്ന വൈറ്റ് സ്പേസുകളുടെ എണ്ണം നിങ്ങൾക്ക് ഇഷ്ടാനുസൃതമാക്കാൻ താൽപ്പര്യമുണ്ടാകാം.

ഓരോ തവണയും നിങ്ങൾ vi/m സമാരംഭിക്കുമ്പോൾ അത് ചെയ്യാൻ കഴിയുമെങ്കിലും, ഈ ഓപ്uഷനുകൾ ~/.vimrc എന്നതിൽ സജ്ജീകരിക്കുന്നത് എളുപ്പമാണ്, അങ്ങനെ അവ സ്വയമേവ പ്രയോഗിക്കപ്പെടും:

set number
set autoindent
set shiftwidth=4
set softtabstop=4
set expandtab

നിങ്ങളുടെ vi/m എൻവയോൺമെന്റ് ഇഷ്uടാനുസൃതമാക്കുന്നതിനുള്ള കൂടുതൽ ഓപ്ഷനുകൾക്കായി, നിങ്ങൾക്ക് ഓൺലൈൻ വിം ഡോക്യുമെന്റേഷൻ നോക്കാവുന്നതാണ്.

നുറുങ്ങ് #15: Vimtutor ഉപയോഗിച്ച് ജനറൽ Vim സഹായം/ഓപ്uഷനുകൾ നേടുക

എപ്പോൾ വേണമെങ്കിലും നിങ്ങളുടെ പൊതുവായ vi/m വൈദഗ്ധ്യം വർദ്ധിപ്പിക്കേണ്ടതുണ്ടെങ്കിൽ, നിങ്ങൾക്ക് കമാൻഡ് ലൈനിൽ നിന്ന് vimtutor സമാരംഭിക്കാൻ കഴിയും, അത് ഒരു പൂർണ്ണ vi/m സഹായം പ്രദർശിപ്പിക്കും, അത് നിങ്ങൾക്ക് ആവശ്യമുള്ളപ്പോഴെല്ലാം റഫർ ചെയ്യാവുന്നതാണ്. vi/m-ൽ ഒരു നിർദ്ദിഷ്uട ടാസ്uക് എങ്ങനെ നിർവഹിക്കാമെന്ന് തിരയാൻ വെബ് ബ്രൗസർ.

# vimtutor

നിങ്ങൾ vi/m-ൽ ഒരു സാധാരണ ഫയൽ നാവിഗേറ്റ് ചെയ്യുന്നതുപോലെ നിങ്ങൾക്ക് vimtutor-ന്റെ ഉള്ളടക്കങ്ങൾ നാവിഗേറ്റ് ചെയ്യാനോ തിരയാനോ കഴിയുമെന്നത് ശ്രദ്ധിക്കുക.

സംഗ്രഹം

ഈ 2-ലേഖന പരമ്പരയിൽ, കമാൻഡ് ലൈൻ ടൂളുകൾ ഉപയോഗിച്ച് ടെക്uസ്uറ്റ് എഡിറ്റുചെയ്യുമ്പോൾ കൂടുതൽ ഫലപ്രദമാകാൻ നിങ്ങളെ സഹായിക്കുന്ന നിരവധി vi/m നുറുങ്ങുകളും തന്ത്രങ്ങളും ഞാൻ പങ്കിട്ടു. നിങ്ങൾക്ക് മറ്റുള്ളവ ഉണ്ടായിരിക്കണമെന്ന് എനിക്ക് ഉറപ്പുണ്ട് - അതിനാൽ ചുവടെയുള്ള ഫോം ഉപയോഗിച്ച് അവ മറ്റ് കമ്മ്യൂണിറ്റികളുമായി പങ്കിടാൻ മടിക്കേണ്ടതില്ല. എല്ലായ്പ്പോഴും എന്നപോലെ, ചോദ്യങ്ങളും അഭിപ്രായങ്ങളും സ്വാഗതം ചെയ്യുന്നു.