最近我切换到 Ubuntu / Linux 并搜索了一些不错的文本编辑器,我发现了 Sublime Text ,我是编码的新手,并且我正在使用Notepad ++窗口。
我下载了崇高的文本后,我尝试在javascript中编写一些代码以查看其是否有效,但显示“ 没有构建系统”,当我寻找它时,我没有找到任何代码Linux指南...在Notepad ++中,我要做的就是单击run和ta da,输出屏幕在那里。
我对linux或sublime文本了解不多,我的确切问题是我如何运行并在输出屏幕中看到我的代码,目前我正在使用 JavaScript ,但我没有知道什么是“构建系统”时,我只想在崇高的文本中键入一些基本代码并在屏幕上看到结果,因此,如果您有帮助,我将不胜感激。
这是图像的问题:
答案 0 :(得分:0)
为了解释您的问题,首先必须意识到,尽管该功能称为build
,但它与实际运行 Build 一样,其在运行解释程序方面的作用同样重要。 em> 任何东西;与其说它是“构建”工具,不如说是“运行某些外部程序来做某事”工具。
话虽如此,Sublime预先安装了一些用于各种语言的不同构建系统,但是JavaScript并不是其中之一。可能是因为通常不清楚某个特定的JavaScript文件是用于浏览器中还是通过node
之类的东西来执行,但这只是一个猜测。
在您的情况下,文本No build system
告诉您,您已经告诉Sublime为要编辑的文件类型自动选择合适的构建系统,但是找不到它,并且所以它无能为力。
解决此问题的方法是安装包含JavaScript构建系统的第三方软件包(请参见Package Control)或自己创建一个。
Sublime的一个好的经验法则是,如果有一条命令,您可以从命令提示符处执行,它将执行您想要的操作,并且您不需要与该命令进行交互(即,它不需要(在执行某项操作之前或执行过程中询问您),您可以设置Sublime为您运行该命令。
可以用来执行JavaScript的一个工具是NodeJS,它提供了一个名为node
的命令,可以在安装时执行JavaScript文件:
tmartin:dart:~> cat sample.js
console.log("Hello, world!")
tmartin:dart:~> node sample.js
Hello, world!
由于这是我们可以从终端执行的命令来执行所需的操作,并且不需要我们与其交互以告诉它如何执行操作,因此我们可以建立一个构建系统来使用它
作为此操作的示例,请从菜单中选择Tools > Build System > New Build System...
,然后用以下代码替换文件的内容,然后将其保存在Sublime将默认设置为的位置,例如{ {1}}:
JavaScript.sublime-build
这只是说,执行此构建时,Sublime应该使用命令{
"shell_cmd": "node \"${file}\"",
"selector": "source.js"
}
并为其提供当前正在编辑的文件的名称,并且该构建系统适用于node
文件类型为source
(JavaScript)。
在适当的位置上,如果选择js
或Tools > Build System > Automatic
(菜单中的名称反映了您用于文件的名称),则应该能够使用 Ctrl + B 执行程序:
注意: :这是一张较旧的图片,使用Tools > Build System > JavaScript
而非cmd
;这两个示例的工作方式相同,但是除非有充分的理由,否则建议使用shell_cmd
。
您可以查看official documentation on build systems,以获取有关构建系统中可用选项的更多信息。
重要说明:
如果出现类似shell_cmd
之类的错误,则意味着您输入错误的命令,未安装该程序或需要告诉计算机(从而使Sublime)在哪里。通过修改您的command not found
来找到它;您的操作方式是系统特定的。
在尝试运行新文件之前,请确保至少手动保存一次。在执行此操作之前,该文件尚未在磁盘上并且无法执行,这可能导致发生奇怪的错误。确保选中PATH
以确保在构建时磁盘上的文件始终是最新的,这是一个好主意,但这不会保存尚未命名的新文件。
我说了两次,但是需要重复。如果您需要以任何方式与 进行命令交互,则此命令将对您不起作用(无需进行任何更改)。这包括您是否尝试执行一个希望与之交互的脚本(例如,它询问您的名字,然后打印出来,诸如此类)。在这种情况下,您的程序似乎会永远挂起,因为它正在等待您无法提供的输入。