在vim中,我通常设置foldmethod于indent大多数类型的文件。一般来说,我喜欢打开所有折叠的文件。但是,立即开始使用zm以开始在文件中全局关闭折叠非常有用,一次一个级别,让我可以查看文件的整体结构,而不会妨碍细节。
我发现的唯一通用解决方案是设置foldlevelstart一个非常高的数字,例如 99,以确保所有文件(记住不同的文件将具有不同的最大缩进级别)开始完全展开。但是,我必须zm反复使用以减少foldlevel到文件的最大折叠级别,通常远小于 99,这既麻烦又不切实际。我可以foldlevel使用 vim 命令行手动设置,但我仍然需要知道文件中的最大缩进。
有没有一种实用的方法来打开一个文件,foldlevel设置为文件本身的最大当前缩进/折叠级别?
例如,给定以下文件:
a
b
c
d1
d2
e
f1
f2
Run Code Online (Sandbox Code Playgroud)
第一次按键zm将显示:
a
b
c
+-- 2 lines: d1------
e
+-- 2 lines: f1------
Run Code Online (Sandbox Code Playgroud)
(但是请注意,它应该适用于文件的初始最大缩进可以是任何值的一般情况)。
在编辑大文件时,我喜欢使用+Notepad++ 侧边栏中的符号来折叠代码片段。但是,当我关闭并重新打开文件时,代码完全展开。
有没有办法将折叠状态存储在文件中?
我知道我们可以折叠methods,if statement并且......但是我想折叠用方法编写的代码的任意部分。我想NetBeans我们可以这样做:
// <editor-fold desc="describe what is in here">
Your code goes here...
// </editor-fold>
Run Code Online (Sandbox Code Playgroud)
但现在我正在 Eclipse 中开发。这是一个建议,但它对我不起作用。你知道有什么方法吗?
有没有办法在记事本++中折叠/展开选定的代码块?我知道快捷方式alt0和altshift0(折叠/展开所有),但这不是我要找的。
我通常首先折叠所有代码,然后展开特定方法。在这种情况下,单独的折叠/展开快捷方式 ( ctrlaltfOR ctrlaltshiftf) 不会派上用场,因为它仅适用于当前(最外层)块,而内部块则折叠起来......
hideshow很酷,但它仅限于几种编程语言。有人可以帮我添加对 Ruby 和 Haskell 等更多支持吗?
我正在尝试重新定义Folded元素的默认语法突出显示,以便它不会显示像右侧那样不受欢迎的背景颜色:

我想要的是类似:highlight Folded ctermbg=或的东西:highlight Folded unset ctermbg。但是当我这样做时,vim 说
E417:缺少参数:ctermbg=
将背景颜色设置为Black不起作用。由此产生的“黑色”与真正的黑色背景不同。
有没有办法可以删除这样的背景?
我在文本文档中有一个折叠部分。我可以在 vim 中使用折叠作为动作,就像单词或 WORD 是带有 的动作一样w/W吗?
例如daw删除单词周围,所以
This is a |t|est
Run Code Online (Sandbox Code Playgroud)
光标在||, 并且在normalmode 如果我运行命令daw将变为
This is |a|
Run Code Online (Sandbox Code Playgroud)
我可以用折叠部分(使用foldmethod=marker, 和乳胶代码)来做到这一点吗?
\begin{equa|t|ion}%{{{
a = 10
\end{equation}%}}}
Run Code Online (Sandbox Code Playgroud)
在折叠运动将被删除之后。这在其他foldmethod模式下可能吗?
对于我的问题,我知道我可以折叠该部分然后删除“线”,但我想知道折叠本身是否可以被视为一个动作。
我很难做一些非常简单的事情。我有大约 2000 个 .txt 文件,它们由一行数字组成。我想使用 fold 命令将单行折叠成多行的一列,并用这个新的折叠版本覆盖原始文件。我的尝试:
#!/bin/bash
for i in *.txt ; do
fold -w 1 $file > $file
done
Run Code Online (Sandbox Code Playgroud)
不起作用。帮助?谢谢。
code-folding ×10
vim ×5
notepad++ ×2
bash ×1
eclipse ×1
emacs ×1
highlighting ×1
java ×1
shell-script ×1
vimrc ×1