我有一个YAML格式的文本文件,并希望为VIM定义自定义折叠,但我不知道如何去做(尽管阅读了折叠的VIM文档).该文件由YAML"文档"组成,如下所示:
---
title: My Title
attr1: value1
attr2: value2
---
title: Next Item
attr1: value3
---
title: One More Item
...
Run Code Online (Sandbox Code Playgroud)
我希望得到的折叠文本看起来像这样:
+---- 2 lines: My Title ----
+---- ? lines: Next Item ---
Run Code Online (Sandbox Code Playgroud)
任何建议表示赞赏!谢谢!
我正在使用NetBeans IDE.通常,我项目中的每个PHP文件都有代码折叠:

但是,我的项目中的一个PHP文件没有代码折叠:

该文件没有语法错误.我尝试重新启动NetBeans并重新打开项目,折叠仍然没有出现.会是什么呢?
更多信息:
.php与我项目中的所有PHP文件类似.有没有办法我可以设置vim自动折叠ruby源文件,但只能在方法级别折叠,无论它们被定义的级别如何?
因此,当我有:
class MyClass
def method
...
end
end
Run Code Online (Sandbox Code Playgroud)
但是当我有:
module FirstModule
module SecondModule
class MyClass
def method
...
end
end
end
end
Run Code Online (Sandbox Code Playgroud)
我已尝试使用foldmethod =语法和各种折叠级别,但它没有考虑定义方法的深度.
此外,我不希望方法内部折叠(如果块,每个块等).
我认为foldmethod = expr是我最好的选择,但我还没弄清楚折叠表达式是如何工作的,而vim中的帮助并不是很有启发性.
我想在Excel中为我的电子表格创建缩进的可折叠行层次结构.
我使用了群组功能,但这对我来说很难管理.
以下是我要创建的示例:
我正在开发Android Studio和其他IDE,Android Studio有一个功能,可以在Java代码中创建可以折叠的"区域".(见下文)
有了这种代码
//region INITIALIZATION
private int myVaribale;
private String otherVariblae;
//endregion
Run Code Online (Sandbox Code Playgroud)
我们可以折叠/展开代码(见下面的截图).
它们与XML编辑器(特别是Android Studio中的编辑器)类似吗?
我们可以添加的东西,例如:
<!-- region MY LAYOUTS -->
<RelativeLayout>
//Some layouts
</RelativeLayout>
<!-- endregion -->
Run Code Online (Sandbox Code Playgroud) 问题: Emacs是否具有规范等效于Vim的Folding with Foldmethod = indent?
我对能够与任何Emacs主模式和任何文件一起工作的东西特别感兴趣.Emacs搜索没有找到确定的答案.
有没有办法让VIM继续将格式应用于用作折叠标题的行?
例如,我有以下代码:
int foo(int a, int b) {
int c;
....
}
Run Code Online (Sandbox Code Playgroud)
折叠后,我看到:
+-- 4 lines: int foo(int a, int b) {----------------------------
Run Code Online (Sandbox Code Playgroud)
但是,整行都按照"折叠"类突出显示.有没有办法禁用它,所以我继续看到语法突出显示?
[举一个简单的例子,这不是那么重要,但我也在查看大数据文件时使用折叠,而且格式化对我来说更重要]
是否可以为折叠和子折叠设置不同的颜色,例如:
我将org-mode与lisp-mode相结合,以便在emacs中为lisp代码实现漂亮的代码折叠:lisp-orgi-mode.基本上,我用';' 而不是'*'作为标题字符.对于评论,我只是在';'之前放置一个空格,使其成为';' 所以它不算作标题......
但是,使用python-mode执行相同操作不起作用...可能是因为python注释使用的'#'字符会干扰org-mode设置...
任何人都能成功地组合功能?我知道人们已经将python-mode与outline-mode(链接)相结合,但是ouline-mode不如org-mode ...
编辑:使用outline-magic:python-magic.el 很好地工作
在Visual Studio中,您可以使用#region和#endregion包装开发人员定义的代码块.
我很想在PhpStorm中看到这个功能,它是组织大型源文件的理想方式(例如大量的接口实现).
有可能让PhpStorm表现得这样吗?