Euporie Notebook

In euporie’s notebooks editor, you can interactively edit and run Jupyter noteboks from the comfort of your terminal.

Euporie supports most of the features of Jupyter Notebooks, so users of Jupyter should find it intuitive to use.

User Guide

Creating a New Notebook

To create a new notebook from the command line, launch euporie with the desired new notebook file path as an argument:

$ euporie-notebook ./my-new-notebook.ipynb

To create a new notebook from within the TUI editor, select File ‣ New in the menus, or press the Ctrl+N keyboard shortcut.


Editing a Cell

The currently selected cell can be edited by pressing Enter, which will enter Edit Mode. This focuses the cell’s input text area, and allows you to edit the cell’s content.

To exit Edit Mode, you can press the Esc key when you are done editing, or you can run the cell.


Running a Cell

To run the currently selected cell, you can press Ctrl+Enter (providing your terminal suports this key-binding; you can also use Ctrl+e).

Alternatively, you can select Run ‣ Run selected cells in the menu.


Opening an Existing Notebook

To open a notebook from the command line, launch euporie with the notebook file path as an argument:

$ euporie-notebook ./my-notebook.ipynb

To open a notebook from within the TUI editor, select File ‣ Open in the menus, or press the Ctrl+O keyboard shortcut. Enter the path of the notebook you wish to open into the file open dialog and press OK.


Adding a new cell

You can press b to add a new cell below the currently selected cell. You can also press a to add a new cell above the currently selected cell.


Saving a Notebook

To save a notebook, press Ctrl+S or navigate to File ‣ Save Notebook in the menus.


Closing a Notebook

To save a notebook, press Ctrl+W or navigate to File ‣ Close File Notebook in the menus.


Changing a Cell’s Type

To change the currently selected cells to:

  • code cells, press y;

  • markdown cells, press m;

  • raw cells, press r.


Restarting the Kernel

To restart the kernel, navigate to Kernel ‣ Restart kernel in the menus and select Yes in the confirmation dialog.

Alternatively, press the 0 0 keyboard shortcut.


Changing the Kernel

To change a notebook’s kernel, navigate to Kernel ‣ Change kernel in the menus.


Setting the Color Scheme

To change the color scheme, navigate to Settings ‣ Color Scheme in the menus, then select the color scheme name you want to use.


To configure the custom color scheme, use the custom_foreground_color and custom_background_color configuration options.

Setting the Syntax Theme

To change the syntax theme, navigate to Settings ‣ Syntax Theme in the menus, then select the syntax theme you want to use.


Using the Command Palette

Practically every action in euporie (including all of those listed above) can be performed through the command palette, which can be summoned using Ctrl+Space. You can type in the input box to search for a command, use the arrow keys to select a command from the list, and press Enter to run the selected command.



Command Line Interface

Usage

$ euporie-notebook [-h] [--version]
                        [--clipboard {external,internal,terminal}]
                        [--log-file [str]]
                        [--log-level {debug,info,warning,error,critical}]
                        [--log-config str]
                        [--show-shadows | --no-show-shadows]
                        [--show-status-bar | --no-show-status-bar]
                        [--set-cursor-shape | --no-set-cursor-shape]
                        [--cursor-blink | --no-cursor-blink]
                        [--edit-mode {micro,emacs,vi}] [--tab-size int]
                        [--terminal-polling-interval float]
                        [--formatters loads]
                        [--syntax-highlighting | --no-syntax-highlighting]
                        [--syntax-theme str] [--color-depth {1,4,8,24}]
                        [--multiplexer-passthrough | --no-multiplexer-passthrough]
                        [--color-scheme {default,inverse,light,dark,black,white,custom}]
                        [--custom-background-color str]
                        [--custom-foreground-color str] [--accent-color str]
                        [--key-bindings loads]
                        [--graphics {none,sixel,kitty,iterm}]
                        [--force-graphics | --no-force-graphics]
                        [--enable-language-servers | --lsp | --no-enable-language-servers | --no-lsp]
                        [--language-servers loads]
                        [--wrap-cell-outputs | --no-wrap-cell-outputs]
                        [--line-numbers | --no-line-numbers]
                        [--autoformat | --no-autoformat]
                        [--autocomplete | --no-autocomplete]
                        [--autosuggest | --no-autosuggest]
                        [--autoinspect | --no-autoinspect] [--kernel-name str]
                        [--record-cell-timing | --no-record-cell-timing]
                        [--show-remote-inputs | --no-show-remote-inputs]
                        [--show-remote-outputs | --no-show-remote-outputs]
                        [--show-file-icons | --no-show-file-icons]
                        [--show-cell-borders | --no-show-cell-borders]
                        [--external-editor str]
                        [--save-widget-state | --no-save-widget-state]
                        [--max-notebook-width int] [--expand | --no-expand]
                        [--show-scroll-bar | --no-show-scroll-bar]
                        [--show-side-bar | --no-show-side-bar]
                        [--tab-mode {stack,tile_horizontally,tile_vertically}]
                        [--always-show-tab-bar | --no-always-show-tab-bar]
                        [--background-pattern {0,1,2,3,4,5}]
                        [--background-character str]
                        [--run-after-external-edit | --no-run-after-external-edit]
                        [--run | --no-run]
                        [--show-top-bar | --no-show-top-bar]
                        [UPath ...]

