Skip to main content

A CLI application automating spawning of terminals and executing commands in them.

Project description

PYDOER - CLI Application

PyDoer is a CLI application aiming to automate executing multiple commands in different terminal applications.

CircleCI Codecov
Production Version Python Wheel Supported Python versions GitHub commits on branch, since tagged version
Better Code Hub Codacy Maintainability Code Climate technical debt Scrutinizer code quality

Featuring

  • Terminal Configuration as code

  • Design Menu and commands using json config

  • Launch/Close commands

Overview

  • Free software: GNU General Public License v3.0

Prerequisites

You need to have Python, Bash and gnome-terminal installed.

Installation

Install PyDoer in virtual environment:

  1. Get the code

    git clone git@github.com:boromir674/doer.git

  2. Install in a python virtual environment

    cd doer

    virtualenv env –python=python3 source env/bin/activate

    pip install python-doer

  3. Make pydoer cli available in path

    Assuming ~/.local/bin is in $PATH

ln -s $PWD/env/bin/pydoer ~/.local/bin/pydoer
  1. (Optional) Define useful aliases

Assuming you cloned the code in directory ‘/data/repos/doer’

alias doer='/data/repos/doer/env/bin/pydoer menu /data/repos/doer/python-doer/menu_entries.json'
alias close-doing='/data/repos/doer/env/bin/pydoer close-doing'

Install PyDoer for user:

  1. Get the code

    git clone git@github.com:boromir674/doer.git

  2. Install for user

    cd doer

    pip install –user python-doer

The pydoer cli should now be (automatically) in $PATH

  1. (Optional) Define useful aliases

alias doer='pydoer menu /data/repos/doer/python-doer/menu_entries.json'
alias close-doing='pydoer close-doing'

Usage

To run, simply execute (either from within the virtual env or if you installed with user/global scope):

pydoer

Basically you have 2 commands:
  1. show interactive menu

    pydoer menu </path/to/menu.json>

    The program parses the entries defined in json formatted file defined by the user json’ file and renders an interactive “Menu” in the terminal, waiting for the user to make a selection. Each selection, generates a ‘do’ script which is responsible for opening/spawning one or more terminal applications. For each terminal application, a ‘launch’ script is generated which is responsible for running certain commands on that terminal.

  2. close windows spawned from previous activity

    pydoer close-doing

Project details


Download files

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

Source Distribution

pydoer-1.0.2.tar.gz (36.5 kB view hashes)

Uploaded Source

Built Distribution

pydoer-1.0.2-py3-none-any.whl (27.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page