3 คะแนน โดย GN⁺ 2023-11-11 | 1 ความคิดเห็น | แชร์ทาง WhatsApp

Cursorless: เวทมนตร์ต่างดาวจากอนาคต

  • Cadey กล่าวว่าก่อนจะเริ่มงานที่บริษัทใหม่ ก็เริ่มมีอาการ RSI (การบาดเจ็บจากความเครียดสะสมจากการใช้งานซ้ำ) ปรากฏขึ้น
  • เจ้าตัวบอกว่าเดาไว้แล้วว่าอาการ RSI จะกลับมา และตอนนี้กำลังอยู่ในช่วงฟื้นตัว
  • ครั้งก่อนที่ RSI กำเริบ เคยรับมือด้วยการเขียนบทความสายเทคนิค แต่ครั้งนี้จำเป็นต้องใช้ความสามารถด้านการเขียนโปรแกรม
  • โดยปกติ Cadey ใช้ emacs เป็นหลัก แต่ครั้งนี้หันมาใช้ Visual Studio Code เพราะส่วนขยายชื่อ 'Cursorless'

ความสามารถราวเวทมนตร์ของ Cursorless

  • 'Cursorless' เป็นปลั๊กอินที่ผสานเข้ากับซอฟต์แวร์ควบคุมด้วยเสียง ทำให้แก้ไขโค้ดในระดับ AST ได้ด้วยเสียงพูด
  • ส่วนที่ดูเหมือนเวทมนตร์ที่สุดของ 'Cursorless' คือแนวคิดเรื่อง 'เป้าหมาย (Targets)' ซึ่งเป็นจุดยึดแต่ละจุดในเอกสาร และ 'ปลายทาง (Destinations)' ซึ่งเป็นตำแหน่งที่สัมพันธ์กับเป้าหมายเหล่านั้น
  • โทเค็นทุกตัวในเอกสารจะมีหมวกสีพร้อมตัวอักษรแสดงอยู่ด้านบน ทำให้สามารถสั่งงานโดยอิงจากตำแหน่ง ปลายทาง และเส้นทางระหว่างกันได้
  • ตัวอย่างเช่น คำว่า 'function' อาจถูกอ้างถึงเป็น 'green urge' เพื่อนำไปใช้ลบหรือย้ายคำนั้นได้

พลังที่แท้จริงของ Cursorless

  • 'Cursorless' ไม่ได้ทำได้แค่การแก้ไขพื้นฐาน แต่ยังเข้าใจ AST จึงสามารถทำงานครอบคลุมทั้งฟังก์ชันได้
  • ตัวอย่างเช่น การรีแฟกเตอร์ฟังก์ชันให้เป็นฟังก์ชันแบบอะซิงโครนัสจะง่ายขึ้นมากเมื่อใช้ 'Cursorless'
  • Cadey อธิบายว่าเมื่อใช้ 'Cursorless' ซ้ำไปเรื่อย ๆ คำสั่งต่าง ๆ จะค่อย ๆ กลายเป็นความคุ้นชินเหมือนธรรมชาติที่สอง

การเขียนคำสั่งของตัวเอง

  • สามารถเขียนคำสั่งของตัวเองได้ด้วย 'Cursorless' และ 'Talon'
  • คำสั่งของ 'Talon' แบ่งเป็น pattern (คำที่พูด) และ capture (สิ่งที่ต้องการดึงออกมา)
  • มีการยกตัวอย่างกฎของ 'Talon' ที่ซับซ้อนที่สุด เพื่ออธิบายวิธีประกาศเมธอดในภาษา Go

ความพยายามอธิบายแนวคิดเรื่องพอยน์เตอร์แบบใหม่

  • Cadey กำลังทดลองใช้คำว่า 'raising' และ 'lowering' เพื่ออธิบายแนวคิดเรื่องพอยน์เตอร์ในภาษา Go
  • เพื่อเป็นทางเลือกแทนไวยากรณ์พอยน์เตอร์แบบสไตล์ C ที่ Go ใช้อยู่ จึงกำลังสำรวจวิธีอธิบายการเปลี่ยนระหว่างค่าพอยน์เตอร์กับค่าปกติด้วยแนวคิด 'raising' และ 'lowering'

