VIM рэдактар (онлайн)
Мэта: Пазнаёміцца з рэдактарам vi, навучыцца базавым камандам працы з рэдактарам.
Содержание
Тэорыя
Большасць дыстрыбутываў Linux утрымлівае не сапраўдны рэдактар vi, а яго палепшаную версію vim (Vi IMproved), створаную Брамам Мулінарам (Bram Moolenaar). Першасны ж vi рэдактар быў створаны студэнтам Каліфарнійскага універсітэту у Берклі - Біллі Джоем.
Vim значна больш дасканалы за традыцыйны vi і у сістэмах Linux звычайна выкарыстоўваецца пад сімвалічнай спасылкай (ці псеўданімам) vi.
Запуск і завяршэнне vi
Каб запусціць vi увядзіце каманду:
> vi
Каб выйсці з рэдактара:
:q
Звярніце ўвагу, што двухкропье таксама частка каманды.
Калі вы ўнесці нейкія змены, але хочыце выйсці з рэдактара, не захоўваючы іх:
:q!
Калі вы ўнеслі нейкія змены і хочаце іх захаваць:
:w
Калі вы ўнеслі нейкія змены і хочаце іх захаваць і выйсці:
:wq
Каманды, якія прыведзены вышэй, уводзяцца у камандным рэжыме (нармальным рэжыме vi) і пачынаюцца з двухкропья - называюцца ех-каманды.
Рэжым рэдагавання
Адкрыць файл у рэдактары vi:
> vi file.txt
Калі файл file.txt не існуе, то ён будзе створаны.
Vi зъяўляецца рэжымным рэдактарам. Адразу пасля запуска vi знаходзіцца у камандным рэжыме. У гэтым рэжыме амаль кожная клавіша з'яўляецца камандай, таму калі вы пачнеце ўводзіць тэкст, то можаце заблытацца і заблытаць vi.
Пераход у рэжым устаўкі (тэкста):
націсніце клавішу I(i), ці кнопку Insert
Знізу дакумента можа з'явіцца надпіс -- INSERT --
Цяпер можна увесці тэкст.
Выйсці з рэжыму устаўкі (рэжыму рэдагавання):
націсніце кнопку ESC
Перамяшчэнне курсора
У камандным рэжыме vi прапаноўвае вялікую колькасць камандаў па кіраванню курсорам. Частка гэтых камандаў выкарыстоўваецца прыладай less.
Клавіша | Змяшчае курсор |
---|---|
L ці стрэлка управа | Управа на адзін сімвал |
H ці стрэлка улева | Улева на адзін сімвал |
J ці стрэлка уніз | Уніз на адзін сімвал |
K ці стрэлка уверх | Уверх на адзін сімвал |
0 (нуль) | У пачатак бягучага радка |
SHIFT+6 (^) | Да першага непрабельнага сімвала у бягучым радку |
SHIFT+4 ($) | У канец бягучага радка |
w | Да пачатку наступнага слова, ці да знаку прыпынку |
SHIFT+w (W) | Да пачатку наступнага слова, мінуючы знакі прыпынку |
b | Да пачатку папярэдняга слова, ці да знаку прыпынку |
SHIFT+b (B) | Да пачатку папярэдняга слова, мінуючы знакі прыпынку |
CTRL+F ці Page Down | Уніз на адну старонку |
CTRL+B ці Page Up | Уверх на адну старонку |
лічба-SHIFT+g | Да радка з пазначаным нумарам. (Напрыклад, каманда 1G выканае пераход да першага радка у файле) |
SHIFT+g | Да апошняга радка у файле |
Асновы рэдагавання
Рэдагавання у асноўным заключаецца у некалькіх простых аперацыях: устаўка тэкста, выдаленне тэкста, перамяшчэнне частак тэкста, капіраванне.
Клавіша | Выконвае аперацыю |
---|---|
SHIFT+u (U) | Адмена апошняй змены |
I (i) | Пераход з каманднага рэжыму у рэжым устаўкі |
a | Пры знаходжанні курсора у канцы радка, vi змесціцца за канец радка і перойдзе у рэжым устаўкі |
SHIFT+a (A) | Змяшчае курсор у канец радка і пераходзіць у рэжым устаўкі |
ESC | Выйсці з рэжыма у стаўкі. (Пераход у камандны рэжым) |
Устаўка радка
Каманда | Выконвае аперацыю |
---|---|
o (літара "о") | Уставіць пусты радок ніжэй бягучага радка і перайсці у рэжым устаўкі |
SHIFT+o (O) (літара "O") | Уставіць пусты радок вышэй бягучага радка і перайсці у рэжым устаўкі |
Выдаленне (выразанне) тэкста
Каманда | Выдаліт |
---|---|
X | Бягучы сімвал |
3x | Бягучы сімвал і наступныя за ім 2 сімвалы |
dd | Бягучы радок |
5dd | Бягучы радок і наступныя за ім чатыры радкі |
dW | Ад сімвала бягучай пазіцыі курсора да пачатку наступнага слова |
d$ | Ад сімвала бягучай пазіцыі курсора да канца бягучага радка |
d0 | Ад сімвала бягучай пазіцыі курсора да пачатку радка |
d^ | Ад сімвала бягучай пазіцыі курсора да першага непрабельнага сімвала ў радку |
dG | Ад бягучага радка да канца файла |
d20G | Ад бягучага радка да 20 радка файла |
Капіраванне тэкста
Каманда | Скапіруе |
---|---|
yy | Бягучы радок |
5yy | Бягучы радок і наступныя за ім чатыры радкі |
yW | Ад сімвала бягучай пазіцыі курсора да пачатку наступнага слова |
y$ | Ад сімвала бягучай пазіцыі курсора да канца бягучага радка |
y0 | Ад сімвала бягучай пазіцыі курсора да пачатку радка |
y^ | Ад сімвала бягучай пазіцыі курсора да першага непрабельнага сімвала ў радку |
yG | Ад бягучага радка да канца файла |
y20G | Ад бягучага радка да 20 радка файла |
Устаўка тэкста
Каманда | Выконвае аперацыю |
---|---|
p | Уставіць правей пазицыі курсора |
SHIFT+p (P) | Уставіць левей пазіцыі курсора |
Аб'яднанне радкоў
У рэдактары vi нельга перайсці ў канец радка і выдаліць сімвал, каб аб'яднаць быгучы радок з насутупным. Для гэтага выкарыстоўваецца каманда J. (Перамясціце курсор на бягучы радок, націсніце J і бягучы радок аб'яднаецца з наступным).
Глабальны пошук з заменай
Ех-каманда. Прыклад:
:%s/Радок/радок/g
Слова "Радок" заменіцца на слова "радок" ва ўсім файле.
- % - ад першага да апошняга радка
- 1,$ - ад радка нумар 1 да апошняга радка.
- 1,5 - ад радка нумар 1 да радка нумар 5.
- g - азначае global. Гэта значыць, што падстаноўва выконваецца ддля усіх уваходжанняў слова "Радок". Калі g апусціць, то замена будзе адбывацца толькі для першага ўваходжання слова "Радок" у кожным радку.
Заданне
- Стварыць тэчку laba_2. У тэчцы laba_2 стварыць тэкставы дакумент ваша_прозвішча.txt.
- У гэтым дакуменце напісаць ліст аднаму з цікавых людзей у свеце адкрытых тэхналогій: Рычарду Столману, Лоурэнсу Лесігу, Джымі Вэйлзу, Аарану Шварцу, Тіму Бернерсу-Лі, Лінусу Торвальдсу, Аляксандры Элбакян, ці Сатошы Накамота. Напісаць не менш за 15 радкоў тэкста.
(Вы можаце абраць і іншага свайго куміра па гэтай тэме:).
- Патрэніравацца выконваць усе тыя каманды, што пералічаны у дадзенай метадычцы.
- Зрабіць скрыншот вашага файла ў рэдактары VIM пасля таго, як вы папрактыкуецеся са ўсемі камандамі.
- Запампаваць 1 скрыншот у дыстанцыйную платформу.
Літаратура
- Уильям Шоттс, "Командная строка Linux", 2017, c 146.