<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: vi replace</title>
    <link>https://slinkov.ru/openforum/vsluhforumID15/4019.html</link>
    <description>Очень частая операция при редактировании кода - замена некоторых кусков текста другим.&lt;br&gt;Интересует кто как делает replace, в первую очередь в чистом vi но и в vim тоже.&lt;br&gt;Тот vi что у меня, по &quot;&amp;lt;reg&amp;gt;d&amp;lt;move&amp;gt; делает то же что и d&amp;lt;move&amp;gt; (в основной буфер, перезаписывая то что там есть) поэтому вставка возможна только как &quot;&amp;lt;reg&amp;gt;P, в качестве регистра используем p&lt;br&gt;Сравним, заменить слово, dw&quot;pP против ctrl-shift-&#091;-&amp;gt;&#093; shift-ins в notepad.&lt;br&gt;предварительно подготовить буфер тоже проигрывает, собственно не порядок :(&lt;br&gt;Важно что замена по regexp подходит не всегда, бывает удобно использовать удаление именно с командой перемещения затем вставить из буфера.&lt;br&gt;Тоесть хочется аналог виндового cut-and-paste, кто как пользуется если такая необходимость возникает?&lt;br&gt;</description>

<item>
    <title>vi replace (pavlinux)</title>
    <link>https://slinkov.ru/openforum/vsluhforumID15/4019.html#6</link>
    <pubDate>Thu, 25 Apr 2013 22:45:07 GMT</pubDate>
    <description>Есть такая клавиатура - Sun Keyboard Type 6, там есть левая доп. раскладка с нужными кнопками :) &lt;br&gt;&lt;br&gt;http://xahlee.info/kbd/i/kb/sun_keyboard_left.jpg&lt;br&gt;</description>
</item>

<item>
    <title>vi replace (oklas)</title>
    <link>https://slinkov.ru/openforum/vsluhforumID15/4019.html#5</link>
    <pubDate>Tue, 23 Apr 2013 21:02:13 GMT</pubDate>
    <description>Да, решение полностью такое:&lt;br&gt;Будем использовать именованый буфер h&lt;br&gt;переопределяем например &#091;ins&#093; как &quot;hP это сокращает выбор буфера на одно нажатие&lt;br&gt;и заодно вставляеь итого два нажатия.&lt;br&gt;если редактировать много то можно написать еще ремап &lt;br&gt;или если часто юзаемый комп то прописать в конфиг vi&lt;br&gt;еще один длинный ремап переноса неименованного буфера&lt;br&gt;в именованный с именем h например на &#091;del&#093;&lt;br&gt;( использует метки с именами h и g )&lt;br&gt;&lt;br&gt;макросы:&lt;br&gt;&#091;ins&#093; &quot;hP&lt;br&gt;&#091;del&#093; mhGo!!^&#091;PmgG$&quot;hd&#096;gdd&#096;h&lt;br&gt;    где ^&#091; это &#091;esc&#093; вводить так ctrl-v,&#091;esc&#093; &lt;br&gt;    &#091;ins&#093; и &#091;del&#093; тоже через ctrl-v&lt;br&gt;&lt;br&gt;пользуемся так:&lt;br&gt;&amp;lt;copy&amp;gt;&amp;lt;move&amp;gt;&#091;del&#093; - подготавливаем то что надо.&lt;br&gt;&amp;lt;del&amp;gt;&amp;lt;move&amp;gt;&#091;ins&#093;&amp;lt;paste&amp;gt; - удаляем и вставляем то что надо&lt;br&gt;&lt;br&gt;напримере того, что было в исходном топике:&lt;br&gt;&lt;br&gt;выделение размножаемого слова (cut/copy):&lt;br&gt;notepad:  ctrl-shift-&#091;-&amp;gt;&#093; ctrl-ins   нажатий: 2 клавиш: 5&lt;br&gt;vi без макросов: &quot;hyw    нажатий: 5 клавиш: 5&lt;br&gt;vi с макросами: yw&#091;del&#093;    нажатий: 3 клавиш: 3&lt;br&gt;&lt;br&gt;собственно замена например четырех слов (paste/replace)&lt;br&gt;notepad:  ctrl-sh</description>
</item>

<item>
    <title>vi replace (oklas)</title>
    <link>https://slinkov.ru/openforum/vsluhforumID15/4019.html#4</link>
    <pubDate>Tue, 23 Apr 2013 21:00:09 GMT</pubDate>
    <description>&amp;gt; Не нужен те vi. Юзай nano/joe/mcedit ...&lt;br&gt;&lt;br&gt;без комментариев&lt;br&gt;&lt;br&gt;&amp;gt; То есть мануал читать не хотим?!&lt;br&gt;&lt;br&gt;без комментариев&lt;br&gt;&lt;br&gt;именованный буфер уже предлагался, в первом посте&lt;br&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt; dw&quot;pP против ctrl-shift-&#091;-&amp;gt;&#093; shift-ins&lt;br&gt;&lt;br&gt;     ^^^^^ - много нажатий - 5, для замены слова&lt;br&gt;&lt;br&gt;проблема в том что и vi и vim неудаляют/замещают в именованный буфер&lt;br&gt;без затирания основного безымянного буфера,&lt;br&gt;&lt;br&gt;&amp;gt; можешь ремапнуть клавиши на комбинацию Shift-Ins/Del&lt;br&gt;&lt;br&gt;Я пытался напридумать команду хитрой вставки и сделать ремап.&lt;br&gt;Пока анализировал ваши предложения придумал решение того что мне подходит, &lt;br&gt;Надо сказать, что хотя ничего нового я не узнал но анализ Ваших&lt;br&gt;вариантов привели приемлемому решению.&lt;br&gt;Не получалось из-за того что основной неименованный буфер всегда&lt;br&gt;затирается при удалении/замещении, надо было сконцентрироваться&lt;br&gt;не на том куда удаляется а на том где хранится то что вставить.&lt;br&gt;</description>
