diff --git a/doc/images/debugging/breakpoints-standard.png b/doc/images/debugging/breakpoints-standard.png deleted file mode 100644 index f758c379e..000000000 Binary files a/doc/images/debugging/breakpoints-standard.png and /dev/null differ diff --git a/doc/images/debugging/breakpoints-standard.webp b/doc/images/debugging/breakpoints-standard.webp new file mode 100644 index 000000000..fda23168b Binary files /dev/null and b/doc/images/debugging/breakpoints-standard.webp differ diff --git a/doc/images/debugging/debugging-arrow.png b/doc/images/debugging/debugging-arrow.png deleted file mode 100644 index 8d5d6dbec..000000000 Binary files a/doc/images/debugging/debugging-arrow.png and /dev/null differ diff --git a/doc/images/debugging/debugging-arrow.webp b/doc/images/debugging/debugging-arrow.webp new file mode 100644 index 000000000..08ffe2fd1 Binary files /dev/null and b/doc/images/debugging/debugging-arrow.webp differ diff --git a/doc/images/debugging/debugging-autocompletion.gif b/doc/images/debugging/debugging-autocompletion.gif deleted file mode 100644 index 906370f15..000000000 Binary files a/doc/images/debugging/debugging-autocompletion.gif and /dev/null differ diff --git a/doc/images/debugging/debugging-autocompletion.webm b/doc/images/debugging/debugging-autocompletion.webm new file mode 100644 index 000000000..013767092 Binary files /dev/null and b/doc/images/debugging/debugging-autocompletion.webm differ diff --git a/doc/images/debugging/debugging-breakpoints.gif b/doc/images/debugging/debugging-breakpoints.gif deleted file mode 100644 index a17ab0c93..000000000 Binary files a/doc/images/debugging/debugging-breakpoints.gif and /dev/null differ diff --git a/doc/images/debugging/debugging-breakpoints.webm b/doc/images/debugging/debugging-breakpoints.webm new file mode 100644 index 000000000..6d24ffb44 Binary files /dev/null and b/doc/images/debugging/debugging-breakpoints.webm differ diff --git a/doc/images/debugging/debugging-commands.gif b/doc/images/debugging/debugging-commands.gif deleted file mode 100644 index 7026e8bb5..000000000 Binary files a/doc/images/debugging/debugging-commands.gif and /dev/null differ diff --git a/doc/images/debugging/debugging-commands.png b/doc/images/debugging/debugging-commands.png deleted file mode 100644 index c16c4d357..000000000 Binary files a/doc/images/debugging/debugging-commands.png and /dev/null differ diff --git a/doc/images/debugging/debugging-commands.webm b/doc/images/debugging/debugging-commands.webm new file mode 100644 index 000000000..9c754ea94 Binary files /dev/null and b/doc/images/debugging/debugging-commands.webm differ diff --git a/doc/images/debugging/debugging-commands.webp b/doc/images/debugging/debugging-commands.webp new file mode 100644 index 000000000..3fd068a96 Binary files /dev/null and b/doc/images/debugging/debugging-commands.webp differ diff --git a/doc/images/debugging/debugging-console.png b/doc/images/debugging/debugging-console.png deleted file mode 100644 index a4322ffd4..000000000 Binary files a/doc/images/debugging/debugging-console.png and /dev/null differ diff --git a/doc/images/debugging/debugging-console.webp b/doc/images/debugging/debugging-console.webp new file mode 100644 index 000000000..55d3d1459 Binary files /dev/null and b/doc/images/debugging/debugging-console.webp differ diff --git a/doc/images/debugging/debugging-libraries.png b/doc/images/debugging/debugging-libraries.png deleted file mode 100644 index 796980be7..000000000 Binary files a/doc/images/debugging/debugging-libraries.png and /dev/null differ diff --git a/doc/images/debugging/debugging-libraries.webp b/doc/images/debugging/debugging-libraries.webp new file mode 100644 index 000000000..f01a3c569 Binary files /dev/null and b/doc/images/debugging/debugging-libraries.webp differ diff --git a/doc/images/debugging/debugging-matplotlib.gif b/doc/images/debugging/debugging-matplotlib.gif deleted file mode 100644 index 8dde88c9d..000000000 Binary files a/doc/images/debugging/debugging-matplotlib.gif and /dev/null differ diff --git a/doc/images/debugging/debugging-matplotlib.webm b/doc/images/debugging/debugging-matplotlib.webm new file mode 100644 index 000000000..37c18ced0 Binary files /dev/null and b/doc/images/debugging/debugging-matplotlib.webm differ diff --git a/doc/images/debugging/debugging-multiline.gif b/doc/images/debugging/debugging-multiline.gif deleted file mode 100644 index 363bac733..000000000 Binary files a/doc/images/debugging/debugging-multiline.gif and /dev/null differ diff --git a/doc/images/debugging/debugging-multiline.webm b/doc/images/debugging/debugging-multiline.webm new file mode 100644 index 000000000..8127a2348 Binary files /dev/null and b/doc/images/debugging/debugging-multiline.webm differ diff --git a/doc/images/debugging/debugging-snippet.png b/doc/images/debugging/debugging-snippet.png deleted file mode 100644 index e77d399a7..000000000 Binary files a/doc/images/debugging/debugging-snippet.png and /dev/null differ diff --git a/doc/images/debugging/debugging-snippet.webp b/doc/images/debugging/debugging-snippet.webp new file mode 100644 index 000000000..d8ea8c31a Binary files /dev/null and b/doc/images/debugging/debugging-snippet.webp differ diff --git a/doc/images/debugging/debugging-timeit.png b/doc/images/debugging/debugging-timeit.png deleted file mode 100644 index 2df905ef6..000000000 Binary files a/doc/images/debugging/debugging-timeit.png and /dev/null differ diff --git a/doc/images/debugging/debugging-timeit.webp b/doc/images/debugging/debugging-timeit.webp new file mode 100644 index 000000000..f5048b40b Binary files /dev/null and b/doc/images/debugging/debugging-timeit.webp differ diff --git a/doc/images/debugging/debugging-variables.png b/doc/images/debugging/debugging-variables.png deleted file mode 100644 index 856074695..000000000 Binary files a/doc/images/debugging/debugging-variables.png and /dev/null differ diff --git a/doc/images/debugging/debugging-variables.webp b/doc/images/debugging/debugging-variables.webp new file mode 100644 index 000000000..5a0277f25 Binary files /dev/null and b/doc/images/debugging/debugging-variables.webp differ diff --git a/doc/panes/debugging.rst b/doc/panes/debugging.rst index c06fad962..07af748c8 100644 --- a/doc/panes/debugging.rst +++ b/doc/panes/debugging.rst @@ -7,7 +7,7 @@ Debugger **Debugging** in Spyder is supported through integration with the enhanced ``ipdb`` debugger in the :ref:`panes-console`. This allows breakpoints and the execution flow to be viewed and controlled right from the Spyder GUI, as well as with all the familiar IPython console commands. -.. image:: /images/debugging/debugging-console.png +.. image:: /images/debugging/debugging-console.webp :alt: A Spyder IPython console window, showing the ipdb debugger in action @@ -20,21 +20,23 @@ Debugging with ipdb You can fully control debugger execution from the :guilabel:`Debug` menu, :guilabel:`Debug toolbar` and via configurable keyboard shortcuts, along with the standard ``ipdb`` `console commands`_. -.. image:: /images/debugging/debugging-commands.gif +.. video:: /images/debugging/debugging-commands.webm + :loop: :alt: A Spyder IPython console window, showing debugging from toolbar Additionally, the :ref:`panes-editor` shows the line of code the debugger is currently stopped on with an arrow. .. _console commands: https://wangchuan.github.io/coding/2017/07/12/ipdb-cheat-sheet.html -.. image:: /images/debugging/debugging-arrow.png +.. image:: /images/debugging/debugging-arrow.webp :alt: Spyder Editor showing the debugging panel Spyder's debugger offers syntax highlighting, code completion and command history, which work exactly like they do in the normal interactive interpreter. Use the up and down arrows to recall previous commands, and press :kbd:`Tab` to trigger autocomplete suggestions. -.. image:: /images/debugging/debugging-autocompletion.gif +.. video:: /images/debugging/debugging-autocompletion.webm + :loop: :alt: A Spyder IPython console window, showing autocompletion when debugging Furthermore, IPython's `magic functions`_ are available in debugging mode. @@ -42,12 +44,13 @@ You can, for example, run ``%ls`` to list the contents of your current working d .. _magic functions: https://ipython.readthedocs.io/en/stable/interactive/magics.html -.. image:: /images/debugging/debugging-timeit.png +.. image:: /images/debugging/debugging-timeit.webp :alt: Ipython console in debug mode showing timeit magic Finally, you can enter and execute multiline statements in Spyder's debugger just like with the regular IPython prompt, to easily run complex code. -.. image:: /images/debugging/debugging-multiline.gif +.. video:: /images/debugging/debugging-multiline.webm + :loop: :alt: Debugger showing multiline debugger @@ -62,7 +65,7 @@ Breakpoints Spyder's debugger is integrated with the :guilabel:`Breakpoints` pane, which lists the file, line, and condition (if any) of every breakpoint defined. To open it, select :menuselection:`Debug --> List breakpoints`, or press :kbd:`Ctrl-Shift-B` (:kbd:`Cmd-Shift-B` on macOS). -.. image:: /images/debugging/breakpoints-standard.png +.. image:: /images/debugging/breakpoints-standard.webp :alt: Spyder's Breakpoints panel, with a number of examples showing file, line number and an optional condition There are several different ways to set and clear breakpoints: @@ -73,12 +76,13 @@ There are several different ways to set and clear breakpoints: * With the ``breakpoint()`` builtin function in your code. * Interactively, using the ``b`` command in a debugging session. -.. image:: /images/debugging/debugging-breakpoints.gif +.. video:: /images/debugging/debugging-breakpoints.webm + :loop: :alt: Spyder showing setting conditional breakpoint You can access and edit local and global variables at each breakpoint through the :ref:`panes-variables`. -.. image:: /images/debugging/debugging-variables.png +.. image:: /images/debugging/debugging-variables.webp :alt: Spyder's console and variable explorer showing local and global variables when debugging @@ -92,20 +96,20 @@ Advanced features You can avoid stepping through other Python packages while debugging by enabling the new :guilabel:`Ignore Python libraries while debugging` option in Spyder's preferences, under :menuselection:`IPython Console --> Debugger --> Debug`. This will skip all the built-in and third-party Python modules you have installed. -.. image:: /images/debugging/debugging-libraries.png +.. image:: /images/debugging/debugging-libraries.webp :alt: Spyder's preferences showing Ignore Python libraries while debugging options If your code has variables with the same names as Pdb commands (e.g. ``b`` or ``step``), you can still refer to them as normal while debugging. To call the respective Pdb command, just add an exclamation point before it (e.g. ``!b`` or ``!step``). -.. image:: /images/debugging/debugging-commands.png +.. image:: /images/debugging/debugging-commands.webp :alt: Spyder's IPython console showing Pdb commands You can have Spyder automatically execute a custom snippet of code every time the debugger stops. For example, you can use this to set specific variables, or import commonly-used modules so they are always available while debugging. To set this up, go to :menuselection:`Preferences --> IPython Console --> Debugger --> Run code while debugging`, and enter the code that you want to be executed with each step. -.. image:: /images/debugging/debugging-snippet.png +.. image:: /images/debugging/debugging-snippet.webp :alt: Spyder's preferenes with debugging snippet @@ -119,7 +123,8 @@ Matplotlib support Generating Matplotlib figures is fully supported while the debugger is active, including all the different graphics backends. Use the ``%matplotlib`` magic to change to an interactive backend (e.g. ``%matplotlib qt5``) to pan, zoom and adjust your plots in a separate window, or switch back to the default ``inline`` (``%matplotlib inline``) to see them displayed right in the :ref:`panes-plots` pane. -.. image:: /images/debugging/debugging-matplotlib.gif +.. video:: /images/debugging/debugging-matplotlib.webm + :loop: :alt: Debugger showing matplotlib interactive backend