问题标签 [syntax-checking]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
267 浏览

c# - Visual Studio 正在将我的 C# 语法检查为 Visual Basic

我一直在 Visual Studio 中测试一些 c# 代码,当我今天早上打开 Visual Studio 时,我的项目充满了红线。

  • 要求用 End 类关闭的类声明
  • 分号下的红线
  • 没有 AS 子句的变量声明
  • Ctrl+K, CTRL+C 给出可视化的基本注释 例如'绿色文本
  • //C# 注释下方有红色波浪线。

这些显然是视觉基本错误,这意味着由于某种原因它试图将我的 C# 转换为 VB。

我一直在试图找出究竟要寻找什么,但到目前为止还没有运气。

当我构建项目时没有问题。只是 Visual Studio 中带有红色波浪线的语法错误。

0 投票
1 回答
798 浏览

vhdl - Vivado 中的自动语法检查不适用于测试台?

当我在 Vivado(项目模式)中编辑 VHDL 测试台(仿真源)时,后台语法检查似乎被禁用:明显的语法错误,如缺少分号或未定义的信号,没有用波浪形的红线下划线(与所有设计源一样)。

有没有办法为测试台激活自动后台语法检查?是否有其他原因导致某些文件未进行语法检查?

0 投票
3 回答
296 浏览

python - 可以将代码的语法检查作为不同的步骤吗?

我与一些大学发生了争执,我是否应该在每次代码修改后将语法检查作为一个单独的步骤,或者我最好依靠单元测试来捕捉可能的语法破坏......(当然单元测试会这样做)。

这不是是否对您的代码进行测试的问题(当然可以,但请参见下文)

我的用例非常简单,我是 Python 的新手,并尝试通过修改模型文件来玩一些 Web 应用程序(MVC)。更改非常简单,实际上一次几行左右,但是由于我对 Python 语法非常不熟悉,一些愚蠢的错误(如错误的缩进等)很容易出现。

真正的障碍是我通过谷歌云平台(作为应用引擎)部署了一个应用程序,所以应用程序需要一段时间才能推出新版本,我可以点击一个端点并最终查看它的错误日志以了解发生了什么。所以我想得到一种更短更简单的方法——至少对于这些类型的错误——只是在部署之前运行语法检查。

争议的核心部分是我没有被建议明确地进行语法检查,而是更好地依赖于更高级别的测试(例如单元测试),我所说的是:

1)并且还没有单元测试(即使我有它们,我也会将它们视为测试链中的下一步)。

2)我只编辑一个特定的文件(一个且只有一个),修改最少,而且我所遇到的错误类型(正如我在 Python 中的新手所说)是语法错误,而不是逻辑或语义错误,所以因为我认为我可以安全地进行语法检查,然后进行部署。即使我后来遇到了我的代码的语义/逻辑问题(甚至语法检查通过),这对于高级测试(单元/验收等)来说无疑是一个问题 -但现在我只是在玩用编写的代码一种我不太熟悉的语言。

3)我不会在外面提交我的更改,也不会给任何人带来麻烦。

4)最后一个参数是有争议的,因为它有点范围,但是我想把它留在这里 - 在某些情况下,如果你只需要在单个文件中进行语法检查,即使是轻量级单元测试也可能是矫枉过正的. 考虑这个例子。一个人只是在适当的位置编辑代码,部署在服务器上试图解决即时问题,因此不存在单元或其他测试,并且您希望确保您的修改不会在语法上破坏代码。

0 投票
2 回答
2307 浏览

vhdl - 如何在没有完整综合的情况下在 Vivado 中对 VHDL 进行语法检查

在不运行完整综合的情况下,在 Vivado 中检查我的 VHDL 的最简单方法是什么?

有时我一次编写许多相互关联的模块,并希望快速找到命名错误、缺少分号、端口遗漏等。我读过的建议是运行综合,但这比我需要的时间更长语法检查。我观察到语法错误通常会导致综合在一分钟左右内中止,所以我的解决方法是运行综合并在大约一分钟后手动中止它。

