GNU/Linux >> Linux Esercitazione >  >> Linux

Strumento Linux per controllare l'ortografia dei commenti nel codice sorgente c/c++

Emacs ha ispell-comments-and-strings che funziona abbastanza bene dall'interno dell'editor. Si basa sul meccanismo di evidenziazione della sintassi per identificare commenti e stringhe, quindi funziona con qualsiasi lingua per la quale disponi di una buona evidenziazione.

Non ho idea di come farlo funzionare con il tuo IDE.


Anch'io avevo bisogno di qualcosa del genere. Tuttavia, doveva essere in grado di funzionare non solo su Linux.

Ho visto che il controllo ortografico è spesso associato a un IDE (come con Eclipse). Tuttavia, volevo uno strumento che fosse completamente indipendente da qualsiasi IDE, perché volevo poterlo eseguire in contesti automatizzati/con script come build Travis-CI o build AppVeyor CI.

Ho cercato un po' in giro uno strumento del genere e poi ho deciso di scriverne uno mio.

Quello che mi è venuto in mente è stato pyspellcode che soddisfa queste esigenze. È uno script Python che usa clang e hunspell che dovrebbe funzionare prontamente almeno su Linux. La sceneggiatura:

  1. esegue clang per ottenere l'output del dump AST,
  2. legge le informazioni AST e trova i nodi dei commenti,
  3. passa le parole da quelle a hunspell per il controllo, e poi
  4. riporta le parole che non sono state riconosciute.

Ciò che è stata una sorpresa interessante per me è quanto profondamente clang analizzi i commenti C++ anche in elementi doxygen e markup HTML incorporato. Questo ha reso possibile usare l'AST di clang per fare cose come ignorare le parole nidificate all'interno di <code>...</code> blocks e ne ho approfittato nello script.

Lo script è disponibile su GitHub come progetto open source con licenza Zlib. Al momento è solo un software alfa con almeno un bug di analisi, ma se c'è interesse, gli darò più priorità.

Spero che questo aiuti!


Linux
  1. Esegui analisi forensi sulla memoria di Linux con questo strumento open source

  2. Quale soluzione di backup open source usi?

  3. Come installare phpMyAdmin in Linux usando il codice sorgente

  4. Quale strumento di codifica Mp3 per Linux?

  5. CodeBlocks:un IDE C, C++ e Fortran gratuito e multipiattaforma

Nozioni di base sulla compilazione di software dal codice sorgente in Linux

Come eseguire programmi C/C++ in Linux [Terminale ed Eclipse]

Quale strumento di backup locale è il migliore su Linux?

I 20 migliori IDE Python per Linux. Alcuni di loro sono Open Source

Come posso profilare il codice C++ in esecuzione su Linux?

Dov'è il codice di pianificazione di Linux CFS?