เรื่องการแปลงเสียงเป็นข้อความใน VS Code เปลี่ยนไปแล้ว และคำแนะนำส่วนใหญ่ที่หาเจอบนอินเทอร์เน็ตก็ล้าสมัย ตอนนี้การพิมพ์ด้วยเสียงติดมากับตัวโปรแกรมแทนที่จะต้องลงส่วนขยาย มันทำงานในเครื่อง และเปิดใช้เป็นค่าเริ่มต้นเมื่อเปิดใช้ฟีเจอร์ AI แต่มันก็ไม่ได้ครอบคลุมทุกแพลตฟอร์ม และหยุดอยู่แค่ขอบเขตของตัวแก้ไขโค้ด

นี่คือสถานะปัจจุบันและวิธีเลือกระหว่างสามแนวทาง

ทางเลือกที่ 1: การพิมพ์ด้วยเสียงที่ติดมากับ VS Code

การตั้งค่า dictation.enabled เป็นตัวควบคุม และเปิดไว้เป็นค่าเริ่มต้น มันใช้โมเดลที่ทำงานในเครื่องชื่อ nemotron-3.5-asr-streaming-0.6b เสียงจึงอยู่บนเครื่องของคุณ

ปุ่มลัด: ⌥⌘V เริ่มการพิมพ์ด้วยเสียงในตัวแก้ไขโค้ดบน macOS (Ctrl+Alt+V บน Windows และ Linux) ส่วน ⌘I ใช้พูดลงในแชต (ที่อื่นใช้ Ctrl+I) ถ้ากดปุ่มเริ่มค้างไว้จะได้โหมดวิทยุสื่อสาร คือระบบจะฟังต่อเนื่องจนกว่าคุณจะปล่อย แล้วจึงส่งคำขอไปเอง

จุดที่ต้องระวังคือการรองรับแพลตฟอร์ม:

รองรับ ไม่รองรับ
macOS บน Apple Silicon Mac ที่ใช้ชิป Intel
Windows x64 และ Arm64 VS Code บนเว็บเบราว์เซอร์
Linux x64/Arm64 ที่ใช้ glibc 2.34 ขึ้นไป Linux ที่ใช้ musl (Alpine)
พื้นที่ทำงานระยะไกล ระบบ 32 บิต และ Arm32

ถ้าคุณใช้ Mac ที่เป็นชิป Intel จะไม่มีการพิมพ์ด้วยเสียงแบบติดมากับตัวโปรแกรมให้ใช้

มีข้อควรรู้เรื่องความเป็นส่วนตัวอยู่ข้อหนึ่ง ถ้าคุณเปิด dictation.experimental.llmCleanup VS Code จะส่งข้อความถอดความ ซึ่งไม่ใช่ตัวไฟล์เสียง ไปยังเซิร์ฟเวอร์ของ Copilot เพื่อจัดรูปแบบ ตัวเสียงยังอยู่บนเครื่องไม่ว่ากรณีใด แต่ขั้นตอนการขัดเกลาไม่ใช่ ถ้าเรื่องนี้สำคัญกับคุณ ก็ปิดมันไว้

เทอร์มินัลได้รับการดูแลเป็นพิเศษ คือระบบรู้จำจะปรับให้เข้ากับรูปแบบคำสั่ง และ accessibility.voice.speechTimeout จะหยุดให้อัตโนมัติเมื่อเงียบไประยะหนึ่ง

ทางเลือกที่ 2: ส่วนขยาย VS Code Speech

ส่วนขยายของ Microsoft ตัวนี้มีมาก่อนการรองรับแบบติดมากับตัวโปรแกรม และยังเติมช่องว่างอยู่สองข้อ

มันครอบคลุมแพลตฟอร์มที่ตัวติดมากับโปรแกรมครอบคลุมไม่ถึง ได้แก่ Mac ที่ใช้ Intel, VS Code บนเว็บ และ Linux ที่ใช้ musl ถ้าฮาร์ดแวร์ของคุณรันโมเดลที่ติดมากับโปรแกรมไม่ได้ นี่คือทางของคุณ

มันให้ "Hey Code" การปลุกด้วยคำสั่งเสียงเพื่อเริ่มเซสชัน Copilot Chat มีเฉพาะในส่วนขยายนี้ และมันเข้าใจไวยากรณ์ของแชต คำว่า "at workspace" จึงกลายเป็น @workspace และ "slash fix" กลายเป็น /fix ถ้าคุณชอบสั่งงาน GitHub Copilot Chat ด้วยเสียงล้วน ๆ นี่คือสิ่งที่ตัวติดมากับโปรแกรมไม่มีให้

ส่วนขยายนี้ใช้ฟรี Microsoft เป็นผู้ดูแล และการรองรับแต่ละภาษาจะแยกออกมาเป็นส่วนขยายเสริมของตัวเอง

ทางเลือกที่ 3: การพิมพ์ด้วยเสียงทั่วทั้งระบบ

สองทางเลือกข้างต้นจำกัดอยู่แค่ในตัวแก้ไขโค้ด ขอบเขตนี้เองคือเหตุผลทั้งหมดของแนวทางที่สาม และมันจะสำคัญหรือไม่ก็ขึ้นอยู่กับว่าคำพูดของคุณไปลงเอยที่ไหนจริง ๆ

