zoukankan      html  css  js  c++  java
  • [Visual Studio Code] 执行python

    Visual Studio Code 作为一种IDE,实时执行python程序,对调试或理解执行步骤起到了很大的作用!因此,以下对此作一简单接受,希望广大园友提出宝贵意见!

    1. 官方说明

    http://code.visualstudio.com/docs/editor/tasks

    2. 配置执行环境

      Note: Please note that task support is only available when working on a workspace folder. It is not available when editing single files.

      2.1 配置task.json

        a. 创建一个workspace folder

        b. ctrl+shift+p -> task -> Tasks: Configure Task Runner(配置执行任务)

        c. 点击“配置任务运行程序”,弹出一下窗口

    Output Window Behavior

    Sometimes you will want to control how the output window behaves when running tasks. For instance, you may want to maximize editor space and only look at task output if you think there is a problem. The property showOutput controls this and the valid values are:

    • always - The output window is always brought to front. This is the default.
    • never - The user must explicitly bring the output window to the front using the View > Toggle Output command (Ctrl+Shift+U).
    • silent - The output window is brought to front only if no problem matchers are set for the task.

    command and tasks[]

    tasks.json takes a single command value which can be a task runner like gulp or grunt or any command line tool like a compiler or linter. By default the command will show up in the Tasks: Run Taskdropdown.

    You can also define multiple tasks in a tasks array in order to pass different arguments or use different settings when the command is run.

    Here's a simple example passing different arguments to the echo command:

     1 {
     2     "version": "0.1.0",
     3     "command": "echo",
     4     "isShellCommand": true,
     5     "args": [],
     6     "showOutput": "always",
     7     "echoCommand": true,
     8     "suppressTaskName": true,
     9     "tasks": [
    10         { 
    11             "taskName": "hello",
    12             "args": ["Hello World"]
    13         },
    14         { 
    15             "taskName": "bye",
    16             "args": ["Good Bye"]
    17         }
    18     ]
    19 }

    Some tasks.json properties such as showOutput and suppressTaskName can be set both globally and then overridden in specific tasks. The tasks args property values are appended to the global arguments.

    There are also tasks specific properties. One useful property is isBuildCommand, which if set to true, will run the task with the Tasks: Run Build Task (Ctrl+Shift+B) command.

    Running multiple commands

    What if you want to run different command line tools in your workspace? Defining multiple tasks in tasks.json is not yet fully supported by VS Code (see #981). You can work around this limitation by running your task commands through a shell command (sh on Linux and Mac, cmd on Windows).

    Here is an example to add two tasks for make and ls:

     1 {
     2     "version": "0.1.0",
     3     "command": "sh",
     4     "args": ["-c"],
     5     "isShellCommand": true,
     6     "showOutput": "always",
     7     "suppressTaskName": true,
     8     "tasks": [
     9         {
    10             "taskName": "make",
    11             "args": ["make"]
    12         },
    13         {
    14             "taskName": "ls",
    15             "args": ["ls"]
    16         }
    17     ]
    18 }

    Both tasks make and ls will be visible in the Tasks: Run Task dropdown.

    For Windows, you will need to pass the '/C' argument to cmd so that the tasks arguments are run.

        "command": "cmd",
        "args": ["/C"]

    Variable substitution

    When authoring tasks configurations, it is often useful to have a set of predefined common variables. VS Code supports variable substitution inside strings in the tasks.json file and has the following predefined variables:

    • ${workspaceRoot} the path of the folder opened in VS Code
    • ${workspaceRootFolderName} the name of the folder opened in VS Code without any solidus (/)
    • ${file} the current opened file
    • ${relativeFile} the current opened file relative to workspaceRoot
    • ${fileBasename} the current opened file's basename
    • ${fileDirname} the current opened file's dirname
    • ${fileExtname} the current opened file's extension
    • ${cwd} the task runner's current working directory on startup

    You can also reference environment variables through ${env.Name} (e.g. ${env.PATH}). Be sure to match the environment variable name's casing, for example env.Path on Windows.

    Below is an example of a configuration that passes the current opened file to the TypeScript compiler.

    1 {
    2     "command": "tsc",
    3     "args": ["${file}"]
    4 }

    Operating System Specific Properties

    The task system supports defining values (for example, the command to be executed) specific to an operating system. To do so, simply put an operating system specific literal into the tasks.jsonfile and specify the corresponding properties inside that literal.

    Below is an example that uses the Node.js executable as a command and is treated differently on Windows and Linux:

    1 {
    2     "version": "0.1.0",
    3     "windows": {
    4         "command": "C:\Program Files\nodejs\node.exe"
    5     },
    6     "linux": {
    7         "command": "/usr/bin/node"
    8     }
    9 }

    Valid operating properties are windows for Windows, linux for Linux and osx for Mac. Properties defined in an operating system specific scope override properties defined in the global scope.

    In the example below:

    1 {
    2     "version": "0.1.0",
    3     "showOutput": "never",
    4     "windows": {
    5         "showOutput": "always"
    6     }
    7 }
    8 Output from the executed task is never brought to front except for Windows where it is always shown.
  • 相关阅读:
    CompareUtil
    linux awk学习笔记
    linux用grep查找包含两个关键字的命令
    mysql 使用set names 解决乱码问题
    对私有静态方法进行单测
    使用JUnit测试预期异常
    Tortoise svn 冲突解决主要办法
    tortoise svn冲突解决
    word-break与word-wrap
    移动端适配
  • 原文地址:https://www.cnblogs.com/xiaofeiIDO/p/6146868.html
Copyright © 2011-2022 走看看