{"id":26098014,"url":"https://github.com/simpleitk/commentspellcheck","last_synced_at":"2025-04-12T13:08:41.519Z","repository":{"id":43184368,"uuid":"318307900","full_name":"SimpleITK/CommentSpellCheck","owner":"SimpleITK","description":"This package spell checks the comments in source code.","archived":false,"fork":false,"pushed_at":"2025-04-09T19:27:40.000Z","size":175,"stargazers_count":5,"open_issues_count":1,"forks_count":4,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-04-12T13:08:26.400Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SimpleITK.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-12-03T20:11:59.000Z","updated_at":"2025-03-06T22:20:57.000Z","dependencies_parsed_at":"2024-01-09T02:37:55.324Z","dependency_job_id":"84c9b56d-822b-4120-990f-67db497594a3","html_url":"https://github.com/SimpleITK/CommentSpellCheck","commit_stats":null,"previous_names":["simpleitk/simpleitkspellchecking"],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimpleITK%2FCommentSpellCheck","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimpleITK%2FCommentSpellCheck/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimpleITK%2FCommentSpellCheck/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SimpleITK%2FCommentSpellCheck/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SimpleITK","download_url":"https://codeload.github.com/SimpleITK/CommentSpellCheck/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248571892,"owners_count":21126522,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-09T15:59:35.775Z","updated_at":"2025-04-12T13:08:41.487Z","avatar_url":"https://github.com/SimpleITK.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CommentSpellCheck\n\n![python testing](https://github.com/SimpleITK/CommentSpellCheck/actions/workflows/python-app.yml/badge.svg)\n\n\nThe CommentSpellCheck (CSC) package provides a script that automatically\nspell checks the comments of a code base.  It was originally developed to\nbe run on the SimpleITK and ITK code bases.\n\nHere is how it is typically run:\n\n    python comment_spell_check.py --exclude Ancillary $SIMPLEITK_SOURCE_DIR/Code\n\nThis command will recursively find all the '.h' files in a directory,\nextract the C/C++ comments from the code, and run a spell checker on them.\nThe **'--exclude'** flag tells the script to ignore any file that has\n'Ancillary' in its full path name.  This flag will accept any\nregular expression.\n\nIn addition to pyenchant's English dictionary, we use the words in\n**additional_dictionary.txt**.  These words are proper names and\ntechnical terms harvest by hand from the SimpleITK and ITK code bases.\n\nIf a word is not found in the dictionaries, we try two additional checks.\n\n1. If the word starts with some known prefix, the prefix is removed\n...and the remaining word is checked against the dictionary.  The prefixes\n...used by default are **'sitk'**, **'itk'**, and **'vtk'**.  Additional\n...prefixes can be specified with the **'--prefix'** command line argument.\n\n2. We attempt to split the word by capitalization and check each\n...sub-word against the dictionary.  This method is an attempt to detect\n...camel-case words such as 'GetArrayFromImage', which would get split into\n...'Get', 'Array', 'From', and 'Image'.  Camel-case words are very commonly\n...used for code elements.\n\nThe script can also process other file types.  With the **'--suffix'**\noption, the following file types are available: Python (.py), C/C++\n(.c/.cxx), Text (.txt), reStructuredText(.rst), Markdown (.md), Ruby (.ruby),\nand Java (.java).  Note that reStructuredText files are treated as standard\ntext.  Consequentially, all markup keywords that are not actual words will\nneed to be added to the additional/exception dictionary.\n\n## Dictionary notes\n\nBy default, on Linux and Mac systems, pyenchant uses [GNU aspell](http://aspell.net/)\nas the underlying dictionary.  The spell checking is case sensitive.  While\naspell allows arbitrary characters in a dictionary word, CSC may split up\na word by non-alphanumeric characters.  This split can occur if the word\nitself is not found in the dictionary.\n\nIf a dictionary word has non-alphanumeric characters, CSC prints a warning.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimpleitk%2Fcommentspellcheck","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsimpleitk%2Fcommentspellcheck","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimpleitk%2Fcommentspellcheck/lists"}