1820

IntelliJ IDEA/ Resharper の + またはEclipse+ + /と同様の方法で、 Vimで行全体を複製するにはどうすればよいですか?CtrlDCtrlAlt

4

21 に答える 21

3059

yyY行をコピーする (ニーモニック: y ank ) または行を削除する(
Vim は、 削除したものをクリップボードのような「登録」にコピーします。切り取り操作のように)
dd

それから

pコピーまたは削除したテキストを現在の行の後に 貼り付けるまたはコピー または削除したテキストを現在の行の前に貼り付ける

P

于 2008-09-16T15:06:46.393 に答える
455

通常モード: 他の回答を参照してください。

の方法:

  • :t.行を複製し、
  • :t 77行目以降にコピーします。
  • :,+t0現在の行と次の行をファイルの先頭にコピーします (,+は range の同義語です.,.+1)。
  • :1,t$最初からカーソル位置までの行を最後までコピーします (1,は range の同義語です1,.)。

コピーする代わりに移動する必要がある場合は、:m代わりに を使用し:tます。

:gまたはと組み合わせると、これは非常に強力になります:v

  • :v/foo/m$パターン「foo」に一致しないすべての行をファイルの最後に移動します。
  • :+,$g/^\s*class\s\+\i\+/t.class xxxカーソルの直後にフォームの後続のすべての行をコピーします。

参照: :help range:help :t:help :g:help :mおよび:help :v

于 2012-04-17T15:17:21.180 に答える
316

YPまたはYpまたはyyp.

于 2008-09-16T15:07:10.950 に答える
279

vimにコピー&ペースト

これ以上簡単なことはありません!通常モードから:

yy

次に、貼り付けたい行に移動し、

p
于 2014-02-07T22:20:41.630 に答える
59

yy

現在の行を削除せずにヤンクします

dd

現在の行を削除します

p

前の方法のいずれかによって取得さputれた行

于 2008-09-16T15:04:11.033 に答える
53

これを行う:

まず、yy現在の行をコピーしてpから貼り付けます。

于 2008-09-16T15:04:10.673 に答える
49

別の方法が必要な場合:

"ayy: 行を buffer に格納しaます。

"ap: これにより、バッファの内容がaカーソルに配置されます。

これには多くのバリエーションがあります。

"a5yy: これにより、5 行がバッファに格納されaます。

詳しくは、" Vim ヘルプ ファイルを参照してください。

于 2008-09-16T15:37:24.933 に答える
44

yyp-「ヤッピー!」で覚えてください。

数字を間に挟んだ複数行:

y7yp

于 2008-09-16T15:16:29.647 に答える
27

yyp- 後に貼り付け

yyP- 前に貼り付け

于 2013-10-12T18:23:05.530 に答える
16

私は好きです: Shift+ v(行全体をすぐに選択し、必要に応じて他の行を選択できるようにするため)、y、p

于 2009-07-14T04:45:12.917 に答える
12

別のオプションは、次のようにすることです。

nmap <C-d> mzyyp`z

カーソル位置を保持できる利点があります。

于 2009-07-14T04:37:04.837 に答える
11

<Cx> <Cl>を試すこともできます。これにより、挿入モードから最後の行が繰り返され、すべての行を含む完了ウィンドウが表示されます。ほぼ<Cp>のように機能します

于 2008-09-18T20:32:52.630 に答える
5

デフォルトは ですがyyp、私はこの再バインドを 1 年ほど使用しており、気に入っています。

" set Y to duplicate lines, works in visual mode as well. nnoremap Y yyp vnoremap Y y`>pgv

于 2015-04-20T04:33:53.933 に答える
3

1 落とし穴: 「p」を使用して行を配置すると、カーソルがある行の後に配置されるため、ヤンクしている行のに行を追加する場合は、カーソルを行の下に移動しないでください。新しい行を配置する前に。

于 2008-09-16T15:06:45.053 に答える
3

vi を学び始めた人のために、vi のコマンドと典型的な Windows GUI エディターのカーソル移動およびショートカット キーを並べてリストすることで、vi の優れた紹介を示します。yy(行のコピー)およびp(後に貼り付け)または(前に貼り付け)を含むすべての基本的なコマンドがリストされていますP

Windows ユーザー向けの vi (Vim)

于 2016-02-10T13:23:48.640 に答える
2

CtrlSublime + Shift+のように、行を複製して現在の like のすぐ下に貼り付けたい場合Dは、これをファイルに追加でき.vimrcます。

nmap <S-C-d> <Esc>Yp

または、挿入モードの場合:

imap <S-C-d> <Esc>Ypa

于 2018-02-11T17:20:36.883 に答える
0

vscode に似たこのマッピングを使用します。役に立つことを願っています!!!.

nnoremap <A-d> :t. <CR>==
inoremap <A-d> <Esc>:t. <CR>==gi
vnoremap <A-d> :t$ <CR>gv=gv
于 2021-05-02T05:16:34.447 に答える