vim 접어서 함수 뒤에 개행 문자도 숨기도록 하세요.

vim 접어서 함수 뒤에 개행 문자도 숨기도록 하세요.

vim의 접기 기능을 만드는 방법 - Foldmethod=syntax를 사용할 때 - 모든 함수, if-else 및 struct(Go 사용) 뒤에 줄 바꿈도 숨깁니다.

답변1

C에서 수행하는 방법은 다음과 같습니다.

  • 원본 구문 파일(Unix에서는 일반적으로 에 있음 /usr/share/vim)을 가져와서 (다시 Unix에서는)에 복사합니다 ~/.vim/syntax.
  • cBlock 영역 정의에서 "종료" 모드를 변경합니다.
syntax region cBlock    start="{" end="}" transparent fold

~이 되다

syntax region cBlock    start="{" end="}\(\n\n\)\?" transparent fold

여기서 첫 번째는 \n닫는 중괄호 바로 뒤에 있는 개행 문자와 일치하고 두 번째는 빈 줄과 일치합니다. 뒤에 주석이 오면 작동하지 않습니다 }. 블록은 여전히 ​​붕괴되지만 다음 개행 문자는 붕괴되지 않습니다.

(내가 아는) Go에 대한 구문 문서는 없지만 비슷한 방식으로 작동해야 합니다.

참고: 보다 유연한 접근 방식은 새 파일을 만들고 ~/.vim/after/syntax영역 정의만 변경하는 것이지만 여기서는 성공하지 못했습니다. 영역 정의를 복사하는 것만으로는 작동하지 않습니다.

관련 정보