Днес в тази статия ще ви дадем основно разбиране за буферите на Vim и как можете да извършвате различни действия с помощта на буфери. Приложихме Vim буферни задачи на Ubuntu 20.04 операционна система.
Какво представляват буферите?
В редактора на Vim буферите са част от паметта, заредена със съдържанието на файла. Но не работи върху оригиналния файл. Оригиналният файл остава същият, докато буферите са написани върху него. Всички отворени файлове са свързани с определен буфер. Буферите не са свързани с файл. Можете да направите много буфери, колкото искате.
Когато използвате буфери във Vim, те могат да бъдат скрити от показващия се изглед. Ако отворите файл за редактиране, той автоматично създава буфер и всеки файл ще остане достъпен, докато не затворите Vim.
Натиснете „Ctrl + Alt + t“, за да отворите терминала. Сега ще получите достъп до редактора на командния ред на Vim, като използвате следната команда:
$ vi
Как да създам буфери на Vim?
Е, за да създадете нов буфер на Vim, можете да използвате няколко команди.
Използвайте следната команда, за да създадете нов буфер. Командата по-долу ще раздели vim интерфейса на два хоризонтални прозореца.
: нов
Използвайте следната команда, която ще създаде нов буфер и ще раздели екрана на vim на два вертикални прозореца.
: vnew
Както споменахме по-горе, ако редактирате файл, той автоматично ще направи нов буфер. Така че, следвайте командата по-долу, за да редактирате файл във vim.
: редактиране на име на файлНапример, създадохме файл с име „buffersintro“, използвайте следната команда, за да редактирате този файл на vim:
: редактиране на буфери
За да редактирате множество файлови буфери, без да запазвате промените, трябва да активирате опцията, като използвате следната команда. В противен случай ще получите съобщение за грешка.
: набор скритКак да управлявате буферите на Vim?
За да видите списъка с буфери, ще изпълните командата, както следва в редактора на Vim:
: lsНо като алтернатива можете също да използвате следната команда, за да извършите същото действие на Vim:
: буфери
Следният изход ще се покаже на Vim. Първата е цифровата колона, която показва номера на буфера, във втората колона ще видите някои индикатори на знака, които представляват състоянието на буфера:
%: знакът показва буфера в текущия прозорец
#: алтернативно редактиране на буфер
a: показва активния буфер, който е видим и зареден.
h: означава скрит буфер, ако ще се показва на вашия екран.
Третото е името на буфера или името на файла. Последният аргумент показва номера на реда, към който сочи указателят.
Ако искате да направите буфер в активно състояние, тогава ще напишете следната команда:
: номер на буфера
Номерът на буфера, който ще използвате от списъка с буфери.
За да заредите всички буфери в разделени прозорци, ще използвате следната команда:
: топкаГорната команда ще отвори всички буфери в нов прозорец, както следва:
Можете също така да отваряте буфери във вертикална ориентация на прозореца, като използвате следната команда на vim:
: вертикална топкаЗа да отворите определен буфер в нов прозорец, за тази цел издайте следната команда на Vim:
: sbufferМожете също да използвате пряк път за тази цел. Въведете номер на буфер, след което ще натиснете ctrl w ^.
Изтрийте буферите
След като модификацията във файл приключи, сега можете да изтриете буфера от списъка, като издадете следната команда на Vim:
: bdelete argИли
: bd argКогато arg може да е името на файла или номерът на буфера, който искате да премахнете от списъка.
Първо, изброявате буфери с помощта на командата: ls.
Например искате да изтриете 3-ия буфер с име „newfile“ от списъка. Така че, ще напишете следната команда, за да направите това.
: bdelete 3Или
: bdelete нов файл
Сега избройте всички буфери. Ще видите, че 3-ият буфер е премахнат от списъка на буфера.
Можете дори да изтриете множество буфери от списъка, като използвате следната команда:
: bdelete buffer-name1 buffer-name2 ..Или
: 2,4bdelete (ще изтрие числата от втория буфер до 4)Навигация в буфери
Можете да използвате следната команда за буферна навигация:
- Добавете файл в новия буфер: badd
- Превключете към специфичен буфер N: bN
- Преминаване към следващия буфер в списъка с буфери: bnext
- Върнете се към предишния буфер в списъка с буфери: bprevious
- Преминаване към първия буфер: bfirst
- Преминаване към последния буфер: bfirst
В тази статия дадохме основно разбиране за буферите Vim. Виждаме това как да се справим с буферите на Vim и да ги използваме. Ако искате да изследвате повече, използвайте: help buffer, можете да изследвате всеки и всичко, свързано с Vim буфери. Надявам се тази статия да ви помогне да разгледате по-напреднали неща, свързани с буферите на Vim.