ไวยากรณ์การแปล

ไวยากรณ์การแปล

โดเมนการแปล

ทางลัดช่วยให้เข้าถึงการแปลที่เกี่ยวข้องกับบริบทบางอย่าง.

// เกี่ยวกับเลย์เอาต์ (แท็กเมตา HTML และกรอบหน้าหลัก)
{{ '@layout::meta.description' | trans }}
// เกี่ยวกับหน้า (เนื้อหาของหน้า หรือโมดัลตัวอย่าง)
{{ '@page::page_title' | trans }}

การรวม

สิ่งสำคัญคือต้องลดข้อความที่ซ้ำกันในไฟล์การแปล กุญแจเวทย์ช่วยให้สามารถรวมจากไฟล์หนึ่งไปยังอีกไฟล์หนึ่งโดยใช้ไวยากรณ์ภายใน @folder.file::key.sub_key.

คุณสามารถรวมกับคำสำคัญ % หากกุญแจหรือโครงสร้างกุญแจเหมือนกัน.

# translation-file-one.en.yml
example_key:
  example_sub_key: Translation string

# translation-file-two.en.yml
example_key:
  # Using this key resolves to the first file
  # using the same key "example_key.example_sub_key"
  example_sub_key: '@translation-file-one::%'

ส่วนขยาย

หากกุญแจส่วนใหญ่ในไฟล์เหมือนกับอีกไฟล์หนึ่ง การใช้ไวยากรณ์ ~extends จะช่วยให้สามารถนำกุญแจทั้งหมดมาใช้ซ้ำและเพียงแค่เพิ่มกุญแจใหม่ได้ง่ายขึ้น.

# translation-file-two.en.yml
~extends: '@translation-file-one'

การเก็บข้อมูล

ไฟล์การแปลจะถูกแก้ไขและเก็บข้อมูลเพื่อรักษาประสิทธิภาพการทำงาน.

Javascript

การแปลสามารถถูกส่งไปยัง Javascript เพื่อการใช้งานที่มีพลศาสตร์.

// template.html.twig
trans_js('@page::javascript.*')
// Hello Javascript!
app.layout.page.trans('@page::javascript.demo_text');