Skip to content

Latest commit

 

History

History
149 lines (79 loc) · 7.26 KB

viEditor.md

File metadata and controls

149 lines (79 loc) · 7.26 KB

Редактор vi.

Редакторът Vi (съкращение от visual) е един от най-популярните текстови редактори в Linux света. Можете да го намерите във всички Unix ОС, като той работи по един и същ начин на тях.

Стартиране

  • vi <нов_файл/съществуващ_файл>- ако файлът съществува го отваря за редактиране, иначе може да създадете нов файл

  • може да стартирате vi и без да му подавате име на файл и да пишете информация в редактора. Тук разликата е, че при записването трябва да укажете име на файла.

Режим на работа

Vi има два режима на работа - команден режим (command mode) и въвеждащ режим (insert mode).

Команден режим

При стартиране на Vi винаги влизате в този режим. Тук можете само да изпълнявате команди, чрез които да , движите курсора и да копирате, поставяте и изрязвате текст.

Въвеждащ режим

Като влезете във въвеждащ режим вече можете да пишете и триете, като всичко се третира като "набор на текст", който накрая (ако желаете) се записва във файл.

Команди на редактора vi

Навигация (движение на курсора)

  • k - премества курсора нагоре (може да се използва стрелка нагоре)

  • j - премества курсора надолу (може да се използва стрелка надолу)

  • h - премества курсора наляво (може да се използва стрелка наляво)

  • l - премества курсора надясно (може да се използва стрелка надясно)

  • b - към първия символ на думата

  • е - към последния символ на дума

  • w - към първия символ на следващата дума

  • 0 - към началото на текущия ред

  • ^ - към първият символ от текущия ред

  • $ - към последния символ на текущия ред

  • Enter - премества курсора на първия символ на следващия ред

  • nG - премества курсора на n-тия ред. Само G премества курсора на последния ред

Движение по екрани

  • CTRL+d - Придвижва се напред с половин екран.
  • CTRL+f - Придвижва се напред с един екран.
  • CTRL+u - Придвижва се назад с половин екран.
  • CTRL+b - Придвижва се назад с един екран.

Въвеждане на текст

Когато въведем тези команди влизаме в режим на въвеждане

  • i - въвеждане преди мястото на курсора

  • a - въвеждане след мястото на курсора

  • A - въвеждане в края на реда

  • o - добавя нов, празен ред след текущия

  • О - добавя нов, празен ред преди текущия

  • ESC - прекратява въвеждащия режим

Промяна на текст

  • r - заменя символа, на който се намира курсора

  • R - заменя, колкото символи въведем

  • cw - променя думата от текущото положение на курсора до края на думата

  • c^ - променя думата от текущото положение на курсора до първия символ на реда

  • c$ - променя думата от текущото положение на курсора до последния символ на реда

  • cc - изменя целия ред, на който се намираме

  • u - премахва последната промяма

  • U - премахва абсолютно всички промени

Изтриване на текст

  • x - изтрива символа, на който се намира курсора

  • dw - изтрива дума от позицията, на която се намира курсора до края

  • d^ - изтрива всичко от позицията на курсора до първия символ на реда (включително)

  • dd - изтрива редът, на който се намира курсора

  • d$ - изтрива всичко от позицията на курсора до последния символ на реда (включително)

Промяната и изтриването на текст може да се извърши върху няколко символа/думи/редове, като укажете число, примерно 5dd, 5x,5c, d5w

Koпиране и поставяне в текст

  • yw - копира думата

  • yy - копира ред

  • p - поставя копираните символи

Примери:

5yw (или y5w) - копира следващите 5 думи

yy и 5p - копира текущия ред и го поставя 5 пъти

Преместване в текст

  • dw + p - преместване на дума

  • dd + p преместване на ред

Tърсене в текст

  • /низ - търсене на низ надолу от текущия ред във файла

  • ?низ - търсене на низ нагоре от текущия ред във файла

  • n - търсене на следващ резултат в същата посока

  • N - търсене на следващ резултат в предишната посока

Запис и изход от vi

enter image description here

JK

  • :w - записва промените във файла. Aко сме отворили редактора без да указваме име на файл трябва да го укажем тук.

  • :q - излиза от редактора

  • :q! - излиза от редактора без да запише промените

  • :wq - записване и изход

  • :e file - започва редактирането на нов файл

  • :е! file - започва редактирането на нов файл, без да се запазват промените по стария редактиран

  • :r file - прочита файлът file и добавя съдържанието му след курсора