Ръководство за Vim Marks

R Kovodstvo Za Vim Marks



Маркировките на Vim са специфични местоположения във файл, които могат да бъдат зададени с име и по-късно върнати, като ги извикате с техните имена. Писмото м последвана от друга буква {a-z или A-Z} може да се използва за задаване на знака и a единичен цитат ) ‘) с името на марката се използва за връщане към тази марка. Имайте предвид, че малка буква букви се използват за настройка местни белези докато Главна буква буквите се използват за задаване на глобални марки .

Разбиране на Vim Marks

Vim ви позволява да зададете конкретни позиции във файл, особено ако работите върху голям файл, където трябва да се движите напред и назад бързо. Тази функция прави навигирането във файл със стотици редове изключително лесно. Например, ако работите върху код на Python с 500 реда код, тогава може да се наложи да превъртите файла, за да стигнете до конкретен ред код. Но ако поставите маркировки на желаните места, можете лесно да се движите, като натиснете няколко клавиша.







Е, функционалността на маркерите на Vim не е ограничена до навигацията, можете да използвате маркери, за да изпълнявате и други команди, които ще обсъждам в следващите раздели на това ръководство. Нека проучим как да задаваме и използваме знаци във Vim.



Забележка: Използвам Linux дистрибуция (Ubuntu 22.04) и Vim версия 8.2 за инструкциите в това ръководство.



Поставете знак

За да зададете знака във Vim, задръжте курсора там, където искате да поставите знака, и натиснете м ключ , последвано от всяко писмо от а да се с . Например, ако искам да поставя знак с името на буквата с тогава ще пиша мз в НОРМАЛЕН режим.





мз

Има няколко начина за поставяне на знак във Vim, тази процедура е най-бързата.

Въпреки че гореспоменатата процедура е широко използвана и много бърза, обаче, вие не получавате никаква визуална индикация дали маркировката е поставена или не, освен ако не я проверите изрично.



За да изброите знаците във Vim, използвайте :бележки команда, която ще обсъдя в Марки за списък раздел. Можете обаче да активирате индикацията за натискане на клавиш в долната част на прозореца, като използвате :set showcmd.

: комплект showcmd

Можете също да използвате марка или Марк команди за поставяне на маркировката. Например, на с знакът може също да бъде зададен с помощта на дадената по-долу команда:

: маркирайте z

Всеки Vim файл може да има маркировки от а да се с , но ако поставите знак с за позиция и използвайте същото име на маркировка за друга позиция, предварително зададената маркировка ще бъде премахната (презаписана).

Имайте предвид, че главните букви {A-Z} също могат да се използват за поставяне на знак. Знаците с главни букви са глобални марки и въз основа на файлове. Ще обсъдя подробно глобалните марки в отделен раздел.

Марки за списък

Както беше обсъдено в предишния раздел, всички създадени марки могат лесно да бъдат изброени

използвайки :бележки команда.

: марки

В горното изходно изображение са изброени всички марки; някои са персонализирани, а други по подразбиране.

Има и други методи за изброяване на маркировките. За да посочите конкретна марка, използвайте :бележки команда с името на марката. Например, за да изброите марката с, използвай :marks <име на марка> команда:

: маркира z

По същия начин, за да изброите няколко марки, използвайте :бележки <маркиране на имена> :

: бележи абз

Където а , б, и с са различни имена на марки.

Знаците във файловете не се виждат по подразбиране и за да ги видите графично, има различни добавки. Добре познатите добавки, които могат да показват знаци във Vim, са ShowMarks и Подпис на Vim .

Тъй като плъгинът ShowMarks е пълен с грешки и не е актуализиран от много години, ще инсталирам Подпис на Vim плъгин за преглед на маркировките.

При инсталиране на приставката задайте знака и приставката изрично ще го покаже с името, както е илюстрирано на следното изображение.

Скочи до знак

След задаване на маркировката, следващата стъпка е навигирането на маркировките. За да преминете към началото на маркирания ред в текущия буфер, натиснете единични кавички (‘) с името на марката {a-z}.

„С

За да преминете към точното местоположение (ред/колона), натиснете обратна отметка (`) с името на марката {a-z}.

`z

Единичният (‘) и обратната отметка (`) могат също да се използват за прескачане на глобалните знаци {A-Z}.

По-долу е спомената таблица за навигиране през знаците с малки букви:

'' Отидете обратно до линията, от която сте скочили
Отскочете обратно до позицията, от която сте скочили
' . /`. За да преминете към последния редактиран ред/позиция
`[\`] За да преминете към началото/края на последния изтеглен текст
`<\`> За да преминете към началото/края на последната визуална селекция
[броя]] ' За да преминете към следващия ред на [count] броя знаци от текущата позиция на курсора
[брой]]` За да прескочите [пребройте] броя знаци от текущата позиция на курсора

Важно е да се отбележи, че навигационните клавиши, споменати по-горе, са за малки букви.

Дискусията относно марките на Vim е непълна, ако не обсъдим скокове и списък за прескачане . The списък за прескачане съхранява скоковете, които са направени във файла или през файловете, независимо дали са маркировки или нормални скокове по подразбиране на Vim.

За да изброите всички скокове, използвайте :скокове и за да изтриете всички скокове, използвайте :clearjumps. За да навигирате в скоковете, използвайте ctrl+o и ctrl+i ключове.

Забележка: Преди да изтриете скоковете, имайте предвид, че изтриването на скоковете може да повлияе на хронологията на навигацията.

Намирам използването на скокове за по-удобно за придвижване през маркировките. Първо, изчиствам всички скокове, защото ако не го направя, може да се озова в други файлове. След това регистрирам маркировка скокове в списък за прескачане файл с единични кавички или обратна отметка. След като приключи, използвам ctrl+o и ctrl+i клавиши за бързо прескачане през маркировките.

За повече помощ относно навигацията в маркировките използвайте : помощни знаци и :help jumplist команди.

Глобални марки

Глобалните маркировки във Vim са настроени да прескачат между файловете. За разлика от локалните маркировки, глобалните маркировки се задават с главни букви и могат да се използват във файловете.

Нека разберем значението на глобалните марки с помощта на пример. Ако приемем, че работите върху кодов файл и искате да получите достъп до конкретна функция в този файл. Така че, вместо да отваряте файла, просто въведете зададената глобална маркировка и файлът ще бъде отворен с конкретното местоположение.

За да зададете глобалната маркировка, използвайте командата за маркиране м последвано от главна буква {A-Z}.

mZ

Сега можете да получите достъп до този знак от всеки файл. За да преминете към глобалната маркировка, използвайте същата процедура, спомената в Скочи до знак раздел. Файлът, съдържащ марката, ще бъде отворен, затваряйки текущия.

„СЪС

По същия начин, за да отидете до точното местоположение, използвайте обратна отметка с името на марката (`Z).

Номерирани знаци

Номерираните знаци {0-9} се използват за съхраняване на текущата позиция на курсора в viminfo файл, когато излезете от файла. Номерираните знаци са специални и не могат да се задават директно. Тези знаци се генерират автоматично в viminfo файл, за да следите модификациите във файла, когато излезете от него. Например, когато излезете от който и да е файл, viminfo файл записва последната информация за позицията на курсора в номерирани знаци като 0, 1, 2 и т.н.

Можете да изброите номерираните знаци, като използвате :бележки команда.

За повече информация относно номерираните знаци на Vim използвайте :help viminfo-file-marks команда.

Изтриване на знаци

Има различни методи за изтриване на всички маркировки, конкретни маркировки или набор от маркировки.

За да изтриете знаци, :delmarks или :delm могат да се използват команди.

:delmarks z За да изтриете конкретен знак, напр. с
:delmarks x-z За да изтриете белези от х да се с такова, че изтриването х , и , и с
:delmarks abxy Да изтрия а , b , х, и и марки
:delmarks zZ Да изтрия с и СЪС марки

За да изчистите всички знаци с малки букви {a-z}, използвайте :delmarks! команда. За да изчистите главни букви и цифри, трябва да използвате :delmarks A-Z и :delmarks 0-9 команди. Ако искате да изчистите знаците {A-Z} с главни букви, използвайте :delmarks A-Z . Номерираните знаци също могат да бъдат изчистени с помощта на същата команда.

Разширени функции

Тъй като маркировките са местоположения, те могат да се използват и за редактиране на файла във Vim. Например, за да изтриете, копирате или промените нещо от конкретна марка в друга марка, можете да използвате съответната команда със споменаването на името на марката.

В следващата таблица, с се използва като име на марката.

д ' z / d`z Изтриване от текущия ред към следващия маркиран ред / Изтриване от текущата позиция до следващата точна маркирана позиция
° С ' z / c`z Промяна на текст от текущия ред към следващия маркиран ред / Промяна на текст от текущата позиция до следващата точно маркирана позиция
и ' z / y`z Копиране (издърпване) на текст от текущия ред към следващия маркиран ред / Копиране на текст от текущата позиция до следващата точна маркирана позиция

Ако искате да извършите a линейно операция, след това извикайте знака с единични кавички (‘) и ако искате да изпълните a характерно операция, използвайте обратна отметка (`).

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

: 'х,' и < d,c или y >

Например, ако искате да изтриете всички редове от марк да маркирам използвай : ' х, ' y d команда.

Вижте следния файл с маркировки b и ° С .

За да премахнете всички линии от марката b към ° С (включително), изпълнете командата, дадена по-долу:

: 'б', c d

Разлика между малки и главни букви

Знаците с малки и главни букви имат различни функции.

Знаците с малки букви се използват във файловете и могат да бъдат зададени от азбуката а към азбука с във всеки файл. Те са уникални за файловете, в които са създадени. Те могат да бъдат достъпни и управлявани във файловете, където са създадени. От друга страна, знаците с главни букви {A-Z} са глобални и не могат да бъдат зададени със същото име. Тези знаци могат да бъдат достъпни от всеки файл с помощта на апостроф (‘) или обратна отметка (`).

Навигацията и процесът на изтриване на малки и главни букви са подобни. Но знаците с малки букви имат повече навигационни команди поради техните настройки във файла.

Друго важно нещо е, че маркировките не се изтриват при излизане от файла или сесията. Така че, ако сте задали знак, тогава при повторно отваряне знаците на файла ще останат непокътнати.

Vim Marks Cheat Sheet

Ключовите операции, от които се нуждаете, за да използвате функцията за маркиране в редактора на Vim, са споменати в следното изображение.

Заключение

Знаците в редактора на Vim са персонализирани позиции за навигация във файл със стотици редове. Има два вида знаци, главни и малки букви. Знаците с малки букви са удобни при навигация във файла. За навигация във файловете се използват главни букви. За да поставите знака, буквата м се използва с друга малка или главна буква {a-z, A-Z}. Маркировките на всеки файл могат да бъдат изброени с помощта на :бележки команда. За да изтриете знак :delmarks или :delm използват се команди с името на марката.