LINUX.ORG.RU

Что за операция такой виме @+<character>

 ,


0

2

Привет! Не могу найти применение, что делает @+<character> виме? Немного погуглив нашел, что это set register(установка регистра). Но именно какого регистра? Пробовал виме это делать, ноль эффекта? Что он делает по сути?



Последнее исправление: Hufoc (всего исправлений: 1)

Это не регисты в каноническом плане, а выполнение макроса, которые и находятся в регистре. Да, макросы используют те же регистры, что вообще использует vim... Мм. В общем, проще говоря, через @<key> vim воспринимает текст из буфера, как команду на выполнение. Настоятельно советую почитать сие: http://vim.wikia.com/wiki/Macros

Ordy
()
Ответ на: комментарий от Ordy

Понятно. То есть, как я понял, это команда чисто под макросы работают? Без записи макроса, не заработают?

Hufoc
() автор топика
Ответ на: комментарий от Hufoc

Ты можешь как записать макрос (это просто набор команд vim), так и просто положить его значение в регистр.

Взяв например из текстового файла, куда предварительно их сохранил.

pon4ik ★★★★★
()
Ответ на: комментарий от Hufoc

Самом виму нет разницы, как в буфер попал текст. Т.е. и через запись макроса с помощью клавиши «q», и через обычный yank в именованный буфер ты можешь получить команду, которую можно выполнить благодаря @<character>. Но вообще, да, это используется лишь в макросах.

Ordy
()
Ответ на: комментарий от Ordy

Спасибо большое, за наводку. Теперь стало понятно!

Hufoc
() автор топика

Хорошо бьі тебя заставить почитать книжку [Drew Neil] «Practical Vim, 2nd Edition: Edit Text at the Speed of Thought».

То, о чем тьі спрашиваешь подробно рассказьівается в главе 11 «Macros».

l-_-l
()
Ответ на: комментарий от andreyu

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

l-_-l
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.