一款命令行工具,可直接对 Jupyter Notebook 运行 ruff、isort、black、mypy、flake8 等 Python 代码检查与格式化工具。
codespell-project/codespell
一款命令行工具,基于常见拼写错误词典检查并修正源代码和文本文件中的错别字。
- Star
- 2,432
- Fork
- 536
- 未关闭 Issue
- 265
- 最近提交
- 18小时前
这是什么?
codespell 通过一份精选的常见拼写错误列表检查文件,而不是用完整词典逐词校验。因此在代码中使用冷门术语时误报较少,同时仍能发现类似 "adn"(应为 "and")这样的错误。它主要面向源代码,会跳过反斜杠转义字符,也可用于其他文本文件。
默认以只读方式运行并列出拼写错误,加上 -w 参数即可写入修正,交互模式下可逐条确认修改。忽略词可通过词表文件、命令行列表或行内注释指定,配置则可写入 setup.cfg、.codespellrc 或 pyproject.toml。
项目自带多份词典,内容基于维基百科的常见拼写错误列表整理,也支持自定义词典。工具可通过 pip 安装,需要 Python 3.9 及以上版本,并提供 pre-commit 钩子。
核心功能
- 01基于精选的常见拼写错误列表检查,而非完整词典。
- 02支持通过 -w 自动写入修正,或通过 -i 交互式确认。
- 03可用词表、命令行参数或行内注释忽略误报。
- 04支持从 setup.cfg、.codespellrc 或 pyproject.toml 读取配置。
- 05提供 pre-commit 钩子,并可在写入修正时让 CI 运行失败。
适用场景
- 在开发过程中检查源代码注释、标识符和文档中的拼写错误。
- 在 CI 流水线或 pre-commit 钩子中运行拼写检查。
- 借助交互式修正清理大型现有代码库中的错别字。
快速上手
- 1
使用 pip 从 PyPI 安装 codespell
pip install codespell - 2
在当前目录中运行 codespell
codespell
使用前须知
- 采用 GPL-2.0 许可证,这是一种 copyleft 许可证,可能限制你分发衍生代码的方式。
- 它只能发现词典中收录的常见拼写错误,因此不常见的错别字不会被检测到。
标签
常见问题
- codespell 是什么?
- 一款命令行工具,基于常见拼写错误词典检查并修正源代码和文本文件中的错别字。 codespell 通过一份精选的常见拼写错误列表检查文件,而不是用完整词典逐词校验。因此在代码中使用冷门术语时误报较少,同时仍能发现类似 "adn"(应为 "and")这样的错误。它主要面向源代码,会跳过反斜杠转义字符,也可用于其他文本文件。
- codespell 可以免费使用吗?用的什么许可证?
- codespell 以 GPL-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- codespell 还在维护吗?
- 活跃维护中。codespell 最近一次提交是在 2026年11月6日。
- codespell 适合用来做什么?
- 在开发过程中检查源代码注释、标识符和文档中的拼写错误。 在 CI 流水线或 pre-commit 钩子中运行拼写检查。 借助交互式修正清理大型现有代码库中的错别字。
- codespell 怎么安装和运行?
- 使用 pip 从 PyPI 安装 codespell: pip install codespell 在当前目录中运行 codespell: codespell
- 在哪里获取 codespell?
- 源代码和安装说明在 GitHub 上:https://github.com/codespell-project/codespell
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
120852PythonMIT更新于 17小时前
一个用于管理和运行多语言 pre-commit 钩子的框架,在每次 Git 提交前检查代码。
1.6万+14 本周1023PythonMIT维护活跃更新于 3天前
用 Go 编写的 Git hooks 管理工具,可并行执行提交、推送等钩子命令,适用于 Node.js、Ruby、Python 等多种项目。
9005+37 本周335GoMIT维护活跃更新于 昨天
一款静态分析工具,用于查找 Python 项目中未被使用的函数、类、变量、导入和不可达代码。
4875+10 本周209PythonMIT更新于 26天前
一款 Python 命令行工具,统计代码库中函数、类、方法和模块的 docstring 覆盖率,并可设置通过阈值用于 CI。
678+1 本周58PythonMIT更新于 5天前
Pylint 插件,让静态检查理解 Django 的模型、表单、视图和迁移,减少 Django 代码中的误报。
623124PythonGPL-2.0更新于 4天前