Skip to content

v3.3.2

Choose a tag to compare

@yintzuyuan yintzuyuan released this 13 Sep 18:42
· 7 commits to main since this release
35befd3

🚀 NineBoxView v3.3.2 重大更新

✨ 核心改進

🏗️ 現代化架構遷移

  • 15個專業模組: 採用 DrawBot 模式的模組化架構 (Document/Window/UI/Core/Data)
  • 平面座標系統: 0-8 直觀座標管理,替代原複雜三層架構
  • 高穩定性: 符合 Glyphs 官方推薦的架構模式,大幅提升可維護性

🌍 多國語言系統重構

  • 集中化翻譯管理: 重構為 localization.py 模組,統一管理所有 UI 文字
  • 5語言完整支援: 英文、繁體中文、簡體中文、日文、韓文
  • Glyphs API 整合: 使用官方 Glyphs.localize() API 實現自動語言切換

⚡ 三層即時重繪系統

  • 三層資料架構: base_glyphs (即時) → base_arrangement (參考) → lock_inputs (鎖定)
  • 中央格零延遲: 切換或編輯字符時即時響應
  • 完整即時體驗: 中央格與周圍格同步更新

🖥️ 分頁層級主題監測

  • 精準主題偵測: 偵測當前編輯分頁的主題設定,完全同步工作區顏色
  • 官方建議 API: 採用 Font.currentTab.previewView().setBlack_() 確保穩定性
  • 智慧復原機制: 多層級偵測器,無法偵測時優雅回復備用方案

🔧 功能增強

🔍 統一字符辨識系統

  • InputRecognitionService: 統一處理所有字符輸入
  • 完整字符支援: CJK字元、Nice Names、Unicode Names 全面支援
  • 智慧鎖定輸入: 精準辨識空格分隔的多個字符或名稱

🗂️ UI 與控制增強

  • 可收合控制面板: 主預覽視窗可隱藏控制面板,提供沉浸式體驗
  • 8個鎖定輸入框: 精確控制九宮格周圍位置的參考字符
  • 官方字符選擇器: 整合 PickGlyphs API,支援搜尋與多選
  • 增強右鍵選單: 新增插入字符到分頁、在新分頁開啟等實用功能

📊 效能與穩定性

  • Light Table 整合: 支援版本比對功能,具備優雅降級機制
  • 備份圖層支援: 即時預覽不同主板和備份圖層內容
  • TDD 測試驅動: 完整單元測試套件 (test_localization.py 等)
  • 減法重構原則: 消除重複程式碼,提升穩定性

🐛 問題修正

  • 輸入防護機制: 修正無效字符與空輸入的處理一致性
  • 即時重繪行為: 確保預覽更新的穩定性
  • 外掛資訊更新: 移除開發標記,更新產品連結

🔄 開發歷程

此版本經歷從 v3.0.0 到 v3.3.2 的漸進式發展,跨越兩個儲存庫,結合社群回饋和現代化 AI 協作開發模式,提供更專注、更高效、更國際化的預覽體驗。

📋 系統需求

  • Glyphs 3.2.3 或更高版本
  • 部分功能 (如 PickGlyphs API) 需要 Glyphs 3.2+

🙏 致謝

感謝所有提供回饋的設計師,以及 Aaron Bell (RotateView)、大曲都市 (Waterfall)、Light Table 作者、Mark2Mark (Variable Font Preview) 等開發者的啟發與協助。


🤖 Generated with Claude Code