vi
සංස්කාරකයේ ඇතුළත් කිරීමේ ප්රකාරයේදී මම ඊතල යතුරු භාවිතා කිරීමට උත්සාහ කළ විට පහත දැක්වෙන අක්ෂර සංස්කාරකයේ ඇතුළත් වේ:
- සඳහා ↓මම බී ලබා,
- සඳහා ↑මම ඒ ලබා,
- සඳහා ←මම ඩී ලබා,
- සඳහා →මම සී ලබා
කරුණාකර මෙම ගැටළුව විසඳීමට මට උදව් කරන්න.
vi
සංස්කාරකයේ ඇතුළත් කිරීමේ ප්රකාරයේදී මම ඊතල යතුරු භාවිතා කිරීමට උත්සාහ කළ විට පහත දැක්වෙන අක්ෂර සංස්කාරකයේ ඇතුළත් වේ:
කරුණාකර මෙම ගැටළුව විසඳීමට මට උදව් කරන්න.
Answers:
.vimrc
ඔබගේ නිවාස නාමාවලියෙහි දැනටමත් ගොනුවක් නොමැති නම් , මෙය භාවිතා කර එකක් සාදන්න:
vim ~/.vimrc
ගොනුවේ ඉහළට මෙම රේඛාව එක් කරන්න:
set nocompatible
ගොනුව සුරකින්න, මෙය ඔබට ගැටළුව විසඳනු ඇත. :)
vi
ඒ වෙනුවට භාවිතා කරන්නේ නම් උපක්රමයක් ඇත vim
, ඔබ කළ යුත්තේ එකම වින්යාසය නමුත් ~/.exrc
ගොනුවේ ය.
vim
පැකේජය ස්ථාපනය කිරීමෙන් ගැටළුව විසඳනු ඇත:
sudo apt-get install vim
යූ ටියුබ් හෝ සාමාන්යයෙන් වෙබයේ හොඳ vim / vi නිබන්ධන බොහොමයක් තිබේ. ඔබේ ගැටලුව සඳහා, 8 වන අත්යවශ්ය සංස්කාරක සංචාලන මූලධර්ම බලන්න .
ඉන්පසු සුපුරුදු පරිදි ලිපිගොනු විවෘත කිරීම දිගටම කරගෙන යන්න:
vi desired-file
සමඟ vi
, iඔබ මත ක්ලික් කරන විට පෙළ ඇතුළු කිරීමට විධානය ක්රියාත්මක කරන්න .
මෙම විධානය මඟින් ඔබේ ගොනුවට පෙළ ඇතුළු කිරීමට ඉඩ ලබා දේ.
ක්ලික් කිරීමේදී, හරි:
ඔබ මෙම විධානය අක්රිය කරන තුරු .
දී විධානයක් අක්රිය කිරීමට vi
: ක්ලික් කරන්න Esc
එවිට ඔබේ ඊතල යතුරු සාමාන්ය ලෙස භාවිතා කරනු ඇත:
FYI, මෙන්න vi
විධාන කිහිපයක් :
මෙම ප්රභවයෙන් .
:x
Return ඉවත්වීම vi , මුල් ආයාචනයේදී නම් කරන ලද ගොනුවකට නවීකරණය කරන ලද ලිපිගොනු ලිවීම
:wq
Return vi , මුල් ආයාචනා නාමයෙන් නම් කරන ලද ගොනුවකට නවීකරණය කරන ලද ගොනුවක් ලිවීම
:q
Return (හෝ පිටවීම) vi
:q!
Return quit vi මෙම vi ඇමතුම සඳහා නවතම වෙනස්කම් සුරකින ලද නමුත්
↓ ගමන් එක පේලියක් කඩා කර්සරය
↓ චලනය එක පේලියක් දක්වා කර්සරය
← චලනය එක් අකුරක චරිතය ඉතිරි
→ පියවර හරි එක චරිත කර්සරය
u
ඔබ කළ සියල්ල අහෝසි කරන්න ; සරල ටොගල් ඔබ කළ ඕනෑම දෙයක්
.
නැවත කරන්න
i
ඇතුලත් කරන්න පෙළ කර්සරයට පෙර, තුරු Escපහර
I
ඇතුලත් කරන්න වත්මන් මාර්ගය ආරම්භයේදී පෙළ, තුරු Escපහර
a
ඇතුලත් පෙළ කර්සරයට පසුව, තුරු Escපහර
A
ඇතුලත් පෙළ වත්මන් මාර්ගය අවසානය දක්වා තෙක් Escපහර
o
විවෘත වත්මන් රේඛාවට පහත නව අනුකූලව හා දඩුවම් පෙළ, තුරු Escපහර
O
විවෘත හා තුරු, වත්මන් මාර්ගයට ඉහළින් නව රේඛාවක් පෙළ දමා Escපහර
r
වෙනුවට කර්සරය යටතේ තනි චරිතය (කිසිදු Escඅවශ්ය)
cw
වෙනස් කර්සරය යටතේ චරිතය ආරම්භ වී, නව අකුරු වර්තමාන වචනය, තුරු Escපහර
x
delete කර්සරය යටතේ තනි චරිතය
Nx
delete එන් චරිත, කර්සරය යටතේ චරිතය සමඟ ආරම්භ
dw
මකා කර්සරය යටතේ චරිතය පටන් යන තනි වචනය
C
වෙනස් දක්වා (ආදේශ) වත්මන් රේඛාවට චරිත, Escපහර
D
මකා රේඛාව ඉතිරි, වත්මන් කර්සර් ස්ථානය සමඟ ආරම්භ
dd
delete සමස්ත වත්මන් රේඛාවට
Ndd
delete එන් රේඛා, වත්මන් රේඛාවට පටන්; උදා: 5dd දමයි රේඛා 5
yy
පිටපත් (yank, සැපයුම අත්හිටුවන) ප්රේරක බවට වත්මන් රේඛාවට
Nyy
පිටපතක් (yank, සැපයුම අත්හිටුවන) ඊළඟ එන් රේඛා, වත්මන් රේඛාවට ඇතුළු වන විවේචන ප්රතික්ෂේප බවට
p
ඇලවීම පසු පෙළ බවට ප්රේරක ඇති පේළිය (ව) වත්මන් රේඛාව
0
(ශුන්ය) පියවර කර්සරය වත්මන් රේඛාව (කර්සරය සමග එක්) ක ආරම්භ කිරීමට
$
පියවර කර්සරය වත්මන් මාර්ගය අවසන්
w
පියවර කර්සරය ඊළඟ වචන පටන් කිරීමට
b
පියවර කර්සරය නැවත වචනය පෙර ආරම්භ කරන කිරීමට
:0
Returnහෝ 1G
පියවර ගොනුවේ පළමු පේළිය වෙත කර්සරය
:n
Returnහෝ nG
පියවරක් කර්සරය රේඛාව n
:$
Returnහෝ G
ඉවත් ගොනු පසුගිය රේඛාව කර්සරය
/string
සොයන්න පෙළ වැල කුඹල්ගම සඳහා ඉදිරියට
?string
සෝදිසි පෙළ වැලක් ඇතිවීමට පසුගාමී
n
පියවරක් සෝදිසි නූල් ඊළඟ සිදුවීමෙන්
N
පියවර ප්රතිවිරුද්ධ දිශාවට සෝදිසි නූල් ඊළඟ සිදුවීමෙන්
:help compatible
: "පෙරනිමියෙන් මෙම විකල්පය ක්රියාත්මක වන අතර Vi පෙරනිමි භාවිතා කරනුයේ විකල්පයන්. මෙම පෙරනිමිය තෝරාගෙන ඇත්තේ Vi මෙන් Vim භාවිතා කිරීමට කැමති අය සඳහා වන අතර, 'අනුකූල' විකල්පය ගැන දැන ගැනීමට පවා (අවශ්ය නැත). "
සංස්කරණ ප්රකාරයේදී ඊතල එබීමෙන් අකුරු මුද්රණය අක්රිය කිරීමට ඔබට පහත දෑ කළ හැකිය
vi $HOME/.exrc
(ගොනුවක් නොපවතී නම් එය සාදන්න) ඉන්පසු set nocompatible
එයට පේළියක් එකතු කර සුරකින්න.
:version
පැටවුම් අනුපිළිවෙල සඳහා ප්රතිදානය බලන්න (එසේම :h .exrc
හෝ :h init
). මම හිතන්නේ යමෙකුට vi සහ vim යන දෙඅංශයෙන්ම පසුබිමක් යෙදීමට අවශ්ය විය හැකිය, නැතහොත් පුරුද්දේ ප්රබල බලයක් විය හැකිය.
Vi සංස්කාරකයේ ක්රම තුනක් ඇත: ඒවා නම්:
ඔබ ගොනුවක් විවෘත කළ විට, ඔබ පෙරනිමි ප්රකාරයේ සිටී. දැන් ඔබ භාවිතා ඊතල සහිත යතුරු හෝ භාවිතය, ඔබේ පෙළ විශේෂිත ස්ථානයක යන්න කිරීමට අවශ්ය නම් h, j, k, lයතුරු. මෙය ඔබට තද නොමැති විට, පමණක් වැඩ කරන බව සටහන i(හෝ වෙනත් ඕනෑම ආදාන ආකාරයට වැනි විධාන ඇතුළත් a, A,I ).
'බී' සඳහා හේතුව ආදාන ප්රකාරයේ ඊතල යතුරු ඊතල යතුරු ලෙස ක්රියා නොකිරීම නිසා Escඕනෑම වේලාවක පෙරනිමි ප්රකාරයට යාමට ඔබන්න . ආදාන ආකාරයට මාධ්ය වෙත පැටවීමට විට iහෝ a, සහ සංචාලනය පමණක් මාධ්ය වෙත iයතුරු ඊතල යතුර සහ භාවිතා කිරීම හෝ h, j, k, l.
මට හරියටම එකම ගැටළුවක් ඇති නමුත් මගේ දේශීය යන්ත්රයේ පමණක් නොව, Win7 VM එකක සිට්රික්ස් ග්රාහකයක් හරහා ස්ලෙස් යන්ත්රයක් මත පුට්ටි හරහා සම්බන්ධතා ද ඇත. උබුන්ටු නැවත ස්ථාපනය කිරීමෙන් පසුව දේශීය සත්කාරක සහ දුරස්ථ ධාරක දෙකම පෙන්නුම් කරන්නේ හරියටම එකම ගැටළුවකි.
එය සොයාගත් පසු
$ localectl list-keymaps
Couldn't find any console keymaps.
මෙම අමුතු VI හැසිරීමට හේතු වේ මම ගැටළුව විසඳන පැකේජ කොන්සෝලය-දත්ත ස්ථාපනය කළෙමි!
sudo apt-get install console-data
සටහන:
අනෙක් පෝස්ට් වල හොඳ තොරතුරු ඇති නමුත් මෙම හැසිරීම සිදු වූයේ ඇයිද යන්න පැහැදිලි කිරීමට කිසිදු තනතුරක් උත්සාහ කළේ නැත. බොහෝ අය අනාගතයේදී මේ සම්බන්ධයෙන් පැකිලීමට බැඳී සිටිති. එසේම, පෙර කිසියම් තනතුරක් ඔබට සහාය වූ බැවින් මෙම ප්රශ්නය විසඳූ බව සලකුණු කළ හැකිද?
මෙන්න පැහැදිලි කිරීමක් :
Vi යනු බොහෝ කලක් තිස්සේ යුනික්ස් පද්ධති වෙත මුල් බැස ඇති සංස්කාරකයකි. එය හොඳ මෙවලමක් වන නමුත් එය නැවත ක්රියාත්මක කර ඇති අතර දැන් වඩා හොඳය. Vim පසුව ලියා ඇති අතර එය පුනරාවර්තනයයි. මිනිසුන් සාමාන්යයෙන් vi ලෙස හඳුන්වන්නේ 'vim-minimum' ලෙස වන අතර vim යනු vi හි "වැඩිදියුණු කළ" අනුවාදයකි. ඔබට එය මේ ආකාරයට සිතිය හැකිය: vi යනු හරය වන අතර එය මත විම් පුළුල් වේ.
හැසිරීම ඔබ සොයාගත් ආකාරය විය හැකිය :
ඔබ මෙම ගැටලුව සොයාගෙන ඇතැයි සඳහා, ඔබ "තද i " ඇතුළු වීමට ඇතුලත් කරන්න කිරීමේ මාදිලියට අතර නිවැරදි රේඛාව සහ සංස්කරණ ලක්ෂ්යය සැරිසැරීමට ඔබේ ඊතල යතුරු භාවිතා කළේය. ඔබගේ අනපේක්ෂිත වර්ග ගැටලුවට හේතුව මෙයයි.
විසඳුම 1 හෝ 2
1) vivi someFile
භාවිතා කරන අතරතුර , පළමුව සංස්කරණ ස්ථානයට යන්න, ඉන්පසු ඇතුළු කිරීමේ ක්රමයට ඇතුළු වන්න.
2) vim someFile
සරලව භාවිතා විම් ආරම්භයේ සිට.
අත්පොත (මෑන් පිටු) කියවීමට හෝ උදව් සඳහා -h භාවිතා කිරීමට මට ප්රමාණවත් ලෙස අවධාරණය කළ නොහැක. ඔබ කවචයේ රටාවන්ට හැඩගැසුණු පසු, මිනිසාගේ පිටු ඔබේ හොඳම මිතුරා බවට පත්වේ. උදාහරණය: man vi
හෝman vim
Vim ස්ථාපනය කර ඇති බව තහවුරු කරන්න .
කොන්සෝල කවුළුවක් විවෘත කර ක්රියාත්මක කරන්න:
dpkg --list | grep vim
ඔබ මේ හා සමාන දෙයක් ලබා ගන්නේ නම්, එවිට ඔබට vim භාවිතා කිරීම ආරම්භ කළ හැකිය.
~ $ dpkg --list | grep vim
ii vim 2:7.4.052-1ubuntu3 amd64 Vi IMproved - enhanced vi editor
ii vim-common 2:7.4.052-1ubuntu3 amd64 Vi IMproved - Common files
ii vim-runtime 2:7.4.052-1ubuntu3 all Vi IMproved - Runtime files
ii vim-tiny 2:7.4.052-1ubuntu3 amd64 Vi IMproved - enhanced vi editor - compact version
විධාන විමසුමේ කිසිවක් නොමැතිව ආපසු එන්නේ නම්, vim ස්ථාපනය කර නැත. ඔබේ නිධි යාවත්කාලීන කිරීමට පහත උදාහරණ භාවිතා කර vim ස්ථාපනය කරන්න.
sudo apt-get update
sudo apt-get install vim
යම් දෙයක් නිවැරදි කරන්නේ කෙසේද යන්න අන්තර්ජාලයේ සෙවීමේදී පමණක් ඔබ vi හෝ vim භාවිතා කරන අතර ඔබට ටයිප් කිරීමට අමතක වූ විට vim
, අනාගතය සඳහා එය නිවැරදි කළ හැකි එක් ක්රමයක් තිබේ. අවධානය යොමු කරන ලෙස මම ඔබට අවවාද කරමි. Vi වෙත යොමු කිරීමක් සමඟ vi නැවත ලිවීමට ඔබට අන්වර්ථයක් භාවිතා කළ හැකිය, එවිට ඔබ කලාතුරකින් අනාගතයේ ටයිප් කරන දේ කුමක් වුවත්, එම "අපොයි!" මොහොත. ඔබට පසුව අන්වර්ථයක් මකා දැමිය හැකිය.
වර්ගය vim .bashrc
. හිස් රේඛාවකට පමණක් ~
(හෝ ආරම්භ වන වෙනත් ඕනෑම පේළියකට) ගෙනයන්න alias
(එබැවින් ඒවා එකට කාණ්ඩ කර ඇත) ඉන්පසු i යතුර ඔබන්න -insert- ප්රකාරයට ඇතුළු වන්න.
alias vi='vim'
ඔබා Esc
ඉන්පසු ටයිප් කරන්න :wq
. දැන් ඔබට ගොනුව නැවත පූරණය කිරීමට අවශ්යයි. ටයිප් source .bashrc
කරන්න ඔබ මෙම සංස්කරණයන් කළ පසු විවෘත වන වෙනත් කවචයක් .bashrc ගොනුව ස්වයංක්රීයව පූරණය වේ.
ලබා දී ඇති සියලු පැහැදිලි කිරීම් ටිකක් විකාරයකි. මා සතුව vi ඇති නමුත් vim ස්ථාපනය කර නොමැත.
විකල්ප පරීක්ෂා: /etc/alternatives/vi
→/usr/bin/vim.tiny
ඒ නිසා vi
ය vim.tiny
, සහ එය භාවිතා කරයි /etc/vim/vimrc.tiny
.
ඔබ තුළ vimrc.tiny
පහත පේළිය සොයාගත හැකිය:
set compatible
මෙම ගොනුවේ ඇති එකම දෙය එයයි. /etc/vim/vimrc
එය භාවිතා කරන බව සලකන්න nocompatible
.
එබැවින් එක්කෝ vim ස්ථාපනය කරන්න, නැතහොත් vimrc.tiny
ගොනුව වෙනස් කරන්න, නැතහොත් ~/.vimrc
රේඛාව අඩංගු විය යුතු ඔබේම දෑ සාදන්න :
set nocompatible
~/.vimrc
සහ සැකසීම nocompatible
: askubuntu.com/a/353944/158442 , හෝ 3. පද්ධති ගොනුවක් සංස්කරණය කිරීම. සංස්කරණය /etc/vim/vimrc.tiny
කිරීම සඳහා වූ යෝජනාව පමණක් අළුත් ය, එහෙත් ඔබ පිළිතුරු විකාර සහගත ලෙස හඳුන්වන අතර ඒවා එකම දේ යෝජනා කරයි.
මෙය TERM
විචල්යය නිසා ද විය හැකිය ; මේ වගේ උදාහරණයක් ලෙස එය සකසන්න:
export TERM=xterm
සමහර පද්ධති වල, nocompatible
විකල්පය ලබා ගත නොහැක, නැතහොත් ප්ලගිනයක් ඊතල යතුරු ක්රියාකාරිත්වය බිඳ දැමුවහොත් එය ගැටළුව විසඳන්නේ නැත. මෙන්න වැඩකටයුතු ...
.exrc
පහත දැක්වෙන පේළි ඇතුළත් කිරීමට ගොනුව සංස්කරණය කරන්න :
map! ^[OA ^[ka
map! ^[OB ^[ja
map! ^[OC ^[la
map! ^[OD ^[ha
නැතහොත්, ගැටළුව පවතින්නේ සාමාන්ය ප්රකාරයේදී නම්, ඔබට පහත පරිදි වෙනස් කර nmap
මඟ හැරිය හැක a
:
nmap! ^[OA ^[k
සහ යනාදි.
ඒවා නිෂ්පාදනය කිරීමට අවශ්ය ප්රධාන සංයෝජන මෙන්න (පළමු එක පමණක් පෙන්වයි):
map! <CTRL-V><Up-Arrow> <CTRL-V><ESC>ka
මෙය සංස්කරණ ප්රකාරයෙන් ගැලවී, අවශ්ය දිශාවට ගමන් කරයි, සහ සංස්කරණ මාදිලිය නැවත ලබා දෙයි. පැන යාමේ අනුක්රමය වචනයේ පරිසමාප්ත අර්ථයෙන්ම <ESC> <O> <A> යනාදී අනුපිළිවෙලක් ලෙස Vi කියවීම මඟහරවා ගැනීමට මෙය අවශ්ය වේ.
VI සඳහා "~ / .exrc" ගොනුව නිර්මාණය කිරීම හෝ සංස්කරණය කිරීම හෝ VIM "~ / .vimrc" ගොනුව නිර්මාණය කිරීම හෝ සංස්කරණය කිරීම හෝ පේළියට එක් කිරීම.
set nocompatible
මෙම ලිපිය ලියන අවස්ථාව වන විට වඩාත්ම ඡන්දය දුන් දෙවන අයිතමය පිළිබඳ ප්රශංසා ඇත, ඔවුන්ගේ ප්රවේශය පිළිගත්තේ නැත්තේ මන්දැයි කල්පනා කරයි. හේතුව වෙනත් සංස්කාරකවරුන් ස්ථාපනය කිරීමට ඉඩ නොදෙන ධාරක තිබේ. එසේ වුවද vim සමහර විට එකම බලපෑමක් ඇති කරයි, එබැවින් ඉහළම ඇතුළත් කිරීම් දෙකෙන් භාවිතා කළ හැකි තොරතුරු පොකුරක් ඇත. කෙසේ වෙතත් මට අදහස් දැක්විය නොහැක, මෙය කිසිවෙකු 100% ක්ම 100% ක් නිවැරදි නොවීමට හේතු පැහැදිලි කරයි.
සාම්ප්රදායික vi සංස්කාරකය ඊතල යතුරු හඳුනා නොගනී (... දුරින්). විසඳුම් දෙකක් තිබේ:
මෙම යන්ත්රය තුල මට සිදුවිය make sure
බව
set nocompatible
යනු last entry in ~/.vimrc
. නැතහොත් අවම වශයෙන් අවසාන ඇතුළත් කිරීම් වලින් එකක්වත්, පසුව තවත් ප්ලගිනයක් පසුව පටවනු නොලැබේ.
HTH
කිසියම් හේතුවක් නිසා, මගේ නව 18.04 VPS මත පරිශීලක මූල සඳහා envvar HOME ආරම්භ කිරීම උබුන්ටු විසින් අතහැර දමා ඇත. එය එසේ නම්, vi .vimrc ගොනුව සොයාගත නොහැක. ගැටළුව සාමාන්ය පරිශීලකයින් සඳහා (/ නිවසේ /) සිදු නොවේ.
විචල්යය පරීක්ෂා කිරීම සඳහා:
echo $HOME
මෙහි ප්රති results ලය හිස් රේඛාවක් නම්, විචල්යය සකසා නොමැත. ගැටලුව පහව ගියේය
export HOME=/root
මම විධානය /root/.bashrc ගොනුවට ගෙන ගියෙමි (මෙය සාමාන්යයෙන් සකසා ඇත්තේ කොතැනදැයි මම නොදනිමි).