package.json 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222
  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.6",
  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.copyToClipboardCommand": {
  52. "type": "string",
  53. "default": "",
  54. "description": "Command to run to copy to clipboard. Leave empty to copy main program. Refer to the code as $PROGRAM",
  55. "scope": "resource"
  56. },
  57. "acmx.configuration.tasks": {
  58. "type": "string",
  59. "default": "",
  60. "description": "Path to default tasks file to include in the workspace.",
  61. "scope": "resource"
  62. },
  63. "acmx.configuration.launch": {
  64. "type": "string",
  65. "default": "",
  66. "description": "Path to default launch file to include in the workspace.",
  67. "scope": "resource"
  68. },
  69. "acmx.configuration.templatePath": {
  70. "type": "string",
  71. "default": "",
  72. "description": "Path to template file. Leave empty to use default template.",
  73. "scope": "resource"
  74. },
  75. "acmx.configuration.solutionPath": {
  76. "type": "string",
  77. "default": ".",
  78. "description": "Path to folder where contest will be created and stored. To set active workspace use `.`",
  79. "scope": "resource"
  80. },
  81. "acmx.configuration.extension": {
  82. "type": "string",
  83. "default": "cpp",
  84. "description": "Extension of the programming language you will use to code solutions. Default `cpp` for c++",
  85. "scope": "resource"
  86. },
  87. "acmx.companion.port": {
  88. "type": "number",
  89. "default": 10042,
  90. "description": "Point competitive-companion service to this port.",
  91. "scope": "resource"
  92. }
  93. }
  94. }
  95. ],
  96. "commands": [
  97. {
  98. "command": "acmx.addProblem",
  99. "title": "ACMX: New Problem"
  100. },
  101. {
  102. "command": "acmx.addContest",
  103. "title": "ACMX: New Contest"
  104. },
  105. {
  106. "command": "acmx.runSolution",
  107. "title": "ACMX: Run"
  108. },
  109. {
  110. "command": "acmx.openTestcase",
  111. "title": "ACMX: Open Test Case"
  112. },
  113. {
  114. "command": "acmx.addTestcase",
  115. "title": "ACMX: Add Test Case"
  116. },
  117. {
  118. "command": "acmx.coding",
  119. "title": "ACMX: View: Code"
  120. },
  121. {
  122. "command": "acmx.stress",
  123. "title": "ACMX: Stress"
  124. },
  125. {
  126. "command": "acmx.upgrade",
  127. "title": "ACMX: Upgrade"
  128. },
  129. {
  130. "command": "acmx.compile",
  131. "title": "ACMX: Compile"
  132. },
  133. {
  134. "command": "acmx.setChecker",
  135. "title": "ACMX: Set Checker"
  136. },
  137. {
  138. "command": "acmx.debugTestCase",
  139. "title": "Select Test Case"
  140. },
  141. {
  142. "command": "acmx.copyToClipboard",
  143. "title": "ACMX: Copy Submission"
  144. }
  145. ],
  146. "keybindings": [
  147. {
  148. "command": "acmx.compile",
  149. "key": "ctrl+alt+b"
  150. },
  151. {
  152. "command": "acmx.runSolution",
  153. "key": "ctrl+alt+l"
  154. },
  155. {
  156. "command": "acmx.stress",
  157. "key": "ctrl+alt+k"
  158. },
  159. {
  160. "command": "acmx.coding",
  161. "key": "ctrl+alt+o"
  162. },
  163. {
  164. "command": "acmx.upgrade",
  165. "key": "ctrl+alt+u"
  166. },
  167. {
  168. "command": "acmx.copyToClipboard",
  169. "key": "ctrl+alt+m"
  170. }
  171. ],
  172. "menus": {
  173. "explorer/context": [
  174. {
  175. "command": "acmx.debugTestCase",
  176. "group": "acmx@1",
  177. "when": "resourceExtname == .in"
  178. }
  179. ],
  180. "commandPalette": [
  181. {
  182. "command": "acmx.debugTestCase",
  183. "when": "false"
  184. }
  185. ]
  186. }
  187. },
  188. "scripts": {
  189. "vscode:prepublish": "npm run compile",
  190. "compile": "tsc -p ./",
  191. "watch": "tsc -watch -p ./",
  192. "postinstall": "node ./node_modules/vscode/bin/install",
  193. "test": "npm run compile && node ./node_modules/vscode/bin/test"
  194. },
  195. "repository": {
  196. "type": "git",
  197. "url": "https://github.com/mfornet/acmx.git"
  198. },
  199. "bugs": {
  200. "url": "https://github.com/mfornet/acmx/issues",
  201. "email": "mfornet94@gmail.com"
  202. },
  203. "devDependencies": {
  204. "@types/got": "^9.3.0",
  205. "@types/mocha": "^2.2.42",
  206. "@types/node": "^8.10.25",
  207. "@types/md5-file": "^4.0.0",
  208. "tslint": "^5.8.0",
  209. "typescript": "^3.1.4",
  210. "vscode": "^1.1.33"
  211. },
  212. "dependencies": {
  213. "got": "^9.5.0",
  214. "jssoup": "0.0.10",
  215. "sync-request": "^6.0.0",
  216. "unescape": "^1.0.1",
  217. "express": "^4.16.4",
  218. "body-parser": "^1.18.3",
  219. "md5-file": "^4.0.0",
  220. "clipboardy": "^2.2.0"
  221. }
  222. }