Skip to main content

Easy and fast project switching in your shell!

Project description

Easy and fast project switching in your shell!

This is a like workon for python, but more powerfull and not only for python.

Build Status Coverage Status Python versions PyPi

Installation

Install it in your user-space with

pip3 install goto-project --user  # or pip if python3 is your default interpreter

You can install zsh completion with antigen

antigen bundle sivakov512/goto-project completions/zsh

Now type gt, then press and you will see all available projects.

If you have project names awesome-project you can type gt aw, press and get gt awesome-project.

Configuration and usage

Specify your project in ~/.goto-project.yaml file.

goto-project:  # this is a project name
  path: ~/Devel/Projects/goto-project/  # path project
  instructions:  # any instructions to call when you switch project
    - source ~/Devel/Envs/py3_goto-project/bin/activate
  command: vim  # command to run when project opened
  clear_on_exit: false  # if specified as false then terminal output will not be cleared on project close

To list all available projects call

gt

To open project call gt with project name as argument

gt goto-project

To close project press C-D. When you close project all changes will be breaked. For example, $PATH will be restored if you extend it.

Usage example

For example you have a project named awesome-nuxt-blog placed at ~/Projects/awesome-nuxt-blog. You need to extend your $PATH with .mode_modules/.bin, source .env/bin/activate and show git status when project opened.

Create ~/.goto-project.yaml with this content:

awesome-nuxt-blog:
  path: ~/Projects/awesome-nuxt-blog
  instructions:
    - source .env/bin/activate
    - export PATH=".node_modules/.bin:$PATH"
    - git status

Now you at ~/. Type gt awesome-nuxt-blog. Now you at ~/Projects/awesome-nuxt-blog.

All your instructions are executed. Also you see git status output in your shell.

Type C-D and now you in ~/.

Screencast

…available here

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for goto-project, version 0.1.2
Filename, size File type Python version Upload date Hashes
Filename, size goto-project-0.1.2.tar.gz (4.1 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page