Skip to content

การแปลภาษา ​

การ์ด Dreame Vacuum รองรับหลายภาษาโดยค่าเริ่มต้น โดยจะใช้ไฟล์ภาษาที่จัดเตรียมโดยการผสานรวม dreame_vacuum ของเบื้องหลังแบบไดนามิก แทนที่จะต้องบำรุงรักษาไฟล์แปลหลายชุด

การ์ดจะดึงค่าข้อความที่แปลแล้วจากส่วน entity_component ภายใน dreame_vacuum ไฟล์การแปลการผสานรวม

คีย์การแปล ​

ภายในไฟล์ภาษา การ์ดจะใช้หมวดคีย์หลักหลายอย่างที่เริ่มด้วย frontend_ เพื่อแสดงอินเทอร์เฟซ:

  • frontend_action: ส่วนนี้ประกอบด้วยข้อความทั้งหมดที่ใช้ภายในปุ่มการดำเนินการบนแผงควบคุมหลักของการ์ด เช่น เริ่ม, หยุดชั่วคราว, หรือ จอด

  • frontend_config: ส่วนนี้ประกอบด้วยป้ายข้อความ คำอธิบาย และการตั้งค่าที่ใช้ภายใน UI ตัวกำหนดค่าการ์ดแบบมองเห็นได้

  • frontend_message: ประกอบด้วยข้อความสถานะ การแจ้งเตือน รายงานข้อผิดพลาด และคำเตือนที่แสดงบนการ์ด

  • frontend_title: ครอบคลุมหัวข้อและชื่อตอนที่ใช้ภายในเมนูของการ์ด เช่น การจัดการแผนที่ หรือ การตั้งค่าการทำความสะอาด

  • entity: บล็อกนี้ครอบคลุมโดเมนของเอนทิตี Home Assistant เช่น select, sensor, switch, number, time และ input การ์ดจะดึงชื่อและสถานะของเอนทิตีเหล่านี้อย่างไดนามิก เช่น ระดับการดูด หรือ เงียบ โดยตรงจากการรวมระบบเพื่อให้มั่นใจในความสอดคล้อง

    • สถานะเฉพาะการ์ด: ให้คำแปลสำหรับสถานะภายในที่ใช้เฉพาะใน UI ของการ์ดเท่านั้น ไม่ใช่สำหรับเอนทิตีของ Home Assistant ซึ่งรวมถึงชื่อห้อง (มาจากเอนทิตี segment_name) พร้อมกับตัวระบุเฉพาะ เช่น task_type, edit_type, map_type, object_type, furniture_type, obstacle_type, obstacle_reason, task_end_type, task_interrupt_reason, startup_method, cleanup_method และ recovery_map_type

การจัดรูปแบบวันที่ เวลา และหน่วย ​

นอกจากการแปลข้อความแล้ว การ์ดยังปรับตามรูปแบบท้องถิ่นโดยอัตโนมัติโดยไม่ต้องตั้งค่าด้วยตนเอง:

  • ภาษา & ภูมิภาค: การ์ดจะให้ความสำคัญกับภาษาที่เลือกในโปรไฟล์ Home Assistant หากไม่ได้กำหนดภาษาไว้ จะเปลี่ยนไปใช้ภาษาปริยายของเบราว์เซอร์โดยอัตโนมัติ.
  • รูปแบบเวลา 12/24 ชั่วโมง: การ์ดจะเคารพรูปแบบเวลาที่กําหนดไว้ในโปรไฟล์ Home Assistant หากไม่ได้ระบุ การ์ดจะรับรูปแบบเวลามาตรฐานของภูมิภาคของอุปกรณ์โดยอัตโนมัติ
  • วันแรกของสัปดาห์: การ์ดจะอ่านการตั้งค่าวันแรกของสัปดาห์โดยตรงจาก Home Assistant หากไม่ได้กําหนดไว้ การ์ดจะกําหนดแบบไดนามิกว่าปฏิทินควรเริ่มในวันอาทิตย์หรือวันจันทร์ตามภูมิภาคท้องถิ่น
  • ระบบหน่วย: การ์ดจะตรวจสอบการตั้งค่าระดับโลกของ Home Assistant อย่างต่อเนื่องหากระบบใช้ระบบหน่วยอิมพีเรียล การ์ดจะคํานวณพื้นที่และระยะทางใหม่โดยอัตโนมัติ โดยแสดงผลเป็นฟุต ตารางฟุต หรือหลา
  • การแปลหน่วยพื้นเมือง: คำต่อท้ายหน่วยและคำย่อที่ใช้กันทั่วไป เช่น เมตร, กิโลเมตร, ฟุต, หลา, นาที และ ชั่วโมง ไม่จำเป็นต้องแปลด้วยตนเอง การ์ดจะแปลโดยอัตโนมัติด้วยฟีเจอร์ในเบราว์เซอร์ที่สร้างขึ้นโดยเฉพาะสำหรับภาษาที่ใช้งานอยู่

แก้ไขหรือปรับปรุงการแปล ​

หากพบข้อผิดพลาดในการพิมพ์หรือการแปลที่ไม่ถูกต้อง หรือหากต้องการการสนับสนุนสำหรับภาษาใหม่ สามารถส่งส่วนร่วมไปยัง dreame_vacuum คลังรวมตัวหลักได้

การทำให้การแปลทั่วไป

แอปอย่างเป็นทางการมักใช้คำศัพท์ที่แตกต่างกันสำหรับพารามิเตอร์เดียวกันในอุปกรณ์รุ่นต่าง ๆ การแปลต้องใช้ชื่อที่มีเหตุผลและทั่วไป แทนที่จะคัดลอกคำศัพท์ที่เหมือนกันจากแอปโดยตรง สิ่งนี้ช่วยป้องกันความขัดแย้งในการแปลที่การแก้ไขที่ออกแบบมาสำหรับรุ่นหนึ่งถูกลบโดยผู้ใช้ที่มีอุปกรณ์รุ่นอื่น

กระบวนการอัปเดตมีขั้นตอนดังต่อไปนี้:

  1. แยก Repository: การแยก Dreame Vacuum Home Assistant integration repository บน GitHub
  2. ค้นหาไฟล์แปล: ไปที่ไดเรกทอรี custom_components/dreame_vacuum/translations/ ใน repository ที่แยกเพื่อหไฟล์แปลที่ตรงกับรหัสภาษา เช่น de.json หรือ it.json
  3. ทำการแก้ไข: อัปเดตข้อความที่ไม่ถูกต้อง บล็อก frontend_action, frontend_config, frontend_message และ frontend_title จัดการข้อความที่เกี่ยวข้องกับ UI ขณะที่บล็อก entity จัดการชื่อเซ็นเซอร์ ตัวเลือกที่เลือก และสถานะของพวกมัน
  4. ส่ง Pull Request: เปิด Pull Request ไปยัง repository หลัก หลังจาก Pull Request ถูกตรวจสอบและรวมเข้ากับการปล่อยเวอร์ชันใหม่ของ integration แล้ว Dreame Vacuum Card จะดึงการแปลที่อัปเดตโดยอัตโนมัติ