首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >是否有方法检查VCS中嵌套文件中的正确语法,让他们知道谁是父文件?就像Perl中使用require调用的那样,还是用eval调用的呢?

是否有方法检查VCS中嵌套文件中的正确语法,让他们知道谁是父文件?就像Perl中使用require调用的那样,还是用eval调用的呢?
EN

Stack Overflow用户
提问于 2022-06-02 06:36:38
回答 1查看 60关注 0票数 1

我开始使用Visual代码,它对语法更正警告非常酷。我曾在Vim的Linux shell下工作了20年。

但是现在我可以看到太多与全局变量相关的错误,比如Global symbol "%contents" requires explicit package name。这很令人不安。

这可能与Visual代码有关,就像某些扩展插件所能做到的那样。

或者它可以通过一些Perl函数来处理,所以它也可以解决经典的"perl -c“外壳检查。

我的处境:

我有Perl脚本fcgi.cgi,从require functions.pl开始,然后使用全局哈希变量将所有页面从文件加载到内存,每个页面被分隔为"html“和"pl”文件(1762个文件,大小为16 20 ),并在20个线程中运行。

在任何Apache调用中,它只调用一个线程,并从内存中对选定的"pl“页面运行"eval”,填充选定的"html",并以极快的速度生成页面,就像在0,1秒内。文件"functions.pl“只有”子“函数,所有"pl”脚本都可以使用它们。

代码语言:javascript
运行
复制
Files:
|/fcgi-bin/fcgi.cgi
|/pages/page1.pl
|/pages/page1.html
|/pages/page2.pl
|/pages/page2.html
|/functions/functions.pl

那么,有没有办法向"/pages/page1.pl“和”/function/function s.pl“中添加一些信息,即"/fcgi-bin/fcgi.cgi”是父脚本?所以它将检查语法,就像它在一个文件中一样。

对于“/page/page1.pl”,"/fcgi-bin/fcgi.cgi“是父函数,”/function/function s.pl“是库。

我可以图像,只是为了语法检查,我可以复制这些文件的内容,在检查文件的开头,语法检查将工作。

或者我可以简单地添加一些扩展,例如:

代码语言:javascript
运行
复制
#!/usr/bin/perl

#this is /pages/page1.pl

###extenstion call add for check: "/fcgi-bin/fcgi.cgi"###
###extenstion call add for check: "/functions/functions.pl"###

#normal code, using variables from /fcgi-bin/fcgi.cgi and functions from /functions/functions.pl 

我希望这是可以理解的。它与特定的代码无关,这是一个常见的问题,在其他编程语言中也是如此。所以没有示例代码。我希望获得一些特定于Visual的代码解决方案。我想,Perl解决方案只能通过将我20年的工作重新编程到一些“使用Lib包”定义来完成,这是不可能的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-02 20:44:25

听起来你不喜欢你的新环境显示你之前忽略(或看不到)的警告。如果你不想修复这些问题,你可能不想要一个向你展示它们的工具。

停止使用全局变量,这是一个很好的设计决策。如果您必须使用它们,请使用use varsour声明它们,或者使用完全限定的名称。

但是,你的问题似乎是,你必须在许多棘手的地方这样做。(但是,您有Perl和源代码管理!)

我可能会建议您了解如何在VSCode的“out to perl”中关闭警告,就像使用-X开关一样,但是如果您想要检查语法,这并没有多大帮助。local $^W=0可能会在一些地方有所帮助。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72471722

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档