th
ภาษา
  • en
  • de
  • fr
  • es
  • br
  • ru
  • jp
  • kr
การแปลโดย AI
  • cs
  • hu
  • it
  • pl
  • nl
  • tr
  • ae
  • se
  • ua
  • id
  • vn
  • cn
  • th
  • ro
  • bg
  • dk
  • fi
  • no
  • gr
  • il
  • ee
  • eu

วิธีการแปล Redmine เป็นภาษาใดก็ได้

12/30/2023
3 minutes
ลูคาช เบญา, จากอังกฤษ (สหราชอาณาจักร) เป็นไทย (ประเทศไทย)

หนึ่งในคุณสมบัติที่ยอดเยี่ยมของ Redmine คือคุณสามารถ แปลแอปพลิเคชันการจัดการโครงการนี้เป็นภาษาใดก็ได้ ที่คุณต้องการได้อย่างง่ายดาย

คำเตือน: ข้อมูลในบทความนี้ใช้กับ Redmine เท่านั้นและไม่ใช้กับ Easy Redmine

เมื่อเรื่องการแปล Redmine คุณต้องแปลสิ่งต่อไปนี้:

  • ไฟล์ภาษาหลัก: ไฟล์นี้ตั้งอยู่ในตำแหน่งปัจจุบันที่ trunk ที่แหล่งที่มา: /trunk/config/locales
  • ไฟล์ภาษาแถบเครื่องมือวิกิ: ไฟล์นี้ตั้งอยู่ในตำแหน่งแหล่งที่มา: trunk/public/javascripts/jstoolbar/lang
  • ไฟล์วิธีใช้ช่วยเหลือ 4 ไฟล์: ไฟล์เหล่านี้ตั้งอยู่ในตำแหน่งแหล่งที่มา: trunk/public/help/ ภายใต้โฟลเดอร์ย่อยที่ชื่อตามภาษาย่อ

เป็นตัวอย่างเช่น ถ้าคุณต้องการแปลแอปพลิเคชัน Redmine เป็นภาษาฟินแลนด์ (ภาษาย่อภาษาฟินแลนด์ถูกกำหนดในทะเบียนภาษาย่อว่า "fi") คุณควรทำตามขั้นตอนต่อไปนี้:


