【问题标题】:vim how to fold an html tagvim如何折叠一个html标签
【发布时间】:2014-02-25 10:18:52
【问题描述】:

我看到一些帖子说我应该使用zfat 来折叠 html 标签。所以我尝试了它,但没有得到我预期的结果。例如,我的文档中有这个

<div id="begin">
   <p>hello world</p>
      </div>

我将 vim 中的光标移动到 &lt;div id="begin"&gt; 的第一行。然后我按了退出键以确保我处于命令模式。然后我按下了键zfat。但是什么也没发生。我什至尝试输入 zfa{,这通常会折叠 PHP 代码块,但它对 html 没有影响。

谁能告诉我折叠 html div 标签的确切步骤?

谢谢

【问题讨论】:

    标签: vim folding


    【解决方案1】:

    zf 确实是创建手动折叠的命令。为此,您需要拥有

    :setlocal foldmethod=manual
    

    (否则会有E350。)at标签文本对象。您可以通过将其应用于可视模式来检查它包含的内容:vat

    请注意,手动折叠很繁琐;我建议使用内置 HTML 语法插件附带的 syntax fold。随便放

    :setlocal foldmethod=syntax
    

    ~/.vim/after/ftplugin/html.vim 中启用它。

    还要注意,到目前为止(从 Vim 7.4.1830 开始),默认的 HTML 语法脚本只折叠多行标签本身,不是开始和结束标签之间的文本。为此,您需要一个语法扩展,请参阅here

    【讨论】:

    • +1 建议使用vat 看看会受到什么影响。
    • 奇怪,我的 vim 是最新的 7.4 版本,但似乎没有内置的 html 语法插件?即使 foldmethod 设置为语法,也不支持 html 文件的折叠
    • 我的 windows 机器上没有这个文件。使用gvim。有什么帮助吗?
    • @ThomasSebastian:after 目录中的脚本用于您的自定义。它还不存在是正常的。只需创建它 :-) (但请注意,在 Windows 上,~/.vim 通常是 C:\Users\yourname\vimfiles。)
    • @Ingo Karkat 谢谢。这有帮助。
    猜你喜欢
    • 2011-11-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-12
    • 2012-06-13
    • 1970-01-01
    • 2011-07-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多