2017-02-12 4 views
2

Я хочу дублировать строку с Vim. Каждый раз, когда я использую yyp или любую другую команду, я должен переместить курсор в позицию, где он был. Есть ли какой-либо трюк для дублирования строки и переместите курсор на его позицию, например, возможно, используя макрос, чтобы сохранить текущую позицию курсора, дублировать, а затем перейти в нужную позицию?Vim дубликат с той же позицией курсора

+0

Какой os linux/mac? – minigeek

+0

@minigeek linux/ubuntu – challenger

+0

Сначала очистите меня эту вещь: вы хотите вставить, скажем, например. 'hi there' и курсор в конце концов? Но по умолчанию курсор находится в начале 'hi there'. – minigeek

ответ

3

Единственное решение, я хотел бы видеть, чтобы делать то, что вы хотите, вы дали только использовать его для yyp (т.е. скопировать CurrentLine и вставьте его ниже), чтобы записать в макрос:

mmyyp`mj 

что это делает:

  • записать знак m,
  • скопировать текущую строку
  • вставьте его
  • прыжок Col + расположение строки знака m
  • переместить курсор на одну строку вниз

идеально, что вы хотите, это прыжок в колонну, не меняя строки. Я не уверен, что это возможно, я никогда не нуждался в этом раньше.

+0

100% сработало, спасибо @zmo Я никогда не знал ничего о знаке. – challenger

+0

ну, если вы хотите узнать больше о отмечает: http://vim.wikia.com/wiki/Using_marks – zmo

0

Возможно, вы ищете ctrl-o и ctrl-i, чтобы прыгать взад и вперед.

+0

нет, это не сработало ... извините – challenger