ChatGPT解决这个技术问题 Extra ChatGPT

如何避免在 Pycharm 中对字符串进行拼写检查

禁用 PyCharm IDE 字符串拼写检查的选项在哪里?我讨厌我的评论和字符串下的锯齿线。

@Close Voters:我看到你们中的两个人建议将其移至 SU。关于编程工具的问题是on-topic for SO,所以我不同意这些特别接近的投票。
如果这不是拼写检查器 - 请显示带有一些示例代码的屏幕截图。

d
daaawx

转到File -> Settings -> Editor -> Inspections。展开中间窗口中 Spelling 下的列表并取消选中选项 Typo

https://i.stack.imgur.com/mPoXy.png

然而,实际上大部分锯齿线是由违反 PEP 8 coding style 引起的。如果您也想禁用此选项,请在同一窗口中展开 Python 下的列表并取消选中选项 PEP 8 coding style violation


# noinspection SpellCheckingInspection
谢谢@MarkRibau。如何针对特定评论执行此操作?好像没有办法。
我只是把它放在错误拼写错误的行上方。这对你有帮助吗?
对我来说,没有“拼写”部分,它在“校对”下
@KellyBang 谢谢,对我来说似乎也是如此。也许在较新的版本中,他们更改了位置。
M
Marc Sances

在最新版本的 PyCharm 中,它显示为 ProofReading:

https://i.stack.imgur.com/8BnYC.png


u
user3105337

您可以通过在其上方注释 # noinspection SpellCheckingInspection 来禁用特定代码部分的拼写检查。

请参阅https://www.jetbrains.com/help/pycharm/spellchecking.html


出于某种奇怪的原因,我必须连续插入指令两行才能使其生效。
B
Bakuriu

PyCharm 不检查字符串和注释中的语法。它检查拼写。

您可以在“设置...”页面下找到拼写检查器的设置。项目设置中有一个拼写页面。在此页面内,在字典选项卡的底部,您可以启用/禁用字典。如果您不想进行拼写检查,只需禁用所有这些。

请注意,可以在拼写检查器中添加自定义单词,或者,如果您的计算机上已有字典,则可以添加它。如果您想拼写检查不同的语言(例如意大利语),这可能会很有用。

特别是如果您使用的是 Linux 系统并且已经安装了意大利语语言包,那么您可能在 /usr/share/dict/italian 下有意大利语词典。您可以将 /usr/share/dict 目录添加到搜索字典的目录中并启用 italian 字典。

PyCharm 似乎只检查扩展名为 .dic 的文件。如果您想使用 /usr/share/dict/italian,您可能应该将其复制到另一个目录,重命名为 italian.dic,或者您可以创建一个符号链接。


J
Jakub Rakus

在我看来,最好的选择是仅对代码禁用拼写检查。这样,变量/方法/类名称和字符串下的绿线消失了,但 PyCharm 仍然控制注释以避免拼写错误,因此您拥有漂亮紧凑的代码和完全可理解的文档。

我不完全知道从哪个 PyCharm 版本可以访问此选项,但可以肯定的是,在 2020.2 修订版中,如果您在设置 > 编辑器 > 检查 > 校对中突出显示错字,右侧面板中有三个附加选项 - 只需取消选中流程代码。

https://i.stack.imgur.com/RKfn2.png


B
Brndn

在较新版本的 PyCharm 中,转到 Preferences -> Editor -> Inspections -> Spelling。


v
valex

您还可以通过按 Alt + Enter this word 并选择 Save [typo word] to dictionary 将特定的错字词添加到 PyCharm 词典。有时这对我来说是最好的选择。


A
Azamat_yamin

我发现了如何通过禁用 process literals 来禁用 official documentation 中的字符串文字中的拼写错误,但它对我不起作用(也许这是一个错误,将来会修复)。

Settings->Proofreading->Typo


l
lexnn

对于单行,您可以在行尾使用 # noqa,它会抑制拼写检查(弯曲的绿线)。

GOOFY_API_USERNAME_THING = "LAksdfallae@#lkdaslekserlse#lsese" # noqa

我正在使用 PyCharm 2021.3.2