0 投票
1 回答
208 浏览

c - Visual Studio 2017 是否对 C 进行语法检查?

我想在 Visual Studio 2017 中对我的 .c 进行语法检查,但似乎只有当我的源文件名为 source.cpp 而不是 source.c 时我才能得到它

可以开启吗?

谢谢!

0 投票
2 回答
1271 浏览

intellij-idea - Intellij IDEA。检查没有扩展名的文件的语法

我有Jenkinsfile它是用 Groovy 编写的,但文件名没有适当的扩展名:.groovy. 我怎样才能告诉 IDEA 检查这个文件的 groovy 语法?

更新:我也对有关 GoLand IDE 的相同问题感兴趣

0 投票
1 回答
364 浏览

xml - 在 JavaFX 中进行语法检查的 XML 编辑器

我正在寻找一种使用 JavaFX 构建 XML 编辑器的方法,该编辑器检查语法并显示错误,并且还具有语法突出显示功能。有谁知道如何做到这一点?是否已经有我可以使用的组件?谢谢!

0 投票
0 回答
290 浏览

vim-plugin - clang 和 gcc linter 检查语法错误

我使用ALE vim 插件,它默认使用 clang 和 gcc。如果我在 C 上编写程序并定义ssize_tALE 类型的变量,则会将其标记为错误,并显示消息“未知类型名称 'ssize_t';您的意思是 'size_t'?”,无论ssize_t是在 stdio.h 中定义还是程序成功编译海湾合作委员会。我想 gcc 和 clang linter 不遵循 stdio.h 并且需要配置。可能我应该在 vim 中设置g:ale_c_clang_options和变量。g:ale_gcc_options我努力了 let g:ale_c_clang_options = '-std=c11 -Wall -I/usr/include' let g:ale_linters = {'c': ['clang']}

结果是一样的。

UPD:我在 .vimrc 中更改了 linter 字典并且错误消息消失了。

let g:ale_linters = {'c': ['clangtidy']}

但我仍然不知道如何正确配置 clang 和 gcc linter。

0 投票
2 回答
525 浏览

postgresql - 如何重新检查使用 check_function_bodies=false 创建的 SQL 函数?

按照这个答案,我了解到我可以通过设置来禁用 SQL 函数的语法检查check_function_bodies=false

在我的情况下:使用 Flyway 运行升级 where

  1. 函数创建的顺序没有很好的定义
  2. 某些功能使用尚未在同一升级中创建的其他功能。

我的问题是 - 一旦所有其他依赖项都到位,是否可以对这样的函数进行“重新检查”而不必实际调用它?类似于 Oracle 的alter function ... compile.

理想情况下,我想check_function_bodies=false在升级开始时设置,然后在结束时重新检查每个 SQL 函数。

我想避免不得不:

  1. 控制脚本运行的顺序。
  2. 重新运行函数创建脚本

我尝试过的事情:

  • 做假人alter function
  • 打电话pg_get_functiondef
0 投票
1 回答
1596 浏览

javascript - ace 编辑器中的 Python 语法检查

我正在尝试开发的是一个网络环境应用程序,它可以让用户编写和语法检查他自己的 python 代码。到目前为止,我已经使用 python 模式将ACE 编辑器嵌入到我的应用程序中。我的问题是 ace 不包含用于 python 语法检查的 javascript 库,以便通过使用此处描述的工作人员来实现它如何使用自定义模式在 Ace 编辑器中集成语法检查?.

通过搜索,我找到了 pyflakespylint等模块。用于语法检查,它们都是用 python 编写的。使用在线检查器或连接到服务器以执行检查的选项对我不起作用,因为我的应用程序的场景是在 ace 上编写时提供 python 语法检查(即使没有互联网连接)。

那么,我要问的是,是否有可以与网络嵌入式 ace 编辑器一起使用的 python 语法检查器?

谢谢