ความเห็นของ GN⁺

  • ประเด็นสำคัญที่สุดของบทความนี้คือส่วนขยาย 'Cursorless' ช่วยเพิ่มการเข้าถึงการเขียนโปรแกรมผ่านการควบคุมด้วยเสียง และทำให้คนที่พิมพ์ลำบากจากอาการบาดเจ็บอย่าง RSI ยังสามารถเขียนโค้ดได้
  • สิ่งที่ทำให้ความสามารถของ 'Cursorless' น่าสนใจเป็นพิเศษ คือมันนำเสนอวิธีแก้ไขโค้ดด้วยเสียงที่แปลกใหม่ และเปิดความเป็นไปได้ใหม่ ๆ ให้กับอนาคตของการพัฒนาซอฟต์แวร์

1 ความคิดเห็น

 
GN⁺ 2023-11-11
ความคิดเห็นจาก Hacker News
  • ความประหลาดใจของผู้เขียนและการแชร์เรโปทดลอง Talon ของตนเอง

    ผู้เขียนแสดงความประหลาดใจที่บทความของตนได้รับความนิยม และได้แชร์ GitHub repository ที่เกี่ยวกับการทดลอง Talon

  • ประโยชน์ของการจัดการโค้ดและคำสั่งเสียงด้วย Talon

    การที่ Talon ใช้ tree-sitter AST เพื่อจัดการ "ส่วน" ของโค้ดนั้นคล้ายกับ textobjects ของ Vim แต่เพิ่มองค์ประกอบด้านเสียงเข้าไปด้วย ความสามารถในการใช้คำสั่งเสียงเพื่อจองงานอื่นระหว่างการใช้งานคีย์บอร์ดเป็นสิ่งที่น่าสนใจ

  • การเปรียบเทียบกับ avy ที่ใช้คีย์บอร์ดแทนเสียง

    ทำงานคล้ายกับ avy แต่ใช้เสียงแทนคีย์บอร์ด และผสานเข้ากับคำสั่งที่รับรู้ AST

  • ลิงก์เดโมการเขียนโปรแกรมด้วยเสียงและความทึ่งต่อมัน

    แชร์ลิงก์วิดีโอเดโมการเขียนโปรแกรมด้วยเสียง และกล่าวถึงประสบการณ์อันน่าหลงใหลที่วิดีโอนั้นมอบให้

  • งานบรรยาย Strange Loop ที่แสดงภาพรวมและตัวอย่างการใช้งานจริงของ Cursorless

    ลิงก์วิดีโองานบรรยาย Strange Loop ที่ให้ภาพรวมทั่วไปของ Cursorless และแสดงให้เห็นการใช้งานจริง

  • การสนับสนุนการพัฒนา Cursorless และความรู้สึกว่ามีอุปสรรคในการเริ่มใช้งานส่วนตัว

    แสดงการสนับสนุนต่อการพัฒนา Cursorless แต่ก็รู้สึกว่าต้นทุนทางความคิดในการเริ่มใช้งานจริงค่อนข้างสูง

  • ความสงสัยเกี่ยวกับการเลือกคำสั่งเสียง

    ถามถึงเหตุผลในการเลือกคำบางคำอย่าง 'urge' และ 'bat' และสงสัยว่าสามารถใช้คำอื่นที่ขึ้นต้นด้วยตัวอักษรที่เกี่ยวข้องได้หรือไม่

  • คำถามเกี่ยวกับความเป็นไปได้ในการใช้เทคโนโลยีติดตามสายตาเพื่อปรับตำแหน่งเคอร์เซอร์

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

  • แชร์ประสบการณ์ RSI และกรณีที่อาการดีขึ้นจากการเปลี่ยนรูปแบบการพิมพ์

    แชร์ประสบการณ์ที่เคยมีปัญหา RSI และแม้จะลองใช้อุปกรณ์การยศาสตร์หลายแบบ แต่การเปลี่ยนวิธีพิมพ์กลับช่วยได้มากที่สุด