Positional Arguments

<UPath> ...

List of file names to open

Optional Arguments

-h, --help

show this help message and exit

--version, -V

Show the version number and exit

--clipboard {external,internal,terminal}

The preferred clipboard access method

--log-file <str>

File path for logs

--log-level {debug,info,warning,error,critical}

Set the log level

--log-config <str>

Additional logging configuration

--show-shadows, --no-show-shadows

Show or hide shadows under menus and dialogs

--show-status-bar, --no-show-status-bar

Show the status bar

--set-cursor-shape, --no-set-cursor-shape

Whether to set the shape of the cursor depending on the editing mode

Whether to blink the cursor

--edit-mode {micro,emacs,vi}

Key-binding mode for text editing

--tab-size <int>

Spaces per indentation level

--terminal-polling-interval <float>

Time between terminal colour queries

--formatters <loads>

List of external code formatters

--syntax-highlighting, --no-syntax-highlighting

Syntax highlighting

--syntax-theme <str>

Syntax highlighting theme

--color-depth {1,4,8,24}

The color depth to use

--multiplexer-passthrough, --no-multiplexer-passthrough

Use passthrough from within terminal multiplexers

--color-scheme {default,inverse,light,dark,black,white,custom}

The color scheme to use

--custom-background-color <str>, --custom-bg-color <str>, --bg <str>

Background color for “Custom” color theme

--custom-foreground-color <str>, --custom-fg-color <str>, --fg <str>

Foreground color for “Custom” color theme

--accent-color <str>

Accent color to use in the app

--key-bindings <loads>

Additional key binding definitions

--graphics {none,sixel,kitty,iterm}

The preferred graphics protocol

--force-graphics, --no-force-graphics

Force use of specified graphics protocol

--enable-language-servers, --lsp, --no-enable-language-servers, --no-lsp

Enable language server support

--language-servers <loads>

Language server configurations

--wrap-cell-outputs, --no-wrap-cell-outputs

Wrap cell output text.

--line-numbers, --no-line-numbers

Show or hide line numbers

--autoformat, --no-autoformat

Automatically re-format code cells when run

--autocomplete, --no-autocomplete

Provide completions suggestions automatically

--autosuggest, --no-autosuggest

Provide line completion suggestions

--autoinspect, --no-autoinspect

Display contextual help automatically

--kernel-name <str>, --kernel <str>

The name of the kernel to start by default

--record-cell-timing, --no-record-cell-timing

Should timing data be recorded in cell metadata.

--show-remote-inputs, --no-show-remote-inputs

Display inputs sent to the kernel by other clients

--show-remote-outputs, --no-show-remote-outputs

Display kernel outputs triggered by other clients

--show-file-icons, --no-show-file-icons

Show file icons in the file manager

--show-cell-borders, --no-show-cell-borders

Show or hide cell borders.

--external-editor <str>

Set the external editor to use.

--save-widget-state, --no-save-widget-state

Save a notebook’s widget state in the notebook metadata

--max-notebook-width <int>

Maximum width of notebooks

--expand, --no-expand

Use the full width to display notebooks

--show-scroll-bar, --no-show-scroll-bar

Show the scroll bar

--show-side-bar, --no-show-side-bar

Show the side-bar

--tab-mode {stack,tile_horizontally,tile_vertically}

The method used to display multiple tabs

--always-show-tab-bar, --no-always-show-tab-bar

Always show the tab bar

--background-pattern {0,1,2,3,4,5}, --bg-pattern {0,1,2,3,4,5}

The background pattern to use

--background-character <str>, --bg-char <str>

Character for background pattern

--run-after-external-edit, --no-run-after-external-edit

Run cells after editing externally

--run, --no-run

Run the notebook files when loaded

--show-top-bar, --no-show-top-bar

Show the top bar


Available Commands