ติดตั้งและใช้งาน
Windows ติดตั้ง git bash ก่อน
windows ระบบ กรุณา คลิกที่นี่เพื่อดาวน์โหลดและติดตั้ง git bash
ก่อน
เรียกใช้การดำเนินการครั้งต่อไปใน git bash
ติดตั้ง
bash <(curl -sS https://i.i18n.site) i18
กำหนดค่าโทเค็นการแปล
เยี่ยมชม i18n.site/token คลิกเพื่อคัดลอกโทเค็น
สร้าง ~/.config/i18n.site.yml
วางเนื้อหาที่คัดลอกลงไป โดยมีเนื้อหาดังนี้:
token: YOUR_API_TOKEN
i18n.site/payBill คุณต้องผูกบัตรเครดิตในการชำระเงิน (ไม่ต้องเติมเงิน เว็บไซต์จะหักค่าธรรมเนียมตามการใช้งานโดยอัตโนมัติ ดูราคาที่หน้าแรก )
ใช้
โครงการสาธิต
โปรดดูโครงการสาธิต github.com/i18n-site/demo.i18 เพื่อเรียนรู้การกำหนดค่าการแปล i18
ผู้ใช้ในประเทศจีนสามารถโคลนได้ atomgit.com/i18n/demo.i18
หลังจากการโคลน ให้ป้อนไดเร็กทอรีและรัน i18
เพื่อทำการแปลให้เสร็จสิ้น
โครงสร้างไดเร็กทอรี
โครงสร้างไดเร็กทอรีคลังสินค้าเทมเพลตมีดังนี้
┌── .i18n
│ └── conf.yml
└── en
├── _IgnoreDemoFile.md
├── i18n.yml
└── README.md
ไฟล์สาธิตที่แปลแล้วในไดเร็กทอรี en
เป็นเพียงตัวอย่างและสามารถลบได้
เรียกใช้การแปล
ป้อนไดเร็กทอรีและรัน i18
เพื่อแปล
นอกจากการแปลแล้ว โปรแกรมจะสร้างโฟลเดอร์ .i18n/data
ด้วย โปรดเพิ่มลงในที่เก็บ
หลังจากแปลไฟล์ใหม่ ไฟล์ข้อมูลใหม่จะถูกสร้างขึ้นในไดเร็กทอรีนี้ อย่าลืมต่อท้าย git add .
ไฟล์การกำหนดค่า
.i18n/conf.yml
คือไฟล์การกำหนดค่าของเครื่องมือแปลบรรทัดคำสั่ง i18
เนื้อหามีดังนี้:
i18n:
fromTo:
en: zh ja ko de fr
# en:
ignore:
- _*
ภาษาต้นฉบับ &
ในไฟล์คอนฟิกูเรชัน รองของ fromTo
:
en
คือภาษาต้นฉบับ zh ja ko de fr
คือภาษาเป้าหมายของการแปล
รหัสภาษาดู i18n.site/i18/LANG_CODE
ตัวอย่างเช่น หากคุณต้องการแปลภาษาจีนเป็นภาษาอังกฤษ ให้เขียนบรรทัดนี้ใหม่ zh: en
หากคุณต้องการแปลเป็นภาษาที่รองรับทั้งหมด โปรดเว้นว่างไว้หลัง :
ตัวอย่างเช่น
i18n:
fromTo:
en:
คุณสามารถกำหนดค่า fromTo
ที่แตกต่างกัน : ไดเร็กทอรีย่อยที่แตกต่างกัน /
i18n:
fromTo:
en:
path:
blog:
fromTo:
zh:
blog/your_file_name.md:
fromTo:
ja:
ในตารางคอนฟิกูเรชันนี้ ภาษาต้นฉบับของการแปลแค็ตตาล็อก blog
คือ zh
และภาษาต้นฉบับของการแปลแค็ตตาล็อก blog/your_file_name.md
คือ ja
รูปภาพ/ลิงก์หลายภาษา
เมื่อ URL ในรูปภาพและลิงก์ใน replace:
และ MarkDown
(และแอตทริบิวต์ src
และ href
ของ Embedded HTML
) ได้รับการกำหนดค่าเป็น .i18n/conf.yml
ด้วยคำนำหน้านี้ รหัสภาษาต้นฉบับใน URL จะถูกแทนที่ด้วยรหัสภาษาของการแปล ( ภาษา รายการรหัส )
ตัวอย่างเช่น การกำหนดค่าของคุณจะเป็นดังนี้:
i18n:
fromTo:
fr: ko de en zh zh-TW uk ru ja
replace:
https://fcdoc.github.io/img/ : ko de uk>ru zh-TW>zh >en
replace:
คือพจนานุกรม คีย์คือคำนำหน้า URL ที่จะแทนที่ และค่าคือกฎการแทนที่
ความหมายของการแทนที่กฎ ko de uk>ru zh-TW>zh >en
ข้างต้นคือ ko de
ใช้รูปภาพของรหัสภาษาของตนเอง zh-TW
และ zh
ใช้รูปภาพ zh
, uk
ใช้รูปภาพ ru
และภาษาอื่นๆ (เช่น ja
) ใช้รูปภาพ ของ en
โดยค่าเริ่มต้น
ตัวอย่างเช่น ซอร์สไฟล์ภาษาฝรั่งเศส ( fr
) ของ MarkDown
จะเป็นดังนี้ :
![xx](//i18n-img.github.io/fr/1.avif)
<video src="https://i18n-img.github.io/fr/1.mp4"></video>
[xx](//i18n-img.github.io/fr/README.md)
<a style="color:red" href="https://i18n-img.github.io/fr/i18n.site.gz">xx</a>
ไฟล์ภาษาอังกฤษที่แปลและสร้างขึ้น ( en
) มีดังนี้ :
![xx](//i18n-img.github.io/en/1.avif)
<video src="https://i18n-img.github.io/en/1.mp4"></video>
[xx](//i18n-img.github.io/en/README.md)
<a style="color:red" href="https://i18n-img.github.io/en/i18n.site.gz">xx</a>
ในที่นี้ /en/
ในรหัสภาษาต้นฉบับจะถูกแทนที่ด้วย /zh/
ในภาษาเป้าหมาย
: ต้องมี /
ก่อนและหลังรหัสภาษาของข้อความที่ถูกแทนที่ใน URL
[!TIP]
หากกำหนดค่า - /
ใน url:
จะมีการจับคู่เฉพาะเส้นทางสัมพัทธ์เท่านั้น แต่ URL ที่ขึ้นต้นด้วย //
จะไม่ตรงกัน
หากลิงก์ของชื่อโดเมนบางลิงก์ต้องการเปลี่ยนและบางลิงก์ไม่ต้องการเปลี่ยน คุณสามารถใช้คำนำหน้าที่แตกต่างกัน เช่น [x](//x.com/en/)
และ [x](//x.com/en/)
เพื่อแยกความแตกต่างได้
ละเว้นไฟล์
ตามค่าเริ่มต้น ไฟล์ทั้งหมดที่ขึ้นต้นด้วย .md
และ .yml
ในไดเร็กทอรีภาษาต้นฉบับจะถูกแปล
หากคุณต้องการละเว้นไฟล์บางไฟล์และไม่แปลไฟล์เหล่านั้น (เช่น แบบร่างที่ยังสร้างไม่เสร็จ) คุณสามารถกำหนดค่าไฟล์นั้นด้วยฟิลด์ ignore
ignore
ใช้ไวยากรณ์ globset เหมือนกับไฟล์ .gitignore
ตัวอย่างเช่น _*
ในไฟล์การกำหนดค่าด้านบนหมายความว่าไฟล์ที่ขึ้นต้นด้วย _
จะไม่ถูกแปล
กฎการแปล
ผู้แก้ไขคำแปลไม่ควรเพิ่มหรือลบบรรทัด
การแปลสามารถแก้ไขได้ แก้ไขข้อความต้นฉบับและแปลด้วยเครื่องอีกครั้ง การแก้ไขการแปลด้วยตนเองจะไม่ถูกเขียนทับ (หากย่อหน้านี้ของข้อความต้นฉบับไม่ได้รับการแก้ไข)
[!WARN]
บรรทัดการแปลและข้อความต้นฉบับต้องสอดคล้องกัน กล่าวคือ ห้ามเพิ่มหรือลบบรรทัดเมื่อรวบรวมการแปล มิฉะนั้นจะทำให้เกิดความสับสนในแคชการแก้ไขการแปล
หากมีสิ่งผิดปกติเกิดขึ้น โปรดดู คำถามที่พบบ่อยเพื่อดูแนวทางแก้ไข
YAML
การแปล
เครื่องมือบรรทัดคำสั่งจะค้นหาไฟล์ทั้งหมดที่ลงท้ายด้วย .yml
ในไดเร็กทอรีไฟล์ภาษาต้นฉบับและแปลไฟล์เหล่านั้น
- โปรดทราบว่าส่วนต่อท้ายชื่อไฟล์ต้องเป็น
.yml
(ไม่ใช่ .yaml
)
เครื่องมือจะแปลค่าพจนานุกรมเป็น .yml
เท่านั้น ไม่ใช่คีย์พจนานุกรม
เช่น i18n/en/i18n.yml
apiToken: API Token
defaultToken: Default Token
จะถูกแปลเป็น i18n/zh/i18n.yml
apiToken: 接口令牌
defaultToken: 默认令牌
การแปล YAML
สามารถแก้ไขได้ด้วยตนเอง (แต่อย่าเพิ่มหรือลบคีย์หรือบรรทัดในการแปล)
จากการแปล YAML
คุณสามารถสร้างโซลูชันระดับสากลสำหรับภาษาการเขียนโปรแกรมต่างๆ ได้อย่างง่ายดาย
การใช้งานขั้นสูง
ไดเรกทอรีย่อยการแปล
ตราบใดที่สร้าง .i18n/conf.yml
(ไม่จำเป็นต้องเริ่มจากเทมเพลตโครงการสาธิตทุกครั้ง) i18
ก็จะทำงานได้ดี
เครื่องมือบรรทัดคำสั่งจะค้นหาการกำหนดค่า .i18n/conf.yml
รายการในไดเรกทอรีย่อยทั้งหมดและแปลการกำหนดค่าเหล่านั้น
โปรเจ็กต์ที่ใช้สถาปัตยกรรม monorepo สามารถแบ่งไฟล์ภาษาออกเป็นไดเร็กทอรีย่อยได้
ไดเร็กทอรีการติดตั้งแบบกำหนดเอง
มันจะถูกติดตั้งเป็น /usr/local/bin
ตามค่าเริ่มต้น
หาก /usr/local/bin
ไม่มีสิทธิ์ในการเขียน ระบบจะติดตั้งเป็น ~/.bin
การตั้งค่าตัวแปรสภาพแวดล้อม TO
สามารถกำหนดไดเร็กทอรีการติดตั้งได้ เช่น :
TO=/bin sudo bash <(curl -sS https://i.i18n.site) i18