Spyder-Terminal
Project status
Build status
Copyright © 2017–2020 Spyder Project Contributors
Overview
This is a Spyder plugin for displaying an OS independent virtual terminal inside the main Spyder window. It currently supports both Unix-like and Windows operating systems.
Spyder-Terminal allows you to easily execute any bash
command inside
Spyder, even ncurses
programs like nano
or vi
:
On Windows you can run console applications such as IPython
or powershell
:
Installation
To install this plugin, you can use either the conda
or pip
package
managers, as follows:
Using conda:
conda create -n spyder-env -c conda-forge spyder-terminal conda activate spyder-env spyder
Using pip (only if you don't use conda!):
pip install spyder-terminal
Note: At the moment it is not possible to use this plugin with the Spyder installers for Windows and macOS. We're working to make that a reality in the future.
Dependencies
This project depends on
Changelog
Visit our CHANGELOG file to know more about our new features and improvements.
Server implementation
Besides a Qt terminal, spyder-terminal also provides a web-based terminal interface based on Tornado, which allows you to deploy and serve terminals from a Web/Javascript frontend. To deploy only the server, you can execute the following bash script:
# Shell option: # On Unix systems this can be bash/tcsh/zsh or any Unix shell: # bash: /usr/bin/env bash # On Windows systems this might be cmd or powershell: # cmd: %SystemRoot%\windows\system32\cmd.exe # powershell: %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe python -m spyder_terminal.server --port <PORT> --shell <Path to the terminal backend to execute>
Development and contribution
To start contributing to this project, you need to install the yarn
and npm
package managers. If you use conda, you can run the following
command to do that:
conda install -c conda-forge nodejs yarn
Then, please install the package's dependencies with:
conda create -n spyder-terminal-dev -c conda-forge --file requirements/{conda,conda_win}.txt
depending on your operating system.
Afterwards, you need to run
python setup.py build_static
to build the Javascript components for this plugin.
Finally, in order to run our test suite, please install its required dependencies with
conda install -c conda-forge --file requirements/tests.txt
and use pytest to run the server and client tests for the terminal like this
pytest .
Sponsors
Spyder is funded thanks to the generous support of
And the donations we have received from our users around the world through Open Collective: