【问题标题】:How to turn on/off code analysis features in Spyder 4如何在 Spyder 4 中打开/关闭代码分析功能
【发布时间】:2020-04-02 15:50:51
【问题描述】:

将 Spyder 更新到 4.0.0 后,我看不到任何用于打开或关闭“实时代码分析”的复选框

这里我们可以看到再也找不到的菜单步骤: How to suppress a certain warning in Spyder editor? 其中包含: 你需要去 [工具 > 首选项 > 编辑器 > 代码自省/分析 并停用名为 实时代码分析]

对于最高 4.1.3(含)的版本,存在以下问题,可能仅在 Windows 上:

  • 我无法打开警告,例如显示哪些变量是未知的。通常,如果我将代码移动到一个单独的函数中,我只需滚动代码中的红线即可找到该函数所需的所有参数。

  • 即使是正常的代码完成也不起作用。首先,在点后输入 3 个字母后没有弹出任何内容。然后,当 Spyder 似乎开始搜索时,它不再有任何反应。

【问题讨论】:

  • 如果代码完成和 linting 对您不起作用,那是一个错误。请报告here 并添加您的问题的屏幕截图。
  • 我现在才看到你的评论。我已将下面的 cmets 添加到新链接 github.com/spyder-ide/spyder/issues/10993

标签: anaconda editor real-time spyder underline


【解决方案1】:

此处是 Spyder 维护者)Spyder 4 中的代码分析选项得到了显着扩展,并移至我们的首选项中名为Completion and linting 的新条目,如下所示:

要停用所有 linting(在“实时代码分析”之前调用),您需要关闭上面屏幕截图中名为 Enable basic linting 的选项。

请更新到 4.1.4 或更高版本以避免在 Windows 上出现上述错误。

【讨论】:

  • 现在我已经使用 linting 添加了所需的传递参数,但是 linting 并没有消失,出现错误“Undefined Name '....' (pyflakes E),尽管该变量是传递的我使用它的函数的参数。我不知道这是否仍然与问题有关,但是棉绒至少不像以前那样起作用,我希望一旦知道变量,任何下划线都会消失在函数中。可能我必须更改 pyflakes 设置中的某些内容才能自动刷新?谢谢。
  • 我已经设置了 linting - "Enable basic linting" 和 "Ununderline errors and warnings" of and on,所有的红线都消失了,它们仍然应该在的地方,红色 x 圆圈左侧在参数肯定已知的位置显示相同的“未定义名称……”错误。
  • 问题并没有消失,尽管我有一段时间的 linting 工作。 Spyder 今天崩溃了 3 次,linting 只是偶尔起作用,现在 linting 在那里,但是没有刷新,这意味着当我已经添加了缺少的参数时不会消失。
  • 每次重命名变量时都会收到错误警告。它标记我“旧变量名”已分配但从未使用。再加上我每天遇到的所有崩溃,老实说,我不知道我在等待什么来切换到不同的 IDE...
  • Linting 和代码完成对我仍然不起作用。我在 Spyder Github 网站上提出了一个问题,并被告知它将在 4.1.2 中修复。我现在已经升级,甚至做了“恢复出厂设置”,但没有运气。在状态栏中显示“LSP Python:就绪”,我认为这意味着 linting 引擎正在运行,并且我已打开 linting 和代码完成的所有设置,但没有任何反应。
【解决方案2】:

问题已被 Spyder 4.1.4 版修复,请更新您的 Spyder。使用https://github.com/spyder-ide/spyder/releases 上的更新步骤。

GitHub 上的 ccordoba12 有好消息,再次查看:https://github.com/spyder-ide/spyder/issues/10993#issuecomment-647616536

我们花了很长时间试图弄清楚为什么代码完成和 linting 失败了。然而,我认为我们最终解决了这个问题:它 是一个只出现在 Windows 和 @OverLordGoldDragon 上的问题 对于为我们提供可重现的用例至关重要 终于可以修好了。该修复程序将在我们的下一个版本中提供 (4.1.4),将在本周末或早些时候发布 下一个。

【讨论】:

    【解决方案3】:

    4.0.0 到 4.1.3 版本的解决方法

    github帮助的结果:在debug模式下启动spyder

    spyder --debug-info verbose --debug-output file
    

    https://github.com/spyder-ide/spyder/issues/10993#issuecomment-563414784

    调试模式返回所有代码分析功能。您可能可以放弃--debug-output file(未经测试)。对于 4.0.0 到 4.1.4 版本,您需要始终像这样启动 Spyder,否则会返回丢失的 linting(至少在 Windows 上)。 此错误已在 Spyder 4.1.4 中修复。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-10-07
      • 1970-01-01
      • 1970-01-01
      • 2020-05-28
      • 1970-01-01
      • 2021-12-22
      • 1970-01-01
      • 2013-01-17
      相关资源
      最近更新 更多