IntelliJ IDEA/Resharper의 Ctrl + D 또는 Eclipse의 Ctrl + Alt + ↑ / ↓ 와 유사한 방식으로 Vim 에서 전체 줄을 복제하려면 어떻게 해야 합니까?
질문자 :sumek
y y 또는 Y 줄을 복사합니다(니모닉: y ank
Community Wiki
일반 모드: 다른 답변을 참조하세요.
전 방법:
-
:t.
라인을 복제하고, -
:t 7
은 7행 다음에 복사합니다. -
:,+t0
파일의 시작 부분에서 현재 및 다음 줄을 복사합니다(,+
.,.+1
의 동의어입니다). -
:1,t$
는 처음부터 커서 위치까지 줄을 복사합니다(1,
1,.
의 동의어임).
복사 대신 이동해야 하는 경우 :t
대신 :m
사용하십시오.
:g
또는 :v
와 결합하면 정말 강력할 수 있습니다.
-
:v/foo/m$
는 패턴 "foo"와 일치하지 않는 모든 라인을 파일의 끝으로 이동합니다. -
:+,$g/^\s*class\s\+\i\+/t.
커서 바로 뒤에class xxx
형식의 모든 후속 줄을 복사합니다.
참조: :help range
, :help :t
, :help :g
, :help :m
및 :help :v
Benoit
YP
또는 Yp
또는 yyp
.
Linulin
이보다 더 간단할 순 없다! 일반 모드에서:
yy
그런 다음 붙여넣고 싶은 줄로 이동하고
p
Adam
y를 y를
현재 줄을 삭제하지 않고 잡아당깁니다.
D D
현재 줄을 삭제합니다
NS
이전 방법 중 하나로 잡은 줄을 put
pjz
다른 방법을 원하는 경우:
"ayy
: 이것은 버퍼 a
라인을 저장합니다.
"ap
:이 버퍼의 내용을 넣어 것입니다 a
커서에.
이것에 대한 많은 변형이 있습니다.
"a5yy
a
5줄을 저장합니다.
자세한 내용은 " Vim 도움말 파일 을 참조하세요.
Kwondri
이 작업을 수행:
먼저 y y 를 눌러 현재 줄을 복사한 다음 p 를 눌러 붙여넣습니다.
Eric Z Beard
y y p - "yippee!"로 기억하십시오.
사이에 숫자가 있는 여러 줄:
Y Y 7 P
theschmitzer
y y p - 뒤에 붙여넣기
y y P - 앞에 붙여넣기
yemu
I like: Shift + v (전체 줄을 즉시 선택하고 원하는 경우 다른 줄을 선택할 수 있음), y, p
Gabe
또한 삽입 모드에서 마지막 줄을 반복하고 모든 줄과 함께 완성 창을 가져오는 <Cx><Cl>을 시도할 수도 있습니다. 거의 <Cp>처럼 작동합니다.
nikolavp
또 다른 옵션은 다음과 같습니다.
nmap <Cd> mzyyp`z
커서 위치를 유지하는 이점을 제공합니다.
Rook
vi를 모르는 사람을 위해 위의 일부 답변은 "paste ... after/before current line"과 같은 문구로 그를 오도할 수 있습니다.
Community Wiki
나는 내가 파티에 늦었다는 것을 알고 있지만, 어쨌든; 내 .vimrc에 다음이 있습니다.
nnoremap <Cd> :copy .<CR> vnoremap <Cd> :copy '><CR>
:copy
명령은 인수로 지정된 줄 번호 아래로 선택한 줄 또는 범위(항상 전체 줄)를 복사합니다.
일반 모드에서 이것이 하는 일은 copy .
이 줄 바로 아래에 이 줄을 복사합니다 .
그리고 비주얼 모드에서는 '<,'> copy '>
선택 시작부터 선택 끝까지 선택 끝 아래 줄까지 복사 합니다.
DarkWiiPlayer
기본값은 y y p 이지만 1년 정도 이 리바인딩을 사용해 왔으며 매우 좋아합니다.
" set Y to duplicate lines, works in visual mode as well. nnoremap Y yyp vnoremap Y y`>pgv
Chris Penner
1 gotcha: "p"를 사용하여 줄을 넣을 때 커서가 있는 줄 뒤에 넣습니다. 따라서 잡아당기는 줄 뒤에 줄을 추가하려면 커서를 줄 아래로 이동하지 마십시오. 새 줄을 넣기 전에.
cori
vi를 배우기 시작하는 사람들을 위해 일반적인 Windows GUI 편집기 커서 이동 및 바로 가기 키에 vi 명령을 나란히 나열하여 vi에 대한 좋은 소개가 있습니다. 여기에는 yy (줄 복사) 및 p (뒤에 붙여넣기) 또는 P (앞에 붙여넣기)를 포함한 모든 기본 명령이 나열됩니다.
ap-osd
Sublime Ctrl + Shift + D 에서처럼 라인을 복제하여 현재 바로 아래에 붙여넣고 .vimrc
파일에 추가할 수 있습니다.
nmap <SCd> <Esc>Yp
또는 삽입 모드의 경우:
imap <SCd> <Esc>Ypa
jedi
일반 모드와 삽입 모드 모두에서 현재 줄을 복제하기 위해 .vimrc
에서 사용자 지정 키맵 Ctrl + D 를 정의하는 것을 선호합니다.
" duplicate line in normal mode: nnoremap <CD> Yp " duplicate line in insert mode: inoremap <CD> <Esc> Ypi
Savrige
이 매핑을 사용하고 싶습니다.
:nnoremap yp Yp
YP
명령과 함께 사용하는 것이 일관성이 있기 때문입니다.
yolenoyer
vscode와 유사한 이 매핑을 사용합니다. 유용하길 바랍니다!!!.
nnoremap <Ad> :t. <CR>== inoremap <Ad> <Esc>:t. <CR>==gi vnoremap <Ad> :t$ <CR>gv=gv
frfernandezdev
출처 : http:www.stackoverflow.com/questions/73319/how-to-duplicate-a-whole-line-in-vim
'etc. > StackOverFlow' 카테고리의 다른 글
GitHub에서 커밋을 제거하려면 어떻게 해야 하나요? [복제하다] (0) | 2021.12.28 |
---|---|
NodeJS 및 NPM을 다음 버전으로 업데이트하려면 어떻게 해야 합니까? (0) | 2021.12.28 |
브라우저 간에 일관되게 확인란과 레이블을 정렬하는 방법 (0) | 2021.12.28 |
Node.js에서 파일 쓰기 (0) | 2021.12.28 |
React 라우터를 사용하여 프로그래밍 방식으로 탐색 (0) | 2021.12.28 |