การพิมพ์ด้วยเสียง
ปุ่ม push-to-talk การกดค้างเทียบกับการแตะ แถบ pill แสดงอะไร ข้อความถูกแทรกอย่างไร และ Keebye ปฏิเสธที่จะเขียนตรงไหนบ้าง
กดปุ่ม push-to-talk พูด แล้วปล่อย การถอดเสียงจะทำกับคำพูดทั้งช่วงหลังจากคุณปล่อยปุ่ม และข้อความจะถูกแทรกลงในแอปที่อยู่หน้าสุด
ปุ่ม push-to-talk
Settings › Push-to-talk hotkey: "Hold this key to dictate; release to insert." การเปลี่ยนแปลงมีผลทันที
- Fn / Globe
- Left ⌘
- Right ⌘ (ค่าเริ่มต้น)
- Left ⌥
- Right ⌥
กดค้างหรือแตะ
- กดปุ่มแล้วเริ่มอัดเสียงทันที
- ปล่อยหลังผ่านไป 400 ms ขึ้นไป: เป็นแบบกดค้างเพื่อพูด การอัดจะหยุดและข้อความถูกแทรก
- ปล่อยก่อนครบ 400 ms: เป็นการแตะ การอัดยังทำงานต่อ แตะครั้งที่สองเพื่อหยุดและแทรกข้อความ
- Esc ยกเลิกการอัดที่กำลังทำอยู่ จะไม่มีข้อความใดถูกแทรก
- คำพูดหนึ่งช่วงจำกัดไว้ที่ 300 วินาที (5 นาที) จากนั้นจะหยุดและแทรกข้อความอัตโนมัติ
แถบ pill
แถบ pill เป็นแผงเล็ก ๆ ที่มองเห็นเสมอ คลิกทะลุได้ อยู่กึ่งกลางด้านล่างของจอหลัก สูงจากขอบล่าง 96 pt มันแสดงบนทุก Spaces และไม่เคยดึงโฟกัส
- สถานะพัก: เป็นรูปไมโครโฟน
- "Downloading speech model… NN%" ระหว่างดาวน์โหลดโมเดล หรือ "Model download failed — reopen Keebye to retry"
- "Listening…" → "Transcribing…" → "Inserting…" ระหว่างการพิมพ์ด้วยเสียง
- ข้อความสั้น ๆ ประมาณ 2.6 วินาที: "Couldn't insert: <reason>", "Text left on clipboard — paste manually" หรือ "Dictation paused: secure input on (<App>)"
ข้อความถูกแทรกอย่างไร
Paste (fast) เป็นค่าเริ่มต้น: Keebye บันทึกภาพคลิปบอร์ดของคุณไว้ เขียนข้อความถอดเสียงเป็นรายการ pasteboard ชั่วคราวที่ตัวจัดการคลิปบอร์ดจะข้ามไป จำลองการกด ⌘V แล้วหลังจาก 250 ms ก็คืนคลิปบอร์ดเดิมของคุณหาก Keebye ยังเป็นเจ้าของ pasteboard อยู่ ตัวเลือก "Restore clipboard after paste" เปิดไว้ตามค่าเริ่มต้น
ใน Terminal.app, iTerm2, Warp, WezTerm และ kitty การวางจะถูกแบ่งเป็นก้อนละไม่เกิน 2000 bytes เว้นระยะห่าง 50 ms
Typing (terminals / SSH / any layout): Keebye ส่งการกดแป้น Unicode เป็นก้อนละ 16 อักขระ ห่างกัน 4 ms โดยไม่แตะคลิปบอร์ดเลย วิธีนี้ไม่ขึ้นกับผังแป้นพิมพ์และใช้ได้ผ่าน SSH และ tmux หากการพิมพ์ล้มเหลว ข้อความจะไปอยู่บนคลิปบอร์ดและแถบ pill จะแสดง "Text left on clipboard — paste manually"
ช่องรหัสผ่านและ secure input
หาก secure input เปิดอยู่ หรือองค์ประกอบที่โฟกัสอยู่เป็นช่องรหัสผ่าน Keebye จะไม่เขียนอะไรลงคลิปบอร์ดเลย และจะแสดง "Couldn't insert: Secure input is active (<App>) — dictation is blocked" หรือ "Couldn't insert: A password field is focused — dictation is blocked" การพิมพ์ด้วยเสียงแบบนี้จะไม่ถูกบันทึกลงประวัติเลย นอกจากนี้การตรวจทุก 5 วินาทีจะเตือนว่า "Dictation paused: secure input on (<App>)" ตราบใดที่ secure input ยังเปิดอยู่
ไมโครโฟนที่เปิดค้างไว้
สตรีมไมโครโฟนเริ่มทำงานตอนที่คุณพิมพ์ด้วยเสียงครั้งแรก แล้วทำงานต่อไปตลอดอายุการเปิดแอป ไฟแสดงสถานะไมโครโฟนของ macOS จึงติดอยู่หลังการใช้งานครั้งแรก ระบบจะเติมเสียงย้อนหลังแบบต่อเนื่อง 500 ms ไว้ที่ต้นของคำพูดแต่ละช่วง การพิมพ์ด้วยเสียงครั้งแรกของแต่ละรอบยังอาจต้องรอเวลาเริ่มสตรีม และคำที่พูดก่อนบัฟเฟอร์ 500 ms นั้นยังอาจขาดหายได้ เสียงถูกแปลงอัตราสุ่มเป็น 16 kHz โมโน และระบบตรวจพบการเปลี่ยนอุปกรณ์ภายในหนึ่งวินาที