-
Notifications
You must be signed in to change notification settings - Fork 0
/
package.json
89 lines (89 loc) · 4.51 KB
/
package.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
{
"name": "copy-paste-template",
"displayName": "Copy Templater",
"description": "A VSCode extension designed to streamline the process of sharing code snippets for Language Learning Model (LLM) input. It allows developers to quickly format and copy code with the proper markdown formatting and contextual information like the file path.",
"version": "0.0.1",
"publisher": "josh-cooper",
"repository": {
"type": "git",
"url": "https://github.com/josh-cooper/vscode-copy-paste-template"
},
"engines": {
"vscode": "^1.89.0"
},
"categories": [
"Other",
"Programming Languages"
],
"activationEvents": [],
"main": "./dist/extension.js",
"icon": "assets/extension-icon.png",
"contributes": {
"configuration": {
"title": "Copy Templater",
"properties": {
"copy-paste-template.template": {
"type": "string",
"default": "{filePath}{range}\n```\n{text}\n```\n",
"markdownDescription": "This template determines the format of the text that is copied to the clipboard. You can use placeholders to include specific pieces of information:\n\n- `{filePath}`: The relative path of the file.\n- `{range}`: The range of the selection, formatted according to the `copy-paste-template.rangeTemplate` configuration. This includes the start line, end line, start character, and end character of the selection.\n- `{text}`: The selected text.\n\nFor example, the default template will result in a copy that includes the file path, the range of the selection, and the selected text, each on a separate line. Note that the selected text is enclosed in triple backticks (\\`\\`\\`), which is the markdown syntax for a code block.\n\nYou can modify this template to suit your needs. Just make sure to keep the placeholders inside curly braces `{}`.",
"editPresentation": "multilineText",
"order": 1
},
"copy-paste-template.rangeTemplate": {
"type": "string",
"default": ":{startLine}:{startChar}-{endLine}:{endChar}",
"markdownDescription": "This template determines the format of the range of the selection that is included in the copied text. You can use placeholders to include specific pieces of information:\n\n- `{startLine}`: The line number where the selection starts.\n- `{endLine}`: The line number where the selection ends.\n- `{startChar}`: The character position where the selection starts.\n- `{endChar}`: The character position where the selection ends.\n\nFor example, the default template will result in a range that includes the start line and character, and the end line and character, separated by a dash. If the selection starts and ends on the same line and character, this will be a single number.\n\nYou can modify this template to suit your needs. Just make sure to keep the placeholders inside curly braces `{}`.",
"editPresentation": "multilineText",
"order": 2
},
"copy-paste-template.removeRootIndentation": {
"type": "boolean",
"default": true,
"markdownDescription": "Remove any root indentation from the copied selection.",
"order": 3
}
}
},
"commands": [
{
"command": "copy-paste-template.copySelection",
"title": "Copy Formatted Selection"
},
{
"command": "copy-paste-template.copyFile",
"title": "Copy Formatted Entire File"
}
]
},
"scripts": {
"vscode:prepublish": "npm run package",
"compile": "npm run check-types && npm run lint && node esbuild.js",
"watch": "npm-run-all -p watch:*",
"watch:esbuild": "node esbuild.js --watch",
"watch:tsc": "tsc --noEmit --watch --project tsconfig.json",
"package": "npm run check-types && npm run lint && node esbuild.js --production",
"compile-tests": "tsc -p . --outDir out",
"watch-tests": "tsc -p . -w --outDir out",
"pretest": "npm run compile-tests && npm run compile && npm run lint",
"check-types": "tsc --noEmit",
"lint": "eslint src --ext ts",
"test": "vscode-test",
"deploy": "vsce publish"
},
"devDependencies": {
"@types/mocha": "^10.0.6",
"@types/node": "18.x",
"@types/sinon": "^17.0.3",
"@types/vscode": "^1.89.0",
"@typescript-eslint/eslint-plugin": "^7.7.1",
"@typescript-eslint/parser": "^7.7.1",
"@vscode/test-cli": "^0.0.9",
"@vscode/test-electron": "^2.3.9",
"@vscode/vsce": "^2.26.1",
"esbuild": "0.20.2",
"eslint": "^8.57.0",
"npm-run-all": "^4.1.5",
"sinon": "^18.0.0",
"typescript": "^5.4.5"
}
}