3 poin oleh GN⁺ 2023-11-11 | 1 komentar | Bagikan ke WhatsApp

Cursorless: sihir alien dari masa depan

  • Cadey menyebutkan bahwa gejala RSI (cedera regangan berulang) mulai muncul sebelum memulai pekerjaan di tempat kerja barunya.
  • Gejala RSI itu memang sudah diperkirakan, dan saat ini sedang dalam proses pemulihan.
  • Ketika RSI pernah muncul sebelumnya, ia mengatasinya dengan menulis artikel teknis, tetapi kali ini ia merasa tetap membutuhkan kemampuan pemrograman.
  • Cadey biasanya menggunakan emacs, tetapi kali ini menggunakan Visual Studio Code, dan alasannya adalah ekstensi bernama 'Cursorless'.

Fitur Cursorless yang terasa seperti sihir

  • 'Cursorless' adalah plugin yang terintegrasi dengan perangkat lunak kontrol suara dan memungkinkan penyuntingan kode pada level AST melalui suara.
  • Bagian paling magis dari 'Cursorless' adalah konsep anchor individual dalam dokumen yang disebut 'target (Targets)' dan posisi relatif terhadap target yang disebut 'tujuan (Destinations)'.
  • Semua token dalam dokumen diberi topi berwarna yang ditampilkan di atas huruf, sehingga perintah dapat diberikan berdasarkan posisi, tujuan, dan jalur di antaranya.
  • Sebagai contoh, kata 'function' dapat dirujuk sebagai 'green urge' dan digunakan untuk menghapus atau memindahkan kata tersebut.

Kekuatan sejati Cursorless

  • 'Cursorless' tidak hanya mampu melakukan operasi penyuntingan sederhana, tetapi juga memahami AST sehingga dapat menjalankan tindakan yang mencakup seluruh fungsi.
  • Misalnya, melakukan refactor sebuah fungsi menjadi fungsi asinkron menjadi jauh lebih mudah dengan menggunakan 'Cursorless'.
  • Cadey menjelaskan bahwa dengan menggunakan 'Cursorless' berulang kali, perintah-perintahnya lambat laun terasa alami seperti kebiasaan kedua.

Menulis perintah sendiri

  • Dengan 'Cursorless' dan 'Talon', kita dapat menulis perintah kita sendiri.
  • Perintah 'Talon' dibagi menjadi pattern (kata yang diucapkan) dan capture (hal yang ingin diekstrak).
  • Dengan mengambil contoh aturan 'Talon' yang paling kompleks, artikel ini menjelaskan cara mendeklarasikan method dalam bahasa Go.

Upaya baru menjelaskan konsep pointer

  • Cadey sedang bereksperimen dengan istilah 'raising' dan 'lowering' untuk menjelaskan konsep pointer dalam bahasa Go.
  • Sebagai alternatif terhadap sintaks pointer bergaya C yang digunakan Go, ia sedang mengeksplorasi cara mengekspresikan perpindahan antara nilai pointer dan nilai biasa dengan istilah 'raising' dan 'lowering'.

Opini GN⁺

  • Poin terpenting dari artikel ini adalah bahwa ekstensi 'Cursorless' meningkatkan aksesibilitas pemrograman melalui kontrol suara, sehingga orang yang kesulitan mengetik akibat cedera seperti RSI pun tetap bisa melakukan coding.
  • Yang membuat fitur 'Cursorless' sangat menarik adalah karena ia menawarkan cara inovatif untuk mengedit kode dengan suara, dan ini membuka kemungkinan baru bagi masa depan pengembangan perangkat lunak.

1 komentar

 
GN⁺ 2023-11-11
Opini Hacker News
  • Kejutan penulis dan berbagi repositori eksperimen Talon miliknya

    Penulis mengungkapkan keterkejutannya karena tulisannya mendapat banyak perhatian, sekaligus membagikan repositori GitHub terkait eksperimen Talon miliknya.

  • Kegunaan manipulasi kode dan perintah suara dengan Talon

    Talon memanfaatkan tree-sitter AST untuk memanipulasi 'bagian' kode, mirip dengan textobjects di Vim namun ditambah komponen suara. Fitur untuk menjadwalkan tugas lain saat sedang melakukan operasi keyboard melalui perintah suara terasa menarik.

  • Perbandingan dengan avy yang menggunakan keyboard alih-alih suara

    Cara kerjanya mirip avy, tetapi menggunakan suara sebagai pengganti keyboard, dan dipadukan dengan perintah yang mengenali AST.

  • Tautan ke demo pemrograman dengan suara dan rasa takjub karenanya

    Dibagikan tautan video demo pemrograman dengan suara, disertai komentar tentang pengalaman memikat yang diberikan video tersebut.

  • Presentasi Strange Loop yang menampilkan gambaran umum Cursorless dan contoh penggunaan nyata

    Dibagikan tautan video presentasi Strange Loop yang memberikan gambaran umum tentang Cursorless sekaligus memperlihatkan bagaimana alat ini digunakan dalam praktik.

  • Dukungan untuk pengembangan Cursorless dan hambatan pribadi untuk mulai memakainya

    Ada dukungan terhadap pengembangan Cursorless, tetapi juga perasaan bahwa biaya mental untuk benar-benar mulai menggunakannya cukup tinggi.

  • Rasa penasaran soal pemilihan perintah suara

    Ada pertanyaan tentang alasan pemilihan kata tertentu seperti 'urge' dan 'bat', serta apakah kata lain yang diawali huruf terkait juga bisa digunakan.

  • Pertanyaan tentang kemungkinan mengatur posisi kursor dengan teknologi pelacakan mata

    Muncul pertanyaan mengenai keadaan terkini teknologi pelacakan mata yang memungkinkan kursor ditempatkan di lokasi tempat pandangan berhenti.

  • Berbagi pengalaman RSI dan perbaikan berkat perubahan gaya mengetik

    Dibagikan pengalaman pernah mengalami masalah RSI; meski sudah mencoba berbagai alat ergonomis, perubahan cara mengetik ternyata sangat membantu.