我有一些格式很差的HTML代码,我想重新格式化。有没有一个命令,将自动重新格式化HTML代码在Sublime Text 2,使它看起来更好,更容易阅读?
当前回答
我创建了一个名为HTMLBeautify的包,它可以很好地重新格式化HTML。我以1997年找到的Perl脚本为基础,对其进行了更新,使其能够与所有时髦的现代标记一起工作。:)
看看吧,让我知道你的想法!
https://github.com/rareyman/HTMLBeautify
其他回答
我还没有权限发表评论,所以这只是关于@peter上述回答的补充信息。
我发现HTML没有按照预期对齐,如果IE的条件注释在标题中不是完全内联的,例如冲到左边:
<!--[if lt IE 7]>
<p class='chromeframe'>Your browser is <em>unsupported</em>. <a href="http://browsehappy.com/">Upgrade to a different browser</a> or <a href="http://www.google.com/chromeframe/?redirect=true">install Google Chrome Frame</a> to experience this site.</p>
<![endif]-->
<!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
你不需要任何插件来做这件事。 只需选择所有的行(CTRL+A),然后从菜单中选择编辑→行→再缩进。 如果你保存的文件扩展名包含HTML,如. HTML或.php,这将有效。
如果你经常这样做,你可能会发现这个键映射很有用:
{ "keys": ["ctrl+shift+r"], "command": "reindent" , "args": { "single_line": false } }
如果您的文件没有保存(例如,您只是将一个片段粘贴到一个新窗口),您可以手动设置缩进语言,在选择重缩进选项之前,通过选择菜单视图→语法→所选语言。
虽然这个问题是HTML,我也想额外提供有关如何自动格式化你的Javascript代码崇高的文本2;
你可以选择所有的代码(CTRL+A),并使用应用程序内的功能,reindent(Edit -> Line -> reindent),或者你可以使用JsFormat格式化插件Sublime Text 2,如果你想有更多可定制的设置如何格式化你的代码,以添加到Sublime Text的默认选项卡/缩进设置。
https://github.com/jdc0589/JsFormat
你可以很容易地安装JsFormat使用包控制(首选项->包控制)打开包控制,然后键入install,按ENTER。然后输入js format并按ENTER,你就完成了。 (包控制器会在Sublime的左下角显示安装成功和错误的状态)
将以下行添加到您的键绑定(首选项->键绑定用户)
{ "keys": ["ctrl+alt+2"], "command": "js_format"}
我使用CTRL+ALT+2,你可以改变这个快捷键任何你想要的。到目前为止,JsFormat是一个很好的插件,值得一试!
希望这能帮助到一些人。
有一个很好的开源CodeFormatter插件,它(通过重印)可以美化脏代码,即使它们都是在一行中。
我使用整齐一起自定义构建系统来美化HTML。
我有HTMLTidy。在我的Packages/User/目录下sublime-build:
{
"cmd": ["tidy", "-config", "$packages/User/tidy_config.cfg", "$file"]
}
与tidy_config.cfg文件在同一目录下:
indent: auto
tab-size: 4
show-warnings: no
write-back: yes
quiet: yes
indent-cdata: yes
tidy-mark: no
wrap: 0
选择build system并按CTRL+B或CMD+B重新格式化文件内容。一个小问题是ST2不会自动重新加载文件,因此要查看结果,您必须切换到其他文件并返回(或切换到其他应用程序并返回)。
在Mac上,我使用macports来安装tidy,在Windows上,你必须自己下载它,并在构建系统中指定工作目录,tidy所在的位置:
"working_dir": "c:\\HTMLTidy\\"
或将其添加到PATH中。
推荐文章
- 样式化HTML电子邮件的最佳实践
- CSS/HTML:什么是使文本斜体的正确方法?
- 我如何才能在表中应用边界?
- 如何使一个DIV不包装?
- CSS div元素-如何显示水平滚动条只?
- 将Dropzone.js与其他字段集成到现有的HTML表单中
- 使用“!”的含义是什么?重要的”?
- 资源解释为样式表,但以MIME类型text/html传输(似乎与web服务器无关)
- 如何打印崇高的文本2
- 复选框输入是否只在被选中时才发布数据?
- 是类型="文本/css"必须在<链接>标签?
- 如何将LaTeX与Markdown混合?
- 如何使<div>总是全屏?
- 如何中心div垂直内绝对定位的父div
- 创建一个可变长度的字符串,用重复字符填充