package.json 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207
  1. {
  2. "name": "acmx",
  3. "displayName": "acmX",
  4. "description": "Competitive Programming made simple",
  5. "icon": "images/logo.png",
  6. "publisher": "marx24",
  7. "version": "0.2.5",
  8. "license": "MIT",
  9. "engines": {
  10. "vscode": "^1.30.0"
  11. },
  12. "author": {
  13. "name": "Marcelo Fornet"
  14. },
  15. "categories": [
  16. "Other"
  17. ],
  18. "activationEvents": [
  19. "*"
  20. ],
  21. "main": "./out/extension",
  22. "contributes": {
  23. "configuration": [
  24. {
  25. "title": "acmX",
  26. "properties": {
  27. "acmx.run.timeLimit": {
  28. "type": "number",
  29. "default": 2,
  30. "description": "Maximum time limit in seconds to run the program on each test case.",
  31. "scope": "resource"
  32. },
  33. "acmx.stress.times": {
  34. "type": "number",
  35. "default": 10,
  36. "description": "Number of times to run the solution in stress mode.",
  37. "scope": "resource"
  38. },
  39. "acmx.execution.compile": {
  40. "type": "string",
  41. "default": "g++ -std=c++11 $PROGRAM -o $OUTPUT",
  42. "description": "Command to compile the program. Refer to the code as $PROGRAM, and output file as $OUTPUT.",
  43. "scope": "resource"
  44. },
  45. "acmx.execution.pythonPath": {
  46. "type": "string",
  47. "default": "/usr/bin/python3",
  48. "description": "Path to python executable.",
  49. "scope": "resource"
  50. },
  51. "acmx.configuration.tasks": {
  52. "type": "string",
  53. "default": "",
  54. "description": "Path to default tasks file to include in the workspace.",
  55. "scope": "resource"
  56. },
  57. "acmx.configuration.launch": {
  58. "type": "string",
  59. "default": "",
  60. "description": "Path to default launch file to include in the workspace.",
  61. "scope": "resource"
  62. },
  63. "acmx.configuration.templatePath": {
  64. "type": "string",
  65. "default": "",
  66. "description": "Path to template file. Leave empty to use default template.",
  67. "scope": "resource"
  68. },
  69. "acmx.configuration.solutionPath": {
  70. "type": "string",
  71. "default": ".",
  72. "description": "Path to folder where contest will be created and stored. To set active workspace use `.`",
  73. "scope": "resource"
  74. },
  75. "acmx.configuration.extension": {
  76. "type": "string",
  77. "default": "cpp",
  78. "description": "Extension of the programming language you will use to code solutions. Default `cpp` for c++",
  79. "scope": "resource"
  80. },
  81. "acmx.companion.port": {
  82. "type": "number",
  83. "default": 10042,
  84. "description": "Point competitive-companion service to this port.",
  85. "scope": "resource"
  86. }
  87. }
  88. }
  89. ],
  90. "commands": [
  91. {
  92. "command": "acmx.addProblem",
  93. "title": "ACMX: New Problem"
  94. },
  95. {
  96. "command": "acmx.addContest",
  97. "title": "ACMX: New Contest"
  98. },
  99. {
  100. "command": "acmx.runSolution",
  101. "title": "ACMX: Run"
  102. },
  103. {
  104. "command": "acmx.openTestcase",
  105. "title": "ACMX: Open Test Case"
  106. },
  107. {
  108. "command": "acmx.addTestcase",
  109. "title": "ACMX: Add Test Case"
  110. },
  111. {
  112. "command": "acmx.coding",
  113. "title": "ACMX: View: Code"
  114. },
  115. {
  116. "command": "acmx.stress",
  117. "title": "ACMX: Stress"
  118. },
  119. {
  120. "command": "acmx.upgrade",
  121. "title": "ACMX: Upgrade"
  122. },
  123. {
  124. "command": "acmx.compile",
  125. "title": "ACMX: Compile"
  126. },
  127. {
  128. "command": "acmx.setChecker",
  129. "title": "ACMX: Set Checker"
  130. },
  131. {
  132. "command": "acmx.debugTestCase",
  133. "title": "Select Test Case"
  134. }
  135. ],
  136. "keybindings": [
  137. {
  138. "command": "acmx.compile",
  139. "key": "ctrl+alt+b"
  140. },
  141. {
  142. "command": "acmx.runSolution",
  143. "key": "ctrl+alt+l"
  144. },
  145. {
  146. "command": "acmx.stress",
  147. "key": "ctrl+alt+k"
  148. },
  149. {
  150. "command": "acmx.coding",
  151. "key": "ctrl+alt+o"
  152. },
  153. {
  154. "command": "acmx.upgrade",
  155. "key": "ctrl+alt+u"
  156. }
  157. ],
  158. "menus": {
  159. "explorer/context": [
  160. {
  161. "command": "acmx.debugTestCase",
  162. "group": "acmx@1",
  163. "when": "resourceExtname == .in"
  164. }
  165. ],
  166. "commandPalette": [
  167. {
  168. "command": "acmx.debugTestCase",
  169. "when": "false"
  170. }
  171. ]
  172. }
  173. },
  174. "scripts": {
  175. "vscode:prepublish": "npm run compile",
  176. "compile": "tsc -p ./",
  177. "watch": "tsc -watch -p ./",
  178. "postinstall": "node ./node_modules/vscode/bin/install",
  179. "test": "npm run compile && node ./node_modules/vscode/bin/test"
  180. },
  181. "repository": {
  182. "type": "git",
  183. "url": "https://github.com/mfornet/acmx.git"
  184. },
  185. "bugs": {
  186. "url": "https://github.com/mfornet/acmx/issues",
  187. "email": "mfornet94@gmail.com"
  188. },
  189. "devDependencies": {
  190. "@types/got": "^9.3.0",
  191. "@types/mocha": "^2.2.42",
  192. "@types/node": "^8.10.25",
  193. "@types/md5-file": "^4.0.0",
  194. "tslint": "^5.8.0",
  195. "typescript": "^3.1.4",
  196. "vscode": "^1.1.33"
  197. },
  198. "dependencies": {
  199. "got": "^9.5.0",
  200. "jssoup": "0.0.10",
  201. "sync-request": "^6.0.0",
  202. "unescape": "^1.0.1",
  203. "express": "^4.16.4",
  204. "body-parser": "^1.18.3",
  205. "md5-file": "^4.0.0"
  206. }
  207. }