HAML - どのように私は、タグだけで二重引用符を使用する属性を強制んし、私はタグは私が望むように属性をどのように注文するのですか?

StackOverflow https://stackoverflow.com/questions/967039

  •  12-09-2019
  •  | 
  •  

質問

私はPHPと後で使うテンプレートのstaticmatic使用しています。いくつかは、二重引用符を持っていながら、いくつかのタグ属性は、単一引用符を持っている奇妙な状況があります。私は(私が推測する重要ではないということが、私はそのようにそれらをしたい!)独占的に二重引用符を持っているためにそれらのすべてをしたいと思います。

たとえば、HAMLコード:

!!! XML
%html{html_attrs('hr-HR')}
  %head
    %title Some title
    %meta{'http-equiv' => 'Content-Type', :content => 'text/html; charset=utf-8'}/
    %meta{'name' => "description", :content => 'Some title - YO!'}/
    = stylesheets
    = javascripts('test', :other)
  %body
    = yield

次生成します:

<?xml version='1.0' encoding='utf-8' ?>
<html lang='hr-HR' xml:lang='hr-HR' xmlns='http://www.w3.org/1999/xhtml'>
  <head>
    <title>Some title</title>
    <meta content='text/html; charset=utf-8' http-equiv='Content-Type' />
    <meta content='Some title - YO!' name='description' />
    <link href="stylesheets/application.css" media="all" rel="stylesheet" type="text/css"/><link href="stylesheets/grid.css" media="all" rel="stylesheet" type="text/css"/><link href="stylesheets/text.css" media="all" rel="stylesheet" type="text/css"/>
    <script language="javascript" src="javascripts/test.js" type="text/javascript"></script><script language="javascript" src="javascripts/other.js" type="text/javascript"></script>

  </head>
  <body>
    <h1>some body stuff!</h1>
    utf test šđčćž ŠĐČĆŽ
  </body>
</html>

ノート、それは私がHAMLコードで単一引用符または二重引用符を使用している場合、私はいつも同じ出力を得ることは重要ではありませんことを!

また、haml-> html出力の種類のタグが、私はHAMLでそれらを注文した方法ではありません、アルファベット順に属性と思われます。私は、これはRubyの配列とは何かを持っている疑いがあるが、私は/ staticmaticにHAMLから離れルビーを使用することはできませんがないのでわかりません。どのように私はHAMLコードでRubyの配列でそれらを注文したと彼らは同じことを命じていませんか?

役に立ちましたか?

解決

次を試してみます:

Haml::Template.options[:attr_wrapper] = '"'

他のヒント

HAMLは確かに順序がアルファベット順に属性ん、これは実際にRubyのパーサの結果です。将来的には、属性は、できるだけドキュメント順に注文することができるが、それはHAML 2.2以降まで発生する可能性はありません。

からの引用: http://haml.info/docs/yardoc/file .REFERENCE.htmlの#オプション

  

HAMLは、その影響を与えるさまざまな設定オプションを理解し   性能と出力ます。

     

Railsでは、オプションはHaml::Template.optionsを設定することで設定することができます   初期化子内のハッシュます:

     

# config/initializers/haml.rb

Haml::Template.options[:format] = :html5
     

Railsの外では、あなたがHaml::Options.defaultsでグローバルにそれらを設定することにより、それらを設定することができます:

Haml::Options.defaults[:format] = :html5
     

最後に、あなたはまたにオプションのハッシュを渡すことによって、それらを設定することができ、[をHAML ::エンジン#初期化の] [1]。ために   利用可能なオプションの完全なリストは、以下を参照してください。[をHAML ::オプションの] [2]。

     

[1]:    http://haml.info/docs/yardoc/Haml/Engine.html #初期化-instance_methodする

     

[2]: http://haml.info/docs/yardoc/Haml/ Options.htmlする

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top