ฉันได้เขียนตัวบ่งชี้ Python3 ที่โทรfortune
และจับเอาท์พุทเพื่อแสดงในการแจ้งเตือนบนหน้าจอ
โชคชะตาบางอย่างมีช่องสี่เหลี่ยมที่มีเลขฐานสิบหกเมื่อสัญลักษณ์ที่เกี่ยวข้องไม่มีอยู่ในแบบอักษรปัจจุบัน แต่ละตารางเป็นตัวแทนของจุดรหัส Unicode เลขฐานสิบหกสำหรับสัญลักษณ์ที่หายไป
ฉันต้องการลบข้อความเลขฐานสิบหกก่อนที่จะแสดงต่อผู้ใช้ ฉันหวังว่าจะได้พบ Python API ซึ่งจะให้ฉันตรวจสอบข้อความตัวอักษรต่ออักขระเพื่อกำหนดสิ่งที่คล้ายchar.isValidCodePoint()
หรือคล้ายกัน แต่ฉันไม่พบเช่นนั้น
ผมพบว่าวิธีการแก้ปัญหาที่เป็นไปได้ว่าฉันอยากจะตรวจสอบที่นี่แต่หลังจากติดตั้งfonttools
ผ่าน terminal, fonttools/fontTools
โปรแกรมหลามของฉันไม่สามารถนำเข้า
ความคิดใด ๆ - ไม่ว่าจะใช้ Python API หรือเรียกใช้เทอร์มินัล
อัปเดต # 1: ฉันได้ตระหนักตั้งแต่fonttools
โค้ดตัวอย่างจากลิงก์ด้านบนจะไม่ทำงานสำหรับฉันเนื่องจากเป็น Python2 ฉันคิดว่าถ้าfonttools
สามารถใช้อย่างใดฉันสามารถเรียกใช้ Python2 ล่ามจากสคริปต์ Python3 ของฉัน
ปรับปรุง # 2: หลังจากที่จำนวนมากของการอ่าน (ดูอ้างอิงด้านล่าง) ฉันได้พบตั้งแต่fc-match
แต่มันไม่สามารถเสมอไม่ซ้ำกันระบุตัวอักษรในการใช้งาน ฉันได้รับแบบอักษรปัจจุบันใน Python:
from gi.repository import Gio
fontName = Gio.Settings( "org.gnome.desktop.interface" ).get_string( "font-name" )
Ubuntu 11
ที่เกิดขึ้นใน ผ่านผลนี้ไปพร้อมกับตัวอักษรเลขฐานสิบหกที่ฉันได้รับรายชื่อของตัวอักษรรวมทั้งpango-view
Ubuntu
สำหรับความคิดของฉันหากตัวอักษรไม่ได้แสดงผลโดยแบบอักษรแบบอักษรไม่ควรปรากฏในผลลัพธ์จากpango-view
!
อ้างอิง: