Haml - كيف يمكنني إجبار سمات العلامة على استخدام علامات اقتباس مزدوجة فقط وكيف أطلب سمات العلامة بالطريقة التي أريدها؟

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

  •  12-09-2019
  •  | 
  •  

سؤال

يمكنني استخدام Staticmatic للقوالب التي أستخدمها لاحقا مع PHP. هناك موقف فردي حيث تحتوي بعض سمات العلامة على عروض علنية واحدة، في حين أن البعض لديهم علامات اقتباس مزدوجة. أود أن يكون كل منهم يقتبس مزدوجا حصريا (لا يهم الأمر، لكن أريدهم أن هذا!)

على سبيل المثال، رمز 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، أحصل دائما على نفس الإخراج!

كذلك، يبدو أن إخراج HUML-> إخراج HTML أنواع العلامة أبجديا، وليس الطريقة التي طلبتها بها في Haml. أظن أن هذا له علاقة بمصفوفات روبي، لكنني لست متأكدا لأنني لا أفعل / لا أستطيع استخدام Ruby بعيدا عن Haml in Staticmatic. كيف يمكنني الحصول عليها أمر نفسه كما طلبت لهم في صفيف روبي في كود هامل؟

هل كانت مفيدة؟

المحلول

حاول القيام بما يلي:

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

نصائح أخرى

تقوم شركة Haml بالفعل بتصميم أبجديا، وهذا هو في الواقع نتيجة محلل روبي. في المستقبل، قد يتم طلب السمات في أمر الوثائق قدر الإمكان، ولكن من غير المحتمل أن يحدث ذلك حتى Haml 2.2 أو إصدار أحدث.

اقتباس من: http://haml.info/docs/yardoc/file.Reference.htmllhoeptions.

يفهم Haml خيارات التكوين المختلفة التي تؤثر على أدائها وإخراجها.

في القضبان، يمكن ضبط الخيارات عن طريق إعداد Haml::Template.optionsالتجزئة في المهيئة:

# config/initializers/haml.rb

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

القضبان الخارجية، يمكنك ضبطها عن طريق تكوينها على مستوى العالم Haml::Options.defaults:

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

أخيرا، يمكنك أيضا تعيينها عن طريق تمرير خيارات التجزئة [HAML :: المحرك # تهيئة] [1]. للحصول على قائمة كاملة من الخيارات المتاحة، يرجى الاطلاع [HAML :: خيارات][2].

[1]: http://haml.info/docs/yardoc/haml/engine.html#initialize-instance_method.

[2]: http://haml.info/docs/yardoc/haml/Ooptions.html.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top