Giter Club home page Giter Club logo

spyder-terminal's Introduction

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 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

spyder-terminal's People

Contributors

andfoy avatar steff456 avatar ccordoba12 avatar spyder-bot avatar dependabot[bot] avatar goanpeca avatar cam-gerlach avatar dalthviz avatar bnavigator avatar ofek avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.