Skip to content

自定义题目文件的相对文件夹路径和文件名

Sheng Chen edited this page Sep 10, 2019 · 2 revisions

快速上手

你可以通过设置 leetcode.filePath 选项来达到自定义题目文件的相对文件夹路径和文件名,例如:

"leetcode.filePath": {
    "default": {
        // 相对路径
        "folder": "",
        // 文件名
        "filename": "${id}.${kebab-case-name}.${ext}"
    }
}

高级用法

简单地说,该设置项具有如下框架:

"leetcode.filePath": {
    "default": {
        "folder": "",
        "filename": "${id}.${kebab-case-name}.${ext}"
    },
    "<语言>": {
        "folder": "<relative folder path>",
        "filename": "<file name template>"
    },
    "<语言>": {
        "folder": "<relative folder path>",
        "filename": "<file name template>"
    },
    ...
}

为不同语言进行设定

如果你通过 "<语言>" 提供了某种语言的设定,插件在生成该语言的文件时,会读取属于该语言的配置。不然的话,插件会使用默认设置:"default"。 目前下列语言已被支持:

  • bash
  • c
  • cpp
  • csharp
  • golang
  • java
  • javascript
  • kotlin
  • mysql
  • php
  • python
  • python3
  • ruby
  • rust
  • scala
  • swift

自定义相对文件夹路径名

你可以通过 folder 这一子项自定义相对文件夹路径名。并且你可以使用一些特殊的变量,这些变量将会被插件动态解析:

  • ${tag}: 题目的考察类别
  • ${language}: 所用的编程语言
  • ${difficulty}: 题目的难度
  • ${company}: 题目所属于的公司名

例如:

"folder": "${tag}-${difficulty}"

自定义文件名

你还可以通过 filename 这一子项自定义文件名。并且你可以使用一些特殊的变量,这些变量将会被插件动态解析:

  • ${id}: 题目的序号
  • ${name}: 题目的原始名称
  • ${camelCaseName}: 采用驼峰命名格式的题目名称, 如: leetCode
  • ${PascalCaseName}: 采用帕斯卡命名格式的题目名称,如: LeetCode
  • ${kebab-case-name}: 采用烤肉串命名格式的题目名称,如: leet-code
  • ${snake_case_name}: 采用蛇式命名格式的题目名称,如: leet_code
  • ${ext}: 编程语言的后缀名
  • ${tag}: 题目的考察类别
  • ${language}: 所用的编程语言
  • ${difficulty}: 题目的难度
  • ${company}: 题目所属于的公司名

例如:

"filename": "${id}-${kebab-case-name}.${ext}"