Skip to content

procitec/spyder-watchlist

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spyder Watchlist plugin

Watchlist plugin for the debugger in the Spyder IDE

A watchlist is a functionality some IDEs offer while debugging code. It is related to the display of all variables accessible in the current scope (aka Variable Explorer in Spyder). But there is an important distinction: A Watchlist consists of a user-definable list of expressions. These expressions are evaluated after each debugger step and the result of the evaluation is displayed. See here for a screencast which demonstrates the plugin.

Installation

pip install spyder-watchlist

Features

  • Any Python expression can be entered. The Watchlist displays the stringified result of the evaluation. In terms of Python code value = str(eval(expression, globals, locals)).

    Warning This makes the Watchlist a very powerful tool, but this comes at a cost: Any side effects of an expression will affect your execution environment.

  • The values of expressions are refreshed whenever they might have changed (after executing commands in the IPython Console and after debugger commands).

  • The list of expressions can be modified at any time; see Usage for details.

  • The value of an expression is shown with bold font if it has changed

  • The value of an invalid expression is show as <exception name>. Hover the mouse over the value to show the full exception message in a tooltip.

Usage

  • Rearranging of expressions: Use Drag & Drop
  • Changing an existing expression: Double click on expression (first column)
  • Adding a new expression
    • Toolbar + button
    • Menu entry in right-click menu (anywhere in the table)
    • Double click at the end of the table (only possible if there is no scrollbar)
    • Drag & Drop text. If the text consists of multiple lines, each line is added as an expression.
  • Removing expressions. The following actions remove the currently selected expressions:
    • Toolbar - button
    • Menu entry in right-click menu
    • Del keyboard key
  • There is also a “Remove all expression” action in the toolbar and right-click menu

Known Issues

  • The value of variables in the current scope can be changed in Spyder’s Variable Explorer plugin. Expressions in the Watchlist depending on any variable changed in the Variable Explorer will display an outdated value. The new expression value is displayed after a refresh of the Watchlist. A refresh is trigged by:
    • Executing commands in the IPython Console. Pressing Enter with an empty input prompt is sufficient.
    • Modifying the list of expressions in some way (add, remove or edit an expression)

About

Watchlist plugin for the debugger in the Spyder IDE

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages