shell.json 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. {
  2. "$schema": "http://json-schema.org/draft-07/schema",
  3. "title": "JupyterLab Shell",
  4. "description": "JupyterLab Shell layout settings.",
  5. "jupyter.lab.menus": {
  6. "context": [
  7. {
  8. "command": "sidebar:switch",
  9. "selector": ".jp-SideBar .lm-TabBar-tab",
  10. "rank": 500
  11. }
  12. ]
  13. },
  14. "properties": {
  15. "hiddenMode": {
  16. "type": "string",
  17. "title": "Hidden mode of main panel widgets",
  18. "description": "The method for hiding widgets in the main dock panel. Using `scale` will increase performance on Firefox but don't use it with Chrome, Chromium or Edge. Similar performance gains are seen with `contentVisibility` which is only available in Chromium-based browsers.",
  19. "enum": ["display", "scale", "contentVisibility"],
  20. "default": "display"
  21. },
  22. "startMode": {
  23. "enum": ["", "single", "multiple"],
  24. "title": "Start mode: ``, `single` or `multiple`",
  25. "description": "The mode under which JupyterLab should start. If empty, the mode will be imposed by the URL",
  26. "default": ""
  27. },
  28. "layout": {
  29. "type": "object",
  30. "title": "Customize shell widget positioning",
  31. "description": "Overrides default widget position in the application layout\ne.g. to position terminals in the right sidebar in multiple documents mode and in the down are in single document mode, {\n \"single\": { \"Terminal\": { \"area\": \"down\" } },\n \"multiple\": { \"Terminal\": { \"area\": \"right\" } }\n}.",
  32. "properties": {
  33. "single": {
  34. "$ref": "#/definitions/layout",
  35. "default": {
  36. "Linked Console": { "area": "down" },
  37. "Inspector": { "area": "down" },
  38. "Cloned Output": { "area": "down" }
  39. }
  40. },
  41. "multiple": { "$ref": "#/definitions/layout", "default": {} }
  42. },
  43. "default": {
  44. "single": {
  45. "Linked Console": { "area": "down" },
  46. "Inspector": { "area": "down" },
  47. "Cloned Output": { "area": "down" }
  48. },
  49. "multiple": {}
  50. },
  51. "additionalProperties": false
  52. }
  53. },
  54. "additionalProperties": false,
  55. "type": "object",
  56. "definitions": {
  57. "layout": {
  58. "type": "object",
  59. "properties": {
  60. "[\\w-]+": {
  61. "type": "object",
  62. "properties": {
  63. "area": {
  64. "enum": ["main", "left", "right", "down"]
  65. },
  66. "options": {
  67. "$ref": "#/definitions/options"
  68. }
  69. },
  70. "additionalProperties": false
  71. }
  72. }
  73. },
  74. "options": {
  75. "type": "object",
  76. "properties": {
  77. "mode": {
  78. "type": "string",
  79. "enum": [
  80. "split-top",
  81. "split-left",
  82. "split-right",
  83. "split-bottom",
  84. "tab-before",
  85. "tab-after"
  86. ]
  87. },
  88. "rank": { "type": "number", "minimum": 0 },
  89. "ref": {
  90. "type": "string",
  91. "minLength": 1
  92. }
  93. }
  94. }
  95. }
  96. }