|
Apache/2.2.15 (CentOS) Linux obd60-6c49958d75-2q7cw 5.4.0-174-generic #193-Ubuntu SMP Thu Mar 7 14:29:28 UTC 2024 x86_64 uid=48(apache) gid=48(apache) groups=48(apache) server ip : 104.21.65.202 | your ip : 10.244.126.0 safemode OFF > / usr / share / vim / vim74 / tutor / |
| Filename | /usr/share/vim/vim74/tutor/tutor.ru |
| Size | 45.02 kb |
| Permission | rw-r--r-- |
| Owner | apache |
| Create time | 26-May-2024 11:06 |
| Last modified | 17-Jul-2019 02:20 |
| Last accessed | 17-Jul-2019 02:20 |
| Actions | edit | rename | delete | download (gzip) |
| View | text | code | image |
===============================================================================
= � о б � о п о ж а л о в а � � в � � е б н и к VIM - �е��и� 1.5 =
===============================================================================
Vim --- ��о о�ен� мо�н�й �едак�о�, име��ий множе��во команд, �ли�ком
много дл� �ого, ��об� и� в�е можно б�ло опи�а�� в �аком ��ебнике, как
Ñ�Ñ�оÑ�. ÐÑ�оÑ� Ñ�Ñ�ебник пÑ�изван обÑ�Ñ�Ñ�ниÑ�Ñ� доÑ�Ñ�аÑ�оÑ�ное Ñ�иÑ�ло команд длÑ� Ñ�ого,
��об� �� могли � легко���� и�пол�зова�� Vim в ка�е��ве �едак�о�а об�его
назна�ени�.
�ам по��еб�е��� п�иблизи�ел�но 25-30 мин�� на о�воение данного ��ебника в
зави�имо��и о� �ого, �кол�ко в�емени �� по��а�и�е на �к�пе�имен��.
�оманд� в ��ока� б�д�� моди�и�и�ова�� �ек��. Создай�е копи� ��ого �айла,
��об� поп�ак�икова���� на ней (е�ли �� зап���или "vimtutor", �о ��о �же
копи�).
�ажно помни��, ��о ��о� ��ебник п�едназна�ен дл� об��ени� в п�о�е��е
иÑ�полÑ�зованиÑ�. ÐÑ�о ознаÑ�аеÑ�, Ñ�Ñ�о Ð�Ñ� должнÑ� запÑ�Ñ�каÑ�Ñ� командÑ� длÑ� Ñ�ого,
��об� как �лед�е� и� из��и��. ��ли �� п�о��о п�о�и�ае�е �ек��, �о
заб�де�е команд�!
Тепе�� �беди�е�� в �ом, ��о клави�а CapsLock не вкл��ена и нажми�е
клави�� j не�кол�ко �аз, �ак, ��об� У�ок 1.1 полно���� поме��ил�� на
�к�ане.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 1.1: ��Р���Щ���� �УРС�Р�
** �л� пе�еме�ени� к���о�а нажми�е клави�и h,j,k,l �ак, как показано ниже. **
^
k Сове��: �лави�а h на�оди��� �лева и пе�еме�ае� влево.
< h l > �лави�а l на�оди��� �п�ава и пе�еме�ае� вп�аво.
j �лави�а j по�ожа на ���елк� `вниз'.
v
1. �одвигай�е к���о� по �к�ан�, пока не по��в��в�е�е �еб� �ве�енно.
2. �адави�е клави�� `вниз' (j) пока она не на�не� пов�о������.
---> Тепе�� �� знае�е, как пе�ей�и к �лед���ем� ��ок�.
3. ��пол�з�� клави�� `вниз' пе�ейди�е к У�ок� 1.2.
�аме�ание: ��ли в� пока не �ве�ен� в �ом, ��о наби�ае�е, нажми�е <ESC> дл�
пе�е�ода в об��н�й �ежим (Normal mode). �о�ле ��ого пе�енабе�и�е
��еб�ем�� команд�.
�аме�ание: �б��н�е клави�и �п�авлени� к���о�ом (���елки) �акже должн�
�або�а��. �днако, клави�и hjkl позвол�� �ам пе�еме�а����
зна�и�ел�но б����ее, как �ол�ко �� на��и�е�� ими пол�зова����.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 1.2: ���УС� � ����РШ���� Р���ТЫ С VIM
!! ��������! ��ежде, �ем в�полн��� л�бой из опи�анн�� ниже �агов, п�о��и�е
��ок �еликом !!
1. �ажми�е клави�� <ESC> (дл� �ого, ��об� �до��ове�и����, ��о �� в об��ном
�ежиме (Normal mode)).
2. �абе�и�е: :q! <ENTER>.
---> ÐÑ�о позволиÑ� Ð�ам вÑ�йÑ�и из Ñ�едакÑ�оÑ�а Ð�Ð�Ð� СÐ�ХРÐ�Ð�Ð�Ð�Ð�Я лÑ�бÑ�Ñ� Ñ�деланнÑ�Ñ�
изменений. ��ли �� �о�и�е �о��ани�� изменени� и в�й�и:
:wq <ENTER>
3. �огда �� �види�е п�игла�ение командной оболо�ки, набе�и�е команд�,
коÑ�оÑ�аÑ� пÑ�ивела Ð�аÑ� в Ñ�Ñ�оÑ� Ñ�Ñ�ебник. ÐÑ�о можеÑ� бÑ�Ñ�Ñ�
vimtutor ru <ENTER>
�б��но можно и�пол�зова��: vim tutor.ru <ENTER>
---> 'vim' позвол�е� зап���и�� �едак�о� vim, 'tutor.ru' --- ��о �айл, ко�о��й
�� б�де�е �едак�и�ова��.
4. ��ли �� �ве�ен� в �ом, ��о запомнили ��и �аги, в�полни�е �аги о� 1 до 3
��об� в�й�и �нова зап���и�� �едак�о�. �а�ем пе�еме��и�е к���о� вниз к
У�ок� 1.3.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 1.3: Р����Т�Р������ Т��СТ� - У�������
** �а�од��� в об��ном �ежиме нажми�е x, ��об� �дали�� �имвол под к���о�ом. **
1. �е�еме��и�е к���о� к ���оке вниз�, поме�енной --->.
2. �л� и�п�авлени� о�ибок, пе�еме��и�е к���о�, пока он не окаже��� над
�дал�ем�м �имволом.
3. �ажми�е клави�� x дл� �далени� ��еб�емого �имвола.
4. �ов�о�и�е �аги 2--4 пока ���ока не б�де� и�п�авлена.
---> �� ���опо�а коп��� ппп�л� ппо пппол� ле��и��.
5. Тепе��, когда ���ока о�ко��ек�и�ована, пе�е�оди�е к ��ок� 1.4.
����Ч����: � �оде о�воени� ��ого ��ебника не п��ай�е�� запомина��, ��и�е
в п�о�е��е и�пол�зовани�.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 1.4: Р����Т�Р������ Т��СТ� - �СТ����
** �а�од��� в об��ном �ежиме (Normal mode), нажми�е i дл� в��авки �ек��а. **
1. �е�еме��и�е к���о� к пе�вой ���оке вниз�, поме�енной --->.
2. �л� �ого, ��об� �дела�� пе�в�� ���ок� иден�и�ной в�о�ой, поме��и�е
к���о� на �имвол ��Р�� ко�о��м �лед�е� в��ави�� �ек��.
3. �ажми�е i и набе�и�е ��еб�ем�е добавлени�.
4. �о�ле и�п�авлени� в�е� о�ибок нажми�е <ESC> дл� возв�а�а в об��н�й �ежим.
�ов�о�и�е �аги 2--4, пока ��аза не б�де� и�п�авлена полно����.
---> Ча��� �ек��а в ���оке бе�ледно .
---> Ча��� �ек��а в ��ой ���оке бе��ледно п�опала.
5. �огда о�вои�е в��авк� �ек��а, пе�е�оди�е дал��е к Рез�ме.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Р��Ю�� УР��� 1
1. ����о� пе�еме�ае��� либо клави�ами �о ���елками, либо клави�ами hjkl.
h (влево) j (вниз) k (вве��) l (вп�аво)
2. �л� зап��ка Vim (из п�игла�ени� % командной оболо�ки) набе�и�е:
vim ��Я_Ф���� <ENTER>
3. �л� заве��ени� �або�� � Vim набе�и�е:
<ESC> :q! <ENTER> ��об� о�каза���� о� �о��анени� изменений.
�ли набе�и�е:
<ESC> :wq <ENTER> ��об� �о��ани�� изменени�.
4. �л� �далени� �имвола под к���о�ом в об��ном �ежиме, набе�и�е: x
5. Ч�об� в��ави�� �ек�� пе�ед к���о�ом в об��ном �ежиме, набе�и�е:
i вводи�е �ек�� <ESC>
����Ч����: �ажа�ие <ESC> пе�еме��и� �а� в об��н�й �ежим (Normal mode) либо
п�е�ве� нежела�ел�н�� и �а��и�но заве��енн�� команд�.
Тепе�� пе�е�одим к У�ок� 2.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 2.1: ������Ы У������Я
** �абе�и�е dw дл� �далени� ��а��ка �ек��а до кон�а �лова. **
1. �ажми�е <ESC>, ��об� пе�ей�и в об��н�й �ежим.
2. �е�еме��и�е к���о� вниз, к ���оке, поме�енной --->.
3. �е�еме��и�е к���о� в на�ало �лова, ко�о�ое �лед�е� �дали��.
4. �абе�и�е dw , ��об� �дали�� ��о �лово.
����Ч����: �о в�ем� набо�а б�кв� dw по�в���� в по�ледней ���оке �к�ана. ��ли
�� ��о-�о набе�е�е неп�авил�но, нажми�е <ESC> и на�ни�е �на�ала.
---> �е�кол�ко �лов �а�инад в ��ом п�едложении ав�ок�ан изли�ни.
5. �ов�о�и�е �аги 3 и 4, пока не и�п�ави�е в�е о�ибки и пе�е�оди�е к
У�ок� 2.2.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 2.2: �������Т��Ь�Ы� ������Ы У������Я
** �абе�и�е d$ дл� �далени� �ек��а до кон�а ���оки. **
1. �ажми�е <ESC>, ��об� пе�ей�и в об��н�й �ежим.
2. �е�еме��и�е к���о� вниз, к ���оке, поме�енной --->.
3. �е�еме��и�е к���о� к кон�� п�авил�ной ���оки (��С�� пе�вой . ).
4. Ч�об� �дали�� о��а�ок ���оки, набе�и�е d$ .
---> ��о-�о наб�ал окон�ание ��ой ���оки дважд�. окон�ание ��ой ���оки дважд�.
5.Ч�об� л���е �азоб�а���� в ��ом, пе�е�оди�е к У�ок� 2.3.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 2.3: ������Ы � ��Ъ��ТЫ
Фо�ма� команд� `�даление' d �аков:
[�и�ло] d об�ек� ��� d [�и�ло] об�ек�
�де��:
�и�ло - �кол�ко �аз и�полни�� команд� (необ�за�ел�но, по �мол�ани�=1).
d - команда �далени�.
об�ек� - � �ем команда должна б��� в�полнена (пе�е�и�лено ниже).
��а�кий �пи�ок об�ек�ов:
w - о� к���о�а до кон�а �лова, вкл��а� заве��а��ий п�обел.
e - о� к���о�а до кон�а �лова, �� вкл��а� заве��а��ий п�обел.
$ - о� к���о�а до кон�а ���оки.
^ - о� к���о�а до на�ала ���оки.
����Ч����: ��о��ое нажа�ие на �имвол об�ек�а в об��ном �ежиме (Normal mode)
без дополни�ел�н�� команд пе�едвине� к���о� �ак, как �казано в
�пи�ке об�ек�ов.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 2.4: �С��ЮЧ���� �� �Р����� `�������-��Ъ��Т'
** �абе�и�е dd дл� �далени� в�ей ���оки. **
��лед��вие �а��ого п�именени� опе�а�ии �далени� в�ей ���оки, �аз�або��ики
Vim �е�или, ��о дл� ��ого п�о�е в�его п�о��о наб�а�� d дважд�.
1. �е�еме��и�е к���о� вниз, ко в�о�ой ���оке ��аз�.
2. �абе�и�е dd дл� �далени� ���оки.
3. Тепе�� пе�еме��и�е�� к �е�ве��ой ���оке.
4. �абе�и�е 2dd (в�помни�е п�авило `�и�ло-команда-об�ек�'), ��об� �дали��
две ���оки.
1) �е�ом � �ож� на ��адион,
2) �, как внезапно кон�ил�� диван!
3) Я боле� за ``�ени�'', ``�ени�'' --- �емпион!
4) �е�ал�но � гл�ж� на на�е поколение!
5) �го г��д��ее ил� п���о ил� �емно...
6) Я �иж� на �камейке в ложе `�'
7) � иг�а� на бол��ой же���ной ���бе.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 2.5: ������� `�Т��Т'
** �ажми�е u дл� о�мен� �ез�л��а�а �або�� п�ед�д��ей команд�, U дл� о�мен�
и�п�авлений во в�ей ���оке. **
1. �е�еме��и�е к���о� вниз, к ���оке, поме�енной ---> и ���анови�е его на
пе�в�� о�ибк�.
2. �ажми�е x дл� �далени� пе�вого неп�авил�ного �имвола.
3. Тепе�� нажми�е u дл� о�мен� (о�ка�а) по�ледней в�полненной команд�.
4. ��п�ав��е в�е о�ибки в ���оке, и�пол�з�� команд� x .
5. Тепе�� нажми�е заглавн�� U дл� �ого, ��об� ве�н��� в�� ���ок� в и��одное
�о��о�ние.
6. �ажми�е u не�кол�ко �аз дл� о�мен� команд� U и п�ед�д��и� команд.
7. �ажми�е �епе�� CTRL-R (�де�живай�е клави�� CTRL нажа�ой в момен� нажа�и�
R) не�кол�ко �аз дл� возв�а�а команд (о�ка� о�ка�а).
---> ��п��ав��е оо�ибки в ��ойй ���оке и ве�ни��е и� �� помо���� `о�ка�а'.
8. ÐÑ�о бÑ�ли оÑ�енÑ� полезнÑ�е командÑ�. Ð�алее пеÑ�еÑ�одиÑ�е к РезÑ�ме УÑ�ока 2.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Р��Ю�� УР��� 2
1. �л� �далени� �ек��а о� к���о�а до кон�а �лова набе�и�е: dw
2. �л� �далени� �ек��а о� к���о�а до кон�а ���оки набе�и�е: d$
3. �л� �далени� в�ей ���оки набе�и�е: dd
4. Фо�ма� команд� в об��ном �ежиме имее� вид:
[�и�ло] команда об�ек� ��� команда [�и�ло] об�ек�
где:
�и�ло - �кол�ко �аз пов�о�и�� в�полнение команд�
команда - ��о в�полни��, нап�име� d дл� �далени�
об�ек� - на ��о должна воздей��вова�� команда, нап�име� w (�лово),
$ (до кон�а ���оки), и �.д.
5. �л� о�мен� (о�ка�а) п�ед�е��в���и� дей��вий набе�и�е: u (���о�на� u)
�л� о�мен� (о�ка�а) в�е� изменений в ���оке набе�и�е: U (п�опи�на� U)
�л� о�мен� о�ка�а набе�и�е: CTRL-R
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 3.1: ������� �СТ����
** �абе�и�е p дл� в��авки по�леднего �даленного �ек��а по�ле к���о�а. **
1. �е�еме��и�е к���о� вниз к по�ледней ���оке из набо�а.
2. �абе�и�е dd дл� �далени� ���оки и ее �о��анени� в б��е�е Vim'а.
3. �е�еме��и�е к���о� к ���оке ��� �ем ме��ом, к�да �лед�е� в��ави��
�даленн�� ���ок�.
4. �а�од��� в об��ном �ежиме набе�и�е p дл� замен� ���оки.
5. �ов�о�и�е �аги 2--4, пока не �а���ави�е в�е ���оки в н�жном по��дке.
г) � л���е в�д�ма�� не мог.
б) �огда не в ���к� занемог,
в) �н �важа�� �еб� за��авил
а) �ой д�д� �ам�� �е��н�� п�авил
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 3.2: ������� �����Ы
** �абе�и�е r и �имвол, замен���ий �имвол под к���о�ом. **
1. �е�еме��и�е к���о� вниз, к ���оке, поме�енной --->.
2. У��анови�е к���о� �ак, ��об� он на�одил�� над пе�вой о�ибкой.
3. �абе�и�е r и за�ем �имвол, и�п�авл���ий о�ибк�.
4. �ов�о�и�е �аги 2 и 3, пока пе�ва� ���ока не б�де� и�п�авлена.
---> � момег� наб��а ��ой ���оки кое0к�о � ���дом попвдал по клваи�ам!
---> � момен� набо�а ��ой ���оки кое-к�о � ���дом попадал по клави�ам!
5. Тепе�� пе�е�оди�е к У�ок� 3.2.
����Ч����: �омни�е, ��о в� должн� ��и���� в п�о�е��е �або��, а не п�о��о
запомина�.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 3.3: ������� ��������Я
** �л� изменени� �а��и �лова набе�и�е cw . **
1. �е�еме��и�е к���о� вниз, к ���оке, поме�енной --->.
2. Ра�положи�е к���о� над б�квой `o' в �лове `�ола'.
3. �абе�и�е cw и и�п�ав��е �лово (в данном �л��ае, набе�и�е `лов'.)
4. �ажми�е <ESC> и пе�е�оди�е к �лед���ей о�ибке (к пе�вом� �имвол�, ко�о��й
надо измени��.)
5. �ов�о�и�е �аги 3--4 пока пе�вое п�едложение не ��ане� иден�и�н�м в�о�ом�.
---> �е�кол�ко �ола в ��г� ���оке �пг��б� �едалзк��ие�в�.
---> �е�кол�ко �лов в ��ой ���оке ��еб��� �едак�и�овани�.
�б�а�и�е внимание, ��о cw не �ол�ко замен�е� �лово, но и пе�еводи� ва� в �ежим
в��авки.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 3.4: �Р�������� �����ЯТЬ С �������� c
** �оманда замен� и�пол�з�е��� � �еми же об�ек�ами, ��о и команда �далени�. **
1. �оманда изменени� п�имен�е��� �аким же об�азом, как и команда �далени�.
�е �о�ма� �аков:
[�и�ло] c об�ек� ��� c [�и�ло] об�ек�
2. �б�ек�� �акже �овпада��: w (�лово), $ (коне� ���оки) и �.п.
3. �е�еме��и�е к���о� вниз, к ���оке, поме�енной --->.
4. �е�ейди�е к пе�вой о�ибке.
5. �абе�и�е c$ и о��едак�и��й�е пе�в�� ���ок� �ак, ��об� она �овпадала �о
в�о�ой, по�ле �его нажми�е <ESC>.
---> �оне� ��ой ���оки н�ждае��� в помо�и, ��об� ��а�� по�ожим на в�о�ой.
---> �оне� ��ой ���оки н�ждае��� в помо�и команд� c$ .
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Р��Ю�� УР��� 3
1. Ð�лÑ� вÑ�Ñ�авки Ñ�екÑ�Ñ�а, коÑ�оÑ�Ñ�й Ñ�олÑ�ко Ñ�Ñ�о бÑ�л Ñ�дален, набеÑ�иÑ�е p . ÐÑ�а
команда в��ави� �даленн�й �ек�� ��С�� к���о�а (е�ли б�ла �далена ���ока,
�о она б�де� поме�ена в ���оке под к���о�ом).
2. �л� замен� �имвола под к���о�ом набе�и�е r и за�ем замен���ий �имвол.
3. �оманда изменени� позвол�е� �ам измени�� �казанн�й об�ек� о� к���о�а до
кон�а ��ого об�ек�а. �ап�име�, набе�и�е cw дл� замен� о� к���о�а до
кон�а �лова, c$ дл� изменени� до кон�а ���оки.
4. Фо�ма� команд� изменени� �аков:
[�и�ло] c об�ек� ��� c [�и�ло] об�ек�
Тепе�� о�п�авл�й�е�� к �лед���ем� ��ок�.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 4.1: ��Ф�Р��Ц�Я � Ф���� � Р�С��������� � ���
** �абе�и�е CTRL-g ��об� �виде�� �а�е ме��о�а�положение в �айле и ин�о�ма�и�
о нем.
�абе�и�е SHIFT-G дл� пе�еме�ени� к заданной ���оке в �айле. **
�аме�ание: ��о�и�ай�е ве�� ��ок п�ежде �ем в�полн��� л�б�е команд�!!
1. Уде�жива� клави�� Ctrl нажми�е g . �низ� �к�ана по�ви��� ���ока ��а���а �
именем �айла и номе�ом ���оки, в ко�о�ой �� на�оди�е��. �апомни�е номе�
���оки, он по��еб�е��� на Шаге 3.
2. �ажми�е shift-G дл� пе�еме�ени� к кон�� �айла.
3. Ð�абеÑ�иÑ�е номеÑ� Ñ�Ñ�Ñ�оки, в коÑ�оÑ�ой вÑ� наÑ�одилиÑ�Ñ� и заÑ�ем shift-G. ÐÑ�о
ве�не� �а� к ���оке, в ко�о�ой �� б�ли, когда в пе�в�й �аз нажали Ctrl-g.
(�огда �� б�де�е наби�а�� �и���, они �� о�об�аз���� на �к�ане.)
4. ��ли �� запомнили в�е в��е�казанное, в�полни�е �аги 1--3.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 4.2: ������� ���С��
** �абе�и�е / и за�ем введи�е и�ком�� ��аз�. **
1. � об��ном �ежиме (Normal mode) набе�и�е �имвол / . �б�а�и�е внимание,
��о он вме��е � к���о�ом по�ви��� вниз� �к�ана, как ��о п�ои��оди� �
командой : .
2. ТепеÑ�Ñ� набеÑ�иÑ�е 'оÑ�Ñ�Ñ�ибка' <ENTER>. ÐÑ�о Ñ�о Ñ�лово, коÑ�оÑ�ое Ð�Ñ� бÑ�деÑ�е
и�ка��.
3. �л� �ого, ��об� пов�о�и�� пои�к, п�о��о нажми�е n .
�л� пои�ка ��ой ��аз� в об�а�ном нап�авлении, нажми�е Shift-N .
4. ��ли �� желае�е ��аз� и�ка�� в об�а�ном нап�авлении, и�пол�з�й�е
команд� ? вме��о / .
---> �огда �� п�и пои�ке до��игне�е кон�а �айла, пои�к б�де� п�одолжен �
на�ала.
"о���ибка" ��о не �по�об п�оизне�ени� �лова `о�ибка'; о���ибка ��о о�ибка.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 4.3: ���С� ��Р�ЫХ С�����
** �абе�и�е % дл� пои�ка па�н�� ),] или } . **
1. �оме��и�е к���о� над л�бой из (, [ или { в ���оке вниз�, поме�енной --->.
2. Тепе�� набе�и�е �имвол % .
3. ����о� должен пе�е�ко�и�� на па�н�� �кобк�.
4. �абе�и�е % дл� возв�а�а к���о�а назад к пе�вой �кобке.
---> ÐÑ�о ( Ñ�Ñ�Ñ�ока, Ñ�одеÑ�жаÑ�аÑ� Ñ�акие (, Ñ�акие [ ] и Ñ�акие { } Ñ�кобки. ))
Ð�амеÑ�ание: ÐÑ�о оÑ�енÑ� Ñ�добно пÑ�и оÑ�ладке пÑ�огÑ�амм Ñ� пÑ�опÑ�Ñ�еннÑ�ми Ñ�кобками!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 4.4: С��С�� �С�Р������Я �Ш����
** �абе�и�е :s/б�ло/��ало/g дл� замен� 'б�ло' на '��ало'. **
1. �е�еме��и�е к���о� вниз, к ���оке, поме�енной --->.
2. �абе�и�е :s/�вод�/�вож� <ENTER> . �б�а�и�е внимание на �о, ��о ��а команда
замени� �ол�ко пе�вое найденное в�ождение в ���оке.
3. Тепе�� набе�и�е :s/�вод�/�вож�/g , озна�а��ее под��ановк� глобал�но во
вÑ�ей Ñ�Ñ�Ñ�оке. ÐÑ�о замениÑ� вÑ�е найденнÑ�е в Ñ�Ñ�Ñ�оке вÑ�ождениÑ�.
---> Я �вод� к о�ве�женн�м �елен��м, � �вод� �квоз� векове�н�й ��он, � �вод� к
заб���м поколен��м.
4. �л� замен� в�е� в�ождений по�ледова�ел�но��и �имволов межд� дв�м�
���оками,
набе�и�е :#,#s/б�ло/��ало/g где #,# --- номе�а ��и� ���ок.
�абе�и�е :%s/б�ло/��ало/g дл� замен� в�е� в�ождений во в�ем �айле.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Р��Ю�� УР��� 4
1. Ctrl-g показ�вае� ва�е положение в �айле и ин�о�ма�и� о нем.
Shift-G пе�еме�ае� �а� в коне� �айла. �оме�, за ко�о��м �лед�е� Shift-G
позвол�е� пе�ей�и к ���оке � ��им номе�ом.
2. �ажа�ие / и за�ем ввод ���оки позвол�е� п�оизве��и пои�к ��ой ���оки
���Р�� по �ек���.
�ажа�ие ? и за�ем ввод ���оки позвол�е� п�оизве��и пои�к ��ой ���оки
����� по �ек���.
�о�ле пои�ка набе�и�е n дл� пе�е�ода к �лед���ем� в�ождени� и�комой
���оки в �ом же нап�авлении или Shift-N дл� пе�е�ода в п�о�ивоположном
нап�авлении.
3. �ажа�ие % , когда к���о� на�оди��� на (,),[,],{, или } позвол�е� най�и
па�н�� �кобк�.
4. �л� под��ановки `��ало' вме��о пе�вого `б�ло' в ���оке, набе�и�е
:s/old/new
�л� под��ановки `��ало' вме��о в�е� `б�ло' в ���оке, набе�и�е
:s/old/new/g
�л� замен� в ин�е�вале межд� дв�м� ���оками, набе�и�е
:#,#s/old/new/g
�л� замен� в�е� в�ождений `б�ло' на `��ало' в �айле, набе�и�е
:%s/old/new/g
Ч�об� �едак�о� кажд�й �аз зап�а�ивал под�ве�ждение, добав��е 'c'
:%s/old/new/gc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 5.1: ��� �Ы�����ТЬ ���Ш�ЮЮ ������У
** �абе�и�е :! и за�ем вне�н�� команд�, ко�о��� �лед�е� в�полни��. **
1. �абе�и�е �же знаком�� �ам команд� : дл� ���ановки к���о�а в командн��
Ñ�Ñ�Ñ�окÑ� Ñ�едакÑ�оÑ�а. ÐÑ�о позволиÑ� Ð�ам ввеÑ�Ñ�и командÑ�.
2. Тепе�� набе�и�е �имвол ! (во�кли�а�ел�н�й знак). Тепе�� можно и�полни��
вне�н�� команд�, и�пол�з�� командн�� оболо�к�.
3. Ð�лÑ� пÑ�имеÑ�а набеÑ�иÑ�е ls поÑ�ле ! и нажмиÑ�е <ENTER>. ÐÑ�а команда вÑ�ведеÑ�
�пи�ок �айлов в �ек��ем ка�алоге, �о�но �акже, как е�ли б� �� ввели ���
команд� в п�игла�ении оболо�ки. �ли поп�об�й�е :!dir , е�ли п�ед�д��а�
команда не ��або�ала.
---> �аме�ание: Таким �по�обом можно в�полни�� л�б�� вне�н�� команд�.
---> �аме�ание: ��е команд�, на�ина��ие�� � : , должн� заве��а���� нажа�ием
<ENTER>.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 5.2: ��� ����С�ТЬ Ф���
** �л� �о��анени� изменений, п�оизведенн�� в �айле, набе�и�е :w ��Я_Ф����. **
1. �абе�и�е :!dir или :!ls дл� пол��ени� �пи�ка �айлов в �ек��ем ка�алоге.
�ак �ам �же изве��но, �� должн� нажа�� <ENTER> по�ле ввода ��и� команд.
2. ��ид�май�е название дл� �айла, ко�о�ое е�е не ���е��в�е�, нап�име� TEST.
3. Тепе�� набе�и�е :w TEST (где TEST --- ��о им� �айла, п�ид�манное �ами.)
4. ÐÑ�а команда Ñ�оÑ�Ñ�аниÑ� веÑ�Ñ� Ñ�айл (УÑ�ебник по Vim) под именем TEST. ЧÑ�обÑ�
�до��ове�и���� в ��ом, �нова набе�и�е :!dir и п�о�мо��и�е ка�алог.
---> �аме���е, ��о е�ли �� в�йде�е из Vim и за�ем зап���и�е его �нова �
�айлом TEST, ��о� �айл б�де� �о�ной копией ��ебника в �о� момен�, когда
�� его �о��анили.
5. Тепе�� �дали�е ��о� �айл, наб�ав :!del TEST
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 5.3: �Ы��Р�Ч��� С�ХР������
** �л� �о��анени� �а��и �айла, набе�и�е :#,# w ��Я_Ф���� **
1. ��е �аз набе�и�е :!dir или :!ls дл� пол��ени� �пи�ка �айлов в �ек��ем
ка�алоге и в�бе�и�е под�од��ее им�, нап�име� TEST.
2. �е�еме��и�е к���о� к на�ал� ��ой ���ани�� и нажми�е Ctrl-g дл� на�ождени�
номеÑ�а Ñ�Ñ�Ñ�окиto. Ð�Ð�Ð�Ð�Ð�Ð�Ð�ТÐ� ÐТÐ�Т Ð�Ð�Ð�Ð�Ð !
3. Тепе�� пе�еме��и�е�� в коне� ���ани�� и внов� набе�и�е Ctrl-g. �������Т�
Ð� ÐТÐ�Т Ð�Ð�Ð�Ð�РТÐ�Ð�Ð�!
4. �л� �о��анени� Т��Ь�� Ч�СТ� �айла набе�и�е :#,# w TEST , где #,# --- ��о
номе�а, ко�о��е �� запомнили (на�ало, коне�), а TEST --- им� ва�его �айла.
5. �ак и п�ежде, �беди�е�� в нали�ии ��ого �айла командой :!dir , но ��
У���Я�Т� его.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 5.4: ЧТ���� � ��Ъ�������� Ф�����
** �л� в��авки �оде�жимого �айла, набе�и�е :r FILENAME **
1. �абе�и�е :!dir дл� �ого, ��об� �беди���� в �ом, ��о �айл TEST в�е е�е
���е��в�е�.
2. У��анови�е к���о� в ве��ней �а��и ��ой ���ани��.
�аме�ание: �о�ле в�полнени� �ага 3 �� �види�е У�ок 5.3. �о�ле ��ого
пе�еме�ай�е�� ����, �нова к ��ом� ��ок�.
3. Тепе�� п�о�и�ай�е �а� �айл TEST, и�пол�з�� команд� :r TEST , где
TEST --- ��о им� �айла.
�аме�ание: ��о�и�анн�й �ами �айл б�де� в��авлен в �ом ме��е, где на�оди���
к���о�.
4. Ч�об� �беди���� в �ом, ��о �айл п�о�и�ан, пе�еме��и�е�� немного назад по
�ек��� и [A[Bзаме���е, ��о �епе�� ���е��в��� две копии У�ока 5.3, и��одна�
и пол��енна� из �айла.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Р��Ю�� УР��� 5
1. :!команда и�полн�е� вне�н�� команд�.
�еко�о��е полезн�е п�име��:
:!dir --- в�води� �пи�ок �айлов в ка�алоге.
:!del FILENAME --- �дал�е� �айл FILENAME.
2. :w FILENAME запи��вае� �ек��ий �едак�и��ем�й �айл на ди�к
под именем FILENAME.
3. :#,#w FILENAME �о��ан�е� ���оки о� # до # в �айл FILENAME.
4. :r FILENAME ��и��вае� � ди�ка �айл FILENAME и поме�ае� его в �ек��ий
�айл �ледом за пози�ией к���о�а.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 6.1: ������� С������Я
** �абе�и�е o ��об� �озда�� п����� ���ок� под к���о�ом и пе�ей�и в �ежим
в��авки (Insert mode) **
1. �е�еме��и�е к���о� вниз, к ���оке, поме�енной --->.
2. �абе�и�е o (в нижнем �еги���е) дл� �ого, ��об� �озда�� п����� ���ок�
���� к���о�а и пе�ей�и в �ежим в��авки (Insert mode).
3. Тепе�� �копи��й�е поме�енн�� ---> ���ок� и нажми�е <ESC> дл� в��ода из
�ежима в��авки.
---> �о�ле нажа�и� o к���о� пе�ейде� на нов�� п����� ���ок� в �ежиме в��авки.
4. �л� �оздани� ���оки �ЫШ� к���о�а, п�о��о набе�и�е заглавн�� O, вме��о
���о�ной o. �оп�об�й�е п�одела�� ��о � ниже�лед���ей ���окой.
Создай�е нов�� ���ок� над ��ой, нажав Shift-O, поме��ив к���о� на ��� ���ок�.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 6.2: ������� ���������Я
** �абе�и�е a , ��об� в��ави�� �ек�� ��С�� к���о�а. **
1. �е�еме��и�е к���о� вниз, в коне� пе�вой ���оки, поме�енной ---> ,
наб�ав $ в об��ном �ежиме (Normal mode).
2. �абе�и�е a (в нижнем �еги���е) дл� добавлени� �ек��а ��С�� �имвола,
на�од��его�� под к���о�ом. (�аглавна� A позвол�е� добави�� в коне�
���оки.)
Ð�амеÑ�ание: ÐÑ�о позволÑ�еÑ� избежаÑ�Ñ� нажаÑ�иÑ� i , поÑ�леднего Ñ�имвола, Ñ�екÑ�Ñ�а длÑ�
в��авки, <ESC>, к���о�-вп�аво, и, наконе�, x , п�о��о дл� �ого,
��об� добави�� �е�� в коне� ���оки!
3. Тепе�� заве��и�е пе�в�� ���ок�. �аме���е �акже, ��о добавление ��о в
�о�но��и �о же �амое, ��о и �ежим в��авки, за и�кл��ением пози�ии, в
ко�о��� б�де� в��авлен �ек��.
---> ÐÑ�а Ñ�Ñ�Ñ�оÑ�ка позволиÑ� Ð�ам попÑ�акÑ�иковаÑ�Ñ�Ñ�Ñ�
---> ÐÑ�а Ñ�Ñ�Ñ�оÑ�ка позволиÑ� Ð�ам попÑ�акÑ�иковаÑ�Ñ�Ñ�Ñ� в добавлении Ñ�екÑ�Ñ�а в конеÑ�
���оки.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 6.3: �Щ� ���� С��С�� �����Ы
** �абе�и�е заглавн�� R дл� замен� более, �ем одного �имвола. **
1. �е�еме��и�е к���о� вниз, к ���оке, поме�енной --->.
2. Ра�положи�е к���о� в на�але пе�вого �лова, о�ли�а��его�� о�
�оо�ве���в���его в �лед���ей ���оке, поме�енной ---> (�лово 'по�ледней').
3. Тепе�� набе�и�е R и замени�е о��а�ок �ек��а в пе�вой ���оке, наб�ав
пове�� ��а�ого �ек��а �ак, ��об� обе ���оки ��али одинаков�ми.
---> �е�в�� ���ок� можно ��авн��� � по�ледней, и�пол�з�� клави�и.
---> �е�в�� ���ок� можно ��авн��� � в�о�ой, и�пол�з�� R и наб�ав нов�й �ек��.
4. �б�а�и�е внимание, ��о п�и нажа�ии <ESC> дл� заве��ени�, л�бой
не измененн�й �ек�� �о��ани���.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 6.4: УСТ������ ��Р���ТР��
** У��ановим па�аме��� �ак, ��об� игно�и�ова�� �еги��� п�и пои�ке или замене **
1. �ои�и�е �лово 'игно�и�ова��', наб�ав:
/игно�и�ова��
�ов�о�и�е пои�к не�кол�ко �аз, нажима� клави�� n
2. �кл��и�е па�аме�� 'ic' (�гно�и�ова�� �еги���), наб�ав:
:set ic
3. Тепе�� �нова �делай�е пои�к �лова 'игно�и�ова��', нажав: n
�ов�о�и�е пои�к не�кол�ко �аз, нажима� клави�� n
4. �кл��и�е па�аме��� 'hlsearch' и 'incsearch':
:set hls is
5. Тепе�� оп��� введи�е команд� пои�ка и по�мо��и�е, ��о пол��и���:
/игно�и�ова��
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Р��Ю�� УР��� 6
1. �ажа�ие o �оздае� ���ок� ���� к���о�а и пе�еме�ае� к���о� в нее в �ежиме
в��авки.
�ажа�ие заглавной O �оздае� ���ок� �ЫШ� ���оки, в ко�о�ой на�оди���
к���о�.
2. �абе�и�е a дл� в��авки �ек��а ��С�� �имвола, на ко�о�ом на�оди��� к���о�.
�ажа�ие заглавной A ав�ома�и�е�ки пе�еме�ае� �а� дл� добавлени� �ек��а
в коне� ���оки.
3. �ажа�ие заглавной R пе�еводи� �а� в �ежим замен� до �е� по�, пока не
б�де� нажа�а клави�а <ESC> дл� заве��ени�.
4. �аб�ав ":set xxx" в� �може�е вкл��и�� па�аме�� "xxx"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 7: ������Ы ���УЧ���Я �СТР������ С�Р����
** ��пол�з�й�е в���оенн�� �п�аво�н�� �и��ем� **
Vim обладае� мо�ной в���оенной �п�аво�ной �и��емой. �л� на�ала поп�об�й�е
один из ��е� ва�иан�ов:
- нажми�е клави�� <HELP> (е�ли �акова� имее��� на клавиа���е)
- нажми�е клави�� <F1> (е�ли �акова� имее��� на клавиа���е)
- набе�и�е :help <ENTER>
�абе�и�е :q <ENTER> ��об� зак���� окно �п�авки.
�� може�е най�и �п�авк� дл� л�бого пон��и� или команд�, п�о��о задав
�оо�ве���в���ий а�г�мен� команде ":help". �оп�об�й�е �лед���ее (не заб�д��е
нажа�� <ENTER>):
:help w
:help c_<T
:help insert-index
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 8: С������� СТ�РТ����� С�Р��Т�
** �кл��им возможно��и Vim **
Vim имее� намного бол��е возможно��ей, �ем Vi, однако бол��ин��вао из ни�
в�кл��ен� по �мол�ани�. �л� �ого, ��об� на�а�� и�пол�зова�� нов�е
возможно��и �ам �лед�е� �озда�� �айл "vimrc".
1. ���едак�и��й�е �айл "vimrc", его �а�положение зави�и� о� и�пол�з�емой
�и��ем�:
:edit ~/.vimrc дл� Unix
:edit $VIM/_vimrc дл� MS-Windows
2. Тепе�� п�о�и�ай�е п�име� �айла "vimrc":
:read $VIMRUNTIME/vimrc_example.vim
3. �апи�и�е �айл:
:write
Тепе�� п�и �лед���ем зап��ке Vim б�де� вкл��ена под�ве�ка �ин�ак�и�а. ��е
на���ойки, п�едпо�и�аем�е �ами, мог�� б��� добавлен� в �айл "vimrc".
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
�а ��ом заве��ае��� У�ебник Vim. �н б�л п�едназна�ен дл� �ого, ��об� да��
об�ее п�ед��авление о �едак�о�е Vim, до��а�о�ное дл� �ого, ��об� � легко����
и�пол�зова�� его. У�ебник далек о� полно��, по�кол�к� Vim имее� о�ен� много
команд. ��о�и�ай�е �епе�� ��ковод��во пол�зова�ел�: ":help user-manual".
�л� дал�ней�его ��ени� �екоменд�е��� книга:
Vim - Vi Improved - �в�о�: Steve Oualline
�зда�ел�: New Riders
ÐÑ�а книга полноÑ�Ñ�Ñ�Ñ� поÑ�вÑ�Ñ�ена Vim. Ð�Ñ�обенно полезна новиÑ�кам. СодеÑ�жиÑ�
множе��во п�име�ов и илл����а�ий.
�згл�ни�е на See http://iccf-holland.org/click5.html
След���а� книга более по��енного воз�а��а и по�в��ена бол��е Vi, �ем Vim,
однако �акже �екоменд�е���:
Learning the Vi Editor - �в�о�: Linda Lamb
�зда�ел�: O'Reilly & Associates Inc.
ÐÑ�о Ñ�оÑ�оÑ�аÑ� книга длÑ� Ñ�ого, Ñ�Ñ�обÑ� Ñ�знаÑ�Ñ� вÑ�е, Ñ�Ñ�о Ñ�олÑ�ко можно пÑ�оделÑ�ваÑ�Ñ� Ñ�
Vi. Ше��ое издание �акже вкл��ае� ин�о�ма�и� о Vim.
ÐÑ�оÑ� Ñ�Ñ�ебник бÑ�л напиÑ�ан Michael C. Pierce и Robert K. Ware, Colorado School
of Mines � и�пол�зованием идей, п�едложенн�� Charles Smith, Colorado State
University. E-mail: [email protected].
�о�або�ано дл� Vim Bram Moolenaar.
�е�евод: �нд�ей �и�елев <[email protected]>, 2002.
Translator: Andrey Kiselev <[email protected]>, 2002.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
= � о б � о п о ж а л о в а � � в � � е б н и к VIM - �е��и� 1.5 =
===============================================================================
Vim --- ��о о�ен� мо�н�й �едак�о�, име��ий множе��во команд, �ли�ком
много дл� �ого, ��об� и� в�е можно б�ло опи�а�� в �аком ��ебнике, как
Ñ�Ñ�оÑ�. ÐÑ�оÑ� Ñ�Ñ�ебник пÑ�изван обÑ�Ñ�Ñ�ниÑ�Ñ� доÑ�Ñ�аÑ�оÑ�ное Ñ�иÑ�ло команд длÑ� Ñ�ого,
��об� �� могли � легко���� и�пол�зова�� Vim в ка�е��ве �едак�о�а об�его
назна�ени�.
�ам по��еб�е��� п�иблизи�ел�но 25-30 мин�� на о�воение данного ��ебника в
зави�имо��и о� �ого, �кол�ко в�емени �� по��а�и�е на �к�пе�имен��.
�оманд� в ��ока� б�д�� моди�и�и�ова�� �ек��. Создай�е копи� ��ого �айла,
��об� поп�ак�икова���� на ней (е�ли �� зап���или "vimtutor", �о ��о �же
копи�).
�ажно помни��, ��о ��о� ��ебник п�едназна�ен дл� об��ени� в п�о�е��е
иÑ�полÑ�зованиÑ�. ÐÑ�о ознаÑ�аеÑ�, Ñ�Ñ�о Ð�Ñ� должнÑ� запÑ�Ñ�каÑ�Ñ� командÑ� длÑ� Ñ�ого,
��об� как �лед�е� и� из��и��. ��ли �� п�о��о п�о�и�ае�е �ек��, �о
заб�де�е команд�!
Тепе�� �беди�е�� в �ом, ��о клави�а CapsLock не вкл��ена и нажми�е
клави�� j не�кол�ко �аз, �ак, ��об� У�ок 1.1 полно���� поме��ил�� на
�к�ане.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 1.1: ��Р���Щ���� �УРС�Р�
** �л� пе�еме�ени� к���о�а нажми�е клави�и h,j,k,l �ак, как показано ниже. **
^
k Сове��: �лави�а h на�оди��� �лева и пе�еме�ае� влево.
< h l > �лави�а l на�оди��� �п�ава и пе�еме�ае� вп�аво.
j �лави�а j по�ожа на ���елк� `вниз'.
v
1. �одвигай�е к���о� по �к�ан�, пока не по��в��в�е�е �еб� �ве�енно.
2. �адави�е клави�� `вниз' (j) пока она не на�не� пов�о������.
---> Тепе�� �� знае�е, как пе�ей�и к �лед���ем� ��ок�.
3. ��пол�з�� клави�� `вниз' пе�ейди�е к У�ок� 1.2.
�аме�ание: ��ли в� пока не �ве�ен� в �ом, ��о наби�ае�е, нажми�е <ESC> дл�
пе�е�ода в об��н�й �ежим (Normal mode). �о�ле ��ого пе�енабе�и�е
��еб�ем�� команд�.
�аме�ание: �б��н�е клави�и �п�авлени� к���о�ом (���елки) �акже должн�
�або�а��. �днако, клави�и hjkl позвол�� �ам пе�еме�а����
зна�и�ел�но б����ее, как �ол�ко �� на��и�е�� ими пол�зова����.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 1.2: ���УС� � ����РШ���� Р���ТЫ С VIM
!! ��������! ��ежде, �ем в�полн��� л�бой из опи�анн�� ниже �агов, п�о��и�е
��ок �еликом !!
1. �ажми�е клави�� <ESC> (дл� �ого, ��об� �до��ове�и����, ��о �� в об��ном
�ежиме (Normal mode)).
2. �абе�и�е: :q! <ENTER>.
---> ÐÑ�о позволиÑ� Ð�ам вÑ�йÑ�и из Ñ�едакÑ�оÑ�а Ð�Ð�Ð� СÐ�ХРÐ�Ð�Ð�Ð�Ð�Я лÑ�бÑ�Ñ� Ñ�деланнÑ�Ñ�
изменений. ��ли �� �о�и�е �о��ани�� изменени� и в�й�и:
:wq <ENTER>
3. �огда �� �види�е п�игла�ение командной оболо�ки, набе�и�е команд�,
коÑ�оÑ�аÑ� пÑ�ивела Ð�аÑ� в Ñ�Ñ�оÑ� Ñ�Ñ�ебник. ÐÑ�о можеÑ� бÑ�Ñ�Ñ�
vimtutor ru <ENTER>
�б��но можно и�пол�зова��: vim tutor.ru <ENTER>
---> 'vim' позвол�е� зап���и�� �едак�о� vim, 'tutor.ru' --- ��о �айл, ко�о��й
�� б�де�е �едак�и�ова��.
4. ��ли �� �ве�ен� в �ом, ��о запомнили ��и �аги, в�полни�е �аги о� 1 до 3
��об� в�й�и �нова зап���и�� �едак�о�. �а�ем пе�еме��и�е к���о� вниз к
У�ок� 1.3.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 1.3: Р����Т�Р������ Т��СТ� - У�������
** �а�од��� в об��ном �ежиме нажми�е x, ��об� �дали�� �имвол под к���о�ом. **
1. �е�еме��и�е к���о� к ���оке вниз�, поме�енной --->.
2. �л� и�п�авлени� о�ибок, пе�еме��и�е к���о�, пока он не окаже��� над
�дал�ем�м �имволом.
3. �ажми�е клави�� x дл� �далени� ��еб�емого �имвола.
4. �ов�о�и�е �аги 2--4 пока ���ока не б�де� и�п�авлена.
---> �� ���опо�а коп��� ппп�л� ппо пппол� ле��и��.
5. Тепе��, когда ���ока о�ко��ек�и�ована, пе�е�оди�е к ��ок� 1.4.
����Ч����: � �оде о�воени� ��ого ��ебника не п��ай�е�� запомина��, ��и�е
в п�о�е��е и�пол�зовани�.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 1.4: Р����Т�Р������ Т��СТ� - �СТ����
** �а�од��� в об��ном �ежиме (Normal mode), нажми�е i дл� в��авки �ек��а. **
1. �е�еме��и�е к���о� к пе�вой ���оке вниз�, поме�енной --->.
2. �л� �ого, ��об� �дела�� пе�в�� ���ок� иден�и�ной в�о�ой, поме��и�е
к���о� на �имвол ��Р�� ко�о��м �лед�е� в��ави�� �ек��.
3. �ажми�е i и набе�и�е ��еб�ем�е добавлени�.
4. �о�ле и�п�авлени� в�е� о�ибок нажми�е <ESC> дл� возв�а�а в об��н�й �ежим.
�ов�о�и�е �аги 2--4, пока ��аза не б�де� и�п�авлена полно����.
---> Ча��� �ек��а в ���оке бе�ледно .
---> Ча��� �ек��а в ��ой ���оке бе��ледно п�опала.
5. �огда о�вои�е в��авк� �ек��а, пе�е�оди�е дал��е к Рез�ме.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Р��Ю�� УР��� 1
1. ����о� пе�еме�ае��� либо клави�ами �о ���елками, либо клави�ами hjkl.
h (влево) j (вниз) k (вве��) l (вп�аво)
2. �л� зап��ка Vim (из п�игла�ени� % командной оболо�ки) набе�и�е:
vim ��Я_Ф���� <ENTER>
3. �л� заве��ени� �або�� � Vim набе�и�е:
<ESC> :q! <ENTER> ��об� о�каза���� о� �о��анени� изменений.
�ли набе�и�е:
<ESC> :wq <ENTER> ��об� �о��ани�� изменени�.
4. �л� �далени� �имвола под к���о�ом в об��ном �ежиме, набе�и�е: x
5. Ч�об� в��ави�� �ек�� пе�ед к���о�ом в об��ном �ежиме, набе�и�е:
i вводи�е �ек�� <ESC>
����Ч����: �ажа�ие <ESC> пе�еме��и� �а� в об��н�й �ежим (Normal mode) либо
п�е�ве� нежела�ел�н�� и �а��и�но заве��енн�� команд�.
Тепе�� пе�е�одим к У�ок� 2.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 2.1: ������Ы У������Я
** �абе�и�е dw дл� �далени� ��а��ка �ек��а до кон�а �лова. **
1. �ажми�е <ESC>, ��об� пе�ей�и в об��н�й �ежим.
2. �е�еме��и�е к���о� вниз, к ���оке, поме�енной --->.
3. �е�еме��и�е к���о� в на�ало �лова, ко�о�ое �лед�е� �дали��.
4. �абе�и�е dw , ��об� �дали�� ��о �лово.
����Ч����: �о в�ем� набо�а б�кв� dw по�в���� в по�ледней ���оке �к�ана. ��ли
�� ��о-�о набе�е�е неп�авил�но, нажми�е <ESC> и на�ни�е �на�ала.
---> �е�кол�ко �лов �а�инад в ��ом п�едложении ав�ок�ан изли�ни.
5. �ов�о�и�е �аги 3 и 4, пока не и�п�ави�е в�е о�ибки и пе�е�оди�е к
У�ок� 2.2.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 2.2: �������Т��Ь�Ы� ������Ы У������Я
** �абе�и�е d$ дл� �далени� �ек��а до кон�а ���оки. **
1. �ажми�е <ESC>, ��об� пе�ей�и в об��н�й �ежим.
2. �е�еме��и�е к���о� вниз, к ���оке, поме�енной --->.
3. �е�еме��и�е к���о� к кон�� п�авил�ной ���оки (��С�� пе�вой . ).
4. Ч�об� �дали�� о��а�ок ���оки, набе�и�е d$ .
---> ��о-�о наб�ал окон�ание ��ой ���оки дважд�. окон�ание ��ой ���оки дважд�.
5.Ч�об� л���е �азоб�а���� в ��ом, пе�е�оди�е к У�ок� 2.3.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 2.3: ������Ы � ��Ъ��ТЫ
Фо�ма� команд� `�даление' d �аков:
[�и�ло] d об�ек� ��� d [�и�ло] об�ек�
�де��:
�и�ло - �кол�ко �аз и�полни�� команд� (необ�за�ел�но, по �мол�ани�=1).
d - команда �далени�.
об�ек� - � �ем команда должна б��� в�полнена (пе�е�и�лено ниже).
��а�кий �пи�ок об�ек�ов:
w - о� к���о�а до кон�а �лова, вкл��а� заве��а��ий п�обел.
e - о� к���о�а до кон�а �лова, �� вкл��а� заве��а��ий п�обел.
$ - о� к���о�а до кон�а ���оки.
^ - о� к���о�а до на�ала ���оки.
����Ч����: ��о��ое нажа�ие на �имвол об�ек�а в об��ном �ежиме (Normal mode)
без дополни�ел�н�� команд пе�едвине� к���о� �ак, как �казано в
�пи�ке об�ек�ов.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 2.4: �С��ЮЧ���� �� �Р����� `�������-��Ъ��Т'
** �абе�и�е dd дл� �далени� в�ей ���оки. **
��лед��вие �а��ого п�именени� опе�а�ии �далени� в�ей ���оки, �аз�або��ики
Vim �е�или, ��о дл� ��ого п�о�е в�его п�о��о наб�а�� d дважд�.
1. �е�еме��и�е к���о� вниз, ко в�о�ой ���оке ��аз�.
2. �абе�и�е dd дл� �далени� ���оки.
3. Тепе�� пе�еме��и�е�� к �е�ве��ой ���оке.
4. �абе�и�е 2dd (в�помни�е п�авило `�и�ло-команда-об�ек�'), ��об� �дали��
две ���оки.
1) �е�ом � �ож� на ��адион,
2) �, как внезапно кон�ил�� диван!
3) Я боле� за ``�ени�'', ``�ени�'' --- �емпион!
4) �е�ал�но � гл�ж� на на�е поколение!
5) �го г��д��ее ил� п���о ил� �емно...
6) Я �иж� на �камейке в ложе `�'
7) � иг�а� на бол��ой же���ной ���бе.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 2.5: ������� `�Т��Т'
** �ажми�е u дл� о�мен� �ез�л��а�а �або�� п�ед�д��ей команд�, U дл� о�мен�
и�п�авлений во в�ей ���оке. **
1. �е�еме��и�е к���о� вниз, к ���оке, поме�енной ---> и ���анови�е его на
пе�в�� о�ибк�.
2. �ажми�е x дл� �далени� пе�вого неп�авил�ного �имвола.
3. Тепе�� нажми�е u дл� о�мен� (о�ка�а) по�ледней в�полненной команд�.
4. ��п�ав��е в�е о�ибки в ���оке, и�пол�з�� команд� x .
5. Тепе�� нажми�е заглавн�� U дл� �ого, ��об� ве�н��� в�� ���ок� в и��одное
�о��о�ние.
6. �ажми�е u не�кол�ко �аз дл� о�мен� команд� U и п�ед�д��и� команд.
7. �ажми�е �епе�� CTRL-R (�де�живай�е клави�� CTRL нажа�ой в момен� нажа�и�
R) не�кол�ко �аз дл� возв�а�а команд (о�ка� о�ка�а).
---> ��п��ав��е оо�ибки в ��ойй ���оке и ве�ни��е и� �� помо���� `о�ка�а'.
8. ÐÑ�о бÑ�ли оÑ�енÑ� полезнÑ�е командÑ�. Ð�алее пеÑ�еÑ�одиÑ�е к РезÑ�ме УÑ�ока 2.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Р��Ю�� УР��� 2
1. �л� �далени� �ек��а о� к���о�а до кон�а �лова набе�и�е: dw
2. �л� �далени� �ек��а о� к���о�а до кон�а ���оки набе�и�е: d$
3. �л� �далени� в�ей ���оки набе�и�е: dd
4. Фо�ма� команд� в об��ном �ежиме имее� вид:
[�и�ло] команда об�ек� ��� команда [�и�ло] об�ек�
где:
�и�ло - �кол�ко �аз пов�о�и�� в�полнение команд�
команда - ��о в�полни��, нап�име� d дл� �далени�
об�ек� - на ��о должна воздей��вова�� команда, нап�име� w (�лово),
$ (до кон�а ���оки), и �.д.
5. �л� о�мен� (о�ка�а) п�ед�е��в���и� дей��вий набе�и�е: u (���о�на� u)
�л� о�мен� (о�ка�а) в�е� изменений в ���оке набе�и�е: U (п�опи�на� U)
�л� о�мен� о�ка�а набе�и�е: CTRL-R
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 3.1: ������� �СТ����
** �абе�и�е p дл� в��авки по�леднего �даленного �ек��а по�ле к���о�а. **
1. �е�еме��и�е к���о� вниз к по�ледней ���оке из набо�а.
2. �абе�и�е dd дл� �далени� ���оки и ее �о��анени� в б��е�е Vim'а.
3. �е�еме��и�е к���о� к ���оке ��� �ем ме��ом, к�да �лед�е� в��ави��
�даленн�� ���ок�.
4. �а�од��� в об��ном �ежиме набе�и�е p дл� замен� ���оки.
5. �ов�о�и�е �аги 2--4, пока не �а���ави�е в�е ���оки в н�жном по��дке.
г) � л���е в�д�ма�� не мог.
б) �огда не в ���к� занемог,
в) �н �важа�� �еб� за��авил
а) �ой д�д� �ам�� �е��н�� п�авил
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 3.2: ������� �����Ы
** �абе�и�е r и �имвол, замен���ий �имвол под к���о�ом. **
1. �е�еме��и�е к���о� вниз, к ���оке, поме�енной --->.
2. У��анови�е к���о� �ак, ��об� он на�одил�� над пе�вой о�ибкой.
3. �абе�и�е r и за�ем �имвол, и�п�авл���ий о�ибк�.
4. �ов�о�и�е �аги 2 и 3, пока пе�ва� ���ока не б�де� и�п�авлена.
---> � момег� наб��а ��ой ���оки кое0к�о � ���дом попвдал по клваи�ам!
---> � момен� набо�а ��ой ���оки кое-к�о � ���дом попадал по клави�ам!
5. Тепе�� пе�е�оди�е к У�ок� 3.2.
����Ч����: �омни�е, ��о в� должн� ��и���� в п�о�е��е �або��, а не п�о��о
запомина�.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 3.3: ������� ��������Я
** �л� изменени� �а��и �лова набе�и�е cw . **
1. �е�еме��и�е к���о� вниз, к ���оке, поме�енной --->.
2. Ра�положи�е к���о� над б�квой `o' в �лове `�ола'.
3. �абе�и�е cw и и�п�ав��е �лово (в данном �л��ае, набе�и�е `лов'.)
4. �ажми�е <ESC> и пе�е�оди�е к �лед���ей о�ибке (к пе�вом� �имвол�, ко�о��й
надо измени��.)
5. �ов�о�и�е �аги 3--4 пока пе�вое п�едложение не ��ане� иден�и�н�м в�о�ом�.
---> �е�кол�ко �ола в ��г� ���оке �пг��б� �едалзк��ие�в�.
---> �е�кол�ко �лов в ��ой ���оке ��еб��� �едак�и�овани�.
�б�а�и�е внимание, ��о cw не �ол�ко замен�е� �лово, но и пе�еводи� ва� в �ежим
в��авки.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 3.4: �Р�������� �����ЯТЬ С �������� c
** �оманда замен� и�пол�з�е��� � �еми же об�ек�ами, ��о и команда �далени�. **
1. �оманда изменени� п�имен�е��� �аким же об�азом, как и команда �далени�.
�е �о�ма� �аков:
[�и�ло] c об�ек� ��� c [�и�ло] об�ек�
2. �б�ек�� �акже �овпада��: w (�лово), $ (коне� ���оки) и �.п.
3. �е�еме��и�е к���о� вниз, к ���оке, поме�енной --->.
4. �е�ейди�е к пе�вой о�ибке.
5. �абе�и�е c$ и о��едак�и��й�е пе�в�� ���ок� �ак, ��об� она �овпадала �о
в�о�ой, по�ле �его нажми�е <ESC>.
---> �оне� ��ой ���оки н�ждае��� в помо�и, ��об� ��а�� по�ожим на в�о�ой.
---> �оне� ��ой ���оки н�ждае��� в помо�и команд� c$ .
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Р��Ю�� УР��� 3
1. Ð�лÑ� вÑ�Ñ�авки Ñ�екÑ�Ñ�а, коÑ�оÑ�Ñ�й Ñ�олÑ�ко Ñ�Ñ�о бÑ�л Ñ�дален, набеÑ�иÑ�е p . ÐÑ�а
команда в��ави� �даленн�й �ек�� ��С�� к���о�а (е�ли б�ла �далена ���ока,
�о она б�де� поме�ена в ���оке под к���о�ом).
2. �л� замен� �имвола под к���о�ом набе�и�е r и за�ем замен���ий �имвол.
3. �оманда изменени� позвол�е� �ам измени�� �казанн�й об�ек� о� к���о�а до
кон�а ��ого об�ек�а. �ап�име�, набе�и�е cw дл� замен� о� к���о�а до
кон�а �лова, c$ дл� изменени� до кон�а ���оки.
4. Фо�ма� команд� изменени� �аков:
[�и�ло] c об�ек� ��� c [�и�ло] об�ек�
Тепе�� о�п�авл�й�е�� к �лед���ем� ��ок�.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 4.1: ��Ф�Р��Ц�Я � Ф���� � Р�С��������� � ���
** �абе�и�е CTRL-g ��об� �виде�� �а�е ме��о�а�положение в �айле и ин�о�ма�и�
о нем.
�абе�и�е SHIFT-G дл� пе�еме�ени� к заданной ���оке в �айле. **
�аме�ание: ��о�и�ай�е ве�� ��ок п�ежде �ем в�полн��� л�б�е команд�!!
1. Уде�жива� клави�� Ctrl нажми�е g . �низ� �к�ана по�ви��� ���ока ��а���а �
именем �айла и номе�ом ���оки, в ко�о�ой �� на�оди�е��. �апомни�е номе�
���оки, он по��еб�е��� на Шаге 3.
2. �ажми�е shift-G дл� пе�еме�ени� к кон�� �айла.
3. Ð�абеÑ�иÑ�е номеÑ� Ñ�Ñ�Ñ�оки, в коÑ�оÑ�ой вÑ� наÑ�одилиÑ�Ñ� и заÑ�ем shift-G. ÐÑ�о
ве�не� �а� к ���оке, в ко�о�ой �� б�ли, когда в пе�в�й �аз нажали Ctrl-g.
(�огда �� б�де�е наби�а�� �и���, они �� о�об�аз���� на �к�ане.)
4. ��ли �� запомнили в�е в��е�казанное, в�полни�е �аги 1--3.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 4.2: ������� ���С��
** �абе�и�е / и за�ем введи�е и�ком�� ��аз�. **
1. � об��ном �ежиме (Normal mode) набе�и�е �имвол / . �б�а�и�е внимание,
��о он вме��е � к���о�ом по�ви��� вниз� �к�ана, как ��о п�ои��оди� �
командой : .
2. ТепеÑ�Ñ� набеÑ�иÑ�е 'оÑ�Ñ�Ñ�ибка' <ENTER>. ÐÑ�о Ñ�о Ñ�лово, коÑ�оÑ�ое Ð�Ñ� бÑ�деÑ�е
и�ка��.
3. �л� �ого, ��об� пов�о�и�� пои�к, п�о��о нажми�е n .
�л� пои�ка ��ой ��аз� в об�а�ном нап�авлении, нажми�е Shift-N .
4. ��ли �� желае�е ��аз� и�ка�� в об�а�ном нап�авлении, и�пол�з�й�е
команд� ? вме��о / .
---> �огда �� п�и пои�ке до��игне�е кон�а �айла, пои�к б�де� п�одолжен �
на�ала.
"о���ибка" ��о не �по�об п�оизне�ени� �лова `о�ибка'; о���ибка ��о о�ибка.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 4.3: ���С� ��Р�ЫХ С�����
** �абе�и�е % дл� пои�ка па�н�� ),] или } . **
1. �оме��и�е к���о� над л�бой из (, [ или { в ���оке вниз�, поме�енной --->.
2. Тепе�� набе�и�е �имвол % .
3. ����о� должен пе�е�ко�и�� на па�н�� �кобк�.
4. �абе�и�е % дл� возв�а�а к���о�а назад к пе�вой �кобке.
---> ÐÑ�о ( Ñ�Ñ�Ñ�ока, Ñ�одеÑ�жаÑ�аÑ� Ñ�акие (, Ñ�акие [ ] и Ñ�акие { } Ñ�кобки. ))
Ð�амеÑ�ание: ÐÑ�о оÑ�енÑ� Ñ�добно пÑ�и оÑ�ладке пÑ�огÑ�амм Ñ� пÑ�опÑ�Ñ�еннÑ�ми Ñ�кобками!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 4.4: С��С�� �С�Р������Я �Ш����
** �абе�и�е :s/б�ло/��ало/g дл� замен� 'б�ло' на '��ало'. **
1. �е�еме��и�е к���о� вниз, к ���оке, поме�енной --->.
2. �абе�и�е :s/�вод�/�вож� <ENTER> . �б�а�и�е внимание на �о, ��о ��а команда
замени� �ол�ко пе�вое найденное в�ождение в ���оке.
3. Тепе�� набе�и�е :s/�вод�/�вож�/g , озна�а��ее под��ановк� глобал�но во
вÑ�ей Ñ�Ñ�Ñ�оке. ÐÑ�о замениÑ� вÑ�е найденнÑ�е в Ñ�Ñ�Ñ�оке вÑ�ождениÑ�.
---> Я �вод� к о�ве�женн�м �елен��м, � �вод� �квоз� векове�н�й ��он, � �вод� к
заб���м поколен��м.
4. �л� замен� в�е� в�ождений по�ледова�ел�но��и �имволов межд� дв�м�
���оками,
набе�и�е :#,#s/б�ло/��ало/g где #,# --- номе�а ��и� ���ок.
�абе�и�е :%s/б�ло/��ало/g дл� замен� в�е� в�ождений во в�ем �айле.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Р��Ю�� УР��� 4
1. Ctrl-g показ�вае� ва�е положение в �айле и ин�о�ма�и� о нем.
Shift-G пе�еме�ае� �а� в коне� �айла. �оме�, за ко�о��м �лед�е� Shift-G
позвол�е� пе�ей�и к ���оке � ��им номе�ом.
2. �ажа�ие / и за�ем ввод ���оки позвол�е� п�оизве��и пои�к ��ой ���оки
���Р�� по �ек���.
�ажа�ие ? и за�ем ввод ���оки позвол�е� п�оизве��и пои�к ��ой ���оки
����� по �ек���.
�о�ле пои�ка набе�и�е n дл� пе�е�ода к �лед���ем� в�ождени� и�комой
���оки в �ом же нап�авлении или Shift-N дл� пе�е�ода в п�о�ивоположном
нап�авлении.
3. �ажа�ие % , когда к���о� на�оди��� на (,),[,],{, или } позвол�е� най�и
па�н�� �кобк�.
4. �л� под��ановки `��ало' вме��о пе�вого `б�ло' в ���оке, набе�и�е
:s/old/new
�л� под��ановки `��ало' вме��о в�е� `б�ло' в ���оке, набе�и�е
:s/old/new/g
�л� замен� в ин�е�вале межд� дв�м� ���оками, набе�и�е
:#,#s/old/new/g
�л� замен� в�е� в�ождений `б�ло' на `��ало' в �айле, набе�и�е
:%s/old/new/g
Ч�об� �едак�о� кажд�й �аз зап�а�ивал под�ве�ждение, добав��е 'c'
:%s/old/new/gc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 5.1: ��� �Ы�����ТЬ ���Ш�ЮЮ ������У
** �абе�и�е :! и за�ем вне�н�� команд�, ко�о��� �лед�е� в�полни��. **
1. �абе�и�е �же знаком�� �ам команд� : дл� ���ановки к���о�а в командн��
Ñ�Ñ�Ñ�окÑ� Ñ�едакÑ�оÑ�а. ÐÑ�о позволиÑ� Ð�ам ввеÑ�Ñ�и командÑ�.
2. Тепе�� набе�и�е �имвол ! (во�кли�а�ел�н�й знак). Тепе�� можно и�полни��
вне�н�� команд�, и�пол�з�� командн�� оболо�к�.
3. Ð�лÑ� пÑ�имеÑ�а набеÑ�иÑ�е ls поÑ�ле ! и нажмиÑ�е <ENTER>. ÐÑ�а команда вÑ�ведеÑ�
�пи�ок �айлов в �ек��ем ка�алоге, �о�но �акже, как е�ли б� �� ввели ���
команд� в п�игла�ении оболо�ки. �ли поп�об�й�е :!dir , е�ли п�ед�д��а�
команда не ��або�ала.
---> �аме�ание: Таким �по�обом можно в�полни�� л�б�� вне�н�� команд�.
---> �аме�ание: ��е команд�, на�ина��ие�� � : , должн� заве��а���� нажа�ием
<ENTER>.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 5.2: ��� ����С�ТЬ Ф���
** �л� �о��анени� изменений, п�оизведенн�� в �айле, набе�и�е :w ��Я_Ф����. **
1. �абе�и�е :!dir или :!ls дл� пол��ени� �пи�ка �айлов в �ек��ем ка�алоге.
�ак �ам �же изве��но, �� должн� нажа�� <ENTER> по�ле ввода ��и� команд.
2. ��ид�май�е название дл� �айла, ко�о�ое е�е не ���е��в�е�, нап�име� TEST.
3. Тепе�� набе�и�е :w TEST (где TEST --- ��о им� �айла, п�ид�манное �ами.)
4. ÐÑ�а команда Ñ�оÑ�Ñ�аниÑ� веÑ�Ñ� Ñ�айл (УÑ�ебник по Vim) под именем TEST. ЧÑ�обÑ�
�до��ове�и���� в ��ом, �нова набе�и�е :!dir и п�о�мо��и�е ка�алог.
---> �аме���е, ��о е�ли �� в�йде�е из Vim и за�ем зап���и�е его �нова �
�айлом TEST, ��о� �айл б�де� �о�ной копией ��ебника в �о� момен�, когда
�� его �о��анили.
5. Тепе�� �дали�е ��о� �айл, наб�ав :!del TEST
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 5.3: �Ы��Р�Ч��� С�ХР������
** �л� �о��анени� �а��и �айла, набе�и�е :#,# w ��Я_Ф���� **
1. ��е �аз набе�и�е :!dir или :!ls дл� пол��ени� �пи�ка �айлов в �ек��ем
ка�алоге и в�бе�и�е под�од��ее им�, нап�име� TEST.
2. �е�еме��и�е к���о� к на�ал� ��ой ���ани�� и нажми�е Ctrl-g дл� на�ождени�
номеÑ�а Ñ�Ñ�Ñ�окиto. Ð�Ð�Ð�Ð�Ð�Ð�Ð�ТÐ� ÐТÐ�Т Ð�Ð�Ð�Ð�Ð !
3. Тепе�� пе�еме��и�е�� в коне� ���ани�� и внов� набе�и�е Ctrl-g. �������Т�
Ð� ÐТÐ�Т Ð�Ð�Ð�Ð�РТÐ�Ð�Ð�!
4. �л� �о��анени� Т��Ь�� Ч�СТ� �айла набе�и�е :#,# w TEST , где #,# --- ��о
номе�а, ко�о��е �� запомнили (на�ало, коне�), а TEST --- им� ва�его �айла.
5. �ак и п�ежде, �беди�е�� в нали�ии ��ого �айла командой :!dir , но ��
У���Я�Т� его.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 5.4: ЧТ���� � ��Ъ�������� Ф�����
** �л� в��авки �оде�жимого �айла, набе�и�е :r FILENAME **
1. �абе�и�е :!dir дл� �ого, ��об� �беди���� в �ом, ��о �айл TEST в�е е�е
���е��в�е�.
2. У��анови�е к���о� в ве��ней �а��и ��ой ���ани��.
�аме�ание: �о�ле в�полнени� �ага 3 �� �види�е У�ок 5.3. �о�ле ��ого
пе�еме�ай�е�� ����, �нова к ��ом� ��ок�.
3. Тепе�� п�о�и�ай�е �а� �айл TEST, и�пол�з�� команд� :r TEST , где
TEST --- ��о им� �айла.
�аме�ание: ��о�и�анн�й �ами �айл б�де� в��авлен в �ом ме��е, где на�оди���
к���о�.
4. Ч�об� �беди���� в �ом, ��о �айл п�о�и�ан, пе�еме��и�е�� немного назад по
�ек��� и [A[Bзаме���е, ��о �епе�� ���е��в��� две копии У�ока 5.3, и��одна�
и пол��енна� из �айла.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Р��Ю�� УР��� 5
1. :!команда и�полн�е� вне�н�� команд�.
�еко�о��е полезн�е п�име��:
:!dir --- в�води� �пи�ок �айлов в ка�алоге.
:!del FILENAME --- �дал�е� �айл FILENAME.
2. :w FILENAME запи��вае� �ек��ий �едак�и��ем�й �айл на ди�к
под именем FILENAME.
3. :#,#w FILENAME �о��ан�е� ���оки о� # до # в �айл FILENAME.
4. :r FILENAME ��и��вае� � ди�ка �айл FILENAME и поме�ае� его в �ек��ий
�айл �ледом за пози�ией к���о�а.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 6.1: ������� С������Я
** �абе�и�е o ��об� �озда�� п����� ���ок� под к���о�ом и пе�ей�и в �ежим
в��авки (Insert mode) **
1. �е�еме��и�е к���о� вниз, к ���оке, поме�енной --->.
2. �абе�и�е o (в нижнем �еги���е) дл� �ого, ��об� �озда�� п����� ���ок�
���� к���о�а и пе�ей�и в �ежим в��авки (Insert mode).
3. Тепе�� �копи��й�е поме�енн�� ---> ���ок� и нажми�е <ESC> дл� в��ода из
�ежима в��авки.
---> �о�ле нажа�и� o к���о� пе�ейде� на нов�� п����� ���ок� в �ежиме в��авки.
4. �л� �оздани� ���оки �ЫШ� к���о�а, п�о��о набе�и�е заглавн�� O, вме��о
���о�ной o. �оп�об�й�е п�одела�� ��о � ниже�лед���ей ���окой.
Создай�е нов�� ���ок� над ��ой, нажав Shift-O, поме��ив к���о� на ��� ���ок�.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 6.2: ������� ���������Я
** �абе�и�е a , ��об� в��ави�� �ек�� ��С�� к���о�а. **
1. �е�еме��и�е к���о� вниз, в коне� пе�вой ���оки, поме�енной ---> ,
наб�ав $ в об��ном �ежиме (Normal mode).
2. �абе�и�е a (в нижнем �еги���е) дл� добавлени� �ек��а ��С�� �имвола,
на�од��его�� под к���о�ом. (�аглавна� A позвол�е� добави�� в коне�
���оки.)
Ð�амеÑ�ание: ÐÑ�о позволÑ�еÑ� избежаÑ�Ñ� нажаÑ�иÑ� i , поÑ�леднего Ñ�имвола, Ñ�екÑ�Ñ�а длÑ�
в��авки, <ESC>, к���о�-вп�аво, и, наконе�, x , п�о��о дл� �ого,
��об� добави�� �е�� в коне� ���оки!
3. Тепе�� заве��и�е пе�в�� ���ок�. �аме���е �акже, ��о добавление ��о в
�о�но��и �о же �амое, ��о и �ежим в��авки, за и�кл��ением пози�ии, в
ко�о��� б�де� в��авлен �ек��.
---> ÐÑ�а Ñ�Ñ�Ñ�оÑ�ка позволиÑ� Ð�ам попÑ�акÑ�иковаÑ�Ñ�Ñ�Ñ�
---> ÐÑ�а Ñ�Ñ�Ñ�оÑ�ка позволиÑ� Ð�ам попÑ�акÑ�иковаÑ�Ñ�Ñ�Ñ� в добавлении Ñ�екÑ�Ñ�а в конеÑ�
���оки.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 6.3: �Щ� ���� С��С�� �����Ы
** �абе�и�е заглавн�� R дл� замен� более, �ем одного �имвола. **
1. �е�еме��и�е к���о� вниз, к ���оке, поме�енной --->.
2. Ра�положи�е к���о� в на�але пе�вого �лова, о�ли�а��его�� о�
�оо�ве���в���его в �лед���ей ���оке, поме�енной ---> (�лово 'по�ледней').
3. Тепе�� набе�и�е R и замени�е о��а�ок �ек��а в пе�вой ���оке, наб�ав
пове�� ��а�ого �ек��а �ак, ��об� обе ���оки ��али одинаков�ми.
---> �е�в�� ���ок� можно ��авн��� � по�ледней, и�пол�з�� клави�и.
---> �е�в�� ���ок� можно ��авн��� � в�о�ой, и�пол�з�� R и наб�ав нов�й �ек��.
4. �б�а�и�е внимание, ��о п�и нажа�ии <ESC> дл� заве��ени�, л�бой
не измененн�й �ек�� �о��ани���.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 6.4: УСТ������ ��Р���ТР��
** У��ановим па�аме��� �ак, ��об� игно�и�ова�� �еги��� п�и пои�ке или замене **
1. �ои�и�е �лово 'игно�и�ова��', наб�ав:
/игно�и�ова��
�ов�о�и�е пои�к не�кол�ко �аз, нажима� клави�� n
2. �кл��и�е па�аме�� 'ic' (�гно�и�ова�� �еги���), наб�ав:
:set ic
3. Тепе�� �нова �делай�е пои�к �лова 'игно�и�ова��', нажав: n
�ов�о�и�е пои�к не�кол�ко �аз, нажима� клави�� n
4. �кл��и�е па�аме��� 'hlsearch' и 'incsearch':
:set hls is
5. Тепе�� оп��� введи�е команд� пои�ка и по�мо��и�е, ��о пол��и���:
/игно�и�ова��
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Р��Ю�� УР��� 6
1. �ажа�ие o �оздае� ���ок� ���� к���о�а и пе�еме�ае� к���о� в нее в �ежиме
в��авки.
�ажа�ие заглавной O �оздае� ���ок� �ЫШ� ���оки, в ко�о�ой на�оди���
к���о�.
2. �абе�и�е a дл� в��авки �ек��а ��С�� �имвола, на ко�о�ом на�оди��� к���о�.
�ажа�ие заглавной A ав�ома�и�е�ки пе�еме�ае� �а� дл� добавлени� �ек��а
в коне� ���оки.
3. �ажа�ие заглавной R пе�еводи� �а� в �ежим замен� до �е� по�, пока не
б�де� нажа�а клави�а <ESC> дл� заве��ени�.
4. �аб�ав ":set xxx" в� �може�е вкл��и�� па�аме�� "xxx"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 7: ������Ы ���УЧ���Я �СТР������ С�Р����
** ��пол�з�й�е в���оенн�� �п�аво�н�� �и��ем� **
Vim обладае� мо�ной в���оенной �п�аво�ной �и��емой. �л� на�ала поп�об�й�е
один из ��е� ва�иан�ов:
- нажми�е клави�� <HELP> (е�ли �акова� имее��� на клавиа���е)
- нажми�е клави�� <F1> (е�ли �акова� имее��� на клавиа���е)
- набе�и�е :help <ENTER>
�абе�и�е :q <ENTER> ��об� зак���� окно �п�авки.
�� може�е най�и �п�авк� дл� л�бого пон��и� или команд�, п�о��о задав
�оо�ве���в���ий а�г�мен� команде ":help". �оп�об�й�е �лед���ее (не заб�д��е
нажа�� <ENTER>):
:help w
:help c_<T
:help insert-index
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
У�ок 8: С������� СТ�РТ����� С�Р��Т�
** �кл��им возможно��и Vim **
Vim имее� намного бол��е возможно��ей, �ем Vi, однако бол��ин��вао из ни�
в�кл��ен� по �мол�ани�. �л� �ого, ��об� на�а�� и�пол�зова�� нов�е
возможно��и �ам �лед�е� �озда�� �айл "vimrc".
1. ���едак�и��й�е �айл "vimrc", его �а�положение зави�и� о� и�пол�з�емой
�и��ем�:
:edit ~/.vimrc дл� Unix
:edit $VIM/_vimrc дл� MS-Windows
2. Тепе�� п�о�и�ай�е п�име� �айла "vimrc":
:read $VIMRUNTIME/vimrc_example.vim
3. �апи�и�е �айл:
:write
Тепе�� п�и �лед���ем зап��ке Vim б�де� вкл��ена под�ве�ка �ин�ак�и�а. ��е
на���ойки, п�едпо�и�аем�е �ами, мог�� б��� добавлен� в �айл "vimrc".
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
�а ��ом заве��ае��� У�ебник Vim. �н б�л п�едназна�ен дл� �ого, ��об� да��
об�ее п�ед��авление о �едак�о�е Vim, до��а�о�ное дл� �ого, ��об� � легко����
и�пол�зова�� его. У�ебник далек о� полно��, по�кол�к� Vim имее� о�ен� много
команд. ��о�и�ай�е �епе�� ��ковод��во пол�зова�ел�: ":help user-manual".
�л� дал�ней�его ��ени� �екоменд�е��� книга:
Vim - Vi Improved - �в�о�: Steve Oualline
�зда�ел�: New Riders
ÐÑ�а книга полноÑ�Ñ�Ñ�Ñ� поÑ�вÑ�Ñ�ена Vim. Ð�Ñ�обенно полезна новиÑ�кам. СодеÑ�жиÑ�
множе��во п�име�ов и илл����а�ий.
�згл�ни�е на See http://iccf-holland.org/click5.html
След���а� книга более по��енного воз�а��а и по�в��ена бол��е Vi, �ем Vim,
однако �акже �екоменд�е���:
Learning the Vi Editor - �в�о�: Linda Lamb
�зда�ел�: O'Reilly & Associates Inc.
ÐÑ�о Ñ�оÑ�оÑ�аÑ� книга длÑ� Ñ�ого, Ñ�Ñ�обÑ� Ñ�знаÑ�Ñ� вÑ�е, Ñ�Ñ�о Ñ�олÑ�ко можно пÑ�оделÑ�ваÑ�Ñ� Ñ�
Vi. Ше��ое издание �акже вкл��ае� ин�о�ма�и� о Vim.
ÐÑ�оÑ� Ñ�Ñ�ебник бÑ�л напиÑ�ан Michael C. Pierce и Robert K. Ware, Colorado School
of Mines � и�пол�зованием идей, п�едложенн�� Charles Smith, Colorado State
University. E-mail: [email protected].
�о�або�ано дл� Vim Bram Moolenaar.
�е�евод: �нд�ей �и�елев <[email protected]>, 2002.
Translator: Andrey Kiselev <[email protected]>, 2002.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~