Jade-控制HTML输出中的换行符

Jade-控制HTML输出中的换行符,html,whitespace,line-breaks,pug,templating,Html,Whitespace,Line Breaks,Pug,Templating,我有一个简单的搜索表单,我希望使用Jade实现 form input( type="text" size="16" placeholder="Enter your keywords") input( type="button" value="Search") 输出呈现为: <form> <input type="text" size="16" placeholder="

我有一个简单的搜索表单,我希望使用Jade实现

form
    input(
        type="text"
        size="16"
        placeholder="Enter your keywords")
    input(
        type="button"
        value="Search")
输出呈现为:

<form>
      <input type="text" size="16" placeholder="Enter your keywords">
      <input type="button" value="Search">
</form>

这是完美的,除了换行导致“我的”按钮和“搜索”按钮之间出现空格。我不需要文本框和按钮之间的空间。我需要代码以如下方式呈现:

<form>
      <input type="text" size="16" placeholder="Enter your keywords"><input type="button" value="Search">
</form>

然而,我使用这个项目来创建需要以HTML格式读取的代码,并且不能简单地从整个项目中删除空白


是否有一种方法可以在我的文档的其余部分保留空白和换行符的同时按指示输出表单?

我在寻找同样的东西,遇到了以下问题:


在纯文本下:删除空白:>和如果这是Jade for Node JS,您可以


您可以将表单模板放在一个单独的文件(例如:myform.jade)中,并在加载时将该模板的pretty设置为false,或者为此创建一个帮助程序。

我也遇到了这个问题
locals.pretty
在开发中设置为true,因为我想读取呈现的html。两个输入之间的间距会导致样式问题

我目前的解决方案是对这两个输入使用原始html:

form
  <input type="text" size="16" placeholder="Enter your keywords"><input type="button" value="Search">
表单

这会混合一些文本,但在输入之间不会有额外的空间。

您可以使用任何浏览器检查器而不是原始代码来读取生成的HTML。这似乎适用于某些标记,例如
blockquote
a
,如您的示例所示,但是Jade v1.11.0会产生错误,在使用
input
标记尝试此操作时不会编译。FWIW,上面的fusesource.org链接不起作用。该文件也可用。
<a href="http://foo.bar/10.1002/rmv.439">
                  CrossRef
</a>
a.external(href={"http://foo.bar/" + reference.dxLink.get})<
  |CrossRef
<a href="http://foo.bar/10.1002/rmv.439">CrossRef</a>
var jade = require('./../')
  , path = __dirname + '/whitespace.jade'
  , str = require('fs').readFileSync(path, 'utf8')
  , fn = jade.compile(str, { filename: path, pretty: true });
form
  <input type="text" size="16" placeholder="Enter your keywords"><input type="button" value="Search">