{
  "jupyter.lab.setting-icon": "ui-components:notebook",
  "jupyter.lab.setting-icon-label": "Notebook",
  "jupyter.lab.menus": {
    "main": [
      {
        "id": "jp-mainmenu-file",
        "items": [
          {
            "type": "submenu",
            "submenu": {
              "id": "jp-mainmenu-file-new",
              "items": [
                {
                  "command": "notebook:create-new",
                  "rank": 10
                }
              ]
            }
          }
        ]
      },
      {
        "id": "jp-mainmenu-edit",
        "items": [
          {
            "type": "separator",
            "rank": 4
          },
          {
            "command": "notebook:undo-cell-action",
            "rank": 4
          },
          {
            "command": "notebook:redo-cell-action",
            "rank": 4
          },
          {
            "type": "separator",
            "rank": 5
          },
          {
            "command": "notebook:cut-cell",
            "rank": 5
          },
          {
            "command": "notebook:copy-cell",
            "rank": 5
          },
          {
            "command": "notebook:paste-cell-below",
            "rank": 5
          },
          {
            "command": "notebook:paste-cell-above",
            "rank": 5
          },
          {
            "command": "notebook:paste-and-replace-cell",
            "rank": 5
          },
          {
            "type": "separator",
            "rank": 6
          },
          {
            "command": "notebook:delete-cell",
            "rank": 6
          },
          {
            "type": "separator",
            "rank": 7
          },
          {
            "command": "notebook:select-all",
            "rank": 7
          },
          {
            "command": "notebook:deselect-all",
            "rank": 7
          },
          {
            "type": "separator",
            "rank": 8
          },
          {
            "command": "notebook:move-cell-up",
            "rank": 8
          },
          {
            "command": "notebook:move-cell-down",
            "rank": 8
          },
          {
            "type": "separator",
            "rank": 9
          },
          {
            "command": "notebook:split-cell-at-cursor",
            "rank": 9
          },
          {
            "command": "notebook:merge-cells",
            "rank": 9
          },
          {
            "command": "notebook:merge-cell-above",
            "rank": 9
          },
          {
            "command": "notebook:merge-cell-below",
            "rank": 9
          },
          {
            "type": "separator",
            "rank": 9
          }
        ]
      },
      {
        "id": "jp-mainmenu-view",
        "items": [
          {
            "type": "separator",
            "rank": 10
          },
          {
            "command": "notebook:hide-cell-code",
            "rank": 10
          },
          {
            "command": "notebook:hide-cell-outputs",
            "rank": 10
          },
          {
            "command": "notebook:hide-all-cell-code",
            "rank": 10
          },
          {
            "command": "notebook:hide-all-cell-outputs",
            "rank": 10
          },
          {
            "type": "separator",
            "rank": 10
          },
          {
            "command": "notebook:show-cell-code",
            "rank": 11
          },
          {
            "command": "notebook:show-cell-outputs",
            "rank": 11
          },
          {
            "command": "notebook:show-all-cell-code",
            "rank": 11
          },
          {
            "command": "notebook:show-all-cell-outputs",
            "rank": 11
          },
          {
            "type": "separator",
            "rank": 11
          },
          {
            "command": "notebook:toggle-render-side-by-side-current",
            "rank": 12
          },
          {
            "type": "separator",
            "rank": 12
          }
        ]
      },
      {
        "id": "jp-mainmenu-run",
        "items": [
          {
            "type": "separator",
            "rank": 10
          },
          {
            "command": "notebook:run-cell-and-insert-below",
            "rank": 10
          },
          {
            "command": "notebook:run-cell",
            "rank": 10
          },
          {
            "command": "notebook:run-in-console",
            "rank": 10
          },
          {
            "type": "separator",
            "rank": 11
          },
          {
            "command": "notebook:run-all-above",
            "rank": 11
          },
          {
            "command": "notebook:run-all-below",
            "rank": 11
          },
          {
            "type": "separator",
            "rank": 12
          },
          {
            "command": "notebook:render-all-markdown",
            "rank": 12
          },
          {
            "type": "separator",
            "rank": 12
          }
        ]
      },
      {
        "id": "jp-mainmenu-kernel",
        "items": [
          {
            "command": "notebook:restart-and-run-to-selected",
            "rank": 1
          }
        ]
      }
    ],
    "context": [
      {
        "type": "separator",
        "selector": ".jp-Notebook .jp-Cell",
        "rank": 0
      },
      {
        "command": "notebook:cut-cell",
        "selector": ".jp-Notebook .jp-Cell",
        "rank": 1
      },
      {
        "command": "notebook:copy-cell",
        "selector": ".jp-Notebook .jp-Cell",
        "rank": 2
      },
      {
        "command": "notebook:paste-cell-below",
        "selector": ".jp-Notebook .jp-Cell",
        "rank": 3
      },
      {
        "type": "separator",
        "selector": ".jp-Notebook .jp-Cell",
        "rank": 4
      },
      {
        "command": "notebook:delete-cell",
        "selector": ".jp-Notebook .jp-Cell",
        "rank": 5
      },
      {
        "type": "separator",
        "selector": ".jp-Notebook .jp-Cell",
        "rank": 6
      },
      {
        "command": "notebook:split-cell-at-cursor",
        "selector": ".jp-Notebook .jp-Cell",
        "rank": 7
      },
      {
        "command": "notebook:merge-cells",
        "selector": ".jp-Notebook .jp-Cell",
        "rank": 8
      },
      {
        "command": "notebook:merge-cell-above",
        "selector": ".jp-Notebook .jp-Cell",
        "rank": 8
      },
      {
        "command": "notebook:merge-cell-below",
        "selector": ".jp-Notebook .jp-Cell",
        "rank": 8
      },
      {
        "type": "separator",
        "selector": ".jp-Notebook .jp-Cell",
        "rank": 9
      },
      {
        "command": "notebook:create-output-view",
        "selector": ".jp-Notebook .jp-CodeCell",
        "rank": 10
      },
      {
        "type": "separator",
        "selector": ".jp-Notebook .jp-CodeCell",
        "rank": 11
      },
      {
        "command": "notebook:clear-cell-output",
        "selector": ".jp-Notebook .jp-CodeCell",
        "rank": 12
      },
      {
        "command": "notebook:clear-all-cell-outputs",
        "selector": ".jp-Notebook",
        "rank": 13
      },
      {
        "type": "separator",
        "selector": ".jp-Notebook",
        "rank": 20
      },
      {
        "command": "notebook:enable-output-scrolling",
        "selector": ".jp-Notebook",
        "rank": 21
      },
      {
        "command": "notebook:disable-output-scrolling",
        "selector": ".jp-Notebook",
        "rank": 22
      },
      {
        "type": "separator",
        "selector": ".jp-Notebook",
        "rank": 30
      },
      {
        "command": "notebook:undo-cell-action",
        "selector": ".jp-Notebook",
        "rank": 31
      },
      {
        "command": "notebook:redo-cell-action",
        "selector": ".jp-Notebook",
        "rank": 32
      },
      {
        "command": "notebook:restart-kernel",
        "selector": ".jp-Notebook",
        "rank": 33
      },
      {
        "type": "separator",
        "selector": ".jp-Notebook",
        "rank": 40
      },
      {
        "command": "notebook:create-console",
        "selector": ".jp-Notebook",
        "rank": 41
      },
      {
        "command": "notebook:create-new",
        "selector": ".jp-DirListing-content",
        "rank": 52,
        "args": {
          "isContextMenu": true
        }
      }
    ]
  },
  "jupyter.lab.shortcuts": [
    {
      "command": "notebook:change-cell-to-code",
      "keys": ["Y"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:change-cell-to-heading-1",
      "keys": ["1"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:change-cell-to-heading-2",
      "keys": ["2"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:change-cell-to-heading-3",
      "keys": ["3"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:change-cell-to-heading-4",
      "keys": ["4"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:change-cell-to-heading-5",
      "keys": ["5"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:change-cell-to-heading-6",
      "keys": ["6"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:change-cell-to-markdown",
      "keys": ["M"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:change-cell-to-raw",
      "keys": ["R"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:copy-cell",
      "keys": ["C"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:cut-cell",
      "keys": ["X"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:delete-cell",
      "keys": ["D", "D"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:enter-command-mode",
      "keys": ["Escape"],
      "selector": ".jp-Notebook.jp-mod-editMode"
    },
    {
      "command": "notebook:enter-command-mode",
      "keys": ["Ctrl M"],
      "selector": ".jp-Notebook.jp-mod-editMode"
    },
    {
      "command": "notebook:enter-edit-mode",
      "keys": ["Enter"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:extend-marked-cells-above",
      "keys": ["Shift ArrowUp"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:extend-marked-cells-above",
      "keys": ["Shift K"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:extend-marked-cells-top",
      "keys": ["Shift Home"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:extend-marked-cells-below",
      "keys": ["Shift ArrowDown"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:extend-marked-cells-bottom",
      "keys": ["Shift End"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:extend-marked-cells-below",
      "keys": ["Shift J"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:insert-cell-above",
      "keys": ["A"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:insert-cell-below",
      "keys": ["B"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:merge-cells",
      "keys": ["Shift M"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:merge-cell-above",
      "keys": ["Ctrl Backspace"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:merge-cell-below",
      "keys": ["Ctrl Shift M"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:move-cursor-down",
      "keys": ["ArrowDown"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:move-cursor-down",
      "keys": ["J"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:move-cursor-up",
      "keys": ["ArrowUp"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:move-cursor-up",
      "keys": ["K"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:paste-cell-below",
      "keys": ["V"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:redo-cell-action",
      "keys": ["Shift Z"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:run-cell",
      "macKeys": ["Ctrl Enter"],
      "keys": [],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:run-cell",
      "macKeys": ["Ctrl Enter"],
      "keys": [],
      "selector": ".jp-Notebook.jp-mod-editMode"
    },
    {
      "command": "notebook:run-cell",
      "keys": ["Accel Enter"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:run-cell",
      "keys": ["Accel Enter"],
      "selector": ".jp-Notebook.jp-mod-editMode"
    },
    {
      "command": "notebook:run-cell-and-insert-below",
      "keys": ["Alt Enter"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:run-cell-and-insert-below",
      "keys": ["Alt Enter"],
      "selector": ".jp-Notebook.jp-mod-editMode"
    },
    {
      "command": "notebook:run-in-console",
      "keys": [""],
      "selector": ".jp-Notebook.jp-mod-editMode"
    },
    {
      "command": "notebook:run-cell-and-select-next",
      "keys": ["Shift Enter"],
      "selector": ".jp-Notebook.jp-mod-editMode"
    },
    {
      "command": "viewmenu:line-numbering",
      "keys": [""],
      "selector": ".jp-Notebook.jp-mod-commandMode"
    },
    {
      "command": "viewmenu:match-brackets",
      "keys": [""],
      "selector": ".jp-Notebook.jp-mod-commandMode"
    },
    {
      "command": "notebook:select-all",
      "keys": ["Accel A"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:split-cell-at-cursor",
      "keys": ["Ctrl Shift -"],
      "selector": ".jp-Notebook.jp-mod-editMode"
    },
    {
      "command": "notebook:toggle-all-cell-line-numbers",
      "keys": ["Shift L"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:toggle-cell-line-numbers",
      "keys": ["L"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:undo-cell-action",
      "keys": ["Z"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:toggle-render-side-by-side",
      "keys": ["Ctrl Shift R"],
      "selector": ".jp-Notebook:focus"
    },
    {
      "command": "notebook:toggle-render-side-by-side-current",
      "keys": ["Shift R"],
      "selector": ".jp-Notebook:focus"
    }
  ],
  "title": "Notebook",
  "description": "Notebook settings.",
  "definitions": {
    "editorConfig": {
      "properties": {
        "autoClosingBrackets": {
          "type": "boolean",
          "default": false,
          "title": "Auto Closing Brackets"
        },
        "cursorBlinkRate": {
          "type": "number",
          "title": "Cursor Blinking Rate",
          "description": "Half-period in milliseconds used for cursor blinking. The default blink rate is 530ms. By setting this to zero, blinking can be disabled. A negative value hides the cursor entirely.",
          "default": 530
        },
        "fontFamily": {
          "type": ["string", "null"],
          "default": null,
          "title": "Font Family"
        },
        "fontSize": {
          "type": ["integer", "null"],
          "minimum": 1,
          "maximum": 100,
          "default": null,
          "title": "Font Size"
        },
        "lineHeight": {
          "type": ["number", "null"],
          "default": null,
          "title": "Line Height"
        },
        "lineNumbers": {
          "type": "boolean",
          "default": false,
          "title": "Show Line Numbers"
        },
        "lineWrap": {
          "type": "string",
          "enum": ["off", "on", "wordWrapColumn", "bounded"],
          "title": "Line Wrap"
        },
        "matchBrackets": {
          "type": "boolean",
          "title": "Match Brackets"
        },
        "readOnly": {
          "type": "boolean",
          "default": false,
          "title": "Read Only"
        },
        "insertSpaces": {
          "type": "boolean",
          "default": true,
          "title": "Insert Spaces"
        },
        "tabSize": {
          "type": "number",
          "default": 4,
          "title": "Tab Size"
        },
        "wordWrapColumn": {
          "type": "integer",
          "default": 80,
          "title": "Word Wrap Column"
        },
        "rulers": {
          "type": "array",
          "items": {
            "type": "number"
          },
          "title": "Rulers",
          "default": []
        },
        "codeFolding": {
          "type": "boolean",
          "default": false,
          "title": "Code Folding"
        },
        "lineWiseCopyCut": {
          "type": "boolean",
          "default": true,
          "title": "Line-wise Ctrl-C",
          "description": "When enabled, which is the default, doing copy or cut when there is no selection will copy or cut the whole lines that have cursors on them."
        },
        "showTrailingSpace": {
          "type": "boolean",
          "default": false,
          "title": "Show Trailing Space"
        }
      },
      "additionalProperties": false,
      "type": "object"
    },
    "kernelStatusConfig": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "showOnStatusBar": {
          "type": "boolean",
          "title": "Show kernel status on toolbar or status bar.",
          "description": "If `true`, the kernel status progression will be displayed in the status bar otherwise it will be in the toolbar.",
          "default": false
        },
        "showProgress": {
          "type": "boolean",
          "title": "Show execution progress.",
          "default": true
        }
      }
    }
  },
  "properties": {
    "codeCellConfig": {
      "title": "Code Cell Configuration",
      "description": "The configuration for all code cells.",
      "$ref": "#/definitions/editorConfig",
      "default": {
        "autoClosingBrackets": false,
        "cursorBlinkRate": 530,
        "fontFamily": null,
        "fontSize": null,
        "lineHeight": null,
        "lineNumbers": false,
        "lineWrap": "off",
        "matchBrackets": true,
        "readOnly": false,
        "insertSpaces": true,
        "tabSize": 4,
        "wordWrapColumn": 80,
        "rulers": [],
        "codeFolding": false,
        "lineWiseCopyCut": true,
        "showTrailingSpace": false
      }
    },
    "defaultCell": {
      "title": "Default cell type",
      "description": "The default type (markdown, code, or raw) for new cells",
      "type": "string",
      "enum": ["code", "markdown", "raw"],
      "default": "code"
    },
    "kernelShutdown": {
      "title": "Shut down kernel",
      "description": "Whether to shut down or not the kernel when closing a notebook.",
      "type": "boolean",
      "default": false
    },
    "markdownCellConfig": {
      "title": "Markdown Cell Configuration",
      "description": "The configuration for all markdown cells.",
      "$ref": "#/definitions/editorConfig",
      "default": {
        "autoClosingBrackets": false,
        "cursorBlinkRate": 530,
        "fontFamily": null,
        "fontSize": null,
        "lineHeight": null,
        "lineNumbers": false,
        "lineWrap": "on",
        "matchBrackets": false,
        "readOnly": false,
        "insertSpaces": true,
        "tabSize": 4,
        "wordWrapColumn": 80,
        "rulers": [],
        "codeFolding": false,
        "lineWiseCopyCut": true,
        "showTrailingSpace": false
      }
    },
    "rawCellConfig": {
      "title": "Raw Cell Configuration",
      "description": "The configuration for all raw cells.",
      "$ref": "#/definitions/editorConfig",
      "default": {
        "autoClosingBrackets": false,
        "cursorBlinkRate": 530,
        "fontFamily": null,
        "fontSize": null,
        "lineHeight": null,
        "lineNumbers": false,
        "lineWrap": "on",
        "matchBrackets": false,
        "readOnly": false,
        "insertSpaces": true,
        "tabSize": 4,
        "wordWrapColumn": 80,
        "rulers": [],
        "codeFolding": false,
        "lineWiseCopyCut": true,
        "showTrailingSpace": false
      }
    },
    "scrollPastEnd": {
      "title": "Scroll past last cell",
      "description": "Whether to be able to scroll so the last cell is at the top of the panel",
      "type": "boolean",
      "default": true
    },
    "recordTiming": {
      "title": "Recording timing",
      "description": "Should timing data be recorded in cell metadata",
      "type": "boolean",
      "default": false
    },
    "numberCellsToRenderDirectly": {
      "title": "Number of cells to render directly",
      "description": "Define the number of cells to render directly when virtual notebook intersection observer is available",
      "type": "number",
      "default": 99999
    },
    "remainingTimeBeforeRescheduling": {
      "title": "Remaining time in milliseconds before virtual notebook rendering is rescheduled",
      "description": "Define the remaining time in milliseconds before virtual notebook rendering is rescheduled. Set 0 if you want to disable any rescheduling",
      "type": "number",
      "default": 50
    },
    "renderCellOnIdle": {
      "title": "Render cell on browser idle time",
      "description": "Defines if the placeholder cells should be rendered when the browser is idle",
      "type": "boolean",
      "default": true
    },
    "observedTopMargin": {
      "title": "Observed top margin",
      "description": "Defines the observed top margin for the virtual notebook, set a positive number of pixels to render cells above the visible view",
      "type": "string",
      "default": "1000px"
    },
    "observedBottomMargin": {
      "title": "Observed bottom margin",
      "description": "Defines the observed bottom margin for the virtual notebook, set a positive number of pixels to render cells below the visible view",
      "type": "string",
      "default": "1000px"
    },
    "maxNumberOutputs": {
      "title": "The maximum number of output cells to be rendered in the output area.",
      "description": "Defines the maximum number of output cells to be rendered in the output area for cells with many outputs. The output area will have a head and the remaining outputs will be trimmed and not displayed unless the user clicks on the information message. Set to 0 to have the complete display.",
      "type": "number",
      "default": 50
    },
    "showEditorForReadOnlyMarkdown": {
      "title": "Show editor for read-only Markdown cells",
      "description": "Should an editor be shown for read-only markdown",
      "type": "boolean",
      "default": true
    },
    "kernelStatus": {
      "title": "Kernel status icon configuration",
      "description": "Defines the position and components of execution progress indicator.",
      "$ref": "#/definitions/kernelStatusConfig",
      "default": {
        "showOnStatusBar": false,
        "showProgress": true
      }
    },
    "experimentalDisableDocumentWideUndoRedo": {
      "title": "Experimental settings to enable the undo/redo on the notebook document level.",
      "description": "Disable the undo/redo on the notebook document level, so actions independent cells can have their own history. The undo/redo never applies on the outputs, in other words, outputs don't have history. A moved cell completely looses history capability for now.",
      "type": "boolean",
      "default": false
    },
    "renderingLayout": {
      "title": "Rendering Layout",
      "description": "Global setting to define the rendering layout in notebooks. 'default' or 'side-by-side' are supported.",
      "type": "string",
      "default": "default"
    },
    "sideBySideLeftMarginOverride": {
      "title": "Side-by-side left margin override",
      "description": "Side-by-side left margin override.",
      "type": "string",
      "default": "10px"
    },
    "sideBySideRightMarginOverride": {
      "title": "Side-by-side right margin override",
      "description": "Side-by-side right margin override.",
      "type": "string",
      "default": "10px"
    },
    "sideBySideOutputRatio": {
      "title": "Side-by-side output ratio",
      "description": "For the side-by-side rendering, the side-by-side output ratio defines the width of the output vs the input. Set 1 for same size, > 1 for larger output, < 1 for smaller output.",
      "type": "number",
      "default": 1,
      "minimum": 0
    }
  },
  "additionalProperties": false,
  "type": "object"
}
