如何将参数传递给Sublime Text 3中的构建?

Raf*_*ael 9 python python-3.x sublimetext

我正在制作一个在终端上运行的程序(需要一些参数).

现在我想从Sublime Text运行这个相同的程序,但我不知道如何在Sublime Text中执行程序之前将参数传递给构建.

我需要启用任何选项来指定参数吗?

使用Sublime Text 3 build 3035

mic*_*per 15

您可以为sublime文本创建新的构建系统,并使用固定参数运行脚本.

在Packages/User目录中创建一个新文件(CTRL-SHIFT-P --> "Browse Packages")

新文件: Packages/User/my_build.sublime-build

具有以下内容:

{
   "cmd": ["python", "$file", "arg1", "arg2"]
}
Run Code Online (Sandbox Code Playgroud)

(用你的参数替换arg1,arg2 - 如果你愿意,你可以删除它们或添加更多)

现在重新启动sublime文本并在菜单中选择您的构建系统:Tools --> Build System --> my_build.从现在开始,当您按CTRL-B时,您的构建系统将被执行.

如果您正在处理其他文件或项目,请不要忘记将其更改回"自动".

您可以在构建文件中设置许多选项.请参阅http://docs.sublimetext.info/en/latest/reference/build_systems.html

  • [更好的解决方案](http://stackoverflow.com/questions/16490889/build-and-run-with-args-in-sublime-text-2)这不会污染全局Build System菜单并且更容易编辑. (2认同)

Kie*_*e D 9

我发现使用带有默认参数的try catch更容易,Sublime的构建系统变得很难管理.当你做快节奏的开发时,你可以修改except语句中的参数.

import sys
try:
    if sys.argv[1]:
        Name = str(sys.argv[1])

except:
    print "no argument given - using DERP"
    Name = "DERP"
Run Code Online (Sandbox Code Playgroud)