ctrl+shift+p filters: :st2 :st3 :win :osx :linux
浏览

构建系统输入

dhelonious ST3

通过输入参数扩展Sublime Text 3的默认构建系统。

标签 构建系统

详细信息

  • 1.1.0
  • github.com
  • github.com
  • 6年前
  • 1小时前
  • 6年前

安装次数

  • 总量 2K
  • Win 2K
  • Mac 345
  • Linux 323
8月6日 8月5日 8月4日 8月3日 8月2日 8月1日 7月31日 7月30日 7月29日 7月28日 7月27日 7月26日 7月25日 7月24日 7月23日 7月22日 7月21日 7月20日 7月19日 7月18日 7月17日 7月16日 7月15日 7月14日 7月13日 7月12日 7月11日 7月10日 7月9日 7月8日 7月7日 7月6日 7月5日 7月4日 7月3日 7月2日 7月1日 6月30日 6月29日 6月28日 6月27日 6月26日 6月25日 6月24日 6月23日
Windows 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 0 0 0 0 1 0 1 0 0 0 0 1 1 3 2 1 0 1 1 0 0 0 0 0 0
Mac 1 1 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
Linux 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0

README

源代码
raw.githubusercontent.com

BuildSystemInput

通过输入参数扩展Sublime Text 3的默认构建系统。

在任何构建系统中选择《build_system_input》目标以提示输入,这些输入将替换`"cmd"`或`"shell_cmd"`中的对应变量。新的`"input"`字典提供了输入变量及其默认值。例如,

"input": {
            "input1": "a",
            "input2": "b"
        }

将首先提示输入`%input1%`,默认值为`"a"`,然后对于`%input2%`,默认值为`"b"`。以下是一个包含单个输入变量的简单_usage cases的示例。但是,您可以像喜欢一样使用多个输入变量。

将参数传递给Python脚本

{
        "target": "build_system_input",
        "selector" : "source.python",
        "shell_cmd": "xterm -e 'python $file_name %args%; echo && echo Press ENTER to continue && read line && exit'",
        "windows": {
            "shell_cmd": "start cmd /k \"python $file_name %args% & pause && exit\""
        },
        "shell": true,
        "file_regex": "^\\s*File \"(...*?)\", line ([0-9]*)",
        "working_dir": "$file_path",
        "input": {
            "args": "some arguments"
        }
    }

将编译器标志传递给clang

{
        "target": "build_system_input",
        "selector" : "source.c, source.cpp, source.c++",
        "cmd": ["clang++", "-std=c++11", "-Wno-c++98-compat-pedantic", "%flags%", "-Wall", "-o", "$file_base_name", "$file_name"],
        "windows": {
            "cmd": ["clang-cl", "-std=c++11", "-Wno-c++98-compat-pedantic", "%flags", "/Wall", "/o", "$file_base_name", "$file_name"]
        },
        "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
        "working_dir": "$file_path",
        "variants": [
            {
                "name": "Run Terminal",
                "shell_cmd": "clang++ -std=c++11 -Wno-c++98-compat-pedantic %flags% -Wall \"$file\" -o \"$file_path/$file_base_name\" && xterm -e '$file_path/$file_base_name; echo && echo Press ENTER to continue && read line && exit'",
                "windows": {
                    "shell_cmd": "clang-cl -std=c++11 -Wno-c++98-compat-pedantic %flags% /Wall \"$file\" /o \"$file_path/$file_base_name\" && start cmd /k \"$file_base_name & pause && exit\""
                },
                "shell": true
            }
        ],
        "input": {
            "flags": "-Wno-newline-eof"
        }
    }

注意:与UNIX-style Sublime Text 3构建系统变量(例如$var)不同,此包使用DOS-style变量,即%var%。这是因为Sublime Text会尝试在`"cmd"`和`"shell_cmd"`中使用环境变量,这会导致所有未知变量的删除。

安装

将此仓库克隆到您的Sublime Text 3 文件夹中。您可以通过使用菜单:首选项 > 浏览包…找到它。

除了将`"build_system_input"`用作自定义构建系统的目标外,无需进行任何配置。