ขั้นตอน

  • ขั้นตอนที่ 1: คัดลอกและวาง /config/locales/en.yml ไปยัง /config/locales/fi.yml
  • ขั้นตอนที่ 2: คัดลอกและวาง /public/javascripts/jstoolbar/lang/jstoolbar-en.js ไปยัง /public/javascripts/jstoolbar/lang/jstoolbar-fi.js
  • ขั้นตอนที่ 3: คัดลอกและวาง /public/help/en/* ไปยัง /public/help/fi/*
  • ขั้นตอนที่ 4: แก้ไขคีย์ general_lang_name ด้วยชื่อเต็มของภาษาใหม่ใน fi.yml (ในกรณีนี้:  general_lang_name: Finnish)
  • ขั้นตอนที่ 5: จากนั้น, ล้างแคชแอปพลิเคชัน นี้จะทำให้ภาษาใหม่ (ภาษาฟินแลนด์) สามารถใช้งานได้ในซอฟต์แวร์ Redmine (ตัวอย่างเช่น rake tmp: cache: clear)

หลังจากทำตามขั้นตอนดังกล่าว ดำเนินการต่อดังนี้:

  • ขั้นตอนที่ 6: แปลสตริงแต่ละตัวใน jstoolbar-fi.js และ fi.yml และแปลเนื้อหาของไฟล์ช่วยเหลือ 4 ไฟล์ (wiki_syntax_markdown.html ,wiki_syntax_textile.html,  wiki_syntax_detailed_markdown.html และ wiki_syntax_detailed_textile.html)
  • ขั้นตอนที่ 7: ใช้งาน rake tasks (รายละเอียดอยู่ด้านล่าง) เพื่อทดสอบการแปลของคุณ คุณต้องแก้ไขข้อผิดพลาด (หากคุณได้รับข้อผิดพลาด) ที่เกี่ยวข้องกับภาษา
  • ขั้นตอนที่ 8: ส่งแปลของคุณในรูปแบบแพทช์หรือไฟล์ธรรมดา (จะต้องเข้าสู่ระบบ) จากกล่องรายการหมวดหมู่เลือก "แปล"
  • ขั้นตอนที่ 9: สุดท้ายและสำคัญที่สุด สนุกกับงานแปลของคุณ!


การทดสอบ rake tasks:

  • หากคุณใช้เวอร์ชัน Ruby 1.9 หรือสูงกว่า:

rake locales: check_parsing_by_psych

  • บนเวอร์ชัน Ruby ทั้งหมด:

rake locales: check_interpolation

  • ทดสอบทั้งหมด (นี้เป็นทางเลือก) : rake test

โปรดทราบว่า "rake test" ใช้เวลานานมากและเรียกใช้โดยอัตโนมัติบนเซิร์ฟเวอร์ CI (Continuous Integration)


ข้อจำกัดที่มีอยู่

โปรดทราบว่ามีข้อจำกัดบางประการ

  • ไฟล์ทั้งหมดต้องเป็นรูปแบบ UTF-8 (Unicode Transformation Format 8-bit) ในสตริงที่แปล อย่าใช้เอนทิตี้ HTML (Hypertext Markup Language)
  • ตรวจสอบให้แน่ใจว่าไฟล์ของคุณไม่มีเครื่องหมายต้นแบบไบต์ (BOM) คุณสามารถลบเครื่องหมายต้นแบบไบต์ด้วยคำสั่งนี้: awk '{if(NR==1)sub(/^\xef\xbb\xbf/, "");print}' < oldfile > newfile
  • คุณควรส่งอัปเดตเฉพาะตามไฟล์แปลใหม่ (คุณสามารถค้นหาอัปเดตเหล่านี้ใน /config/locales)


การอัปเดตไฟล์ภาษา

ไฟล์ "en.yml" ทำหน้าที่เป็นไฟล์ภาษาหลัก โดยการเรียกใช้ rake locales: update คุณสามารถตรวจสอบว่ามีสตริงใหม่หรือไม่ คำสั่งนี้จะคัดลอกสตริงใหม่ไปยังไฟล์แปลอื่น (ค่าเริ่มต้นคือการแปลภาษาอังกฤ

การปรับแต่งคำศัพท์เกี่ยวกับการแปลใน Redmine

  • ตั้งค่าไดเรกทอรีที่มีอยู่ให้เป็น config/overrides/<locale> ภายในปลั๊กอิน
  • คัดลอกและวาง 000.yml ปัจจุบันไปยัง ./XXX.yml ที่นี่ "XXX" คือตัวเลขสามหลักที่กำหนดลำดับความสำคัญของคำจำกัดความของคุณ: ตัวเลขมากกว่าคือลำดับความสำคัญที่สูงกว่า แต่ควรเลี่ยงการสร้าง 999.yml นี้จะช่วยให้คุณเหลือพื้นที่มากขึ้นสำหรับการแทนที่เพิ่มเติม
  • กรองคำจำกัดความที่คุณไม่ต้องการแก้ไข ด้วยวิธีนี้ไฟล์ที่มีลำดับความสำคัญต่ำกว่าจะสามารถนำการแก้ไขไปใช้กับองค์ประกอบที่คุณไม่ต้องการแทรกแซง
  • นำคำจำกัดความที่เหลืออยู่มาใช้กับคำจำกัดความของคุณเอง


คำศัพท์ที่สนับสนุนและสามารถปรับแต่งได้ในปลั๊กอินของคุณ

  • เช่นเคย ให้ใส่ไฟล์แปลใน config/locales เพื่อให้ทำงานอย่างถูกต้องเมื่อคุณยังไม่ได้ติดตั้งปลั๊กอิน หากคุณไม่ได้ทำเช่นนั้นคุณควรระบุการติดตั้งปลั๊กอินนี้ใน init.rb หากคุณต้องการข้อมูลเพิ่มเติมโปรดตรวจสอบเอกสาร Redmine
  • คัดลอกและวางโลเคลส์ของคุณไว้ที่ config/locales
  • สำหรับทุกคำจำกัดความที่สามารถแทนที่ได้ใน 000.yml เปลี่ยนแปลงคำแปลเพื่อใช้ตัวแทนระหว่างการแทรกแทรก ตัวอย่างเช่น เมื่อคุณพิมพ์คำสั่ง คุณควรแทนคำด้วย %{issue} นอกจากนี้ เมื่อคุณพิมพ์คำสั่ง issue(s) คุณควรแทนคำด้วย %{issue_or_issues}
  • คุณสามารถสนับสนุ

ทดลองใช้ Easy Redmine ฟรี 30 วัน

คุณสมบัติครบถ้วน, ป้องกันด้วย SSL, สำรองข้อมูลประจำวัน, ในตำแหน่งที่ตั้งของคุณ