</item>

<item>
    <title>vi replace (pavlinux)</title>
    <link>https://slinkov.ru/openforum/vsluhforumID15/4019.html#3</link>
    <pubDate>Tue, 23 Apr 2013 00:09:19 GMT</pubDate>
    <description>&amp;gt; Просто выскажите свое мнение&lt;br&gt;&lt;br&gt;Не нужен те vi. Юзай nano/joe/mcedit ...&lt;br&gt;&lt;br&gt;&amp;gt; Тоесть в блокноте:&lt;br&gt;&lt;br&gt;То есть мануал читать не хотим?! &lt;br&gt;&lt;br&gt;&amp;gt; 1. взял в буфер текст1    # ctrl-c&lt;br&gt;&lt;br&gt;&quot;Ayy&lt;br&gt;&amp;gt; 2. выделил текст2         # shift-&#091;-&amp;gt;&#093;&lt;br&gt;&lt;br&gt;&quot;B v -&amp;gt; y&lt;br&gt;&amp;gt; 3. вставил текст1         # shift-Ins или ctrl-v&lt;br&gt;&lt;br&gt;&quot;Ar&lt;br&gt;&amp;gt; 4. выделил текст3         # shift-&#091;-&amp;gt;&#093;&lt;br&gt;&lt;br&gt;v -&amp;gt;&lt;br&gt;&amp;gt; 5. вставил текст1         # shift-Ins или ctrl-v&lt;br&gt;&lt;br&gt;&quot;Ap&lt;br&gt;&lt;br&gt;&quot; - это именнованый буфер, можешь ремапнуть клавиши на комбинацию Shift-Ins/Del &lt;br&gt;</description>
</item>

<item>
    <title>vi replace (oklas)</title>
    <link>https://slinkov.ru/openforum/vsluhforumID15/4019.html#2</link>
    <pubDate>Mon, 22 Apr 2013 21:13:05 GMT</pubDate>
    <description>&amp;gt;&amp;gt; Тоесть хочется аналог виндового cut-and-paste, &lt;br&gt;&amp;gt; &amp;lt;Esc&amp;gt;v&amp;lt;Down/Up&amp;gt;dp - (v)выделить, (d)удалить, (p)вставить.&lt;br&gt;&lt;br&gt;Спасибо за ответ, но проблему replace к сожалению не решает. :(&lt;br&gt;то что Вы предложили позволяет размножить некий кусок, добавляя&lt;br&gt;его по тексту, но не замещая некие куски, в том то и дело&lt;br&gt;что эти куски приходится еще раз обходить или до вставки или после&lt;br&gt;и удалять. А хочется замену.&lt;br&gt;Тоесть в блокноте:&lt;br&gt; 1. взял в буфер текст1    # ctrl-c&lt;br&gt; 2. выделил текст2         # shift-&#091;-&amp;gt;&#093;&lt;br&gt; 3. вставил текст1         # shift-Ins или ctrl-v&lt;br&gt; 4. выделил текст3         # shift-&#091;-&amp;gt;&#093;&lt;br&gt; 5. вставил текст1         # shift-Ins или ctrl-v&lt;br&gt;&lt;br&gt;Для vi(vim) невозможен этап 2. там нет понятия выделить,&lt;br&gt;хотя можно какбы выделить с переходом в режим вставки -&lt;br&gt;(например заменить юзера в мыле можно так &#091;esc&#093;ct&#064; ),&lt;br&gt;надо бы ввести команду перемещения и вставки из буфера&lt;br&gt;поверх текста указанного этим перемещением, не теряя содержимого&lt;br&gt;буфера, (см команды из первого поста)&lt;br&gt;Такая простая и очень часто используемая операция</description>
</item>

<item>
    <title>vi replace (pavlinux)</title>
    <link>https://slinkov.ru/openforum/vsluhforumID15/4019.html#1</link>
    <pubDate>Thu, 18 Apr 2013 20:47:02 GMT</pubDate>
    <description>&amp;gt; Тоесть хочется аналог виндового cut-and-paste,&lt;br&gt;&lt;br&gt;&amp;lt;Esc&amp;gt;v&amp;lt;Down/Up&amp;gt;dp - (v)выделить, (d)удалить, (p)вставить. &lt;br&gt;&lt;br&gt; кто как пользуется если такая необходимость &lt;br&gt;&amp;gt; возникает?&lt;br&gt;&lt;br&gt;http://vimdoc.sourceforge.net/htmldoc/usr_toc.html&lt;br&gt;</description>
</item>

</channel>
</rss>
