GNU/Linux >> Belajar Linux >  >> Linux

Alat Linux untuk memeriksa ejaan komentar dalam kode sumber c/c++

Emacs memiliki ispell-comments-and-strings yang bekerja cukup baik dari dalam editor. Itu bergantung pada mekanisme penyorotan sintaks untuk mengidentifikasi komentar dan string, sehingga bekerja dengan bahasa apa pun yang Anda soroti dengan baik.

Tidak tahu bagaimana Anda membuatnya bekerja dengan IDE Anda.


Saya membutuhkan sesuatu seperti ini juga. Itu harus dapat berjalan tidak hanya di Linux.

Saya telah melihat bahwa pemeriksa ejaan sering dipasangkan dengan IDE (seperti gerhana). Saya menginginkan alat yang benar-benar independen dari IDE apa pun, karena saya ingin dapat menjalankannya dalam konteks otomatis/bernaskah seperti build Travis-CI atau build AppVeyor CI.

Melihat-lihat sedikit untuk alat semacam itu dan kemudian memutuskan untuk menulis sendiri.

Yang saya temukan adalah pyspellcode yang memenuhi kebutuhan ini. Ini adalah skrip python yang menggunakan clang dan hunspell yang seharusnya mudah dijalankan di Linux setidaknya. Skrip:

  1. menjalankan dentang untuk mendapatkan keluaran dump AST,
  2. membaca info AST dan menemukan node komentar,
  3. melewati kata dari kata tersebut ke hunspell untuk memeriksa, lalu
  4. melaporkan kembali kata-kata yang tidak dikenali.

Kejutan yang menarik bagi saya adalah seberapa dalam dentang mem-parsing komentar C++ bahkan menjadi elemen doksigen dan markup HTML tersemat. Ini memungkinkan untuk menggunakan AST dentang untuk melakukan hal-hal seperti mengabaikan kata-kata yang bersarang di dalam <code>...</code> blok dan saya memanfaatkannya di skrip.

Skrip tersedia dari GitHub sebagai proyek sumber terbuka berlisensi Zlib. Ini hanya perangkat lunak alfa saat ini dengan setidaknya satu bug parsing di dalamnya, tetapi jika ada minat, saya akan memberikannya lebih banyak prioritas.

Semoga ini bisa membantu!


Linux
  1. Lakukan forensik memori Linux dengan alat sumber terbuka ini

  2. Solusi pencadangan open source mana yang Anda gunakan?

  3. Cara Instal phpMyAdmin di Linux menggunakan Source Code

  1. Alat pembanding kode untuk Linux

  2. Bagaimana cara mendapatkan nama pengguna di C/C++ di Linux?

  3. Di mana Kode Penjadwal CFS Linux?

  1. Berbagi file sumber terbuka dengan alat Linux ini

  2. Periksa layanan mana yang mendengarkan pada port linux yang diberikan

  3. Alat Penandaan Mp3 Manakah Untuk Linux??