붙여 넣은 내용을 주석 처리하는 VIM


14

vim 에서이 요점을 복사하려고 할 때 이것을 얻었습니다 : https://gist.github.com/w0ng/3278077

여기에 이미지 설명을 입력하십시오

주석이 포함 된 내용을 붙여 넣으면 주석 다음에 나오는 모든 내용이 주석으로 붙여집니다.

삽입 모드에서 주석을 작성하고 Enter 키를 누르면 다음 줄이 자동으로 주석을 추가한다는 사실과 관련이있을 수 있습니다.

이 동작을 어떻게 제거 할 수 있습니까?

답변:


26

붙여 넣기 전에 붙여 넣기 모드를 시작하십시오.

:set paste

"정상"모드로 다시 전환하려면 :

:set nopaste

6
또는 : 붙여 넣기! to toggle :)
valbaca

@valbaca 백틱을 사용 code blocks하여 의견 을 작성할 수 있습니다
Izkata

나는 반대 방향으로 그 명령이 필요했습니다!

11

Mat 에서 언급 한paste 옵션 외에도 VIM에서 X 클립 보드에 직접 액세스 할 수도 있습니다.

  • "*p X11 선택을 삽입
  • "+p X11 클립 보드를 삽입하려면

X11을 지원하는 VIM 버전이 필요합니다 (데비안 및 그 파생 제품에서는 vim-gtk또는 vim-gnome패키지 를 설치해야 함 ).

자세한 내용은 설명서 ( :help x11-selection)를 참조하십시오 .


6

무슨 일이야? 주석 줄에있을 때 새 줄을 자동으로 주석 처리하는 Vim 형식 옵션이 있습니다. 이러한 옵션 중 일부는 일반적으로 기본적으로 사용됩니다. 예를 들어

# a comment<CR>
# 

보시다시피, 새 줄 앞에는 주석 문자가 자동으로 추가됩니다. 설정 을 제거 c하고 제거하여 이러한 옵션의 대부분을 비활성화 할 수 있습니다 . 이러한 옵션에 대한 자세한 내용을 참조하십시오 .rformatoptions:h fo-table

:set formatoptions-=cr

Vim은 터미널 에뮬레이터의 붙여 넣기 메커니즘으로 붙여 넣은 텍스트와 입력하는 텍스트를 구별 할 수있는 방법이 없습니다. 붙여 넣기 옵션 ( set paste)을 설정하면 Vim에 붙여 넣기 된 텍스트를 예상하고 원하지 않는 서식 옵션을 비활성화하도록 지시합니다.


3

내가 가장 좋아하는 것은 put명령을 사용하는 것 입니다.

  • :put* 현재 줄에서 선택에서 붙여 넣기
  • :put+ 현재 줄에서 버퍼에서 붙여 넣기

"*p/ "+p도 좋지만 :pu[t]몇 가지 장점이 있습니다.

  • 항상 선으로 붙여 넣습니다.
  • 삽입 위치를 제어하기 위해 추가 매개 변수를 추가 할 수 있습니다.
    • :$put+ 마지막 줄 뒤에 붙여 넣기
    • :0put+ 파일의 시작 부분에 붙여 넣기

1

부수적으로,이 파일이있는 경우 수직 비주얼 블록 모드로 들어가서 제거 할 수 있습니다

ctrl+ v다음 화살표 키 / hjkl을 사용하여 삭제하려는 부분을 탐색 한 다음 누르십시오.d

때로는 붙여 넣기 모드 설정 취소, 붙여 넣기 및 설정 해제보다 더 빠릅니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.