Visual Studio Code 用户自定代码片段 (json 设置代码生成)

Visual Studio Code 的自定义代码片段可以让用户键入几个关键字快速贴模板, 在打 Codeforces 之类的比赛的时候可以节省宝贵的时间.

编辑设置代码的时候需要加很多"", 还有制表符转四个空格和转义字符的问题. 于是写个了"生成 json 设置的代码"的代码方便自己.

其实算个小模拟题, 也许哪天真能出出来. 主要是处理引号和斜杠的转义问题. 下面是代码:

#include <cstring>
#include <iostream>
#include <vector>
using namespace std;

vector<string> v;
string s;
string name;

int main() {
    cin >> name;
    while (getline(cin, s)) {
        if (s == "`") {
            cout << "\"" << name << "\": {\n";
            cout << "    \"prefix\": \"" << name << "\",\n";
            cout << "    \"body\": [\n";
            for (int i = 1; i < v.size(); i++) {
                cout << "        \"";
                for (auto e : v[i]) {
                    if (e == '"' || e == '\\') cout << "\\";
                    cout << e;
                }
                cout << "\",\n";
            }

            break;
        } else
            v.push_back(s);
    }
    cout << "    ],\n";
    cout << "    \"description\": \"" << name << "\"\n";
    cout << "},\n";
    getchar();
    getchar();
}

使用方法: 第一行输入自己希望要的关键字, 例如输入POJ, 然后换行, 复制进你的模板, 比如一堆头文件, 最后一行输入反引号`作为结束符. 输出就是可以直接用的 json 代码, 复制粘贴到"文件-首选项-用户代码片段"即可.

可以凭个人喜好再改一改 description 和贴完代码后的光标位置($0)等.

这个代码写于三个月前, 感觉不至于特别鸡肋:)

posted @ 2020-05-16 21:30  Linqi05  阅读(285)  评论(0编辑  收藏  举报