วันทำงานปกติไม่ได้มีแค่โค้ดใน VS Code แต่ยังต้องเขียนคำอธิบาย PR บน GitHub ความเห็นตอนรีวิว กระทู้ใน Slack เรื่องแนวทางที่จะใช้ ตั๋วงาน เอกสารออกแบบ ข้อความคอมมิต และอีเมลถึงคนที่รอคุณอยู่ การพิมพ์ด้วยเสียงของ VS Code ครอบคลุมแค่หนึ่งในนั้นเท่านั้น ที่เหลืออยู่ในเบราว์เซอร์กับแอปแชต

เครื่องมือแบบทั้งระบบทำงานได้ในทุกที่เหล่านั้น ด้วยปุ่มลัดเดียวและพฤติกรรมชุดเดียว นั่นคือจุดขายของ Vext คือการพิมพ์ด้วยเสียงที่พิมพ์ลงในแอปที่กำลังใช้งานอยู่ พร้อมสไตล์แยกตามแอป ทำให้ Slack ได้ข้อความในรูปแบบแชต โปรแกรมอีเมลได้การจัดรูปแบบอีเมล และเทอร์มินัลได้ข้อความถอดความที่ไม่ถูกแตะต้อง

ความต่างในทางปฏิบัติอีกข้อคือคลังคำศัพท์ การแก้คำที่คุณตั้งไว้จะถูกใช้กับทุกข้อความถอดความในทุกแอป ชื่อโมดูล ชื่อไลบรารีที่ใช้ และชื่อเพื่อนร่วมงานของคุณจะถูกรู้จำทั้งในคำอธิบาย PR และในข้อความ Slack ไม่ใช่แค่ภายในตัวแก้ไขโค้ด การถอดความทำงานในเครื่องด้วย Parakeet TDT v3 ผ่าน FluidAudio ส่วนการเกลาข้อความใช้โมเดล MLX ในเครื่อง

brew install muvon/tap/vext

ควรใช้ตัวไหน

ตัวที่ติดมากับโปรแกรม ถ้าคุณใช้ฮาร์ดแวร์ที่รองรับ และใช้เสียงส่วนใหญ่ไปกับการสั่งงาน Copilot Chat กับเขียนความเห็นภายในตัวแก้ไขโค้ด มันฟรี มันอยู่ตรงนั้นแล้ว และทำงานในเครื่อง ไม่ต้องติดตั้งอะไรเพิ่ม

ส่วนขยาย Speech ถ้าคุณใช้ Mac ที่เป็น Intel หรือใช้ VS Code บนเว็บ หรือถ้าคุณต้องการ "Hey Code" โดยเฉพาะ

แบบทั้งระบบ ถ้าตัวแก้ไขโค้ดเป็นเพียงส่วนน้อยของการพิมพ์ทั้งหมดของคุณ เพราะงานเขียนที่อยู่รอบ ๆ โค้ดมักมีน้ำหนักมากกว่าตัวโค้ด ซึ่งเป็นประเด็นที่เราพูดถึงใน บันทึกเสียงสำหรับนักพัฒนา

ทั้งสามอย่างนี้ไม่ได้ตัดกัน การใช้ตัวที่ติดมากับโปรแกรมสำหรับแชต บวกกับเครื่องมือแบบทั้งระบบสำหรับที่เหลือ ก็เป็นการจัดชุดที่สมเหตุสมผลมาก

สิ่งที่ไม่มีตัวไหนทำได้ดีเลย

การบอกโค้ดด้วยเสียง การพูดว่า for (let i = 0; i < arr.length; i++) ทั้งช้ากว่าและผิดพลาดง่ายกว่าการพิมพ์ และไม่มีเครื่องมือไหนในรายการนี้เปลี่ยนเรื่องนั้นได้ สัญลักษณ์ เครื่องหมายวรรคตอนที่ต้องเป๊ะ และตัวพิมพ์ใหญ่เล็กของชื่อตัวแปร คือจุดที่การใช้เสียงพังทลาย

สิ่งที่เสียงทำได้ดีจริงในงานของนักพัฒนาคือการสื่อเจตนา ทั้งการอธิบายให้เอเจนต์ฟังว่าคุณต้องการอะไร การอธิบายข้อแลกเปลี่ยนในความเห็นตอนรีวิว และการเขียนคำอธิบาย PR ที่บอกว่า ทำไม การพูดบริบทให้เอเจนต์เขียนโค้ดฟังสักย่อหน้าใช้เวลาประมาณยี่สิบวินาที และได้คำสั่งที่ดีกว่าฉบับสั้น ๆ ที่คุณจะพิมพ์ เพราะคุณใส่ข้อจำกัดต่าง ๆ ที่ปกติคงตัดทิ้งไปแล้วเข้าไปด้วย เราให้เหตุผลเรื่องนี้ไว้ใน การเขียนโค้ดด้วยเสียงกับเอเจนต์ AI และมันใช้ได้ไม่ว่าคำพูดจะผ่านปุ่มไมโครโฟนของ VS Code หรือผ่านปุ่มลัดแบบทั้งระบบ

ถ้าคุณใช้ Cursor แทน VS Code เหตุผลเดียวกันก็ใช้ได้กับชุดฟีเจอร์ที่ติดมาต่างออกไป ดูได้ที่ อินพุตเสียงสำหรับ Cursor และถ้าคุณอยากให้เอเจนต์เป็นฝ่ายควบคุมการพิมพ์ด้วยเสียงเอง แทนที่คุณจะต้องกดปุ่ม Vext ก็เปิดให้ทำได้ผ่าน MCP ซึ่งเราพูดถึงไว้ใน เวอร์ชัน 1.4.0

Vext ราคา 49 ดอลลาร์จ่ายครั้งเดียว มีให้ทดลอง 100 ครั้ง ใช้ได้บน macOS 14 ขึ้นไปบน Apple Silicon