indent/html.vim


Ⅰ. 插件描述

alternative html indent script

Ⅱ. 基本信息

创建日期:  2007-11-18
使用用户:  131
Github星:  10
插件作者:  Andy Wokula

Ⅲ. 安装方法

使用Vundle管理器安装

在你的.vimrc下添加:
Plugin '/indenthtml-vim'
… 然后在Vim中运行以下命令:
:source %
:PluginInstall

对于Vundle版本 < 0.10.2,请用上面的Bundle替换Plugin。

使用NeoBundle管理器安装

在你的.vimrc下添加:
NeoBundle '/indenthtml-vim'
… 然后在Vim中运行以下命令:
:source %
:NeoBundleInstall

使用VimPlug管理器安装

在你的.vimrc下添加:
Plug '/indenthtml-vim'
… 然后在Vim中运行以下命令:
:source %
:PlugInstall

使用Pathogen管理器安装

在终端中运行以下命令:
cd ~/.vim/bundle
git clone https://github.com/vim-scripts/indenthtml.vim

Ⅳ. 文档说明

This script is based on the distributed indent scripts for HTML (and CSS).  The original script becomes very slow when indenting more than a few lines, thus here is an improvement.

Customization:  Variables you can set in the vimrc.  Given values are examples to change the defaults.

  Note: This applies to v0.6 (!).  Earlier version used :IndHtmlLocal for customization.  Details can always be found in the script header.

  You can set the indent for the first line after <script> and <style> "block tags" (default "zero"):

      :let g:html_indent_script1 = "inc"
      :let g:html_indent_style1 = "inc"

      VALUE MEANING
      "zero" zero indent
      "auto" auto indent (same indent as the blocktag)
      "inc" auto indent + one indent step

  The following <tags> increase the indent (for what follows) per default (taken from the original script, but slightly modified):
      a, abbr, acronym, address, b, bdo, big, blockquote, button, caption, center, cite, code, colgroup, del, dfn, dir, div, dl, em, fieldset, font, form, frameset, h1, h2, h3, h4, h5, h6, i, iframe, ins, kbd, label, legend, map, menu, noframes, noscript, object, ol, optgroup, q, s, samp, select, small, span, strong, sub, sup, table, textarea, title, tt, u, ul, var, th, td, tr, tfoot, thead
      (added with v0.8): area, article, aside, audio, bdi, canvas, command, datalist, details, embed, figure, footer, header, group, keygen, mark, math, meter, nav, output, progress, ruby, section, svg, texture, time, video, wbr, text

  You can add further tags with

      :let g:html_indent_inctags = "html,body,head,tbody"

      " the original script uses the g:html_indent_strict variable to include these tags

  You can remove tags with

      :let g:html_indent_autotags = "th,td,tr,tfoot,thead"

      " the original script uses the g:html_indent_strict_table variable to include these tags

  Default value is empty for both variables.  The default tags that increase indent are defined once per session only.

Problems and Bugs:

  - still no indent rules for attributes spanning several lines
  - sometimes cindent() thinks it is better to use zero indent for what follows ...
  - some tags increase indent per default, but their closing tag is optional, e.g. <td> -- the script cannot detect missing closing tags

Suggestions, bug reports welcome (I'm not writing HTML regularly).

2014 Jul 04: Vim 7.4.356 or later includes a descendant of this script (the official script is now maintained by Bram and includes massive changes)
2013 Jun 13: Vim 7.3.1180 or later includes the latest version of this script.

添加新评论