【问题标题】:How to escape python block comments when creating vscode snippets?创建 vscode 片段时如何转义 python 块注释?
【发布时间】:2022-01-02 12:39:46
【问题描述】:

我为 python 函数定义创建了一个 vscode sn-p,我想知道这是否是转义 python 块 cmets (""" """) 的唯一和/或推荐方法。

全局 sn-ps 文件

{   
    "def ": {
            "scope": "python",
            "prefix": "def func",
            "body": [
                "def $1 ():
                \"\"\"\" \"\"\"\    "
            ],
            "description": "Python function"
    }
}

输出

def  ():  
""" """   

【问题讨论】:

    标签: python json visual-studio-code vscode-snippets


    【解决方案1】:

    在正文的单独字符串中指定每一行:

    您可以选择文档字符串分隔符的种类。

    文档字符串应缩进 (\t) 和正文。

    {   
      "def": {
        "scope": "python",
        "prefix": "def func",
        "body": [
          "def $1 ():",
          "\t${2|\"\"\",''',\",'|} $3 $2",
          "\t$0"
        ],
        "description": "Python function"
      }
    }
    

    【讨论】:

    • 你是对的,这应该是缩进的。但是让我们假设不需要缩进。你将如何逃避屏蔽评论?
    • 我刚刚看到您将正文写成三个单独的行/逗号分隔。在编写 json 代码时通常会建议这样做吗?
    • @RSale 您可以将它们与\n 组合成一个字符串,但如果您有很多行,单独的字符串会使它更具可读性
    • @RSale 可以选择doc字符串分隔符的种类,不用"""
    【解决方案2】:

    我刚刚看到 vscode 有一个用于块 cmets 的内置变量。 块注释后的代码也应该缩进。

    
    "def": {
            "scope": "python",
            "prefix": "def func",
            "body": [
                "def $1 ():",
                "\t$BLOCK_COMMENT_START $2 $BLOCK_COMMENT_END",
                "\t$0"
            ],
            "description": "Python function"
    
    

    【讨论】:

      猜你喜欢
      • 2018-04-18
      • 2019-08-22
      • 1970-01-01
      • 1970-01-01
      • 2021-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多