- เอกสารภาษาทิเบตมีลักษณะไม่สอดคล้องกับสมมติฐานเรื่องย่อหน้าสั้น ๆ ของโปรแกรมประมวลผลคำทั่วไป จึงเผชิญข้อจำกัดเชิงปฏิบัติใน เครื่องมือแก้ไขและเผยแพร่ดิจิทัล มาเป็นเวลานาน
- BDRC ผลักดันการปรับปรุงเทคโนโลยีอย่างต่อเนื่องเพื่อให้ภาษาทิเบตได้รับการรองรับอย่างเหมาะสมในสภาพแวดล้อมดิจิทัล และครั้งนี้ความก้าวหน้าสำคัญคือการรองรับย่อหน้าที่ยาวมากใน LibreOffice
- การไหลของข้อความยาวโดยไม่มีการขึ้นบรรทัดใหม่แบบบังคับและมีช่องว่างน้อย แตกต่างจากแนวทางประมวลผลเอกสารแบบภาษาอังกฤษ จึงมักเกิดปัญหาด้านประสิทธิภาพเมื่อต้องเปิดหรือแปลงเอกสารภาษาทิเบตขนาดยาว
- ด้วยการแก้ไขของ Jonathan Clark ตอนนี้ข้อความที่เป็น “ย่อหน้า” เดียวความยาว 153 หน้าอย่าง Yishindzö ของ Longchenpa ก็สามารถเปิดและแก้ไขได้อย่างรวดเร็ว และการแปลง RDF เป็น PDF ที่เดิม ค้างเกิน 45 นาที ก็เสร็จใน 13 วินาที
- การรองรับย่อหน้าที่ยาวมากถูกรวมเข้าใน LibreOffice 24.8.2 ที่เผยแพร่เมื่อวันที่ 27 กันยายน 2024 ทำให้ผู้ใช้ภาษาทิเบตสามารถใช้เครื่องมือจัดพิมพ์โอเพนซอร์สฟรีได้อย่างเป็นรูปธรรมมากขึ้น
เหตุใดการรองรับภาษาทิเบตในโลกดิจิทัลจึงสำคัญ
- หนึ่งในภารกิจสำคัญของ BDRC คือการสร้างนวัตกรรมทางเทคโนโลยีเพื่อทำให้ภาษาทิเบตเป็น พลเมืองชั้นหนึ่ง ของโลกดิจิทัล
- ชาวทิเบตทุ่มเทพลังงานและทรัพยากรอย่างมากให้กับการเขียน นวัตกรรม และเทคโนโลยีมาตั้งแต่การรับพุทธศาสนาในศตวรรษที่ 8
- อักษรทิเบตและภาษาคลาสสิกถูกสร้างขึ้นเพื่อแปลคัมภีร์พุทธภาษาสันสกฤตและภาษาจีนให้เป็นภาษาที่ชาวทิเบตเข้าใจได้
- ในศตวรรษที่ 14 มีการนำ การพิมพ์บล็อกไม้ มาใช้อย่างแพร่หลายเพื่อผลิตฉบับแปลคัมภีร์และเอกสารพุทธภาษาทิเบตของผู้เขียนจากแถบหิมาลัยจำนวนหลายพันเล่มในวงกว้าง
- การมาถึงของฟอนต์คอมพิวเตอร์ภาษาทิเบตและการบรรจุใน Unicode Standard ถือเป็นก้าวกระโดดสำคัญของการผนวกภาษาทิเบตเข้าสู่โลกดิจิทัล
โครงสร้างเอกสารภาษาทิเบตที่ไม่เข้ากับโปรแกรมประมวลผลคำทั่วไป
- เอกสารภาษาทิเบตยังมีลักษณะเฉพาะที่เครื่องมือและแอปพลิเคชันต่าง ๆ ยังรองรับได้ไม่เพียงพอ
- โดยเฉพาะแนวคิดเรื่อง ย่อหน้า แบบภาษายุโรปนั้นใช้ไม่ได้ในลักษณะเดียวกัน
- ข้อความภาษาทิเบตมักต้องถูกจัดการเป็นกระแสข้อความยาวต่อเนื่องโดยไม่มีการขึ้นบรรทัดใหม่แบบบังคับ
- กระแสข้อความนี้บางครั้งอาจยาวหลายร้อยหน้าหรือหลายพันหน้า
- โปรแกรมประมวลผลคำทั่วไปเดิมถูกออกแบบโดยคำนึงถึงข้อความภาษาอังกฤษเป็นหลัก
- ตั้งอยู่บนสมมติฐานว่าย่อหน้าค่อนข้างสั้น
- และสมมติว่ามีช่องว่างระหว่างคำซึ่งสามารถปรับความกว้างได้อย่างยืดหยุ่น
- เอกสารภาษาทิเบตมีความยาวย่อหน้าแทบไม่จำกัดและมีช่องว่างน้อยมาก จึงขัดกับสมมติฐานเหล่านี้
- ผลคือเมื่อเปิดข้อความภาษาทิเบตที่ยาว โปรแกรมประมวลผลคำอาจช้ามากหรือถึงขั้นทำงานไม่ได้ ทำให้ใช้งานกับโครงการจัดพิมพ์จริงจังได้ยาก
การแก้ไขใน LibreOffice และการเปลี่ยนแปลงด้านประสิทธิภาพจริง
- LibreOffice เป็นหนึ่งใน โปรแกรมประมวลผลคำโอเพนซอร์ส ที่พัฒนาเต็มที่และมีความเสถียร โดยได้รับแรงบันดาลใจจาก MS Word และใช้งานได้ฟรีบนหลายแพลตฟอร์มรวมถึง Linux
- ซอฟต์แวร์เชิงพาณิชย์อย่าง Word หรือ InDesign สามารถจัดการข้อความภาษาทิเบตที่ยาวได้ แต่มีค่าใช้จ่ายสูง และในหลายพื้นที่ของเอเชียก็มักมีการใช้งานเวอร์ชันละเมิดลิขสิทธิ์
- ตราบใดที่ LibreOffice ยังจัดการย่อหน้ายาวไม่ได้ ก็แทบไม่มีเครื่องมือฟรีสำหรับงานจัดพิมพ์ภาษาทิเบตเลย
- Elie Roux, CTO ของ BDRC, รายงานปัญหานี้ต่อ LibreOffice ตั้งแต่ปี 2015
- การเข้าไปแก้ไขโค้ดของ LibreOffice เป็นโครงการขนาดใหญ่ที่ต้องใช้การวิจัยและพัฒนาหลายสัปดาห์ จึงไม่มีความคืบหน้าอยู่ช่วงหนึ่ง
- เมื่อไม่กี่สัปดาห์ก่อน Jonathan Clark ได้รับงานนี้ไปและแก้ไขได้สำเร็จ
- Yishindzö ของ Longchenpa เป็นข้อความยาวที่ประกอบด้วย “ย่อหน้า” เดียวความยาว 153 หน้า
- ตอนนี้สามารถเปิดและแก้ไขได้อย่างรวดเร็วใน LibreOffice
- ข้อความดังกล่าวดูได้ที่ yid bzhin mdzod ในคลังข้อมูลของ BDRC
- งานแปลงไฟล์ RDF ของข้อความนี้เป็น PDF ก่อนหน้านี้ยังค้างอยู่แม้ผ่านไป 45 นาที แต่ตอนนี้เสร็จสมบูรณ์ใน 13 วินาที
- การรองรับย่อหน้าที่ยาวมากถูกรวมเข้าใน LibreOffice 24.8.2 ที่เผยแพร่เมื่อวันที่ 27 กันยายน 2024
- BDRC ขอรับฟีดแบ็กเกี่ยวกับข้อบกพร่องและประสบการณ์ใช้งานในซอฟต์แวร์แก้ไขภาษาทิเบต และต้องการเดินหน้าปรับปรุงเครื่องมือดิจิทัลภาษาทิเบตต่อไปผ่านความร่วมมือกับชุมชน
2 ความคิดเห็น
ความคิดเห็นจาก Hacker News
Jim Woolsey ฮิปปี้จาก New Hope รัฐ Pennsylvania และแฮกเกอร์คอมพิวเตอร์ยุคแรก ๆ เป็นหนึ่งในบุคคลสำคัญช่วงแรกของการทำให้ภาษาทิเบตเป็นดิจิทัล
บทสัมภาษณ์ปี 1993 https://www.mcall.com/1993/10/08/new-hope-man-computer-guru-... เป็นไทม์แคปซูลที่น่าสนใจ และคุ้มค่าแก่การอ่านในตัวมันเอง
เขาเป็นคนรู้จักของครอบครัว และผมชื่นชมความทุ่มเทอันไม่เหมือนใครของเขาต่องานที่สำคัญแต่ถูกประเมินค่าต่ำนี้มาโดยตลอด
“เอกสารมีพารากราฟที่สั้นพอประมาณ” ก็น่าจะต้องใส่ไว้ในรายการ ความเชื่อผิด ๆ ที่โปรแกรมเมอร์มีเกี่ยวกับข้อความ ด้วย
OpenOffice เคยมี hard limit ที่ 65,534 ตัวอักษรต่อพารากราฟ และต้องใช้ความพยายามไม่น้อยกว่าที่ LibreOffice จะเอาข้อจำกัดนี้ออกได้: https://bugs.documentfoundation.org/show_bug.cgi?id=30668
ทิศทางของข้อความ เครื่องหมายกำกับเสียง และเครื่องหมายวรรคตอนนั้นนึกถึงได้อยู่แล้ว แต่เคยคิดว่า การแบ่งเป็นก้อน ๆ เป็นสิ่งสากล
แต่ไม่ใช่: “แนวคิดด้านการจัดพิมพ์เรื่องพารากราฟในภาษายุโรปไม่ได้มีอยู่จริงในข้อความภาษาทิเบตในลักษณะเดียวกัน ผลก็คือ ข้อความภาษาทิเบตมักต้องถูกจัดการเป็นกระแสข้อความยาวต่อเนื่องที่ไม่ถูกตัดโดยการขึ้นบรรทัดใหม่แบบบังคับ และบางครั้งยาวถึงหลายร้อยหรือหลายพันหน้า”
'\n'ตัวถัดไป ก่อนจะแพ้ให้กับภาษาทิเบตพูดด้วยความเคารพ ความเป็นนักนวัตกรรมของชาวทิเบตก็ได้รับการยอมรับใน The Nine Billion Names of God ด้วย: https://en.wikipedia.org/wiki/The_Nine_Billion_Names_of_God
และนวัตกรรมของพวกเขาก็กว้างไกลกว่าหนังสือเล่มนี้ หรืออย่างน้อยก็กว้างกว่าเรื่องย่อใน Wikipedia มาก
ผมชอบถ้อยคำอย่าง “พารากราฟที่ค่อนข้างสั้น อาจยาวได้ถึงไม่กี่หน้า” เพราะมันแสดงให้เห็นว่าผมมองโลกจากมุมเฉพาะแค่ไหน
ผมคิดว่าตัวเองยังไม่เคยเขียนพารากราฟยาวหนึ่งหน้าด้วยซ้ำ
ตัวอย่างที่ใกล้เคียงที่สุดที่นึกออกคือ นักเขียนคนหนึ่งซึ่งผมจำชื่อไม่ได้ เขียน กระแสสำนึก ยาวหลายหน้าโดยไม่มีพารากราฟและเครื่องหมายวรรคตอน
เช่น James Joyce และ David Foster Wallace
งานนี้ดำเนินมานานพอสมควรแล้ว
มี HyperCard stack เก่า ๆ สำหรับสอนการออกเสียงภาษาทิเบตด้วย แถมมีเสียง 16 บิต: https://hcsimulator.com/Learn-Tibetan
งานเขียนแบบกระแสสำนึกหลายแบบหรือสำนวนที่เกี่ยวข้องก็หลีกเลี่ยงพารากราฟ และบางครั้งหลีกเลี่ยงโครงสร้างดั้งเดิมอื่น ๆ ด้วย เลยค่อนข้างแปลกใจนิดหน่อยที่โปรแกรมประมวลผลคำมีปัญหากับ พารากราฟยาว ๆ
แม้จะไม่ใช่เรื่องพบบ่อยมาก แต่ก็ไม่ใช่ว่าไม่มีเลย และผมคิดว่านักเขียนกับสำนักพิมพ์ก็คงจัดการกันได้ไม่ทางใดก็ทางหนึ่ง
ตัวอย่างสุ่มจากช่วงหลัง ๆ: https://en.wikipedia.org/wiki/Ducks,_Newburyport
อยากรู้รายละเอียดว่าเขารองรับพารากราฟยาวมาก ๆ หรือแก้ปัญหาการขาดการรองรับนั้นอย่างไร
มีใครรู้ไหม?
เป็นการเปลี่ยนแปลงที่ค่อนข้างสั้น โดยใช้แคชเพื่อลดผลกระทบแบบ O(n^2)
การเปลี่ยนแปลงนี้รวมถึงการปรับปรุงความสามารถในการขยายตัวสำหรับเอกสารที่มีพารากราฟขนาดใหญ่มาก
โดยลดขนาด layout context เพื่อคำนึงถึงอักขระควบคุม LF และเปลี่ยนจากกรณีที่ VCL เรียก
vcl::ScriptRun::next()แบบ O(n^2) เพราะรูปแบบการเข้าถึงทั่วไปในระหว่างการจัดวางพารากราฟ มาใช้แคช LRU แบบโกลบอลที่มีอยู่เดิมแทน จึงหลีกเลี่ยง overhead ได้มากผมเข้าใจว่า Bengali และ Assamese ใช้ อักษรทิเบต มีใครรู้ไหมว่ามันคล้ายกับอักษรที่ชาวทิเบตใช้เขียนภาษาของตนเองมากแค่ไหน?
Bengali และ Assamese อยู่ในตระกูล Indo-Aryan ส่วนภาษาทิเบตอยู่ในตระกูล Sino-Tibetan ซึ่งเป็นอีกตระกูลหนึ่งโดยสิ้นเชิง
ในฐานะผู้พูด Bengali ตอนที่ไป Bhutan ซึ่งใช้ภาษาที่ว่ากันว่าเข้าใจกับภาษาทิเบตได้ร่วมกัน 50% ผมฟังไม่เข้าใจเลย
ผมคิดว่าน่าจะมีคำยืมจากพุทธศาสนาพอสมควร แต่แปลกใจที่แม้แต่คำอย่าง dharma, karma ก็ฟังดูต่างไปอย่างสิ้นเชิงในภาษาทิเบต
https://en.wikipedia.org/wiki/Tibetan_script
ภาษาเป็นสิ่งที่น่าสนใจจริง ๆ
บางภาษาก็เรียนง่ายและใช้เป็นสื่อกลางในการสื่อสารข้ามพื้นที่กว้าง ๆ ได้ ขณะที่บางภาษายากต่อการเรียนรู้ แต่ช่วยให้สร้างโครงสร้างและความคิดที่ซับซ้อนมากได้ และถ่ายทอดสิ่งเหล่านั้นระหว่างผู้พูดได้
ภาษาทิเบตอยู่ตรงไหนของสเปกตรัมนี้กันนะ?
หัวข้อที่มีความเป็นเทคนิคสูงก็มักจะมีศัพท์เฉพาะทางเทคนิคสูงตามไปด้วย
แต่ผมไม่มั่นใจว่าปริมาณนัยละเอียดอ่อนที่ภาษาหนึ่งมี จะเกี่ยวข้องกับความซับซ้อนของความคิดที่สามารถแสดงออกด้วยภาษานั้นหรือไม่
ผมคือ Eyal อาสาสมัครของโครงการ LibreOffice และทำงานด้านการประกันคุณภาพเกี่ยวกับอักษรที่เขียนจากขวาไปซ้ายและสคริปต์ การจัดวางอักขระซับซ้อน อยู่มาก
ขอบคุณ thunderbong3 ที่นำลิงก์บทความนี้มาโพสต์ และขอขอบคุณอย่างจริงใจต่อ Jonathan Clark นักพัฒนาคนใหม่ของ The Document Foundation ที่รับผิดชอบ RTL-CTL-CJK ซึ่งเป็นผู้ปรับปรุงประสิทธิภาพภาษาทิเบต
บั๊กส่วนใหญ่ที่ผมพบและรายงานใน LibreOffice เป็นปัญหาทั่วไปที่ไม่ได้จำกัดอยู่กับระบบอักษรใดระบบหนึ่ง
ตัวอย่างเช่น โค้ดที่ลืมไปว่าเนื้อหาอาจเขียนจากขวาไปซ้ายได้ ก็จะทำงานผิดพลาดในกรณีนั้น
ในบรรดาบั๊กเฉพาะระบบอักษร จำนวนมากเกี่ยวข้องกับอักษร Arabic ซึ่งใช้กันแพร่หลายที่สุด และยังใช้ในภาษา Farsi, Urdu, Javanese เป็นต้นด้วย
ถึงอย่างนั้น ก็ยังมีประเด็นเกี่ยวกับระบบอักษรที่ใช้แพร่หลายน้อยกว่าอย่าง Tibetan หรือ Mongolian เช่นกัน: https://bugs.documentfoundation.org/show_bug.cgi?id=115607
เมตาบั๊กนี้ติดตามประเด็นของ Mongolian, Tibetan, Uyghur, Zhuang, Kazak, Xibo, Dai, Yi, Miao, Jingpo, Lisu, Lahu, Wa และอื่น ๆ
เราไม่อาจรู้ได้ว่าปัญหาเฉพาะของภาษาเหล่านี้มีน้อยจริง ๆ หรือเป็นเพราะมีการใช้งานไม่มาก และผู้ใช้ไม่มีแรงจูงใจมากพอที่จะส่งบั๊ก
ถึงอย่างนั้น อย่างที่การแก้ไขล่าสุดของ Jonathan แสดงให้เห็น เมื่อมีเวลาของนักพัฒนาแล้ว ก็มีความสนใจที่จะจัดการเรื่องนี้อย่างชัดเจน
หากใครสนใจ ความเป็นธรรมในการแก้ไขเอกสาร ระหว่างระบบอักษรกับประเทศและวัฒนธรรมเหล่านี้ ก็อยากให้ลองใช้ LibreOffice ในภาษาที่ตนรู้ และถ้าพบบั๊กก็ช่วยส่งขึ้น BugZilla: https://bugs.documentfoundation.org/
ขอให้พิจารณาสนับสนุนทางการเงินแก่ The Document Foundation ซึ่งดูแลโครงการ LibreOffice ด้วย: https://www.libreoffice.org/donate/
เราเป็นหนึ่งในโครงการโอเพนซอร์สเสรีขนาดใหญ่ของโลก มีผู้ใช้ประจำหลายสิบล้านคน หรืออาจมากกว่า 100 ล้านคน และมีคณะกรรมการจากหลายสิบประเทศ
แต่ไม่มีบริษัทขนาดใหญ่ใดลงทุนเงินหรือเวลาอย่างมากในโครงการนี้
แม้จะมีบริษัทเชิงพาณิชย์บางรายอย่าง Collabora และ Allotropia ที่ช่วยสนับสนุน แต่ปัญหาพื้นฐานจำนวนมากก็ไม่ได้ใกล้เคียงกับความต้องการของลูกค้าพวกเขาพอ
ดังนั้นเราจึงตัดสินใจจ้าง Jonathan โดยตรงเพื่อเสริมการรองรับ RTL-CTL-CJK และงานเช่นนี้เกิดขึ้นได้ด้วยเงินบริจาคจากผู้ใช้รายบุคคล
ถ้าไม่มีการเว้นวรรคในภาษาเกาหลี ก็คงลำบากแย่เลยครับ