pm

by Angelmmiguel

Angelmmiguel / pm

The easy way to switch between your projects on ZSH

136 Stars 12 Forks Last release: almost 3 years ago (v0.4) MIT License 51 Commits 4 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

pm

The easy way to switch to your projects on Shell. Add your projects to

pm
and switch between them with a command.

Installation

To install the program, download the installer and execute it.

cd ~
wget https://raw.githubusercontent.com/Angelmmiguel/pm/master/install.sh
chmod 755 ./install.sh

If you want to install last stable version, only run downloaded script:

. ./install.sh

If you want to install latest development version, run the installer with

--prerelease
option:
./install.sh --prerelease

Type your shell when the installer ask to you:

What is your shell? [ zsh, bash ]:

Update PM

To update PM, run same process than installation and say

yes
when PM ask you to update.

Shells

Available shells are: * ZSH * Bash (Prerelease, you need to run installer with

--prerelease
option)

Usage

Move to your awesome project and add it to

pm
:
cd projects/awesome-project
pm add awesome-project

Try to add another. Next, list stored projects:

pm list
# awesome-project
# another-project

To switch into a project, use

pm go
:
pm go awesome-project
# Current project: awesome-project

If a project is not longer available, remove it:

pm remove another-project
pm list
# awesome-project

Config

Global

PM allow some config values. To add, edit or remove a config parameter:

pm config   (value)

Available config parameters: *

after-all
: execute this command after switch to a project with
pm go
. *
git-info
: show a resume of Git when
go
to a project.

For example, you can open Sublime Text on a project when

go
to it:
pm config add after-all "sublime ."

Projects

With PM you can add configuration to projects. To add, edit or remove a config parameter of a project:

pm config-project    (value)

Available config parameters: *

after
: execute this command after switch to the project with
pm go
. *
git-info
: show a resume of Git status.

For example, you can start Gulp in a project when

go
to it:
pm config-project myproject add after "gulp"

Zsh auto-complete

If you use oh-my-zsh, you can use add

pm
to your
plugins
array in your
~/.zshrc
:
plugins=(pm)

If you don't use this configuration framework, you can put the

_pm
file in a folder in your $fpath array.

The folder /usr/local/share/zsh/site-functions/ is a good place for that.

Example

Example of PM in a gif

Contribute

To contribute

pm
:
  • Create an issue with the contribution: bug, enhancement..
  • Fork the project and edit it
  • Create a pull request when you finish

License

PM is released under the MIT license. Copyright @Laux_es ;)

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.