digital-ide/package.json

461 lines
16 KiB
JSON

{
"name": "digital-ide",
"displayName": "digital-ide",
"description": "all in one vscode plugin for Verilog/VHDL development",
"version": "0.3.0",
"engines": {
"vscode": "^1.72.0"
},
"main": "./out/extension.js",
"categories": [
"Extension Packs",
"Programming Languages",
"Snippets"
],
"activationEvents": [
"onLanguage:verilog",
"onLanguage:vhdl",
"onLanguage:systemverilog",
"onCommand:digital-ide.property-json.generate",
"onCommand:digital-ide.property-json.overwrite",
"workspaceContains:.vscode/property.json"
],
"contributes": {
"configuration": {
"title": "Digital-IDE",
"properties": {
"lib.custom.path": {
"scope": "window",
"type": "string",
"default": "",
"description": "path of the dictionary of \"custom\" in library"
},
"function.doc.webview.backgroundImage": {
"type": "string",
"default": "",
"description": "url of the background image"
},
"function.doc.pdf.scale": {
"type": "number",
"default": 1,
"description": "scale of the exported pdf"
},
"function.doc.pdf.printBackground": {
"type": "boolean",
"default": true,
"description": "whether print background"
},
"function.doc.pdf.landscape": {
"type": "boolean",
"default": false,
"description": "whether export pdf as a landscape style"
},
"function.doc.pdf.format": {
"type": "string",
"default": "A4",
"description": "format of pdf size"
},
"function.doc.pdf.displayHeaderFooter": {
"type": "boolean",
"default": false,
"description": "display header and footer in the exported pdf"
},
"function.doc.pdf.browserPath": {
"type": "string",
"default": "C:/Program Files (x86)/Microsoft/Edge/Application/msedge.exe",
"description": "the absolute path of edge or chrome, we need browser to render pdf"
},
"function.doc.pdf.margin.top": {
"type": "number",
"default": 0.5,
"description": "top margin of exported pdf, unit cm"
},
"function.doc.pdf.margin.right": {
"type": "number",
"default": 0.5,
"description": "top margin of exported pdf, unit cm"
},
"function.doc.pdf.margin.bottom": {
"type": "number",
"default": 0.5,
"description": "top margin of exported pdf, unit cm"
},
"function.doc.pdf.margin.left": {
"type": "number",
"default": 0.5,
"description": "top margin of exported pdf, unit cm"
},
"function.doc.pdf.headerTemplate": {
"type": "string",
"default": "<div style=\"font-size: 9px; margin-left: 1cm;\"> <span class='title'></span></div> <div style=\"font-size: 9px; margin-left: auto; margin-right: 1cm; \"> <span class='date'></span></div>",
"description": "html template of header, if displayHeaderFooter is set to false, this setting will be ignored"
},
"function.doc.pdf.footerTemplate": {
"type": "string",
"default": "<div style=\"font-size: 9px; margin-left: 1cm;\"> <span class='title'></span></div> <div style=\"font-size: 9px; margin-left: auto; margin-right: 1cm; \"> <span class='date'></span></div>",
"description": "<div style=\"font-size: 9px; margin: 0 auto;\"> <span class='pageNumber'></span> / <span class='totalPages'></span></div>"
}
}
},
"commands": [
{
"command": "digital-ide.property-json.generate",
"title": "%digital-ide.property-json.generate.title%",
"category": "Digital-IDE"
},
{
"command": "digital-ide.property-json.overwrite",
"title": "%digital-ide.property-json.overwrite.title%",
"category": "Digital-IDE"
},
{
"command": "digital-ide.hdlDoc.exportFile",
"title": "%digital-ide.hdlDoc.exportFile.title%",
"category": "Digital-IDE"
},
{
"command": "digital-ide.hdlDoc.exportProject",
"title": "%digital-ide.hdlDoc.exportProject.title%",
"category": "Digital-IDE"
},
{
"command": "digital-ide.hdlDoc.showWebview",
"title": "%digital-ide.hdlDoc.showWebview.title%",
"category": "Digital-IDE",
"icon": {
"light": "images/svg/light/documentation.svg",
"dark": "images/svg/dark/documentation.svg"
}
},
{
"command": "digital-ide.tool.instance",
"title": "%digital-ide.tool.instance.title%",
"category": "Digital-IDE"
},
{
"command": "digital-ide.tool.testbench",
"title": "%digital-ide.tool.testbench.title%",
"category": "Digital-IDE"
}
],
"menus": {
"editor/title": [
{
"when": "editorLangId == verilog || editorLangId == systemverilog || editorLangId == vhdl",
"command": "digital-ide.hdlDoc.showWebview",
"group": "navigation@4"
}
]
},
"keybindings": [
{
"command": "digital-ide.tool.instance",
"key": "alt+i",
"mac": "alt+i",
"when": "editorTextFocus"
},
{
"command": "digital-ide.tool.testbench",
"key": "alt+t",
"mac": "alt+t",
"when": "editorTextFocus"
}
],
"languages": [
{
"id": "tcl",
"aliases": [
"TCL",
"Xilinx Constraints File",
"Synopsis Constraints File"
],
"extensions": [
".tcl",
".sdc",
".xdc",
".fdc"
],
"configuration": "./config/tcl.configuration.json"
},
{
"id": "bd",
"extensions": [
".bd"
]
},
{
"id": "vhdl",
"aliases": [
"VHDL",
"vhdl"
],
"extensions": [
".vhd",
".vhdl",
".vho",
".vht"
],
"configuration": "./config/vhdl.configuration.json"
},
{
"id": "verilog",
"aliases": [
"Verilog",
"verilog"
],
"extensions": [
".v",
".V",
".vh",
".vl"
],
"configuration": "./config/verilog.configuration.json"
},
{
"id": "systemverilog",
"aliases": [
"System Verilog",
"systemverilog"
],
"extensions": [
".sv",
".SV"
],
"configuration": "./config/systemverilog.configuration.json"
},
{
"id": "arm",
"aliases": [
"ARM",
"arm"
],
"extensions": [
".s",
".S",
".asm",
".sx"
],
"configuration": "./config/arm.configuration.json"
},
{
"id": "linkerscript",
"aliases": [
"LinkerScript",
"linkerscript"
],
"extensions": [
".ld",
".dld"
],
"configuration": "./config/link.configuration.json"
}
],
"jsonValidation": [
{
"fileMatch": "property.json",
"url": "./project/property-schema.json"
}
],
"grammars": [
{
"language": "linkerscript",
"scopeName": "source.ld",
"path": "./syntaxes/link.json"
},
{
"language": "arm",
"scopeName": "source.arm",
"path": "./syntaxes/arm.json"
},
{
"language": "tcl",
"scopeName": "source.tcl",
"path": "./syntaxes/tcl.json"
},
{
"language": "vhdl",
"scopeName": "source.vhdl",
"path": "./syntaxes/vhdl.json"
},
{
"language": "verilog",
"scopeName": "source.verilog",
"path": "./syntaxes/verilog.json"
},
{
"language": "systemverilog",
"scopeName": "source.systemverilog",
"path": "./syntaxes/systemverilog.json"
}
],
"snippets": [
{
"language": "tcl",
"path": "snippets/tcl.json"
},
{
"language": "vhdl",
"path": "snippets/vhdl.json"
},
{
"language": "verilog",
"path": "snippets/svlog.json"
},
{
"language": "systemverilog",
"path": "snippets/svlog.json"
}
],
"icons": {
"instance-verilog": {
"description": "icon of verilog in TOOL.instance",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\e7a8"
}
},
"instance-vhdl": {
"description": "icon of verilog in TOOL.instance",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\e6b3"
}
},
"instance-port": {
"description": "port of verilog in TOOL.instance",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\e638"
}
},
"instance-param": {
"description": "param of verilog in TOOL.instance",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\e655"
}
},
"instance-module": {
"description": "module of verilog in TOOL.instance",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\e60b"
}
},
"instance-input": {
"description": "input",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\e908"
}
},
"instance-output": {
"description": "output",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\e7b0"
}
},
"instance-inout": {
"description": "inout",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\ea19"
}
},
"export-html": {
"description": "export html",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\e633"
}
},
"export-markdown": {
"description": "export markdown",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\ee68"
}
},
"export-pdf": {
"description": "export pdf",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\e684"
}
},
"libpick-folder": {
"description": "libpick folder",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\e600"
}
},
"libpick-verilog": {
"description": "libpick verilog",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\e7a8"
}
},
"libpick-vhdl": {
"description": "libpick vhdl",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\e6b3"
}
},
"libpick-common": {
"description": "libpick common",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\e622"
}
},
"libpick-custom": {
"description": "libpick custom",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\e623"
}
},
"libpick-unknown": {
"description": "libpick unknown",
"default": {
"fontPath": "./images/icons/iconfont.woff2",
"fontCharacter": "\\e62a"
}
}
}
},
"scripts": {
"vscode:prepublish": "npm run compile",
"compile": "tsc -p ./",
"watch": "tsc -watch -p ./",
"pretest": "npm run compile && npm run lint",
"lint": "eslint src --ext ts",
"test": "node ./out/test/runTest.js"
},
"devDependencies": {
"@types/glob": "^8.0.0",
"@types/mocha": "^10.0.0",
"@types/node": "16.x",
"@types/showdown": "^2.0.0",
"@types/vscode": "^1.74.0",
"@typescript-eslint/eslint-plugin": "^5.42.0",
"@typescript-eslint/parser": "^5.42.0",
"@vscode/test-electron": "^2.2.0",
"eslint": "^8.26.0",
"glob": "^8.0.3",
"mocha": "^10.1.0",
"typescript": "^4.8.4"
},
"dependencies": {
"chokidar": "^3.5.3",
"puppeteer-core": "^19.4.1",
"showdown": "^2.1.0",
"state-machine-cat": "^9.2.5",
"temp": "^0.9.4",
"wavedrom": "^2.9.1"
}
}