programing tip

Vim에서 자동 접기를 활성화하려면 어떻게해야합니까?

itbloger 2020. 10. 24. 09:41
반응형

Vim에서 자동 접기를 활성화하려면 어떻게해야합니까?


Vim에서 자동 접기를 활성화하려면 어떻게해야합니까? set foldmethod=syntax아무것도하지 않는 것 같습니다.


구문을 기반으로 접기를 허용하려면 다음과 같이 추가하십시오 .vimrc.

set foldmethod=syntax
set foldlevelstart=1

let javaScript_fold=1         " JavaScript
let perl_fold=1               " Perl
let php_folding=1             " PHP
let r_syntax_folding=1        " R
let ruby_fold=1               " Ruby
let sh_fold_enabled=1         " sh
let vimsyn_folding='af'       " Vim script
let xml_syntax_folding=1      " XML

구문 기반 접기는 $ VIM / syntax에있는 언어의 구문 파일에 정의되어 있습니다. 그러나 일부 언어에는 구문 파일에 접는 규칙이 내장되어 있지 않습니다. 예를 들어 Python. 이러한 언어의 경우 http://vim.sf.net 에서 폴드하는 것을 다운로드해야합니다 . 그렇지 않으면 들여 쓰기를 기준으로 접기를 사용해야합니다. 이를 효과적으로 수행하려면 .vimrc 파일에 다음을 추가 할 수 있습니다.

set foldmethod=indent
set foldnestmax=2

다른 종류의 접기

접기에는 6 가지 유형이 있습니다.

manual          manually define folds
indent          more indent means a higher fold level
expr            specify an expression to define folds
syntax          folds defined by syntax highlighting
diff            folds for unchanged text
marker          folds defined by markers in the text

개인적으로 저는 구문 접기 만 사용합니다. 일반적으로 모든 들여 쓰기 수준을 접지 않고 방법을 접고 싶습니다. 일관되지 않은 들여 쓰기와 이상한 형식의 레거시 코드는 종종 들여 쓰기 접기를 어렵거나 불가능하게 만듭니다. 문서에 마크를 추가하는 것은 지루하며 Vim을 사용하지 않는 사람들은 문서를 편집 할 때 마크를 유지하지 않습니다. 수동 접기는 누군가 소스 제어에서 코드를 편집하고 모든 접기가 잘못된 위치에있을 때까지 훌륭하게 작동합니다.

더 많은 읽기

  1. :help fold-methods다양한 접기 방법에 대한 자세한 내용은를 참조하십시오 .
  2. :help folding접기 조작을위한 키보드 명령에 대해 알아 보려면 참조하십시오 .
  3. :help folds접기의 전체 주제에 대한 도움말을 참조하십시오 .

JavaScript 접기도 나에게 적합하지 않았습니다. 구문 = javaScript (대문자 S 포함)를 설정 했을 때 갑자기 작동한다는 것을 알았습니다 .


새 버전의 Vim에서 접기를 활성화하는 방법이 변경되었습니다 (저는 vim 7.4를 사용하고 있습니다). 이제 파일을 만들고 ~/.vim/ftplugin/javascript.vim(리눅스에서) Eric Johnson의 답변에 설명 된대로 코드 접기 지침을 추가해야합니다. 특정 파일 유형에 대한 파일 유형 감지 및로드 플러그인은 다음을에 입력하여 활성화해야합니다 .vimrc.

filetype plugin on

여기에서 모든 솔루션을 시도했지만 Vim-javascript 플러그인 및 접기가 작동하기 시작할 때까지 NeoVim v0.3.1에서 작동하지 않았습니다 .

참고 URL : https://stackoverflow.com/questions/4789605/how-do-i-enable-automatic-folds-in-vim

반응형