JavaScript 용 Vim에서 코드 폴딩을 설정하려고 시도했지만 기본값이 올바르게 작동하지 않습니다. 나는 Vim에 대한 경험이 거의 없으며 도움 파일을 이해하는 데 어려움을 겪고있다.
문제를 만드는 JavaScript 코드는 다음과 같습니다.
var x = {};
x.prototype = (function () {
// Variable declarations...
var y;
// Other content...
y = (function () {
// Stuff...
}());
// Other content continues... eg:
return {
// Other stuff...
};
}());
접을 때 y = (function () {}());
, 다음과 같이 보입니다.
var x = {};
x.prototype = (function () {
// Variable declarations...
var y;
// Other content...
y = (function () {----------------------------------...
나머지 함수가 사라지는 방법에 유의하십시오! 실제로 이렇게 보일 것입니다 :
var x = {};
x.prototype = (function () {
// Variable declarations...
var y;
// Other content
y = (function () {----------------------------------...
// Other content continues... eg:
return {
// Other stuff...
};
}());
위에서 말했듯이 나는 구문 파일로 놀아 보려고했지만 폴딩 만 부러 뜨렸다.
편의를 위해 다음은 JavaScript 구문 파일의 코드 접기 섹션입니다.
if exists("javaScript_fold")
syn match javaScriptFunction "\<function\>"
syn region javaScriptFunctionFold start="\<function\>.*[^};]$" end="^\z1}.*$" transparent fold keepend
syn sync match javaScriptSync grouphere javaScriptFunctionFold "\<function\>"
syn sync match javaScriptSync grouphere NONE "^}"
setlocal foldmethod=syntax
setlocal foldtext=getline(v:foldstart)
else
syn keyword javaScriptFunction function
syn match javaScriptBraces "[{}\[\]]"
syn match javaScriptParens "[()]"
endif
syn sync fromstart
syn sync maxlines=100
3 가지 질문이 있습니다.
- 코드 폴딩을 수정할 수 있습니까?
~/.gvimrc
? - 코드 접기는 어떻게 수정합니까?
- 접힌 코드를이 양식으로 만들려면 어떻게해야합니까?
y = (function () { ... }());
?