【问题标题】:VS Code Setting License Headers Automatically for Source FilesVS Code 自动为源文件设置许可证头
【发布时间】:2020-12-15 19:55:55
【问题描述】:

我是 VS Code 的新手,因为我大部分时间都在使用 IntelliJ。我现在想在我的 VS Code 中将许可证头设置为全局模板,以便它自动应用于我创建的任何新文件。

我安装了 psioniq psi 标头并尝试按照文档进行操作,但我不确定如何设置它。根据文档,我需要按 F1 并输入 Header Change Log Insert,但是一旦执行此操作,我就会看到如下屏幕所示的错误消息:

知道可能是什么问题吗?

【问题讨论】:

    标签: visual-studio-code vscode-settings vscode-extensions


    【解决方案1】:

    我自己想通了,这就是我必须做的:

    要将标头配置为模板,我必须通过从文件 -> 首选项 -> 设置导航打开 settings.json,然后按照下面的屏幕截图进行操作。

    我的 settings.json 内容如下:

    {
        "workbench.iconTheme": "vscode-icons",
        "workbench.editorAssociations": [
            {
                "viewType": "jupyter.notebook.ipynb",
                "filenamePattern": "*.ipynb"
            }
        ],
        "files.autoSave": "afterDelay",
        "psi-header.variables": [
            ["author", "myuser"],
            ["url", "<https://my.github.com/myuser>"]
        ],
        "psi-header.templates": [
            {
                "language": "*",
                "template": [
                    "Copyright (c) <<year>> <<author>> <<url>>",
                    "",
                    "Created Date: <<filecreated('dddd, MMMM Do YYYY, h:mm:ss a')>>",
                    "Author: <<author>>",
                    "",
                    "Redistribution and use in source and binary forms, with or without",  
                    "modification, are permitted provided that the following conditions are", 
                    "met:",
                    "",
                    "1. Redistributions of source code must retain the above copyright notice,", 
                    "this list of conditions and the following disclaimer.",
                    "",
                    "2. Redistributions in binary form must reproduce the above copyright", 
                    "notice, this list of conditions and the following disclaimer in the",   
                    "documentation and/or other materials provided with the distribution.",
                    "",
                    "3. Neither the name of the copyright holder nor the names of its", 
                    "contributors may be used to endorse or promote products derived from this",
                    "software without specific prior written permission.",
                    "",
                    "THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS", 
                    "IS AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,", 
                    "THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR ",
                    "PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR", 
                    "CONTRIBUTORS BE", 
                    "LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR",
                    "CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF", 
                    "SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS", 
                    "INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN", 
                    "CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)", 
                    "ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF", 
                    "THE POSSIBILITY OF SUCH DAMAGE.",
                    "",
                    "HISTORY:",
                    "Date      \tBy\tComments",
                    "----------\t---\t----------------------------------------------------------"
                ],
                "changeLogCaption": "HISTORY:",
                "changeLogHeaderLineCount": 2,
                "changeLogEntryTemplate": [
                    "<<dateformat('YYYY-MM-DD')>>\t<<initials>>\t"
                ]
            }
        ]
    }
    

    这样就会产生如下头文件:

    /*
     * Copyright (c) 2020 myuser <https://my.github.com/myuser>
     * 
     * Created Date: Thursday, October 29th 2020, 9:08:05 am
     * Author: myuser
     * 
     * Redistribution and use in source and binary forms, with or without
     * modification, are permitted provided that the following conditions are
     * met:
     * 
     * 1. Redistributions of source code must retain the above copyright notice,
     * this list of conditions and the following disclaimer.
     * 
     * 2. Redistributions in binary form must reproduce the above copyright
     * notice, this list of conditions and the following disclaimer in the
     * documentation and/or other materials provided with the distribution.
     * 
     * 3. Neither the name of the copyright holder nor the names of its
     * contributors may be used to endorse or promote products derived from this
     * software without specific prior written permission.
     * 
     * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS
     * IS AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
     * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 
     * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
     * CONTRIBUTORS BE
     * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
     * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
     * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
     * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
     * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
     * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
     * THE POSSIBILITY OF SUCH DAMAGE.
     * 
     * HISTORY:
     * Date         By  Comments
     * ----------   --- ----------------------------------------------------------
     */
    

    【讨论】:

      【解决方案2】:

      说反对你点击这里显示许可证标题

      clt+alt+h x 2
      

      【讨论】:

        猜你喜欢
        • 2021-08-25
        • 2016-11-25
        • 1970-01-01
        • 2018-02-03
        • 2011-09-06
        • 2021-10-05
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多