• Stars
    star
    228
  • Rank 174,248 (Top 4 %)
  • Language
    Python
  • License
    MIT License
  • Created over 7 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Run system terminals inside Spyder. Works on Linux, macOS and Windows.

Spyder-Terminal

Project status

License (MIT) PyPI development status Latest PyPI version Latest Conda-Forge version OpenCollective Backers Join the chat at https://gitter.im/spyder-ide/spyder-terminal

Build status

Circle-CI build status Azure build status Coveralls Code Coverage Crowdin

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:

Animated GIF of Spyder-Terminal on Linux

On Windows you can run console applications such as IPython or powershell:

Animated GIF of Spyder-Terminal on Windows

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

Quansight Numfocus

And the donations we have received from our users around the world through Open Collective:

Sponsors

More information

Main Website

Download Spyder (with Anaconda)

Spyder Github

Troubleshooting Guide and FAQ

Development Wiki

Gitter Chatroom

Google Group

@Spyder_IDE on Twitter

@SpyderIDE on Facebook

Support Spyder on OpenCollective

More Repositories

1

spyder

Official repository for Spyder - The Scientific Python Development Environment
Python
8,151
star
2

qtpy

Provides an uniform layer to support PyQt5, PySide2, PyQt6, PySide6 with a single codebase
Python
963
star
3

qtawesome

Iconic fonts in PyQt and PySide applications
Python
786
star
4

spyder-notebook

Jupyter notebook integration with Spyder
Python
520
star
5

qtsass

Compile SASS files to Qt stylesheets
Python
127
star
6

spyder-vim

A plugin for Spyder to enable Vim keybindings
Python
124
star
7

spyder-unittest

A plugin for Spyder to run tests and view the results
Python
79
star
8

spyder-reports

Spyder plugin to render Markdown reports using Pweave as a backend
Python
70
star
9

loghub

Changelog generator based on github milestones or tags.
Python
41
star
10

spyder-kernels

Jupyter Kernels for the Spyder console
Python
38
star
11

spyder-autopep8

A plugin to run the autopep8 python linter from within the spyder editor.
Python
35
star
12

spyder-docs

Documentation for Spyder, the Scientific Python Development Environment
Python
33
star
13

spyder-line-profiler

This is a plugin to run the python line profiler from within the spyder editor.
Python
33
star
14

docrepr

Generate rich representations for docstrings
Python
26
star
15

website-spyder

Spyder IDE website sources. Built with Lektor.
JavaScript
23
star
16

conda-manager

Graphical conda package manager
Python
22
star
17

spyder-memory-profiler

This is a plugin to run the python memory_profiler from within the spyder editor.
Python
12
star
18

pysyntect

Python bindings for Syntect library
Rust
9
star
19

lektor-icon

A modern, single-page-focused theme for the Lektor static CMS
CSS
8
star
20

binder-environments

Binder environments to test pull requests in our organization
Python
8
star
21

spyder-vcs

Python
8
star
22

spyder-plugin-cookiecutter

Cookiecutter template for a Spyder IDE plugin (compatible with Spyder IDE versions 3.x and 4.x)
Python
7
star
23

mac-application

Instructions to build the native Spyder MacOS X application
Shell
7
star
24

three-merge

Simple Python library to perform a 3-way merge between strings
Python
7
star
25

langchain-provider

Completion provider using Langchain and OpenAI for Spyder 6+
Python
5
star
26

website-production

Spyder IDE deployed website.
HTML
5
star
27

Spyder-Workshop

Spyder Workshop
Python
5
star
28

plugin-examples

Plugin examples for the new Spyder 5 API
Python
5
star
29

gettext-helpers

Helper functions and scripts for gettext translation in Python
Python
4
star
30

envs-manager

A manager for Python environments and packages managers
Python
4
star
31

ux-improvements

Discussion about UX improvements for Spyder 5 and beyond
4
star
32

community

Community repository for Spyder IDE
3
star
33

governance-and-guidelines

Governance documents and formal guidelines for the Spyder project as a whole
3
star
34

spyder-remote-services

Python
3
star
35

spyder-env-manager

A plugin for Spyder 6+ to manage Python virtual environments and packages
Python
2
star
36

action-close-duplicate-issues

Github action to close duplicate issues with a custom message
TypeScript
1
star
37

spyder-website

Svelte
1
star
38

spyder5-plugin-cookiecutter

Cookiecutter for a Spyder 5 plugin
Python
1
star